Current time: 24.11.2024, 10:31 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
ERA III
Author Message
daemon_n Offline
Administrators

Posts: 4343
Post: #1576

Algor, list.txt обязателен. И там обязан быть мод WOG.

Так было всегда. Отделением было лишь wog scripts в отдельный мод


Image: widget.png?style=banner2

Новейший Heroes Launcher
26.06.2021 10:44
Visit this user's website Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #1577

daemon_n, ай блин, попутал Wog и Wog scripts...
Все позабыл за тысячу лет (с)
Спасибо Sm


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
26.06.2021 10:58
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #1578

Archer30, check you test in Era 2 or WoG 3.58. I'm pretty sure you'll get the same behavior.

When you teleport hero, no external data structures are changed. If a hero was in prison, it will still be marked as staying in prison. If hero was in a town (CA:H), it will be there. Thus you need advanced code to handle all those edge cases.

For instance CA:H0/-1, HE(hero):O-1, HE(hero):P..., HE(hero):O(restoreOwner).


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
26.06.2021 18:43
Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1175
Post: #1579

Rolleyes Alright thanks. At this point I will just remove the feature from the mod


Latest ERA mods and scripts in development - My GitHub
26.06.2021 19:57
Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1175
Post: #1580

Berserker, hi!

Not a bug, but we still hope it could be improved! 96-copy
Looks like the CO:X command worked as it should, it sets commander lv/exp correctly and everything, but it doesn't get commander to the level up screen even if the new level/exp is greater than current. So...you got only the change in number but nothing else. This is a completely different behaviour comparing with HE:E.

Script for testing:


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 28.06.2021 07:30 by Archer30.)
28.06.2021 07:22
Find all posts by this user Quote this message in a reply
helgtla Offline
Moderators

Posts: 302
Post: #1581

   Есть некая проблема, связанная с функционалом ХД мода и ЭРА триггерами "после битвы"!
   Это по моим выводам связано именно с ХД модом, но думаю, что лучше будет, если Берсеркер об этом Бараторчу объяснить попытается. Мои объяснения в ветке ХД мода, скорее не смогут донести до него суть проблемы.
    ------------------------------------------------
Суть:
    На версии ХД мода 5.0 RC 89 - условия скриптов идущих в теле триггера
   !?BA1 или !?FU(OnAfterBattleUniversal) выполнялись лишь именно при завершении боя. Но никогда не стартовали, если игрок выбирал опцию "Загрузка из боя" (функционал ХД мода).
   На более поздних версиях (имеется 5.2 RC 39 и 5.2 RC 44) - условия в теле триггера стартуют даже если бой не окончен, а выбрана опция загрузки непосредственно из боя.
    От версий ЭРА это не зависит (проверял на 3.3.5 и 3.8), именно версия ХД мода влияет.
-----------------------------------------------------------
    Прилагаю тестовый мод с готовой модуляцией ситуации.
Test mod (HD+ERA after_battle trigger)
   К сожалению я не знаю где достать предыдущие версии ХД мода, потому могу лишь сослаться на карту-мод от SergOz. У него стоит именно старая и "рабочая" версия ХД мода (5.0 RC 89)
Карта SergOz
   Для наглядности привожу также видео демонстрацию всего того, о чём выше написал:


Карта-мод: STALKER
28.06.2021 13:45
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #1582

helgtla, это не проблема, а результат её решения.

Данный вопрос намеренно поднимался, чтобы обезопасить рестарт карты или загрузку из битвы.

А вот, кажется, тот самый пост. Проблему и описание можно найти выше


Image: widget.png?style=banner2

Новейший Heroes Launcher
28.06.2021 14:03
Visit this user's website Find all posts by this user Quote this message in a reply
helgtla Offline
Moderators

Posts: 302
Post: #1583

(28.06.2021 14:03)daemon_n Wrote:  helgtla, это не проблема, а результат её решения.

   Я бы сказал, что для большинства авторских карт ЭТО именно проблема. И достаточно весомая!
   Во многих авторских ЭРА картах по завершению боя происходят некие действия: либо диалоги, либо ещё что (вплоть до того, что действия могут быть продолжительными по реальному времени (показ участка карты, телепортация героев и т.д.)).
   Бои на авторских картах, как правило создаются с учётом некоей сложности, что подразумевает, что их прохождение может потребовать перезагрузку битвы (не переигровку, а именно перезагрузку) для изменения сетапа героя/артов/войска. И часто подобные загрузки приходится проводить отнюдь не единожды. А это приводит (при данной реализации) к постоянному "просмотру постсодержимого битвы" при каждой попытке грузиться из боя (в таком случае сама опция "быстрой боевой загрузки" теряет смысл, так как это практически идентично тому, как если бы игрок сначала завершил бой на "Q", а после попытался загрузиться в стандартном режиме).
   И мне кажется (хотя я и не играю особо), что подобные "постбоевые триггеры" достаточно часто используются и других модах, применяемых именно что для игры на случайных картах (я про ТУМ и АКМ).


