Wake of Gods Forum | Форум Во Имя Богов
Режим совместимости Эры 3 со скриптами Era 2.46f - Printable Version

+- Wake of Gods Forum | Форум Во Имя Богов (http://wforum.heroes35.net)
+-- Forum: Герои Меча и Магии 3.5 WoG/ERA (/forumdisplay.php?fid=99)
+--- Forum: Моды (/forumdisplay.php?fid=104)
+---- Forum: ЭРА / ERA (/forumdisplay.php?fid=182)
+---- Thread: Режим совместимости Эры 3 со скриптами Era 2.46f (/showthread.php?tid=5898)


Режим совместимости Эры 3 со скриптами Era 2.46f - Berserker - 09.01.2021 16:33

Предлагается ввести для ЕРМ 1 скриптов по умолчанию на уровне триггеров и команд режим совместимости с Era 2.46F для поддержки и быстрого переноса старых модов.

Для этого предлагаю писать здесь те изменения Эры 3, которые повлияли на выполнение старых скриптов негативно. Что-то можно будет выполнять по-старому, что-то не делать, а с чем-то смириться.

-) f..t переменные были глобальными.

-) Отрицательные y-переменные сохранялись при вызове не !!FU1..FU29999 триггера и восстанавливались после.

-) Не переданные x-переменные не обнуляются в FU:P/DO:P, а сохраняют предыдущие значения.

-) Не переданные z- переменные не устанавливаются в пустую строку в FU:P/DO:P, а сохраняют предыдущие значения.

-) В DO:P на каждой итерации цикла поддерживался синтаксис

?$ - x-переменная устанавливалась в индекс переменной возврата.
?v600 устанавливало x-переменную в 600 на каждой итерации цикла.

=$ - x-переменная на каждой итерации цикла устанавливалась в значение $, вычисленное заново.

Что ещё не даёт нам пользоваться картами Валеры или модами Алгора?


RE: Режим совместимости Эры 3 со скриптами Era 2.46f - Bes - 09.01.2021 17:59

-) отключение поддержки !!XX:Z команд

-) математические команды через пробел в одном ресивере ранее работали не так как щас, и многие могли теми старыми ошибками ЕРМ пользоваться как-то иначе при балансировке скриптов и/или внедрять без заднихъ мысле й временные костыли, которые щас попросту могут приводить к ошибкам

-) удалена поддержка записи в переменную через !!VRvar1:S?var2; var2=var1

-) ранее можно было не париться с порядком префиксов d и c: !!GE100:Fcd5; равнозначна !!GE100:Fdc5;

-) изменена система вычисления номеров раундов битвы

-) раньше карты со скриптами работали иначе чем на нынешней ERA3

-) ну, я уже не упоминаю разные моды WoG, который после Era2.46 довольно сильно правился и потом ещё частично использовал новые команды и возможности ERA2.46f+
Так же и некоторые патчи и плагины правились, Мод Менеджер и поддержка нынешнего HD-mod может иначе работать на старой Era


P.S. учти что некоторые свои моды Algor уже заточил под ERA2.9.x, которые уже на ERA3 глючат


RE: Режим совместимости Эры 3 со скриптами Era 2.46f - Bes - 09.01.2021 18:13

Это как-то тоже важное изменение? Unsure
Code:
Version 2.8.4

[+] Rewritten scripts loading/saving/exporting engine...



RE: Режим совместимости Эры 3 со скриптами Era 2.46f - Algor - 09.01.2021 18:44

(09.01.2021 17:59)Bes Wrote:  P.S. учти что некоторые свои моды Algor уже заточил под ERA2.9.x, которые уже на ERA3 глючат

Не надо этого учитывать.
Я НЕ затачивал ничего под 2.9.х специально, собсно, как и прочие скриптеры.
И я не думаю, что стоит таким образом обеспечивать обратную совместимость - она же не для каждого отдельно взятогоскрипта/мода будет включаться. Такая реализация, имхо, только преумножит путанницу и коллизии.
Для старых модов есть старые стабильные, вылизанные сборки.


RE: Режим совместимости Эры 3 со скриптами Era 2.46f - Berserker - 09.01.2021 19:54

Bes, Algor, спасибо за ценные комментарии.


RE: Режим совместимости Эры 3 со скриптами Era 2.46f - wessonsm - 09.01.2021 20:02

Джинн уже выпущен из бутылки. Загнать его обратно - задача отнюдь не из легких.
Чтобы понять, что вызывает несовместимость, нужно массовое тестирование.


RE: Режим совместимости Эры 3 со скриптами Era 2.46f - Berserker - 09.01.2021 20:24

Quote:-) удалена поддержка записи в переменную через !!VRvar1:S?var2; var2=var1
Сделал поддержку. В 3.3 будет.

wessonsm, пожалуй, Алгор прав. Всего не учтёшь, для этого нужны стабильные сборки. Все изменения осмысленны и большинство толковых скриптов не затрагивают. Разве что быстрые переменные были глобальными, но здесь поиск по регулярному выражению в редакторе с заменой сработает на ура.