Короче.
Есть герой Полый, который имеет ульт - после смерти оставляет за собой трясущийся доспех с макс. хп идентичными своим. Хп делаются через цикл передобавления предметной многоуровневой способности (абила дается, манипуляции с ее лвлом и она убирается), а базовые хп - всего 1.
Герой существует уже около 2 месяцев, сыграно мной за него было игр 6-7 не меньше точно, ничего не замечалось, и вот сейчас случайно на тесте апдейта, как только он умер и рухнул и появился доспех, вылетел фатал еррор (это точно, фатал был именно в этот момент).
По-моему, рядом была (в игре точно участвовала) героиня Мать-Земля, ее ульт - пассивка, понижающая макс. хп рядом стоящим врагам (чекает периодически и накладывает абилу минус макс хп).
Могло ли вообще такое случиться, что фатал вызван тем, что макс. хп НЕ успели увеличиться и Мать-Земля сразу уничтожила его снижением макс. хп в минус? Тогда повышение уровня способности у мёртвой боевой единицы. НО цикл на задание нужного кол-ва здоровья запускается СРАЗУ после создания доспеха, игрок вообще видит его сразу как появившегося с нужным здоровьем.
Планирую поставить выход из цикла не только, когда макс. хп доспеха достигнут нужного значения, но и если вдруг окажется, что IsDead он равно true (хуже-то с такого точно не будет).
Или мб еще где собака зарыта... Мог как-то еще доспех быстро окочуриться с 1 хп до того, как у него стало через циклы передобавления предметной абилки 1000+? На всякий случай еще раз - доспех сразу создается и сразу цикл loop exitwhen макс. здоровье доспеха >= макс. здоровье героя передобавлять предметную абилку и бла-бла-бла...
Лог фатала не сохранен пока ввиду моего дикого утомления. Если будут еще фаталы с Полым и тема будет актуальна - сброшу.


Короче, это скорее всего вообще не из-за этого.
Наверное, тупо опять считывание силы атаки чудило: у доспеха ее не было, он фаталил при приближении к нему героя с аурой "жечь врагов в % от своей атаки + % от их атаки". Ща снова из-за этого апдейт перепиливаю.
Правда, не помню, был ли в той игре, кроме Матери-Земли, и этот вот другой герой... но пока остановимся на том, что у доспеха причина фатала была одна, если будет снова фаталить именно с доспехом - вернёмся к теме.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
21
Ща еще была катка за Полого... без фатала... на 8 минимум игр 1 фатал - не критично... но офк разберусь...
16
Без лога не решишь, но раз у тебя таймер - то едва ли аура виновата. Логи, логи, логи.
21
Maniac_91, IsDead (а не IsUnitDead) это функция от драколича и она и меня никогда не подводила и вроде в ней как раз такое внутри и прописано
и вопрос не об этом, я это как раз только планирую добавить как доп. проверку, фатал не из-за этой функции
20
или выпиливать всякие существа типа этой брони из целей пассивки, или при установке макс хп чекать наличие баффа и устанавливать макс хп с его значением
я думаю, что тут дело в рекурсии с установкой хп
21
ssbbssc, объясни подробнее последнее предложение
мне пока все-таки кажется что проверки IsDead будет достаточно, просто если мертв не добавлять хп и все
пока что это еще не повторялось (хотя и проверка еще не поставлена, просто переоптимизация всего везде занимает огромные сроки, так что только ради мелочей не делается)
16
UNIT_TYPE_DEAD достаточно, хп проверять необязательно
фактически, хп даже могут быть не нулем, это не запрещено, особенно если играться мемхаком
но вот флажок, который имеет труп, стабильнее доллара
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.