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

Full Version: ERA II
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(05.02.2020 06:33)Berserker Wrote: [ -> ]ЕРМ полон сюрпризов. Неприятных. Вопрос знатокам, что выведет код?

!!VRi:S0 +37;
!!IF:M^%Vi^;
Он выведет 37. Или какой по твоему мнению должен быть результат?
(05.02.2020 06:33)Berserker Wrote: [ -> ]!!VRi:S0 +37;
!!IF:M^%Vi^;

Выводит 37. Без сюрпризов (проверил на ERA+).
На 2.9.5 выводит 37.
Но с i-переменной была у меня какая-то грабля, когда из нескольких операций последняя (или вторая) не учитывалась.
y-переменные на ее месте нормально работали.
Я, емнип, даже писал об этом, но локализовать появление этого глюка не смог. И если у тебя случился именно он, то выведет 0.
Вместо 0 попробуйте любую f..t быструю переменную. Будет грабля. Постараюсь исправить.
Image: update-sm.jpg

Version 2.9.9

Code:
[+] Added support for loop level in !!br (BREAK) and !!co (CONTINUE) loop controlling receivers.
    !!br 1:; is the same as !!br:; and means break current (innermost) loop.
    !!br 2:; will break outer level loop, !!br 3:; even higher level.

    Example:
    !!re i/0/6:; loop level 2
      !!re j/0/4:; loop level 1
        !!IF:M^%Vi %Vj^;
        
        !!if&i=3:; The last shown message will be "3 0"
          !!br 2:; break loop level 2
        !!en;
      !!en:;
    !!en:;

[*] XX:Z command is no more a special command. Disabling ERM receivers is not supported.
    57 - freelancers guild.erm will not work propertly.

[-] Fixed wrong ERM interpreter handling of spaces as commands. Example: !!VRy1:Sj +100 used to treat
    space as command and silently consume '+100'. Now spaces between subcommands are fully supported.
    !!VRy1:Sj +100 *4 -7;

[-] Fixed occasional savegames data corruption.

Скачать

Image: e29aa1.png Вышло обновление HoMM 3 ERA
Текущая версия: 2.9.9

Image: f09f9383.png Что нового ?

Image: e2ad90.png Появилась возможность прерывать/продолжать циклы верхних уровней с использованием команд !!br и !!co.
Image: e2ad90.png Рудиментарная универсальная команда отключения ресиверов XX:Z была удалена.
Image: e2ad90.png Исправлен ЕРМ интерпретатор: теперь любое число пробелов перед командами воспринимается корректно. Меньше багов, чище код.
Image: e2ad90.png Досадная ошибка, запарывающая сохранённые игры, исправлена.
Image: e2ad90.png Данная версия идеально подходит для нового мода «Расширенные Жилища»

Скачать: https://mods.hmm35.ru/Era%20Latest.exe
(06.02.2020 04:57)Berserker Wrote: [ -> ][*] XX:Z command is no more a special command. Disabling ERM receivers is not supported.
Это что за такая интересная команда? Я впервые о ней слышу.

Berserker, а следующая версия будет уже 3.0.0?
Т.е. следующий этап это Lua?
On the road to ERA III 20

Little issue in 2.99

"New Upgrades Mod" gives ERM error

Old:

Debug + Mod
https://dropmefiles.com/edvd7

For me, it seems the coding in this old mod was just sloppy.
(06.02.2020 11:37)igrik Wrote: [ -> ]Это что за такая интересная команда? Я впервые о ней слышу.

Если имеется в виду LE:Z, то судя по исходникам - изменение данных в воговской таблице _ToDo_. Т.е. во время выполнения команды можно изменять какие-то параметры этой самой команды, ну и просто выключить её. Соответственно, носит чисто технические цели, наверное была бы полезна при отладке (документации по ней никакой нет). Можно было бы документировать и оставить для ERA, зачем было выпиливать?
igrik, команда отключает ресивер. После чего без включения он не выполняется. В гильдии наёмников так отключаются некоторые функции. Представь, что в С++ вместо заведения флага и выхода из события по нему отключаются сами функции и прочие операторы. Костыль ужасный. Нашёл использование только в 1-м воговском скрипте. Более того, команда обрабатывается универсально для всех ресиверов. То есть нельзя сделать HE:Z или MO:Z.

PerryR, old code was erroneous as I see. Without "S" the first space and variable were simply skipped, and the command started from -*:.
Thus, effectively, it was the same as !!VRv9590: 987654321 -v9589; If you find any other scripts with such defects, please write me.
igrik, нумерация версий (4 знака): X.X.XX, то есть дальше в этой ветке могут быть .10-.99.
Реально же только исправление багов и заморозка фич.

На ветку 3 да, развитие только Lua-библиотек. ЕРМ можно использовать текущий тоже.
XEPOMAHT, иронично, нет? )

Typhon:
; Убрать проверку, запрещающую использование ERM-команд Z
mov byte [741ECDh], 0EBh

UN:Z -команды…
(06.02.2020 22:01)Berserker Wrote: [ -> ]; Убрать проверку, запрещающую использование ERM-команд Z
mov byte [741ECDh], 0EBh

Это из MoP перекочевало в Тифон. Мастера рук дело. Так же можно было взять из MoP и поставить в WoG-опции встроенную опцию, вообще выключающую в игре весь ERM 148 .
Berserker, а ты когда закончишь активную стадию разработки? А то я уже несколько раз пытался помодить, но ты с такой скоростью релизишь, что не успеваю остановиться на какой-либо платформе. Вроде на 2.9.5 была "передышка", только поставился, успел BH чуток подпилить - бац, и уже 2.9.9. Опять тестить...
Не, я не против, ты не подумай, просто когда закончатся ближайшие планы или время, скажи пожалста.

Кстати о времени, откуда вдруг столько? Развелся? Или отправил в роддом?
Algor, уже, в основном только баги дальше. Времени мало, сколько можно в свободное время, сделал.
Испортилась команда !!UN:L#1/#2/#3/#4
Переместить взгляд на позицию
    #1 – X
    #2 – Y
    #3 – L
    #4 – время ожидания (1000 = 1 секунда)

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

Демонстрация:

Не знаю, с какой версии началось, в Эре 2.8 вроде работало нормально.
Reference URL's