Карта-мод: STALKER
28.06.2021 14:23
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #1584

helgtla, ранее, если грузиться из боя, игра ломалась. Этим всё сказано.


Image: widget.png?style=banner2

Новейший Heroes Launcher
28.06.2021 14:31
Visit this user's website Find all posts by this user Quote this message in a reply
helgtla Offline
Moderators

Posts: 302
Post: #1585

(28.06.2021 14:31)daemon_n Wrote:  helgtla, ранее, если грузиться из боя, игра ломалась. Этим всё сказано.

   А можно поподробней, что именно "ломалось"? Не возможно было загрузить/инициировать загружаемую сессию, крашилась сама игра , может "запарывалось" физически сам сейв файл. Что именно?
   А то сейчас, я пока не замечал проблем по сравнении с предыдущей реализацией загрузки из боя. Но вот обновлённый вариант гарантированно вызывает "раздражение" (я не только про себя говорю, но и по отзывам некоторых тестеров-игроков).
   Может есть тогда какая-либо возможность при сохранении версии ХД мода (обновлённых версий) вернуть старый функционал боевой загрузки (если это возможно как-то твиками сделать)?
    Повторюсь: то что есть на данный момент - крайне неудобно в плане игрового взаимодействия с игроком.


Карта-мод: STALKER
28.06.2021 14:46
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #1586

helgtla, ломались скрипты. И немало. Погибал командир. Портилось немного сохранение.

Berserker, заметил, что в чате не отображаются символы "{~>", когда печатаешь. Зато они точно подхватываются, и можно в чат отправить картинки)

Без HD: не выходит , так как он преобразует "{" в "[", а не отображается только "~"
C HD: не отображаются именно "{~>"

Не думаю, что это вообще есть смысл как-то править, но всё равно случай забавны -- отправил картинку с деревом в чат онлайн-лобби))


Image: widget.png?style=banner2

Новейший Heroes Launcher
28.06.2021 14:57
Visit this user's website Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #1587

helgtla, в HD моде решение сделано верное.
Конкретно в твоём случае нужно придумать правильный способ определения, что из боя вышли перезагрузкой, а не победой/поражением.

Upd: самый простой способ (на вскидку...), это после битвы проверить параметр
o_BattleMgr->Finished != 1
Но это не точно, нужно проверять. Но на работе я этого сделать не могу.


game bug fixes extended.dll || My Plugins || My GitHub
28.06.2021 15:01
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #1588

Как раз старый способ выхода из боя ломал всю цепочку триггеров, включая OnGameLeave, поскольку был реализован хакерским способом. Реально бой должен закончится, затем эмулируется выход в меню загрузки.

Хорошо, если Игрик найдёт решение. Возможно, было бы неплохо, если бы HD-мод генерировал событие вроде OnLoadGameFromBattle. Бой заканчивается победой или поражением?


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
28.06.2021 15:49
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #1589

Berserker, что-то очень плохое случилось в 3.8.3 на 3.8.2 тоже, и на 3.8.1

SRand даёт разные результаты - вновь в игре рассинхрон.
Не только в бою, но ещё и на старте карты


Версии 3.8.0 чистой не нашёл.


В общем, отвлекусь пока на сингл


Image: widget.png?style=banner2

Новейший Heroes Launcher
30.06.2021 12:07
Visit this user's website Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #1590

(28.06.2021 15:49)Berserker Wrote:  Хорошо, если Игрик найдёт решение. Возможно, было бы неплохо, если бы HD-мод генерировал событие вроде OnLoadGameFromBattle. Бой заканчивается победой или поражением?
Не нашёл я простого решения, как не бился. Либо нужно хук создавать (но его там тупо некуда впихнуть) либо самое правильное решение - получать событие от HD. Нужно репортить Бараторчу.

Кстати, при этих тестах обнаружил, что UN:C (расширенное, которе со смещением) как то не всегда верно отрабатывает.
Например, в ряде случаев:

1) Старый синтаксис всегда работает правильно:
UN:C(адрес)/4/?(param:y);
VR(адрес2:y):S(param) +(offset);
UN:C(адрес2)/4/?(value:y);

2) Новый синтаксис НЕ всегда работает правильно, и очень часто мне возвращал value=ноль:
UN:C(адрес)/(offset)/4/?(value:y); (upd: не правильно)
UN:C(адрес)/4/?(адрес2:y);
UN:C(адрес2)/(offset)/4/?(value:y); (upd: правильно)

Т.е. я запускал оба кода одновременно и в одном триггере, первый мне возвращал value=данные, второй value=ноль.

Настоящий пример приведу вечером.


game bug fixes extended.dll || My Plugins || My GitHub
30.06.2021 13:04
Visit this user's website 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