igrik
Posts: 2819
|
Тогда проверь на Эровских триггерах:
До взаимодействия героя с героем
!?FU77010;
!!SN:X?y1/?y2; - номер героя-инициатора, номер героя-цели.
После взаимодействия героя с героем
!?FU77011;
!!SN:X?y1/?y2; - номер героя-инициатора, номер героя-цели.
Взаимодействие может быть: встречей героев игрока, союзных героев, или нападением на противника.
game bug fixes extended.dll || My Plugins || My GitHub
|
|
18.12.2018 14:20 |
|
Heromant
Posts: 348
|
(18.12.2018 14:20)igrik Wrote: Тогда проверь на Эровских триггерах:
До взаимодействия героя с героем
!?FU77010;
!!SN:X?y1/?y2; - номер героя-инициатора, номер героя-цели.
После взаимодействия героя с героем
!?FU77011;
!!SN:X?y1/?y2; - номер героя-инициатора, номер героя-цели.
Взаимодействие может быть: встречей героев игрока, союзных героев, или нападением на противника.
Вечерком проверю. А вызов функций, которые предлагается переопределить/дополнить, вообще где инициируют свой вызов, т. к. в "Использованные функции (1-30000)" в Era Help они явно не попадают. Что-то из новых версий ERA?
Ещё интересный момент, у Алгора в Era Scripts есть такой интересный скрипт "option 774 - experience exchange.erm", где тоже весь функционал ИИ предполагает как минимум срабатываение !?HE триггера для ИИ.
(This post was last modified: 18.12.2018 15:40 by Heromant.)
|
|
18.12.2018 15:36 |
|
Heromant
Posts: 348
|
Не, фигня какая-то. Не получается организовать встречу со срабатыванием. Скрипт https://yadi.sk/d/Tx-XQ_ZYMzfZsg
Тестовая карта https://yadi.sk/d/PSM0ObP5Ka9Y6A
У кого-нибудь когда-нибудь в принципе получалось поймать триггером встречу героев противника под одним флагом?
Или придётся криво делать, через событие на пустой клетке рядом с героем?
|
|
18.12.2018 21:20 |
|
Heromant
Posts: 348
|
(19.12.2018 01:24)Algor Wrote: (18.12.2018 21:20)Heromant Wrote: У кого-нибудь когда-нибудь в принципе получалось поймать триггером встречу героев противника под одним флагом?
!?HE точно работает, см. option 774 - experience exchange, option 754 - no chains.
Ну, ок. Но у меня то в примере почему триггер не срабатывает? Может быть "положение героя" не является "точкой входа" в героя?
Попробовал для чистоты разместить тестового неподвижного героя на координатах карты 0;0;0 - та же фигня, визуально встреча происходит, триггеры не активизируются.
PS: Кстати, можешь приложить карту/сейв, где на очередном ходе встреча вражеских компьютерных героев происходит и триггер !?HE срабатывает?
(This post was last modified: 19.12.2018 02:53 by Heromant.)
|
|
19.12.2018 01:45 |
|
Berserker
Posts: 16657
|
|
19.12.2018 05:32 |
|
Heromant
Posts: 348
|
(19.12.2018 05:32)Berserker Wrote: !?HE-1;
этот не срабатывает?
Не, этот вообще падает с ошибкой "Wrong hero index".
|
|
19.12.2018 10:12 |
|
Heromant
Posts: 348
|
Резюмирую, хотелось бы получить хоть какие-то подтверждение того, что !?HE, !?FU77010, !?FU77010 в принципе срабатывают при встрече героев AI одного игрока. Пусть даже эта встреча будет инициирована не искусственными причинами (ресейвер !!AI), а естественным поведением. Беда только в том, что я не смог подобрать ни одной тестовой карты и искусственной игровой ситуацией, где такая встреча бы произошла.
В принципе, даже, если триггеры встречи не срабатывают и мы не можем с этим ничего сделать, у меня есть план Б. Так как я планирую использовать !?HM на шаге в любом случае, ничего мне не мешает делать в нём проверку разницы в местоположении двух героев и если она равна одной клетке (по вертикали, горизонтали или диагонали) инициировать ту логику при встрече, которую я планировал и снять точку назначения !!AI.
Кстати, допустимо ли обращение к переменной с номером, заданной другой переменной?
!!VRy1:S3;
!!IF&vy1>=7:M^Hello, hero!^;
Конкретно запись "vy1", как обращение к v3 корректно?
|
|
19.12.2018 14:51 |
|
Algor
Posts: 3881
|
(19.12.2018 01:45)Heromant Wrote: PS: Кстати, можешь приложить карту/сейв, где на очередном ходе встреча вражеских компьютерных героев происходит и триггер !?HE срабатывает?
Включи указанные опции и открытую карту (чтобы видеть моменты встречи), добавь нужный отладочный вывод в общую функцию, которая вызывается из !?HM-ов и запусти любую рандомку. Какае-то ИИ с очень большой вероятностью встретятся уже на 1-2 день.
(19.12.2018 14:51)Heromant Wrote: Так как я планирую использовать !?HM на шаге в любом случае, ничего мне не мешает делать в нём проверку разницы в местоположении двух героев...
Это существенно затормозит игру.
(19.12.2018 14:51)Heromant Wrote: Конкретно запись "vy1", как обращение к v3 корректно?
Да, корректно.
|
|
19.12.2018 15:01 |
|
Heromant
Posts: 348
|
(19.12.2018 15:01)Algor Wrote: (19.12.2018 01:45)Heromant Wrote: PS: Кстати, можешь приложить карту/сейв, где на очередном ходе встреча вражеских компьютерных героев происходит и триггер !?HE срабатывает?
Включи указанные опции и открытую карту (чтобы видеть моменты встречи), добавь нужный отладочный вывод в общую функцию, которая вызывается из !?HM-ов и запусти любую рандомку. Какае-то ИИ с очень большой вероятностью встретятся уже на 1-2 день.
Ты добавлял и видел отладочный вывод по данному триггеру, активизированному AI? Если да, то возможно для него подойти вплотную и попытаться встать одним своим героем на клетку другого героя не то же самое, что инициировать встречу. Кстати, сегодня проверю, учатся ли заклинания стандартной грамотностью в первом случае (искусственной встречи).
|
|
19.12.2018 16:01 |
|
igrik
Posts: 2819
|
Да сколько же можно. Я тебе еще раз повторяю - используй триггер ЭРЫ.
При встрече он работает всегда!
До взаимодействия героя с героем
!?FU77010;
!!SN:X?y1/?y2; - номер героя-инициатора, номер героя-цели.
game bug fixes extended.dll || My Plugins || My GitHub
|
|
19.12.2018 16:14 |
|
Heromant
Posts: 348
|
(19.12.2018 15:01)Algor Wrote: (19.12.2018 14:51)Heromant Wrote: Так как я планирую использовать !?HM на шаге в любом случае, ничего мне не мешает делать в нём проверку разницы в местоположении двух героев...
Это существенно затормозит игру.
Затормозит только если в нем использовать какой-то ресейвер на запись. Если использовать только на чтение, то затормозит не существенно. У меня было такое с использованием !!HE:W$ вместо !!HE:W$/1. В первом случае тормоз был, во втором - нет.
Кстати, ресейверы на запись всё равно использовать на каждом шаге придётся, если не найти, как поймать момент перехода фокуса между различными героями AI. Конкретно !!AI:S/!!AI:D. И это не зависимо от того, появится ли решение с несрабатыванием триггера !?HE для AI или нет.
(This post was last modified: 19.12.2018 16:26 by Heromant.)
|
|
19.12.2018 16:19 |
|
Heromant
Posts: 348
|
(19.12.2018 16:14)igrik Wrote: Да сколько же можно. Я тебе еще раз повторяю - используй триггер ЭРЫ.
При встрече он работает всегда!
До взаимодействия героя с героем
!?FU77010;
!!SN:X?y1/?y2; - номер героя-инициатора, номер героя-цели.
Так я с ним и пробовал. Даже выше ссылки на скрипт и тестовую карту приводил - не работает же.
Если ставлю на место целевого героя своего с многократно превосходящей армией и задаю ценность AI - нападает. Причём активизируются оба триггера !?FU77010 (до боя), !?FU77011 (после боя).
Пробовал со стандартной грамотностью тест, чтобы продиагностировать, это просто триггер не срабатывает или вообще встреча не происходит. Выходит, встреча не происходит, т. к. не происходит обмена заклинаниями. То есть у меня есть основания верить, что !?FU77010, !?FU77011 работают. Проблема в другом - не получается инициировать встречу с помощью !!AI. Вот бой - пожалуйста. При этом один герой встаёт рядом с другим (на соседнюю клетку), а потом отбегает, без встречи.
(This post was last modified: 20.12.2018 01:47 by Heromant.)
|
|
19.12.2018 20:35 |
|
Heromant
Posts: 348
|
Да, !?FU77010, !?FU77011 для AI работают, но инициировать встречу искусственно не выходит.
|
|
21.12.2018 02:39 |
|
Shiva
Posts: 122
|
Друзья, нужен скрипт для сказочных драконов. Брелок отрицательности, дает вашим войскам иммунитет к заклинаниям молния, цепная молния и метеориный дождь.
|
|
21.12.2018 09:25 |
|