Current time: 22.04.2024, 11:34 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Вопросы по моддингу
» (обсуждаем моддинг здесь)
Author Message
Bes Offline

Posts: 5422
Post: #1621

согласен, это не замедлит игру никак (мс уже не учитываем)
решение выглядит вполне оправданным. Но нужно на практике смотреть, насколько это графически будет смотреться - телепорт перед самим боем.
+ когда герой побеждает, потративший ДО боя mp, которые скрипт последней клетки забирает фактически и это может не понравится игроку. Либо нужно компенсировать те заветные (100/144 или др.) очки хода.
А если это атака с подземных ворот/телепорта? а герой в итоге будет насильно сдвинут?
09.01.2021 22:15
Visit this user's website Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #1622

Bes, я проверил скрипт на карте: графически никак не изменяется.
Телепорта никакого нет, ну то есть герой "сдвигается" только если загрузить сейв сохранения перед битвой. Нюансы, такие как наличие жёлтой клетки, нужно учитывать уже в самом моде сохранения перед боем.
Возможно в строке
!!HE-1:P?y1/?y2/?y3; получаем координаты героя (до его шага)
нужно добавлять проверку на мувы героя, расширив динамический массив до 4-х ячеек, и возвращать их (мувы) при загрузке сейва.


Карта-мод "Война на Холсте"
(This post was last modified: 09.01.2021 22:33 by SergOz.)
09.01.2021 22:21
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #1623

SergOz, а если 2 монстра рядом, и перед нападением на второго не было шага с места - будет нормально?


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
09.01.2021 22:45
Visit this user's website Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #1624

daemon_n, насколько я понимаю - нельзя напасть на двух монстров сразу. Идёт очерёдность по кругу. Если клетка атаки принадлежит двум/нескольким монстрам - выбирается только один. Ели игрок, по какой-то причине хочет переиграть последний бой - его атакующего героя героя возвратят на клетку, с которой он атаковал, и повторится та же ситуация, которая была перед первым нападением.
Ещё раз подчёркиваю: возврат атакующего героя на исходную клетку произойдёт только при загрузке сейва BattleSave или как он там называется..

В любом случае это лучше чем то что есть сейчас. Сейчас - просто ... (нет слов)
Или же, как сказал Berserker нужно удалить этот мод со всех сборок


Карта-мод "Война на Холсте"
(This post was last modified: 09.01.2021 23:09 by SergOz.)
09.01.2021 23:05
Find all posts by this user Quote this message in a reply
wessonsm Offline

Posts: 779
Post: #1625

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

Правильная реализация думаю возможна, но не так проста как кажется.
(This post was last modified: 09.01.2021 23:12 by wessonsm.)
09.01.2021 23:09
Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #1626

wessonsm, ты работал с динамическими массивами?
Туда запишется ход/атака последнего героя. Они не ходят все сразу!
Просто возьмите мой код и проверьте на тестовой карте


Карта-мод "Война на Холсте"
(This post was last modified: 09.01.2021 23:15 by SergOz.)
09.01.2021 23:10
Find all posts by this user Quote this message in a reply
wessonsm Offline

Posts: 779
Post: #1627

(09.01.2021 23:10)SergOz Wrote:  wessonsm, ты работал с динамическими массивами?
Туда запишется ход/атака последнего героя. Они не ходят все сразу!
Если ход последнего был без атаки?
В массиве - координаты последнего, а атаковал предпоследний...
09.01.2021 23:16
Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #1628

wessonsm, в триггере !?HM-1нет понятия предпоследний. Там только последний


Карта-мод "Война на Холсте"
09.01.2021 23:17
Find all posts by this user Quote this message in a reply
wessonsm Offline

Posts: 779
Post: #1629

(09.01.2021 23:17)SergOz Wrote:  wessonsm, в триггере !?HM-1нет понятия предпоследний. Там только последний
Именно, а в триггере !?OB - есть.

То есть так:
Срабатывает триггер !?HM несколько раз для героя №1,
после этого срабатывает !?OB для героя №1,
после этого несколько раз срабатывает !?HM уже для героя №2.
Еще и GM0 сюда впихнуть, соляночка такая получается.
(This post was last modified: 09.01.2021 23:25 by wessonsm.)
09.01.2021 23:20
Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #1630

wessonsm, в триггере !?OB мы считываем данные с массива, но никак их не меняем. Тем более данные с массива наверняка будут считываться с какого-то OnBeforeBattle или т.п.

Если честно я устал доказывать. Я не настаиваю на 100% реализации идеи. Я просто подкинул идею.
Моих знаний не хватает, чтобы учесть все "подводные камни". Пусть гуру форума вынесут вердикт.


Карта-мод "Война на Холсте"
(This post was last modified: 09.01.2021 23:47 by SergOz.)
09.01.2021 23:25
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #1631

SergOz, я и не говорил о нападении на 2 сразу, но с одной точки можно напасть несколько раз и остаться на месте.


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
09.01.2021 23:26
Visit this user's website Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #1632

daemon_n, несколько раз с одной точки можно напасть при нынешнем положении дел. Если в сейве будет реализован возврат на предыдущую, перед нападением, точку карты, то это станет невозможным.


Карта-мод "Война на Холсте"
09.01.2021 23:31
Find all posts by this user Quote this message in a reply
wessonsm Offline

Posts: 779
Post: #1633

SergOz, идея реализуема (я думаю), но реализация не так уж проста.
(This post was last modified: 09.01.2021 23:38 by wessonsm.)
09.01.2021 23:35
Find all posts by this user Quote this message in a reply
Raistlin Away
Moderators

Posts: 1348
Post: #1634

(09.01.2021 22:02)SergOz Wrote:  wessonsm, в данном случае, в триггер !?HM-1; фактически добавляется одна команда - !!SN:M1/0/y1M1/1/y2M1/2/y3; так как если этот триггер уже существует на карте/в моде/плагине то там по-любому идёт считывание координат героя, иначе зачем он нужен, этот триггер.
Одна команда никак не повлияет на быстродействие кода.
У меня в моде имеется этот триггер, и там после него идет 7-8 команд. Он оказывает совершенно жуткое влияние на быстродействие, и этих нескольких команд на самом деле вполне достаточно, чтобы были фризы. На новых версиях Эры они не так сильно заметны, но вот в обычном WoG это была катастрофа... Если такая запись в массив будет находиться сама по себе, это не вызовет беды, но в сочетании с чужим кодом она может стать серьёзным балластом.
И кстати, это не одна, а 3 команды, просто они одинаковые.


Создал новый глобальный мод: WoG Ultra Edition
10.01.2021 00:04
Find all posts by this user Quote this message in a reply
wessonsm Offline

Posts: 779
Post: #1635

Угу, после скрипта Разведка II из WoG я вообще стараюсь этот триггер нигде не использовать, потому собственно и написал.
Жуткие были тормоза, как и сказал Raistlin.
И в моде LORD тоже с этим столкнулся.
(This post was last modified: 10.01.2021 00:15 by wessonsm.)
10.01.2021 00:12
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group