Current time: 22.11.2024, 02:03 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
ERA II
» WoG Era 2: Русская и Английская версии
Author Message
SyDr Offline

Posts: 1054
Post: #2551

Image: image.png
17.11.2017 22:51
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #2552

SyDr, ты-то как поживаешь? )
17.11.2017 23:26
Find all posts by this user Quote this message in a reply
SyDr Offline

Posts: 1054
Post: #2553

Disclaimer: я по прежнему считаю, что на wforum любая тема подходит для любых обсуждений, на любом языке (хотя, желательно, чтобы собеседник мог читать переписку)

Пару недель назад (ещё до твоего возвращения) я снова взялся за SD MM. Теперь уже с кое-каким багажом опыта на C++ и лучшим пониманием, чего я хочу добиться. Где бы только ещё времени свободного побольше найти.

А жизнь... Ну... Всё по прежнему и ничего не меняется Ab
18.11.2017 00:12
Find all posts by this user Quote this message in a reply
Heromant Offline

Posts: 348
Post: #2554

(17.11.2017 17:12)Berserker Wrote:  Это ЕРМ-скрипт? Нет, это новая убер-фича под скромным названием «Отслеживание ЕРМ» (ERM Tracking).
Вставить текст в новый ERM файл в ERM editor и сохранить под уникальным именем в "s" любого из модов?
А тормозить игру он будет? Какие у файла зависимости? Что такое
!!SN:W^algor_csf_stack^/?y1 W^algor_csf_cmndr^/?y2; in bh battle.erm on line 1868 at pos 4?
Требуется ли файл battle.erm, либо это просто пометка о том, откуда позаимствован код?
18.11.2017 01:26
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #2555

SyDr, прекрасно! Рад тебя видеть снова вообще и в строю в частности. Скажи, есть последняя версия, которая вполне рабочая и стабильная из тех, что ты писал ранее?

Heromant, нет, этот файл предназначен для анализа с целью определения причины бага или вылета, а то и просто отладки или изучения. Представь себе два файла:

script 1.erm
!?CM0;
!!CM:R0;

script 2.erm
!?CM0;
!!IF:M^Вы щёлкнули мышью^;

При щелчке правой кнопкой на карте приключения генерируется событие

!?CM0; [здесь в виде комментария указаны флаги и часть ЕРМ переменных на момент генерации события]

Дальше выполняется команда-обработчик из первого скрипта:
!!CM:R0; in script 1.erm on line 1

Дальше выполняется команда-обработчик из второго скрипта:
!!IF:M^Вы щёлкнули мышью^; in script 2.erm on line 1

Итого имеем запись, какие события генерировались и какие команды из каких скриптов в каком порядке выполнялись:
!?CM0; [...]
!!CM:R0; in script 1.erm on line 1
!!IF:M^Вы щёлкнули мышью^; in script 2.erm on line 1
18.11.2017 02:55
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #2556

Потерплю, конечно. Менеджер отличный!

Вышло обновление до 2.47.8

- Implemented fully featured ERM tracking support: track all executed triggers and commands in order to defeat bugs and learn game mechanics.
- Improvated named functions support. Added programmatical ability to get function name by ID.

Файл настроек прилагается, но дублирую:
Code:
[Era]
CpuPatch               = 1; reduce cpu load from 100% to 1-5%, may conflict with high resolution mice
UseOnlyOneCpuCore      = 1; if true, only one CPU core will be used, decreasing probability of crashes
FixGetHostByName       = 1; if true, current PC IP address detection is improved to exclude local addresses (192.168.x.x, etc)
LoadCD                 = 0; if true, an attempt to load resources from CD disk will be made, increasing game initialization by about 3-5 seconds
IgnoreInvalidReceivers = 0; not implemented

Debug                               = 1;      allow debugging at all or not, see Debug\Era directory
Debug.Everything                    = 0;      if true, enable all debugging options at once
Debug.AbortOnError                  = 0;      abort on serious, but not critical errors or not
Debug.LogDestination                = File;   logging driver: File or Console
Debug.LogVirtualFileSystem          = 0;      if true, Virtual File System work will be logged
Debug.DumpSavegameSections          = 0;      if true, each game saving will create dump of each Era section in a separate file
Debug.TrackErm                      = 1;      if true, ERM commands and triggers will be tracked for report/debugging purposes
Debug.TrackErm.MaxRecords           = 10000;  maximal number of commands and events to track (1 record ~= 100 bytes RAM)
Debug.TrackErm.DumpCommands         = 1;      if true, all commands texts will be saved during execution, allowing to track ERM commands, executed by plugins
Debug.TrackErm.IgnoreEmptyTriggers  = 1;      if true, trigger start - trigger end pairs without executed commands will be ignored
Debug.TrackErm.IgnoreRealTimeTimers = 1;      if true, real time timers (!?TL) will be ignored

Воспользоваться отслеживанием ЕРМ просто — жмите F11 или дождитесь вылета, после чего прямиком в папку Debug\Era.
HD Mod при вылетах сейчас не даёт записаться отладочной информации, но это исправлю.
19.11.2017 00:39
Find all posts by this user Quote this message in a reply
Heromant Offline

Posts: 348
Post: #2557

Berserker, а в этой 2.47.8 по сохранением нет обратной совместимости?
По факту старые сейвы не грузятся - всё виснет при загрузки. Причём новые, где игра начата уже с данной обновой, грузятся нормально.
(This post was last modified: 19.11.2017 02:03 by Heromant.)
19.11.2017 02:01
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #2558

Забыл сказать, что формат сохранений изменился. Прошу прощения. Понадобилось очень.
19.11.2017 02:15
Find all posts by this user Quote this message in a reply
Heromant Offline

Posts: 348
Post: #2559

Выходит эта новая убер фича со стеком вызовов в логах сейчас полезна только, если запускать без HD mod?
19.11.2017 02:24
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #2560

Нет, по F11 работает. Не работает только при вылетах. Это уже исправляю.
19.11.2017 02:31
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #2561

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

Эх, а я выпилил у себя RecallApi во время перехода на патчер.
19.11.2017 02:52
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #2562

- Implemented support for multiple UnhandledException handlers, now both HD and Era handlers do their job.

Исправил.
19.11.2017 04:47
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2819
Post: #2563

(17.11.2017 18:55)igrik Wrote:  Осталось реализовать толковый метод двойного нажатия в окне повышения командира (link)
Сделал. Мод перезалил по той же ссылке.
Т.к. в текстовике добавилось строк (которых не было в оригинальном "znpc00.txt", но без них никак) нужно дополнить английский текстовик. (txt)

Теперь нужно обкатать диалог с целью проверить его на ошибки и вылеты.


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

Posts: 16657
Post: #2564

Не мог день зайти на форум, видно, локальные проблемы. Спасибо, выкачал. А в пак текстовик не положил?
20.11.2017 00:31
Find all posts by this user Quote this message in a reply
Heromant Offline

Posts: 348
Post: #2565

Berserker, что-то в последней версии выделение городской постройки контуром пропало и с HD и без.
20.11.2017 02:43
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