Current time: 25.11.2024, 01:08 Hello There, Guest! (LoginRegister)
Language: english | russian  

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

Posts: 16657
Post: #2191

Archer30, right, outdated vfs.dll in installer. Thanks.

Quote:а глюк с обновлением как я понял, для Эры так и не исправили.
Обновлением чего?


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

Posts: 2356
Post: #2192

(10.03.2023 06:46)Berserker Wrote:     Если два патча ставятся в пересекающуюся область, то они сами по себе уже несовместимы.

Да, в том то и дело, что проблема в совместимости, когда патчи эры, сделанные низкоуровневыми WriteData или WriteCode приходится перетирать тем же бараторческим WriteByte, чтобы патч было видно в "x86 patches.txt", в итоге команда WriteData, вызванная из ЭРЫ по какой-то причине затирает в 2 раза больший код, о чём можно узнать только в ollydbg, сам же "x86 patches.txt" показывет при этом, что там ничего затёрто не было. В общем, патчер совершенно не расчитан на отмену и перезапись чужих хуков, а в глобальных модах типа ERA+ эта штука нужна даже очень. Поэтому приходится делать выход из хука намного ниже, чтобы обходить испорченный патчером код.

(10.03.2023 06:46)Berserker Wrote:  а что за беда с версией 5.3 HD мода?

В начале в патчере замем-то отменили поддержку Windows 5.XX, затем вернули, но с утечками памяти и случайными вылетами при открывании/закрывании случайных окон. Далее, все вылеты патчера починили в SoD-версии, но в WoG-версии с этим не торопились и чинили по мере жалоб игроков. С каждой новой версией HD-мод работал всё более стабильнее, сейчас, по крайней мере у меня, вылетов патчера с WoG-ом в HD-моде не наблюдаю, надеюсь, что Бараторч исправил все критические ошибки, которые были добавлены после отмены и восстановления поддержки Windows XP и 2003.
10.03.2023 07:45
Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1175
Post: #2193

It looks like any dialogue before PVP battle can lead to desync. In ERA, Astral Spirit's ability to persuade the enemy's troops does this job.
My suggestion is to hide this dialogue in PVP.
And maybe create a switch that can globally turn off all the dialogue before PVP battle.


Latest ERA mods and scripts in development - My GitHub
13.03.2023 20:00
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #2194

Archer30, it requires using callback function to call any functions from it to resolve that issue


Image: widget.png?style=banner2

Новейший Heroes Launcher
13.03.2023 22:19
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #2195

Quote:в итоге команда WriteData, вызванная из ЭРЫ по какой-то причине затирает в 2 раза больший код
WriteData затирает ровно столько байт, сколько передано. Не встречал ни разу багов с ней.

Archer30, yep, messages before battle should be shown in !?BA0 trigger probably, before sending data to remote side.


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

Posts: 4343
Post: #2196

Berserker, actually !?BA0; doesn't work for non active PC player at all;
so if AI attacks non active player, then we have some bugs there;


Image: widget.png?style=banner2

Новейший Heroes Launcher
14.03.2023 09:13
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #2197

Происходит рассинхронизация? Кто-нибудь смотрел в режиме отладочного вывода случайных чисел в консоль?


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

Posts: 4343
Post: #2198

Berserker, числа не смотрел, но рассинхрон происходит.


Image: widget.png?style=banner2

Новейший Heroes Launcher
15.03.2023 00:57
Visit this user's website Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1175
Post: #2199

Berserker, it seems to me there is serious problem of UN:I - it can fail on AI turn.

I found this from about 5 player reports. In my script Dragon Town, when AI tries to build the new town on the location of a defeated Utopia, the town has chance not appearing on the map, yet the structure of the town has been created and corrupted. This means the game will crash soon on the next week when executing 005BFF60 (fucntion for getting creature growth, it gets wrong creature ID). While on a human players's turn, this has never been reported. There was no player claiming that he paid the resources and the dragon town did not appear.

Any idea?

For now I will have to disable AI interaction in the script.


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 15.03.2023 03:15 by Archer30.)
15.03.2023 02:18
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline
Moderators

Posts: 2356
Post: #2200

(15.03.2023 02:18)Archer30 Wrote:  Any idea?

У тебя там какая-то странная команда, которой нет в хелпе:

Code:
; Generate a random number
!!VR(random:y):R0/1/15;

Случайный номер города - значения от 0 до 8 (в обычной ЭРЕ) или от 0 до 11 (в ERA Plus).

Из несуществующих типов городов нельзя получить их прирост и тем более поставить на карту.
15.03.2023 02:41
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #2201

XEPOMAHT,

Quote:Version 3.0.0 (06/2020)
------------------------
[+] Added new command !!VR:R0/#min/#max, generating random value in specified range and assigning its to variable.
    Example: !!VRy1:R0/100/300; set y1 to random value in 100..300 range


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

Posts: 1175
Post: #2202

XEPOMAHT, I hope you enjoy learning new syntax from my scripts 96-copy

The random number here is for getting a random name for the new town. It is not the type of the town. The town type is determined by the type of the hero.


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 15.03.2023 03:05 by Archer30.)
15.03.2023 03:02
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline
Moderators

Posts: 2356
Post: #2203

(15.03.2023 03:02)Archer30 Wrote:  I hope you enjoy learning new syntax from my scripts 96-copy

Да, я по-прежнему пользуюсь старым синтаксисом, т.к. пишу на ERM крайне редко. В основном использую Ассемблер вместо ERM у себя в опциях игры.

(15.03.2023 03:02)Archer30 Wrote:  The random number here is for getting a random name for the new town. It is not the type of the town. The town type is determined by the type of the hero.

Тогда эта команда

Code:
!!UN:I(x)/(y)/(z)/(OBJ_TOWN)/(townType)/(OBJ_TOWN)/(townType)/(terrain)/0; [x/y/z - the right bottom corner of the town]

откуда берёт тип города? Посмотрев скрипт, вижу что (townType) нигде не задаётся с помощью команды !!VR(townType). И тип этой переменной не известен (в старом ERM сразу виден тип, а тут - хрен пойми, как будто скрипт не полный).
(This post was last modified: 15.03.2023 03:32 by XEPOMAHT.)
15.03.2023 03:29
Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1175
Post: #2204

XEPOMAHT,


It's not that messy. Just be aware that the first time a variable appears in a function, it has to be declared with ":y" ":x" ":z" depending on the type of var.


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 15.03.2023 03:53 by Archer30.)
15.03.2023 03:31
Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #2205

Berserker, а проверки без второго слагаемого разве разрешены в ERM2? Не знал.
Code:
!!UN&(ERM_FLAG_IS_HUMAN):R2;

или
!!UN:P73/?(enhWMIII:y);
!!PO(x)/(y)/(z)&(enhWMIII):H1 T1;


game bug fixes extended.dll || My Plugins || My GitHub
15.03.2023 08:50
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