Приношу огромные извинения тов. Алгору за флуд!
При использовании Вашего скрипта во время хода палатки противника (нейтрального героя или ИИ) битва просто зависает (вражеская палатка мигает желтым светом, и ничего не происходит; очевидно, это связано с выбором принадлежности палатки).
Но описанная нами с тов. Некромаксером проблема исчезла, что есть, то есть.
(10.11.2012 18:51)serovoy Wrote: [ -> ]При использовании Вашего скрипта во время хода палатки противника (нейтрального героя или ИИ) битва просто зависает (вражеская палатка мигает желтым светом, и ничего не происходит; очевидно, это связано с выбором принадлежности палатки).
Хм... похоже действие 3 (защита) не изменяет целевой стек на -1, как я думал. Отсюда и грабли.
Решение:
Code:
!!BG&y2>-1/y4<>y5:A0; [отменяем действие, если палатка пытается воздействовать на врага]
меняем на
Code:
!!BG&y2>-1/y4<>y5:A8; [действие "ждать", если палатка пытается воздействовать на врага]
Перезалил скрипт.
(10.11.2012 18:51)serovoy Wrote: [ -> ]Но описанная нами с тов. Некромаксером проблема исчезла, что есть, то есть.
Ну за это спасибо Bes'у (и/или тому, кто раскопал фишку со скоростью)
(10.11.2012 12:24)gamecreator Wrote: [ -> ] (10.11.2012 07:24)Bes Wrote: [ -> ]ф-цию вызываем единожды
хм, а похоже на тело цикла. даже х16 есть.
я ж написал, что
выдрано из ФМ... особо не правил код от цикла по поиску палатки среди стэков стороны, ну это уже не суть...
P.S.
Algor, пожалуйста. Кстати, не факт что действие 8 не вызовет зацикливание палатки, проверяли сами?
И ещё... есть подозрение что в вашем коде ещё много "дыр", уж простите за придирки, но не могу это не сказать. К примеру, разве палатка ИИ может предпринимать действие на стэк противника? ИИ просто не подумает так даже пробовать...
(10.11.2012 23:19)Bes Wrote: [ -> ]P.S. Algor, пожалуйста. Кстати, не факт что действие 8 не вызовет зацикливание палатки, проверяли сами?
Проверял, не вызовет. 2й wait для палатки на автопилоте будет расценен как пропуск хода, а в случае, когда палаткой управляет игрок - как недопустимое действие. Кучу вариантов перебрал, пока до этой фишки докопался.
(10.11.2012 23:19)Bes Wrote: [ -> ]И ещё... есть подозрение что в вашем коде ещё много "дыр", уж простите за придирки, но не могу это не сказать. К примеру, разве палатка ИИ может предпринимать действие на стэк противника? ИИ просто не подумает так даже пробовать...
Можно конечно добавить проверку на ИИ, если приведете хоть одну причину, по которой стоит это сделать (или раскроете, в чем выражается "дырявость" этого случая).
Algor, говор про "дыры" я не просто так их заключил в кавычки. Не стоит воспринимать мои слова как "атака"
Имхо, вызывать каждый раз стирание параметров перед ходом палатки не есть целесообразно.
А что касается ИИ, я лишь отреагировал на баг-репорт пред.участника, который сказал про зацыкливание на ходе ИИ-патаки... вот и предложил про лишние словия для стороны ИИ, не особо вглядевшись в ваш код. Извините
Bes Wrote:причину появления скорости у Палатки я не искал
...
Имхо, вызывать каждый раз стирание параметров перед ходом палатки не есть целесообразно.
Т.к. причина появления скорости не ясна, я подумал, что не лишне будет ее обнулять непосредственно перед действием.
Bes Wrote:Извините
Да не за что. Просто если есть замечания, я всегда весь внимание.
(10.11.2012 21:40)Algor Wrote: [ -> ]Ну за это спасибо Bes'у (и/или тому, кто раскопал фишку со скоростью
В любом случае, спасибо Вам обоим!
Есть еще одна небольшая проблема. Функция "Тиран" иногда дает сбои, а именно выкидывает из игры во время загрузки. Правда, такое случается крайне редко, но тем не менее...
Крэшлог.
Во время загрузки сэйва или при старте карты? Если первое, то киньте сэйв, если 2е, то сгенеренную карту из random_maps или хотя бы параметры, с которыми карта генерилась (шаблон, вода, кол-во игроков человека/ии), а то из крэша не сильно понятно в чем дело...
Никак не получается поймать ошибку... Скиньте еще settings.dat, попробую с вашим набором опций.
Теперь нашел в чем дело: конфликт с опцией "Легендарные герои".
Исправленный скрипт
Вообще, Вы очень ценный тестер, судя по количеству одновременно используемых опций - 187, против моих 89. Спасибо за баг-репорт.
Algor, а как вы узнаёте какие опции в сэйве активированы игроком?
(12.11.2012 22:24)Bes Wrote: [ -> ]Algor, а как вы узнаёте какие опции в сэйве активированы игроком?
1. serovoy прислал не сэйв.
2. serovoy прислал settings.dat
просто визуально подсчитали кол-во активированных опций?
(12.11.2012 23:38)Bes Wrote: [ -> ]просто визуально подсчитали кол-во активированных опций?
Да. Можно было конечно циклом в скрипте пройтись, но заодно посмотрел, что другие используют. Интересно же.
И, кстати, давайте на ты. Это ко всем, кто не против.