Wake of Gods Forum | Форум Во Имя Богов

Full Version: Вопросы по моддингу
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
согласен, это не замедлит игру никак (мс уже не учитываем)
решение выглядит вполне оправданным. Но нужно на практике смотреть, насколько это графически будет смотреться - телепорт перед самим боем.
+ когда герой побеждает, потративший ДО боя mp, которые скрипт последней клетки забирает фактически и это может не понравится игроку. Либо нужно компенсировать те заветные (100/144 или др.) очки хода.
А если это атака с подземных ворот/телепорта? а герой в итоге будет насильно сдвинут?
Bes, я проверил скрипт на карте: графически никак не изменяется.
Телепорта никакого нет, ну то есть герой "сдвигается" только если загрузить сейв сохранения перед битвой. Нюансы, такие как наличие жёлтой клетки, нужно учитывать уже в самом моде сохранения перед боем.
Возможно в строке
!!HE-1:P?y1/?y2/?y3; получаем координаты героя (до его шага)
нужно добавлять проверку на мувы героя, расширив динамический массив до 4-х ячеек, и возвращать их (мувы) при загрузке сейва.
SergOz, а если 2 монстра рядом, и перед нападением на второго не было шага с места - будет нормально?
daemon_n, насколько я понимаю - нельзя напасть на двух монстров сразу. Идёт очерёдность по кругу. Если клетка атаки принадлежит двум/нескольким монстрам - выбирается только один. Ели игрок, по какой-то причине хочет переиграть последний бой - его атакующего героя героя возвратят на клетку, с которой он атаковал, и повторится та же ситуация, которая была перед первым нападением.
Ещё раз подчёркиваю: возврат атакующего героя на исходную клетку произойдёт только при загрузке сейва BattleSave или как он там называется..

В любом случае это лучше чем то что есть сейчас. Сейчас - просто ... (нет слов)
Или же, как сказал Berserker нужно удалить этот мод со всех сборок
SergOz, я вот что подумал только что.
Ты напал на монстра, записался batlesave, после этого походил другой игрок своими героями (или даже этот же игрок другим героем), и в массив записались уже другие координаты.
И после этого ты загружаешь battlesave. Что будет?
Надо для каждого героя делать отдельный массив.

Правильная реализация думаю возможна, но не так проста как кажется.
wessonsm, ты работал с динамическими массивами?
Туда запишется ход/атака последнего героя. Они не ходят все сразу!
Просто возьмите мой код и проверьте на тестовой карте
(09.01.2021 23:10)SergOz Wrote: [ -> ]wessonsm, ты работал с динамическими массивами?
Туда запишется ход/атака последнего героя. Они не ходят все сразу!
Если ход последнего был без атаки?
В массиве - координаты последнего, а атаковал предпоследний...
wessonsm, в триггере !?HM-1нет понятия предпоследний. Там только последний
(09.01.2021 23:17)SergOz Wrote: [ -> ]wessonsm, в триггере !?HM-1нет понятия предпоследний. Там только последний
Именно, а в триггере !?OB - есть.

То есть так:
Срабатывает триггер !?HM несколько раз для героя №1,
после этого срабатывает !?OB для героя №1,
после этого несколько раз срабатывает !?HM уже для героя №2.
Еще и GM0 сюда впихнуть, соляночка такая получается.
wessonsm, в триггере !?OB мы считываем данные с массива, но никак их не меняем. Тем более данные с массива наверняка будут считываться с какого-то OnBeforeBattle или т.п.

Если честно я устал доказывать. Я не настаиваю на 100% реализации идеи. Я просто подкинул идею.
Моих знаний не хватает, чтобы учесть все "подводные камни". Пусть гуру форума вынесут вердикт.
SergOz, я и не говорил о нападении на 2 сразу, но с одной точки можно напасть несколько раз и остаться на месте.
daemon_n, несколько раз с одной точки можно напасть при нынешнем положении дел. Если в сейве будет реализован возврат на предыдущую, перед нападением, точку карты, то это станет невозможным.
SergOz, идея реализуема (я думаю), но реализация не так уж проста.
(09.01.2021 22:02)SergOz Wrote: [ -> ]wessonsm, в данном случае, в триггер !?HM-1; фактически добавляется одна команда - !!SN:M1/0/y1M1/1/y2M1/2/y3; так как если этот триггер уже существует на карте/в моде/плагине то там по-любому идёт считывание координат героя, иначе зачем он нужен, этот триггер.
Одна команда никак не повлияет на быстродействие кода.
У меня в моде имеется этот триггер, и там после него идет 7-8 команд. Он оказывает совершенно жуткое влияние на быстродействие, и этих нескольких команд на самом деле вполне достаточно, чтобы были фризы. На новых версиях Эры они не так сильно заметны, но вот в обычном WoG это была катастрофа... Если такая запись в массив будет находиться сама по себе, это не вызовет беды, но в сочетании с чужим кодом она может стать серьёзным балластом.
И кстати, это не одна, а 3 команды, просто они одинаковые.
Угу, после скрипта Разведка II из WoG я вообще стараюсь этот триггер нигде не использовать, потому собственно и написал.
Жуткие были тормоза, как и сказал Raistlin.
И в моде LORD тоже с этим столкнулся.
Reference URL's