Попробую вкратце описать ситуацию. На карте есть здания, которые, чтобы захватить, нужно бить до 20% здоровья. Потом оно автоматически переходит к вам и полностью восстанавливается. Это легко и стабильно работает на всех зданиях (их около ста). но есть среди них 12, для которых к этому триггеру есть дополнение, в котором зданию выдается нужная способность, оно выглядит вот так:
Я не вижу тут ничего криминального, что могло бы руинить триггер и убивать (!) юнита.
Других действий с этим зданием НЕТ. То есть на него работает лишь этот триггер и в нем даже нет действия "Убить".
Вопрос: как такое может быть? Это баг или перегрузка памяти игры или что? Заметил, что этот эффект действует не всегда. Иногда, особенно в начале игры, триггер работает. Но потом начинает неизбежно убивать здание, когда у него остается меньше 20% здоровья, хотя должен вылечить первым делом, потом передать контроль атакующему, потом выдать и отнять соответствующие способности.
Хелп, у меня вообще нет идей, что это.

Принятый ответ

Спеллбук плюс улучшения повышающие кол-во здоровья юнита? Известный баг.
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
32
4 года назад
0
Попробуй сделать триггер по событию смерти таких зданию чтобы выводил в чат убийцы, если убийца null , значит здания умирает триггерно...
Покажи триггер лечения таких зданий, мб ты здоровье в 0 выставляешь ему
0
26
4 года назад
0
Возможно что в следствие действий твоего триггера обрывается поток (или происходит похожая ситуация) и действие на лечение здания попросту не отрабатывает. Для проверки поставь "до" и "после" отхила вывод текстового сообщения (имя юнита + текущее хп юнита).
0
24
4 года назад
0
Спеллбук плюс улучшения повышающие кол-во здоровья юнита? Известный баг.
Принятый ответ
0
20
4 года назад
0
prog, точно, такое улучшение проводится. Не мог бы ты рассказать про это подробнее?
0
24
4 года назад
0
Yury13, это древний баг в недрах движка вара. Если упростить, в момент вручения спеллбука проверка на то не пора ли юниту умереть происходит без учета бонусного хп от улучшений и юнит радостно умирает.
На самом деле, там все чуть-чуть сложнее и от добавления спеллбука умереть может даже полностью здоровый юнит если размер добавленного улучшениями хп достаточно велик.
0
23
4 года назад
0
INF убивает =)
2
20
4 года назад
2
prog, есть способы обойти этот баг?

В общем, для тех, кто когда-нибудь зайдет в этот вопрос через поиск, возможно будет полезно, как я решил проблему. Решение очень тривиальное, но работающее. Вместо того, чтобы каждый раз триггерно давать и отнимать спеллбуки этому зданию, нужно выдать ему их все, а потом определенным игрокам заблокировать определенные спеллбуки (тут уже делайте как вам требуется по задумке). В итоге здание будет иметь разные способности у разных игроков. Изи.
1
32
4 года назад
1
Баг заключается что при вручении\удалении спеллбука происходит пересчет всех абилок, на фрейм они удаляются и добавляются снова, но из за бага абилки на здоровье удаляются дважды (точнее движок снимает бонус хп дважды, считая что абилка удаленная у юнита еще и удалилась у спелбука, т.е удалено 2 абилки) таким образом, у юнита становится максимум хп в 0 ед. и он умирает.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.