Походу у меня редчайший из случаев.
1) Я уже эту команду использовал и там и писал "heroname", она работает и до сих пор.
2) Консоль ничего не говорит об моей ошибке не при взаимодействии с объектом, ни после.
Вы бы лучше прислушивались к советам и исправляли явные ошибки, вместо того чтобы говорить что что-то где-то работает. В функцию передается переменная hero, значит она и должна использоваться дальше. Где-то в другом месте кода вы случайно создали глобальную переменную с именем heroname, которой присвоили имя главного героя. Поэтому при тестировании вам показалось что данная функция сработала как надо. Но это просто совпадение, которое в любой момент может исчезнуть.
Я в своём ЧаВо описывал методы отладки кода. Чтобы консоль работала на полную катушку, нужно использовать отладочные сообщения. До/после/внутри функции, до/после триггера.