### Версия 2.235 #### WoG: - обновлён плагин "game bug fixes extended.dll": - теперь при полном блокировании урона отрядами не будет отображаться сообщение о нанесённом уроне; #### Advanced Classes Mod: - мод обновлён до версии 1.1: - Добавлено 2 новых уровня для каждого улучшения и зачарования боевой машины, всего 3. Также введены ультимативные улучшения/зачарования боевой машины. Их сложно получить, и они ограничены. - Введен новый параметр "Эффективность боевой машины", который можно получить, улучшая свою боевую машину, некоторые навыки, героев или артефакты. - Добавлены четыре новых счетчика характеристик: убитых рейдовых боссов, убитых боевых командиров, захваченных банков существ, зачищенных арен. (В следующем патче я добавлю еще больше статистики) - Переработан список бонусов и добавлено больше описаний при щелчке правой кнопкой мыши по текстовому полю (особенно о "Эффективности боевой машины"). - В разделе "Продвинутые классы" теперь доступна опция "Третий класс", предоставляющая экран прокачки героя с выбором из трех навыков. - На экране героя добавлено новое описание и информация при щелчке по боевым машинам на кукле героя. - Изменена специализация Арлаха, теперь он специалист по "Эффективности боевой машины". - Теперь характеристики командира, зависящие от масштабирования, лучше отображаются в статистике командира в диалоговом окне командной строки. - Теперь общее значение силы некромантии можно увидеть в списке бонусов. - Добавлена эффективность боевых машин к 4 артефактам, что повышает их полезность. - Добавлен скрипт для расчета продолжительности игрового времени для каждого игрока. - Теперь применение заклинаний будет переопределять эффект предыдущих примененных заклинаний с текущей силой модификатора заклинаний. Теперь применяются корректные эффекты заклинаний. - Масштабирование всех артефактов командира уменьшено вдвое. Например: раньше вы получали +1% HP за каждый бой, теперь для этого нужно два боя. - Все артефакты командира можно снять, не теряя счетчик. Командир также может погибнуть, и бонусы не исчезнут. (Улучшение качества жизни ;-)) - Увеличена сила Героев-Призывателей (бесплатное применение заклинаний на 25 уровне) и повышена эффективность тренера заклинаний. - Увеличено масштабирование урона Командира-Некроманта при воскрешении нежити. - Снижено масштабирование урона Командира-Бойца в зависимости от количества убийств, чтобы привести его в соответствие с другими классами. - Снижено масштабирование урона Огненного Мага. - Изменены детали накопления количества убийств Огненного Мага. Теперь количество убийств накапливается в зависимости от количества убитых юнитов и не получает случайного бонуса. - Класс Огненный Маг теперь получает выгоду от "Огненного Шара". - Командир-Конструктор может призывать только один раз за боевой раунд. - Несколько небольших комбинаций наборов артефактов были немного улучшены, теперь у них лучшие характеристики или бонусы. Теперь эти наборы дают лучшие бонусы для класса Воин, а не только для класса Маг. - Разведчики теперь имеют уменьшенное увеличение показателя уклонения при большом количестве убийств, достигающее максимума в 75%. - Немного снижено масштабирование способности "Пацифист" от командира "Астральный Дух". - Немного снижен бонусный урон баллисты от командира "Вождь Огров" до уровня 9+1: ранее он был уровня 6. - Снижен базовый урон баллисты с 4-6 до 3-5. - Удален двойной урон баллисты от навыка "Артиллерия". Отсутствие двойного урона теперь необходимо компенсировать с помощью "Эффективности мага". - Немного снижено масштабирование заклинания "Щит" для очень высоких значений "Силы магии" (на основе отзывов китайского сообщества). - Использование заклинания "Клонирование" требует дополнительных очков заклинаний, зависящих от количества и уровня цели. "Клонирование" может быть, безусловно, самым эффективным заклинанием по нанесению урона. Это немного уравновешивает затраты. Соотношение может измениться в будущем. - Немного снижена вероятность уклонения от атак с комплектом "Упряжь Пегаса". - Исправлена ошибка, из-за которой пассивная способность "Пожиратель душ" некорректно оживляла скелетов во время боя как для атакующей, так и для защищающейся стороны. - Исправлена ошибка, из-за которой одновременная экипировка нескольких свитков призыва полностью теряла свой эффект. - Исправлена ошибка, из-за которой скорость командира охотника в некоторых случаях обнулялась. - Исправлена ошибка, из-за которой способность командира отравлять, восстанавливать здоровье и блокировать могла исчезнуть после боя. - Исправлен расчет урона от перка "Блок" командира Тротсы (ограничение 100% шансом блокировать 95% урона). - Исправлена ошибка, из-за которой при смене профессии командира в бою количество убийств после повтора боя не возвращалось к значению до боя. - Исправлена ошибка с "Ботинками полярности" (они всегда давали бонус к передвижению), а не только в 33% случаев. - Исправлена ошибка, из-за которой призванные существа или клоны в некоторых случаях больше не теряют скорость во втором раунде боя. - Исправлен расчет емкости лечения для героя с ID 0 при игре на стороне защитников. - Исправлена ошибка, из-за которой усиление характеристик генерала предоставлялось каждый раз и игнорировало статус мастерства. - Исправлена ошибка, из-за которой Огненный Маг иногда не мог получить повышение до Древнего (спасибо 神月初雪). - Исправлена возможная ошибка при выборе класса Древнего командира на экране выбора (спасибо 神月初雪). - Исправлена ошибка, из-за которой таблица Тренера Заклинаний на экране героя не работала из-за отсутствия ID героя. - Исправлено поведение расчета урона от заклинаний при открытии книги заклинаний с карты Adv. - Исправлена ошибка с мастерством командира Мстителя (всегда было активно). - Исправлена ошибка, изучающая заклинания с помощью Орлиного Глаза теперь требует правильного уровня навыка EE. Ранее эта проверка игнорировалась. - Переработаны все эффекты оглушающего удара (снижены характеристики целей, используемых для магии Мастерской Резни, способностей командира Шамана и т. д.) (спасибо Archer30). - Способность "Меткий мундир" у машины снабжения теперь срабатывает после атаки в ближнем бою (а не до неё). - Способность "Магическая артиллерия" (из навыка EE) стрелять по врагам при входе на поле боя теперь не убивает всю группу врагов (минимум 1 единица здоровья). Это может предотвратить проблему зависания игры после войны в некоторых случаях. - Мифриловая броня, Острый меч и Кольцо "Глаз дракона" были переработаны таким образом, что отображаемые на экране значения урона теперь включают их увеличенный/уменьшенный урон. - Добавлен боевой журнал для естественного сопротивления друида. - Пассивная способность "Медаль заявления" теперь работает со всеми банками существ (включая пользовательские), ранее она работала только с некоторыми банками существ. - Волшебные грибы и опции поместья отключены по умолчанию в моде. - Восстановлено отсутствующее описание составного набора, которое было утеряно из-за изменений в моде GEM. - Исправлено исчезновение встроенной способности блокировки Торосара во время боя. - Исправлена частичная неработоспособность бонуса набора "Честь чемпионов" (спасибо TheInvisible). - Исправлено срабатывание удачи в бою. Отрицательная удача может по-прежнему оставаться проблемой после последних обновлений лаунчера. #### Game Enhancement Mod: - исправлена ошибка, возникающая при старте карт, с изменёнными постройками в городах; ### Версия 2.234 #### WoG: - обновлён плагин "game bug fixes extended.dll": - добавлена возможность отключить запрет на добавление боевых машин командирами в банках существ через ключ: ``` "gbfe.disable_fix.npc.creature_banks_war_machines": bool ``` #### Other: - новый Менеджер Модов (@SyDr) обновлён до версии 0.98.73, а имя исполняемого файла изменилось на "Mod Manager.exe": - Исправлены кое-какие ошибки; - Уменьшен размер .exe; - Обновлены языковые файлы (английский теперь тоже включает ключи, а не просто небольшой список категорий); - Добавлены кое-какие мелкие фичи; - Добавлена опция предупреждать либо информировать пост-фактум, какие моды были (ну или будут) выключены при автосортировке (по умолчанию отключено); - Тоже, что и пунктом выше, но при выключенной сортировке будет только показывать непосредственно несовместимые моды; - Убрана автоматическая проверка обновлений в портативной версии; ### Версия 2.233 #### WoG: - обновлён плагин "game bug fixes extended.dll": - исправлено сохранение функционала чит-кода на постройку всех зданий после выхода из игры; - исправлена невозможность воскресить Золотых Драконов (и прочих юнитов) заклинанием "Жертва" из-за иммунитета к заклинанию "Воскрешение" (заклинание 4-го уровня по умолчанию); - в список генерации объектов для случайных карт добавлен объект "Гильдия Наёмников"; #### Game Enhancement Mod: - обновлен плагин "Gameplay_GameplayEnhancementsPlugin.era" до версии 1.7.4: - отображение доступных построек теперь поддерживает индексы зданий выше 43 (поддержка новых зданий из плагина "new_towns.era"; - небольшие исправления прокрутки карты; #### ERA Scripts: - Максимум вторичных навыков: исправлено обнуление количества вторичных навыков у героя при работе с некоторыми плагинами и модами при перезагрузке карты; #### ERA ERM Framework: - Добавлена новая функция "!?FU(Battle_RedrawGridShadow);", исправляющая отрисовку дальности хода отрядов в битве, если была изменена их скорость; ### Версия 2.232 #### WoG: - обновлён плагин "RMG_CustomizeObjectProperties.era" до версии 1.32: - исправлено отображение имён и описаний артефактов; #### ERA Scripts: - Артефакты рюкзака: исправлена работа артефактов, приносящих золото; ### Версия 2.231 - hotfix ### Версия 2.230 #### WoG: - обновлён плагин "game bug fixes extended.dll": - исправлено переполнение Опыта Существ при соединении или перемещении отрядов; - исправлена некорректная формула подсчёта опыта при перемещении героя в гарнизон города; #### Game Enhancement Mod: - удалён скрипт "gem_crexpo_fix.erm" ## рекомендуется начать новую игру или нажать F12 после загрузки старой #### Other: - оптимизированы pac-файлы для некоторых модов; - удалены неиспользуемые файлы; ### Версия 2.229 #### ERA Scripts: - Сухопутная Навигация: переписан скрипт, исправлен некорректный подсчёт очков передвижения; #### TrainerX: - исправлен перерасчёт очков передвижения героя после закрытия диалога; ### Версия 2.228 #### WoG: - обновлён плагин "RMG_CustomizeObjectProperties.era" до версии 1.31: - в диалог Настроек Генерации добавлен объект "Святилище"; - исправлена генерация Заснеженного Рынка (теперь использует счётчик объектов обычного Рынка); #### WoG Scripts: - небольшие исправления замены объектов; #### ERA ERM Framework: - Добавлена новая функция "!?FU(DL_SetPlayerColor)", позволяющая установить корректный цвет игрока для кастомных диалогов (DL): ``` !?FU(DL_SetPlayerColor); ; Установите правильный цвет фоновой рамки диалога. Вызовите DL:N перед попыткой использования этой функции. !#VA(dlgId:x); ID DL-диалога; !#VA(playerId:x); Опционально. ID игрока, цвет которого надо установить. По умолчанию устанавливается цвет взаимодействующего с диалогом игрока; ``` #### Other: - обновлёна мануал по отключению DEP (Help/DEP_tutorial.html); ### Версия 2.227 #### WoG: - обновлён плагин "RMG_CustomizeObjectProperties.era" до версии 1.30: - теперь в диалоге Настроек Генерации отображаются все доступные def'ы для соответствующих типов и подтипов; - исправлена логика создания списков для генерации объектов; - повышена производительность; #### WoG Scripts: - ВоГификация: - теперь помещаемые скриптами объекты будут соответствовать почве, на которую они помещаются; - исправлено помещение объекта "Случайный Монстр" вместо артефакта "Книга Заклинаний"; - Улучшения за мифрил: исправлено описание для текста улучшения Монолитов; ### Версия 2.226 #### WoG: - обновлён плагин "game bug fixes extended.dll": - теперь чит-код для выдачи ресурсов также добавляет 100 единиц мифрила; #### Game Enhancement Mod: - обновлен плагин "Gameplay_GameplayEnhancementsPlugin.era" до версии 1.7.3: - исправлен метод обновления информации о количестве мифрила; #### WoG Scripts: - Улучшенные Командиры: исправлено показ сообщения с выбором ресурсов при подборе Камней Силы; ### Версия 2.225 #### WoG: - обновлён плагин "Interface_MainMenuAPI.era" до версии 1.8: - теперь новые кнопки интерфейса главного меню скрываются при открытии меню "Авторы" и "Рекорды"; - обновлён плагин "ERA_MultilingualSupport.era" до версии 2.4: - добавлена совместимость с плагинами, изменяющими количество героев; ### Версия 2.224 #### WoG: - обновлён плагин "Interface_MainMenuAPI.era" до версии 1.7: - исправлено мерцание кнопок интерфейса главного меню ### Версия 2.223 #### WoG: - обновлён плагин "RMG_CustomizeObjectProperties.era" до версии 1.29: - исправлена невозможность генерировать новые объекты; - исправлен цвет игрока для отображения разрушенной Сельской Управы; ### Версия 2.222 #### WoG: - обновлён плагин "game bug fixes extended.dll": - теперь для объектов со свойством "плоский" отрисовывается тень на Карте Приключений; - теперь при разрушении зданий в городах без фортов на Карте Приключений будет отображаться Сельская Управа; #### Game Enhancement Mod: - обновлен плагин "Gameplay_GameplayEnhancementsPlugin.era" до версии 1.7.2: - добавлено отображение подсказки о строительстве в диалог просмотра города при нажатии на ПКМ и в окно самого города; ### Версия 2.221 #### Game Enhancement Mod: - удалено отображение символа "1" на верхней иконке в списке городов; ### Версия 2.220 #### Game Enhancement Mod: - обновлен плагин "Gameplay_GameplayEnhancementsPlugin.era" до версии 1.7.1: - исправлено исчезновение подсказки о построенных зданиях в городах при полном завершении движения героев; - отключен показ подсказки во время хода ИИ во избежании багов отрисовки; ### Версия 2.219 #### WoG: - обновлён плагин "wog native dialogs.era": - Теперь в диалогах Чёрного рынка и Торговца Артефактами доступно открытие окна активного героя; #### WoG Scripts: - Неделя монстров: теперь при наступлении новой недели отображается соответствующая контенту картинка; ### Версия 2.218 #### ERA - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле "/Help/Era manual/era iii changelog.txt" или просто кликните по версии ERA в главном меню игры; - ## обновление ядра era.dll до версии 3.9.27: - Исправлена ошибка рассинхронизации в сетевых боях PvP, возникавшая, когда процессор одного клиента поддерживал SSE 4.2, а другого — нет. Две системы использовали разные алгоритмы хеширования CRC‑32, что приводило к несовпадению обновлений состояния. Патч нормализует процедуру хеширования и обновляет экспортированную функцию `Hash32`, чтобы она выдавала одинаковые результаты на всех платформах независимо от мощности процессора. - Исправлено обрезание текста в многострочных текстовых диалоговых окнах. #### WoG: - обновлён плагин "game bug fixes extended.dll": - исправлен вылет на ход ИИ при расчёте морали в армии с Альянсом Ангелов; #### Game Enhancement Mod: - обновлен плагин "Gameplay_GameplayEnhancementsPlugin.era" до версии 1.7.0: - В окна Карты Приключений и Просмотра Города добавлено дополнительные иконки статуса строительства зданий: - Всё построено — жёлтая галка; - Доступны постройки для строительства, но не хватает денег — перечёркнутые золотые монеты; - Доступны постройки и хватает ресурсов — значок скрыт; - управляется через json-ключ "gem_plugin.building_hints.enable"; ### Версия 2.217 #### WoG: - обновлён плагин "wog native dialogs.era": - исправлены утечки памяти и вылеты из диалогов с динамическим изменением шрифтов; - для закрытия меню WoG-опций добавлена горячая клавиша "Esc"; - обновлён плагин "Interface_MainMenuAPI.era" до версии 1.6: - добавлена возможность лёгкой сортировки добавляемых кнопок: ``` Для виджетов добавлены 2 флага: ON_TOP - для отображения виджета ближе к началу списка; AT_BOTTOM - для отображения виджетов ближе к концу списка; ``` - обновлена API по относительному каталогу "Tools/Era/SDK/MainMenuAPI.hpp"; - мелкие исправления; - обновлён плагин "Assembly_MainPlugin.era" до версии 1.82: - добавлена поддержка нового API; - теперь кнопка "Уведомления" в главном меню отображается как можно ниже; - обновлён плагин "RMG_CustomizeObjectProperties.era" до версии 1.29: - добавлена поддержка нового API; - теперь кнопка "Настройки Генерации" в главном меню отображается как можно ниже и только в меню "Одиночная Игра"; - обновлён плагин "ERA_MultilingualSupport.era" до версии 2.3: - добавлена поддержка нового API; - теперь кнопка "Язык" в главном меню отображается как можно выше; ### Версия 2.216 #### WoG: - обновлён плагин "game bug fixes extended.dll": - добавлено ещё больше совместимости с плагином "Typhon"; - исправлено получение существами опыта не из битвы (опция "старт героев с 5 уровнем", например); - исправлена невозможность существам получать опыт, если уровень героя достиг максимального для данной карты; #### Game Enhancement Mod: - обновлен плагин "Gameplay_GameplayEnhancementsPlugin.era" до версии 1.6.4: - теперь в режиме "Hot-Seat" добавленные элементы интерфейса корректно окрашиваются в цвет игрока-человека (ещё до принятия хода); - возвращено отображение сообщения о достижении героем максимального уровня. Показываться будешь лишь раз для каждого героя; ### Версия 2.215 #### ERA ERM Framework: - Добавлена новая функция, позволяющая получить список активных модов (названия папок модами): ``` !?FU(GetModList); !#VA(arrayId:x); возвращает индекс массива строк с названиями (как в list.txt) !#VA(toLower:x); Опционально: сохранить названия модов в нижнем регистре; по умолчанию "НЕТ" !#VA(reverse:x); Опционально: развернуть список модов в массиве; по умолчанию "НЕТ" ``` #### Game Enhancement Mod: - Восстановлено оптимальное получение версии игры; - Мелкие исправления внутренних функций; #### WoG: - обновлён плагин "game bug fixes extended.dll": - исправлен вылет при атаки существ в ближнем бою с активным модом "ERA+"; ### Версия 2.214 #### WoG: - обновлён плагин "game bug fixes extended.dll": - исправлен вылет при атаки существ в ближнем бою с активным модом "ERA+"; #### TrainerX: - исправлен перерасчёт очков передвижения героя после закрытия диалога; #### WoG Graphics Fix Lite: - мод обновлён до версии 2.23.0; ### Версия 2.213 #### WoG Scripts: - Волшебство I: исправлено повреждение данных некоторых объектов при удалённом посещении; ### Версия 2.212 #### ERA ERM Framework: - исправлены константы для индексов классов героев; #### WoG Graphics Fix Lite: - исправлена маска проходимости для объекта "Городские Врата"; ### Версия 2.211 #### Other: - новый Менеджер Модов (@SyDr) обновлён до версии 0.98.71: - добавлена совместимость с Heroes Launcher v1.2.0; - добавлена опция "Создать новый мод" во вкладке "Инструменты"; ### Версия 2.210 #### WoG: - обновлён плагин "RMG_CustomizeObjectProperties.era" до версии 1.28: - добавлена работоспособность плагина без HD Mod; - исправлено дублирование банков существ в диалоге настроек объектов; - теперь артефакты, являющиеся частью сборников, не могут быть объектом заданий на случайных картах; - небольшие исправления локализации; #### Game Enhancement Mod: - удалён дублирующийся код для старых исправлений и изменений; ### Версия 2.209 - hotfix ### Версия 2.208 #### WoG: - обновлён плагин "game bug fixes extended.dll": - исправлена проверка на уязвимость к ликантропии у командиров и богов; - оптимизация механики ликантропии в быстрой битве; - у Призраков и Посслаников всех стихий удалён иммунитет к магии огня; - исправлено название и описание юнита "Призраки"; ### Версия 2.207 #### Game Enhancement Mod: - добавлена заглушка "StartArmyAllSlots.bin" для избежания вылета на старте игры; #### Other: - удалены лишние файлы; ### Версия 2.206 #### WoG: - обновлён плагин "AssemblyMainPLugin.era" до версии 1.81: - теперь при просмотре "Авторов" скрывается панель уведомлений; - исправлено некорректное отображение цветной полоски под названием уведомления, если текст слишком длинный; - обновлён плагин "game bug fixes extended.dll": - теперь при наведении на монстров с заклинанием "Видение" показывается их точное количество в строке состояния; - обновлён плагин "RMG_CustomizeObjectProperties.era" до версии 1.27: - исправлена неработоспособность новых объектов; #### Game Enhancement Mod: - обновлен плагин "GameplayEnhancementsPlugin.era" до версии 1.6.3: - исправлен вылет из игры при просмотре информации об артефактах после встречи двух героев; ### Версия 2.205 #### WoG: - обновлён плагин "game bug fixes extended.dll": - Исправление появления копейщиков в лагерях беженцев; - Теперь в городах игрока при наличии форта всегда будет отстроено 2 уровня существ; - Теперь герои на старте всегда имеют 3 отряда существ; - Исправлен бесконечный цикл при расчёте ценности армии для обмена существ в армии ИИ; - теперь ИИ всегда будет получать артефакты и опыт за побеждённого врага; - улучшен код негативной удачи; - исправлено отображение неразведанных монолитов и врат подземного мира при колдовстве Просмотра Земли/Воздуха; - исправлено сохранение лишнего раунда берсерка и защиты на отрядах; - заблокирована возможность колдовать Дверь Измерений в недоступные зоны и на ту же позицию, где находится герой; - исправлена возможность вампиризма при атаке клонов; - теперь пожертвованные Фениксы не воскрешаются; - теперь демонение накладывает флаг жертвы на убитый отряд; - обновлён плагин "wog native dialogs.era": - Эффекты Просмотра Земли и Просмотра Воздуха теперь сохраняются до конца хода игрока, информация доступна через экран Просмотра Мира; - обновлён плагин "RMG_CustomizeObjectProperties.era" до версии 1.26: - переписана логика для добавления Экстендеров для будущей поддержки модульности плагина; - улучшена функция получения имени объектов; - обновление для API; - обновлён плагин "Interface_MainMenuAPI.era" до версии 1.5: - теперь для первых десяти кнопок доступен вызов по горячим клавишам [1;0]; - исправлено описание Архидьяволов; #### Game Enhancement Mod: - обновлен плагин "GameplayEnhancementsPlugin.era" до версии 1.6.2: - улучшена и перенесена на плагин механика подсказки стоимости передвижения героев до объектов на карте; - удалён бинарник StartArmyAllSlots, так как логика перенесена в мод "WoG"; ### Версия 2.204 #### WoG: - обновлён плагин "game bug fixes extended.dll": - добавлено исправление двойного урона для выстрелов Баллисты и навыка "Двойной урон" как у Рыцарей Смерти; - ограничено количество склепов на зону для случайных карт до 5; #### Game Enhancement Mod: - обновлен плагин "GameplayEnhancementsPlugin.era" до версии 1.6.1: - небольшое исправление подсказки для артефактов; #### Random Wallpaper Mod: - Добавлен новый логотип с названием игры; ### Версия 2.203 - hotfix ### Версия 2.202 - hotfix ### Версия 2.201 #### Game Enhancement Mod: - подсказки для артефактов теперь включены по умолчанию; #### WoG Scripts: - Улучшенные артефакты командиров: добавлены поддержка отображения подсказок для артефактов; #### TrainerX: - добавлены поддержка отображения подсказок для артефактов; #### Other: - новый Менеджер Модов (@SyDr) обновлён до версии 0.98.69; ### Версия 2.200 #### WoG: - обновлён плагин "Interface_MainMenuAPI.era" до версии 1.4: - теперь вызываемая функции процедуры обработки виджета имеет фиксированное соглашение о вызове (__fastcall) и тип возврата int: ``` int (__fastcall * customProc)(void *msg); ``` - обновлён плагин "wog native dialogs.era": - исправлен показ сообщений камней силы командира после их подбора; - исправлена проверка ответа для диалогов ввода типа "Сфинкс"; - исправлено отображение раундов битвы при старте битвы без тактической фаза; - теперь посещение мифрила работает как с оригинальным обновляет экран; - теперь текст сообщения об уменьшении армии, вызванное командиром Сопряжения (Астральным Духом) пишется непосредственно в лог битвы, а сообщение о возврате армии удалено; - обновлён плагин "game bug fixes extended.dll": - Исправлены многочисленные недочёты с необновлявшимися максимальными единицами передвижения героев и ряд недочётов расчёта длины пути; - Добавлен учёт сброса эффектов Конюшен при расчёте требующегося числа дней пути; - теперь изменение радиуса разведки героя своевременно открывает карту; - Исправляем баг SoD: сброс посещённости сирен после боя; - Исправлено некорректное построение маршрута героя; - исправлена избыточная перерисовка кнопки "Двигаться по построенному маршруту"; - Исправлена ошибка с клонированием монстров при достижении лимита монстров. - Изменение баланса фортов на холмах: стоимость улучшения рассчитывается на основе уровня улучшенного монстра, а не текущего; - исправление расчёта золота для Зверя после битвы; - корректировка параметров Командира с Кольцом Силы (Slavas's Ring); - теперь командиры не призывают боевые машины в банках существ (баг WoG); - заменена формула призыва драконов с помощью артефакта "Сердце Дракона"; - исправлено некорректное удаление исчезающих объектов из памяти игры; - Исправлен баг SoD: ИИ считал, что облако смерти не задевает только нежить. - Наличие яда теперь не даёт колдовать Снятие Заклинаний; - Оковы войны теперь действуют только в битве двух героев (побег); - Существенно увеличена скорость быстрых битвы (ранее игра "ждала" проигрывание анимации любого действия) - исправлено срабатывание огненного щита по трупу; - исправление активной стороны битвы при контратаке в ближнем бою; ## Переписана логика удачи и неудачи: - Реализована поддержка "неудачи", снижающей итоговый урон ровно в 2 раза; - Сработавшая удача или неудача теперь меняет урон по всем целям удара, а не только по одной; - Сработавшая в бою удача теперь увеличивает урон в точности в 2 раза, а не добавляет +100% только базового урона; - теперь Песочные Часы Недоброго Часа нейтрализуют удачу только если она положительна - Исправлено отсутствие отображения влияния Песочных Часов Недоброго Часа в списке модификаторов удачи героя и оценка ИИ некоторых изменяющих удачу объектов #### Game Enhancement Mod: - Добавлено отображение бонусов первичных для артефактов при просмотре его описания; - В меню настроек GEM добавлена возможность управлять следующими опциями: - Отображение бонуса первичны навыков для артефактов; - Отображение частей для сборных артефактов; - Обновлена формула расчёта передвижения на следующий ход и перенесена в плагин; - Перенесено значительное количество кода из скриптов на плагин; - При просмотре подсказок об объектах на "Alt" больше не отображается герои; #### ERA ERM Framework: - добавлены следующие функции: - Получение текущего имени портрета героя (маленького и крупного): ``` !?FU(GetHeroPortraitName); !#VA(heroId:x) (small:x) (large:x); ``` - Центрирование кастомного диалога DL по курсору; ``` !?FU(DL_CenterAtMouse); !#VA(dlgId:x); ``` #### TrainerX: - исправлен вылет при передаче артефактов командира героям; #### WoG Scripts: - Военные Машины III: в окно героя и встречи добавлены цифровые отображения текущего количества боевых машин; - Усиленные командиры: исправлен баг, отключающий сундуки подтипа 6; - Мифрил: исправлено время добавления мифрила в казну игрока; #### ERA Scripts: - Захват мельниц и садов: исправлено отсутствие тени и некорректное положение флагов для Складов Ресурсов; ### Версия 2.199 #### WoG: - обновлён плагин "AssemblyMainPLugin.era" до версии 1.79: - графические исправления; ### Версия 2.198 #### WoG: - обновлён плагин "AssemblyMainPLugin.era" до версии 1.78: - Панель уведомлений теперь корректно отображает текст уведомлений; - Изменена рамка вокруг текста модов; #### Human AI: - Обновлен до версии 1.17; #### WoG Scripts: - небольшие исправления описаний опций; ### Версия 2.197 #### WoG: - обновлён плагин "Interface_MainMenuAPI.era" до версии 1.3: - теперь кнопка сокрытия меню дополнительных кнопок не отображается при размещении данного меню вне фона главного меню; - изменены положение и названия некоторых кнопок; ### Версия 2.196 #### WoG: - обновлён плагин "AssemblyMainPLugin.era" до версии 1.77: - при наведении на кнопку уведомлений более не отображается системный курсор; - обновлён плагин "Interface_MainMenuAPI.era" до версии 1.2: - теперь диалог системных опций, открытый через кнопку в главном меню, не отображает картинки для неиспользуемых кнопок диалога; - текст дополнительных кнопок в главном меню приведён к единому формату; - удалены лишние/некорректные файлы локализаций; ### Версия 2.195 #### WoG: - плагин "ERA_MultilingualSupport.era" обновлён до версии 2.1: - исправлена невозможность переводить имена монстров во множественном числе с помощью json ключей; - оптимизирован размер текста для кнопки "Экспорт текста" в диалоге выбора языка; ### Версия 2.194 #### WoG: - обновлён плагин "Interface_MainMenuAPI.era" до версии 1.1: - исправлено некорректное отображение меню Системных Настроек и WoG-Опций в главном меню при воспроизведении видео; - исправлен некорректный фон при скрытии кнопок после открытии главного меню после начатой карты; - для заголовочного файла API-плагина добавлены комментарии; - обновлён плагин "wog native dialogs.era" без изменения версии: - исправлена поломка игрового окна после открытия диалога встречи героев в окне города; ### Версия 2.193 #### HD Mod: - Обновлен до версии 5.5 R71; #### WoG: > [!NOTE] > добавлен новый плагин "Interface_MainMenuAPI.era", позволяющий добавлять собственные кнопки в главное меню с помощью: > - API для создания и управления кнопками в главном меню; > - позволяет добавить кнопки в общий список стилизованных кнопок в разные диалоги главного меню, которые указываются через битовый набор id: > ```cpp > enum eMenuList : int > { > MAIN = 0x1, // главное меню > NEW_GAME = 0x2, // подменю выбора новой игры > LOAD_GAME = 0x4, // подменю загрузки игры > CAMPAIGN = 0x8, // подменю кампании > ALL = 0xF // сразу все меню > }; > ``` > - регистрация кнопки производится функцией "MainMenu_RegisterWidget" через уникальное имя виджета > ```cpp > struct MenuWidgetInfo > { > const char *name = nullptr; // уникальное имя виджет > const char *text = nullptr; // отображаемый текст кнопки > eMenuList menuList = eMenuList::MAIN; // набор меню, в которых отображать кнопку > void (*processMessage)(void *msg); // основная процедура обработки > }; > ``` > > - регистрация кнопки производится функцией "MainMenu_RegisterWidget" через уникальное имя виджета > ```cpp > int (__stdcall *MainMenu_RegisterWidget)(const MenuWidgetInfo &info); > ``` > - следующие функции позволяют управлять уже зарегистрированными виджетами: > ```cpp > H3DlgCaptionButton *(__stdcall *MainMenu_GetDialogButton)(const char *name); // возвращает указатель на кнопку, созданную в текущем диалоге > int (__stdcall *MainMenu_GetDialogButtonId)(const char *name); // возвращает id кнопки, созданной в текущем диалоге > int (__stdcall *MainMenu_SetDialogButtonText)(const char *name, const char *text); // изменяет ототбражаем текст кнопки. Если кнопка отрисована сейчас, текст изменится и на экране > ``` > - заголовочник для данного API находится по пути "Tools/Era/SDK/MainMenuAPI.hpp"; > - в главное меню добавлены следующие кнопки: > - Скрыть меню кнопок; > - Показать системные настройки; > - Показать меню WoG-Опций (можно изменять и сохранять) - ### плагин "ERA_MultilingualSupport.era" обновлён до версии 2.0: - Теперь название папок для языков основываются на формате "iso-639-1"; - для добавления собственного языка достаточно просто прописать название локали в json ключе: ``` "era.locale.list.[locale_name].name":string, ``` - также доступна возможность указать альтернативное название локали, для этого используется ключ, но тогда альтернативное название должно иметь свой json ключ в поле "name": ``` "era.locale.list.[locale_name].alternative":string, "era.locale.list.[alternative_name].name":string, ``` - переписан диалог выбора языка и перенесена основная кнопка запуска; - удалена возможность изменить язык из меню системных настроек; - добавлена возможность переводить текст из следующих txt-файлов с помощью json ключей: - HeroBios.txt - HeroSpec.txt - Dwelling.txt - Поскольку эти файлы читаются при запуске игры, после смены языка в игре потребуется её перезапуск, чтобы новый текст (если существует), был записан в память игры поверх наименований из txt-файлов; - Ключи для перевода строк следующие - для Героев доступны замена имени, биографии и текста специализаций: ``` "era.heroes.[hero_id].name": string, "era.heroes.[hero_id].biography": string, "era.heroes.[hero_id].specialty.short": string, "era.heroes.[hero_id].specialty.full": string, "era.heroes.[hero_id].specialty.description": string, ``` - для городских жилищ существ доступны замена названий и описаний. Индекс "-1" используется для случайного города: ``` "era.towns.[town_type].dwellings.[dwelling_id].name": string, "era.towns.[town_type].dwellings.[dwelling_id].description": string, ``` - добавлена возможность экспортировать следующие данные в отдельные json-файлы в подпапку "Runtime/Exports/" через отдельную кнопку "Экспорт текста" в диалоге выбора языка: - названия и описания существ; - имена, биографии и специализации героев; - названия жилищ существ на Карте Приключений и в городах; - названия и вспомогательные тексты банков существ; - названия, описания и текст при подборе артефактов; - названия объектов карты приключений; - Приведены названия и описания существ к общему виду для большей информативности; - для английского и русского языка добавлены названия и описания существ в формате json; - исправлена расстановка существ в Вертепе; - обновлён плагин "game bug fixes extended.dll": - исправлено отображение тени курсора для заклинания "Силовое поле" для героя-защитника; #### WoG Scripts: - исправлена функция проверки допустимости здания для постройки в городе; #### Game Enhancement Mod: - небольшие исправления функций; #### ERA Scripts: - удалены ненужные и нерабочие фиксы; - оптимизация файлов; ### Версия 2.192 > [!NOTE] > инструмент для отправки отчётов о падении игры - **Issue Wizard** обновлён до версии 1.3: > - улучшен дизайн программы; > - добавлена возможность прикреплять все необходимые файлы отладки (Рекомендуется); > - улучшен алгоритм сбора уникальной информации об ошибке; > - добавлено отображение списка плагинов и разрешения игры; > - уменьшен объём хранимой информации на диске; > - исправлена невозможность получать информацию об устаревших отчётах; > - мелкие исправления форматирования текста; #### WoG: - обновлены некоторые плагины для отвязки от библиотек времени исполнения; - небольшие исправления и улучшения; #### Other: - SD Менеджер Модов - добавлены стандартные профили со списками модов ERA Project; ### Версия 2.191 #### WoG: - обновлены некоторые плагины для поддержки старых ОС; #### Other: - SD Менеджер Модов (@SyDr) обновлён до версии 0.98.67; ### Версия 2.190 #### WoG: - обновлён плагин "wog native dialogs.era" без изменения версии: - исправлен вылет при старте игры при открытии диалога сохранения настроек WoG-опций; - прочие исправления; ### Версия 2.189 #### WoG: - обновлён плагин "AssemblyMainPLugin.era" до версии 1.75: - теперь каждый мод может добавить до 5 уведомлений в главное меню. Имя папки с модом пишется в нижнем регистре. Ключи: ```"era.[mod_folder_name].notification.[index].name" - отображаемое название "era.[mod_folder_name].notification.[index].text" - текст уведомлений "era.[mod_folder_name].notification.[index].url" - ссылка на сайт/локальный файл для открытия ``` - улучшен перевод и взаимодействие с панелью; - добавлено уведомления об известных проблемах; #### Game Enhancement Mod: - обновлён плагин "ArchBugFixes.era": - исправлена возможность бесконечно получать существ 1-го уровня из их жилищ на Карте Приключений; ### Версия 2.188 #### ERA Scripts: - Захват мельниц и садов: добавлены флаги игрока для Складов Мифрила; #### WoG Graphics Fix Lite: - удалены лишние текстовики с объектами; - оптимизированы архивы с графикой; ### Версия 2.187 #### WoG: - обновлён плагин "AssemblyMainPLugin.era" до версии 1.74: - теперь уведомления в главном меню переводятся без перезапуска игры/меню; #### Game Enhancement Mod: - удалён лишний код управления диалогами найма существ; ### Версия 2.186 #### Advanced Classes Mod: - исправлен вылет в битве на низких разрешениях окна игры при попытке открыть диалог повышения класса командира; #### Other: - Менеджер Модов обновлён до версии 0.98.61; ### Версия 2.185 #### WoG: - обновлен плагин "Game bug fixes extended.dll": - теперь при колдовстве целевых атакующих заклинаний монстрами учитывается магический модификатор от героя-владельца; ### Версия 2.184 #### Other: > [!IMPORTANT] > ## новый Менеджер Модов теперь используется по умолчанию: > - в список совместимостей добавлены основные моды для автоматического исправление конфликтов (запустите мод менеджер и нажмите кнопку "Сортировать" в левом нижнем углу); > [!NOTE] > новый инструмент для отправки отчётов о падении игры - **Issue Wizard** обновлён до версии 1.2: > - улучшен дизайн программы; > - добавлено более детальное описание issue; > - мелкие исправления форматирования текста; #### WoG: - обновлен плагин "Game bug fixes extended.dll": - исправлен невозможность героем колдовать заклинания полёта в тот же день, если сила заклинания превосходит текущий эффект; - исправлено наличие продвинутого навыка "Мудрость" для героя Уланда; - исправлена загрузка звука колдовства у Сказочных Драконов; - исправлено отсутствие флага "Атака по площади" у Драколичей; ### Версия 2.183 #### Game Enhancement Mod: - обновлен плагин "GameplayEnhancementsPlugin.era" до версии 1.5.0: - небольшие исправления с отображением мифрила в окне Обзора Королевства; - добавлен файл отладки; ### Версия 2.182 #### WoG: - обновлён плагин "RMG_CustomizeObjectProperties.era" до версии 1.24: - исправлено получение списка новых объектов для из вложенных массивов; #### Advanced Classes Mod: - исправлен вылет в битве на низких разрешениях окна игры при попытке открыть диалог повышения класса командира; #### Game Enhancement Mod: - теперь подсказка о стоимости откупа не будет отображаться в тех случаях, когда откуп недоступен; #### Other: > [!NOTE] > новый инструмент для отправки отчётов о падении игры - **Issue Wizard** обновлён до версии 1.1: > - добавлено более детальное название issue; > - увеличена минимальная длина сообщения; > - мелкие исправления форматирования текста; ### Версия 2.181 #### WoG: - обновлён плагин "RMG_CustomizeObjectProperties.era" без изменения версии: - добавлена функция экспорта для получения имени объекта по типу и подтипу: ``` const char* GetObjectName(int type, int subtype); ``` - обновлён плагин "wog native dialogs.era" без изменения версии: - пересобран с другим набором инструментов, чтобы не ругались антивирусы; #### WoG Scripts: - Волшебство I: теперь удалённое посещение объектов позволяет взаимодействовать со Складами Ресурсов; - Добавлена ф-ция получения названия объектов, добавленных плагином RMG: ``` !?FU(WOG_GetRealObjectName); !#VA(objType:x) (objSubtype:x) (string:x); ``` - прочие важные исправления; #### ERA Scripts - Захват мельниц и садов: - теперь механика захвата распространяется и на Склады Ресурсов; - полностью переписана логика взаимодействия со всеми объектами; ### Версия 2.180 - ## обновление ядра era.dll без изменения версии: - обновлены инструменты отладки; #### Other: - обновлены файлы отладки плагинов; ### Версия 2.179 #### WoG: - обновлён плагин "AssemblyMainPLugin.era" без изменения версии: - мелкие улучшения; - Добавлены файлы json в архив, чтобы избежать вылета при старте игры; ### Версия 2.178 #### WoG: - обновлён плагин "AssemblyMainPLugin.era" без изменения версии: - исправлен редкий вылет в главном меню; ### Версия 2.177 - hotfix ### Версия 2.176 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле "/Help/Era manual/era iii changelog.txt" или просто кликните по версии ERA в главном меню игры; - ## обновление ядра era.dll до версии 3.9.26: - Реализован подробный дамп игрового контекста в файл "exception context.txt" при вылете игры. - Исправлена ошибка в подключенной функции Heroes 3 "free": статические адреса WoG не исключались из обработки, что приводило к повреждению счетчика выделенных байтов и случайным сбоям. > [!NOTE] > В сборку добавлен новый инструмент для отправки отчётов о падении игры - **Issue Wizard**: > - Запускается при аварийном завершении игры или из папки "/Tools/Issue Wizard/"; > - Собирает техническую информацию о проблеме; > - Имеет поле ввода для подробного описания событий до вылета; > - Позволяет прикрепить файл сохранения; > - Создает уникальный отчёт на репозитории проекта и возвращает ссылку на него (отчёт); > - Для работы требует интернет подключение; #### WoG: - обновлён плагин "AssemblyMainPLugin.era" до версии 1.73 и помещён в мод "WoG": > [!TIP] > ### Добавлена возможность отображать уведомления в Главном Меню для каждого мода: > - Теперь авторы модов могут добавлять собственные уведомления в главное меню, управлять которым можно лишь обновляя собственный мод; > - Для добавления уведомления необходимо добавить следующие json-ключи, где [mod_folder_name] - имя папки активного мода: > ``` > "era.[mod_folder_name].notification.name" - для отображения названия уведомления; > "era.[mod_folder_name].notification.text" - для отображения текста уведомления; > "era.[mod_folder_name].notification.url" - для открытия внешнего файла или перехода по внешней ссылке при клике на названии уведомления; > ``` > - Поддерживается цветной текст и отображение def-картинок с заменой на PNG; > - Однажды скрытое уведомление не будет принудительно отображаться, пока не изменится его текст; - Теперь версия игровой сборки привязана к моду WoG; - все новые элементы отображаются лишь в диалоге главного меню; - обновлён плагин "RMG_CustomizeObjectProperties.era" без изменения версии: - исправлено поведение ИИ для некоторых новых объектов; #### Advanced Classes Mod: - Большинство способностей, которые уменьшают/крадут характеристики существ на поле боя, теперь могут устанавливать скорость только на минимум 3 (вместо 2). - Специалисты по поместьям теперь дают бонус в 5% к золоту поместий на каждом уровне. - Исправлено некорректное описание тележки с боеприпасами. - Исправлена проблема, из-за которой Огненный маг иногда не атаковал Огненным шаром. - Исправлена совместимость между Доблестью и 8-ми существами (из третьего мода обновления). - Исправлена проблема неожиданного эффекта сопротивления во всех скриптах (спасибо daemon_n и Yuritsuki). - Исправлен неправильный эффект Поместий для специалистов по Поместьям. - Временно исправлена проблема получения неправильной скорости при использовании класса Охотник. Решение должно быть изменено позже. - Исправлено неправильное описание Командира генерала. - Орлиный Глаз больше не может убить целую группу существ (минимальное HP теперь равно 1). Это предотвращает потенциальные зависания игры, когда последняя группа врагов уничтожается Орлиным Глазом. - Исправлена проблема с пронзанием заклинаний — теперь оно работает правильно против целей с иммунитетом к заклинаниям. - Исправлена ошибка, из-за которой специалисты +350 золота предоставляли больше ресурсов, чем указано в описании их специализации. - Исправлено несколько проблем с классом командира Fire Mage: - Теперь они получают количество убийств обычным образом. - Они не могут перейти в класс Ancient, если он не разблокирован в игре. - Они больше не пропускают возможности перехода в Ancient в определенных случаях. - Ловушка для тележек с боеприпасами теперь срабатывает после уничтожения тележки с боеприпасами, а не до этого. #### Advanced Difficulties Mod: - Обновлён до версии 1.042 - заменены артефакты монстров на заставке на увеличенные версии (спасибо Suft - богу HD Remastered) - увеличен лимит роста по умолчанию для размера нейтрального стека при активации опции роста за пределами 4000 - немного уменьшена скорость и масштабирование урона командиров битвы, также удалена возможность их появления с активным заклинанием Молитва - исправлена опция роста за пределами 4000 для монстров 0-го уровня на карте #### Enhanced Henchmen: - Знамя полководца, экипированное оруженосцем, теперь ведет себя как артефакты командира на командирах: вы можете свободно экипировать или снять его, когда приспешник убит. Знамя останется у приспешника, даже если герой проиграет битву. #### ERA Scripts - Боевой опыт: исправлены неверные характеристики существ после переигрывания битвы. #### Game Enhancement Mod: - обновлен плагин "GameplayEnhancementsPlugin.era": - добавлено отображение мифрила в диалог Карты Приключений и Обзора Королевства; - Исправлена ошибка, из-за которой иногда герой мог появиться в таверне, даже если он уже был нанят другим игроком. - Теперь ответные действия Баллисты и Катапульты полностью заблокированы. - Убрано сообщение при успешном наборе существ 1 уровня из их жилищ - спасибо SadnessPower. - удалены лишние плагины и ресурсы; #### TrainerX: - Добавлен временный метод удаления лодок для функции "Удалить объект" - Телепортация: Герои более не могут быть телепортированы на клетки, нахождение на которых ломали игру. #### WoG Graphics Fix Lite: - Обновлён до версии 2.22.0 #### WoG Scripts: - Поместья I&II: Исправлены детали для специалистов по Поместьям. - Сундук сокровищ 2: Исправлена ошибка, из-за которой захват последней шахты из сундука мог привести к невозможности пройти карту. - Возможно, исправлена неизвестная ошибка при использовании команд HE:S в скриптах. - Передача владельца теперь работает раз в неделю для каждой шахты или города. Это сделано для предотвращения спам-сражений. - Мастер жизни больше не улучшает существ, принадлежащих героям без владельца. - Исправлена ошибка текстового описания Разведки II. - Исправлено Обучение I, не показывающее, какой основной навык дается, когда герой получает новый уровень. - Сопротивление I: теперь вы можете установить i^wog_216_nonNeutralBattle_enabled^ в значение TRUE, чтобы Сопротивление I работало во всех типах сражений. - Волшебство I: Исправлен вылет при нажатии ПКМ на учёном, который даёт заклинание. ### Версия 2.175 #### WoG: - обновлен плагин "RMG_CustomizeObjectProperties.era" до версии 1.23: - добавлена возможность иметь изменённый внешний вид Банка Существ в зависимости от его уровня; #### Other: - обновлены плагины для поддержки старых версий операционных систем; ### Версия 2.174 #### WoG: - обновлен плагин "RMG_CustomizeObjectProperties.era" до версии 1.22: - теперь после сохранения игры массив кастомных наград не будет пересоздаваться; - исправлено отображение названий и описаний для некоторых объектов; - исправлена невозможность изменить лимиты генерации объектов в диалоге, если введённое значение уже равно 0; #### Game Enhancement Mod: - для скрипта установки новых спрайтов героев в битве добавлена совместимость с другими модами ### Версия 2.173 #### WoG: - обновлен плагин "RMG_CustomizeObjectProperties.era" до версии 1.21: - Добавлена возможность установить в качестве награды в Банк Существ до 4 конкретных артефактов; - исправлена ошибка с заполнением массива со случайными артефактами; - исправлена ошибка чтения ключа с шансом улучшенных существ для охраны; ### Версия 2.172 #### WoG: - обновлен плагин "RMG_CustomizeObjectProperties.era" до версии 1.20: - сообщение диалога справки заменено на полноценны диалог; - добавлена ссылка на инструмент создания и редактирования Банков Существ; - для некоторых объектов улучшена подсказка в диалоге; - добавлена возможность ограничивать навыки в университетах; - добавлена возможность создавать святыни магии с конкретным заклинанием (тип 89/подтип - id заклинания +1) - исправлен вылет при попытке отобразить диалог наградами за разграбление Банка Существ без оригинальных наград; - исправлен вылет при генерации заклинаний для банков существ; - обновлен плагин "game bug fixes extended.dll": - исправлен баг регистрации посещения университета игроками; ### Версия 2.171 #### WoG: - обновлен плагин "ERA_MultilingualSupport.era" до версии 1.07: - изменён формат отображения названий локализаций; - исправлен адрес получения жилищ существ для локализации из json; - исправлены некорректные указатели на имена существ, выставляемые извне; - обновлен плагин "RMG_CustomizeObjectProperties.era" до версии 1.18: - добавлена поддержка кастомных наград для любого банка существ: - мифрил; - опыт; - очки заклинаний; - первичные параметры; - мораль; - удача; - заклинания (до 4): - возможность указать точный индекс заклинания; - возможность указать параметры для генерации заклинаний; ## подробнее в справке внутри диалога RMG - Теперь плагин позволяет редактировать охрану и награду оригинальных банков существ, а не только добавленных; - Теперь введённые в диалоге RMG данные не требуют лишних кликов для подтверждения и изменяются сразу при вводе чисел; - исправлен вылет при генерации свитков заклинаний; - Переименованы и переформатированы почти все json файлы мода; - Исправлены перепутанные портреты некоторых монстров при игре с hd mod; #### ERA Scripts: - Использование свитков, знамен и артефактов: исправлена ошибка, из-за которой при разборке свитков заклинаний не давалось нужного количества очков заклинаний. #### WoG Scripts: - Предотвращение размещения потерянных бутылок, когда проходимость не идеальна (поскольку потерянные бутылки нельзя посетить сверху) - Исправлены запрещенные заклинания, которые не могут появляться в святилищах независимо от комбинации WoG-опций. - Исправлена невозможность запретить "Просмотр Земли" из стартовых заклинаний героев. - Исправлена невозможность запретить "Топор свирепости варвара". - Улучшенные боевые машины I: - Исправлена невозможность отключить боевые машины, призванные знахарями и вождями людоедов. - Исправлена синхронизация данных в многопользовательских играх. #### WoG Graphics Fix Lite: - Обновлён до версии 2.21.0 #### Other: - обновлены исходники и SDK ядра Era; - отредактированы имена файлов json по стандарту; ### Версия 2.170 #### HD-Mod: - Обновлён до версии 5.5 R44 ### Версия 2.169 - hotfix ### Версия 2.168 #### WoG: - обновлен плагин "wog native dialogs.era": - удалено отладочное сообщение перед открытием некоторых диалогов с картинками; ### Версия 2.167 #### Game Enhancement Mod: - обновлён плагин "ChooseAttack.dll": - удалён вопрос о старте автобитвы - попытка исправить некоторые вылеты ### Версия 2.166 - hotfix ### Версия 2.165 #### ERA: - ## обновление ядра era.dll без изменения версии: - Экспортированы следующие функции в era.dll: - процедура LogMemoryState - Добавляет запись в файл "log.txt" в следующем виде: >> [EventSource]: [Operation] #13#10 [Description]: - функция WriteLog (EventSource, Operation, Description: pchar): TInt32Bool; - Пример: ``` WriteLog("SaveGame", "Save monsters section", "Failed to detect monster array size") *) ``` #### Game Enhancement Mod: - Следующие плагины были обновлены для поддержки менеджера памяти ERA: - "ChooseAttack.dll" - "GameplayEnhancementsPlugin.era" #### WoG: - Следующие плагины были обновлены для поддержки менеджера памяти ERA: - "wog native dialogs.era" - "game bug fixes extended.dll" - "RMG_CustomizeObjectProperties.era" - "ERA_MultilingualSupport.era" - обновлен плагин "ERA_MultilingualSupport.era" до версии 1.04: - исправлена утечка памяти диалога - обновлен плагин "RMG_CustomizeObjectProperties.era" до версии 1.14: - исправлена утечка памяти диалога #### Other: - обновлен ERA SDK. Путь "/Tools/Era/SDK"; ### Версия 2.164 #### Game Enhancement Mod: - Теперь вы можете использовать чит-коды в режиме Hot Seat. #### ERA Scripts: - Достижения: Исправлен текст достижения "Инспектор". #### WoG Scripts: - Оруженосец: - Исправлена ошибка, из-за которой установка нового приспешника влияла на опыт стека оставшихся войск в стеке. - Исправлено невозврат правильного количества Знамён Полководца при установке приспешника. - Правила карты: - Все герои начинают с 5-го уровня: теперь игра дает опыт после всех отображаемых сообщений и работает только для активного игрока #### Easy Cheats: - Добавлено управление читом "Открыть карту загадки". Теперь вы можете ввести "пазл", чтобы открыть карту-головоломку. #### Quick Saving Mod: - Теперь нажатие кнопки "S" быстро сохраняет игру, а Ctrl/Shift/Alt+S открывает диалог сохранения игры. ### Версия 2.163 - hotfix ### Версия 2.162 - hotfix ### Версия 2.161 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле "/Help/Era manual/era iii changelog.txt" или просто кликните по версии ERA в главном меню игры; - ## обновление ядра era.dll до версии 3.9.24: - Изменен менеджер памяти на FastMM4. Теперь игра использует менеджер памяти из Era и управляет отдельной статистикой выделения. - Реализовано подробное отслеживание выделенной памяти игрой, Era и плагинами. Отчет о памяти записывается в "log.txt" при сбое или событии "OnGenerateDebugInfo" (вызывается F11). - Экспортированы следующие функции в era.dll: - Функции памяти, которые теперь являются общими для игры и движка Era. Они будут использоваться в Era SDK для перенаправления менеджеров памяти плагинов в менеджер памяти Era: ``` function MemAlloc (BufSize: integer): {n} pointer; stdcall; ``` ``` procedure MemFree ({On} Buf: pointer); stdcall; ``` ``` function MemRealloc (var {On} Buf: pointer; NewBufSize: integer): {n} pointer; stdcall; ``` - Регистрирует потребителя памяти (плагин с пользовательским менеджером памяти) и возвращает адрес счетчика выделенной памяти, который должен атомарно увеличиваться и уменьшаться в операциях malloc/calloc/realloc/free: ``` function RegisterMemoryConsumer (ConsumerName: pchar): pinteger; stdcall; ``` - Улучшено обнаружение недопустимого использования буферов памяти Era из API Era плагинами. Попытки освободить буферы результатов с помощью другого API менеджера памяти ранее игнорировались и теперь, скорее всего, приведут к сбоям. - Исправлена утечка памяти в LoadPcx8: изображение-заглушка pcx8 создавалось при любом запросе GetPcx8, если существовала соответствующая замена png, а заглушка не была должным образом зарегистрирована в дереве ресурсов игры, что приводило к ошибкам нехватки памяти и могло привести к повреждению сохраненной игры. #### WoG: - обновлен плагин "wog native dialogs.era": - критическое исправление управлением памятью плагина; - обновлен плагин "game bug fixes extended.dll": - критическое исправление управлением памятью плагина; - обновлен плагин "RMG_CustomizeObjectProperties.era": - удален лишний текст в сообщении наград после разграбления банка существ; - исправлен текст при посещении Складов. #### WoG Scripts: - опция "Игра в карты в Тавернах": игра больше не будет заменять объекты на таверны на случайных картах; - опция "Орлиный Глаз I": добавлена функция для установки максимального уровня заклинания, которон может выучить герой при повышении уровня: ``` !?FU(WOG_103_Hero_GetMaxSpellLevel); !#VA(heroId:x) (result:x); ``` #### Game Enhancement Mod: - небольшие исправления в текстах мода; ### Версия 2.160 #### ERA: - ## обновление ядра era.dll до версии 3.9.23: - Обновлен плагин vfs.dll для возможности получения списка модов через API. - Улучшена обработка сбоев Era и генерация отчетов об отладке: - Era заранее выделяет 5 МБ и резервирует еще 15 МБ для генерации отчетов об отладке в ситуациях нехватки памяти. - Улучшен дамп памяти ERM. Для генерации отчета произвольного размера требуется всего 1 МБ. - Добавлена регистрация статистики менеджера памяти Era во время сбоев из-за нехватки памяти. Она записывается в "log.txt". - Исправлен неверный расчет поля "Общий размер разделов" при генерации отчета об ошибке во время сохранения игры. ### Версия 2.159 #### ERA: - ## обновление ядра era.dll без изменения версии: - Реализовано сохранение дополнительной отладочной информации для отчетов о сбоях: - Если во время сохранения игры произойдет сбой, будет записана полная информация о разделах сохраненной игры и будет создан каталог "Debug/Era/Savegame Sections" с содержимым сохраненной игры. - Отчет о памяти записывается в "log.txt". "PagefileUsage" - это общий объем зарезервированной памяти (как в оперативной памяти, так и в файле подкачки). "WorkingSetSize" - это объем физической оперативной памяти, используемый процессом. #### WoG: - обновлён плагин "ERA_MultilingualSupport.era": - добавлена возможность переводить текст из следующих txt-файлов с помощью json ключей: - artevent.txt - artraits.txt - crgen1.txt - crtrait0.txt - crtraits.txt - objnames.txt - zcrgn1.txt - zcrtrait.txt - Поскольку эти файлы читаются при запуске игры, после смены языка в игре потребуется её перезапуск, чтобы новый текст (если существует), был записан в память игры поверх наименований из txt-файлов; - Ключи для перевода строк следующие - для Артефактов доступны замена имени, описания и текста при поднятии на Карте Приключений: ``` "era.artifacts.[art_id].name": string, "era.artifacts.[art_id].description": string, "era.artifacts.[art_id].event": string ``` - для Существ доступны замена имени в единственном числе, множественном числе и описания способностей: ``` "era.monsters.[monster_id].name.singular": string, "era.monsters.[monster_id].name.plural": string, "era.monsters.[monster_id].name.description": string ``` - для Объектов Карты Приключений доступны замена имени стандартных объектов и Жилищ существ (тип 17): ``` "era.objects.[object_type]": string, "era.objects.17.[object_subtype]": string ``` - в дальнейшей возможна поддержка большего количества txt-файлов (в том числе и связанных с героями); #### WoG Scripts: - Кармические битвы: исправлено некорректный уровень для существ из Крепости; ### Версия 2.158 #### Game Enhancement Mod: - Восстановлено сообщение о полученном золоте после битвы для Командира "Зверь"; #### Other: - SD Менеджер Модов (@SyDr) обновлён до версии 0.98.59; ### Версия 2.157 #### WoG: - обновлен плагин "wog native dialogs.era": - исправлена невозможность встречи героев внутри города в режиме "хот-сит" для не красного игрока; #### Game Enhancement Mod: - Добавлена расширенный диалог подсказки для объекта "Чёрный Рынок": - при нажатии ПКМ на посещённом Чёрном Рынке отображается диалог с ценами всех доступных там артефактов; - при наведении мыши на объект в текст подсказки добавляется количество доступных артефактов; - Добавлен текст с инструкциями создания отчёта об ошибке в сообщение вылета из игры; - удалены лишние файлы; ### Версия 2.156 #### ERA: - ## обновление ядра era.dll без изменения версии ### Версия 2.155 #### WoG: - обновлен плагин "game bug fixes extended.dll": - фикс вылета игры при клике пкм в жертвенном алтаре на кнопку "Следующий артефакт" - Исправление бага SoD: При проверке возможности наложения заклинаний Чародеи теперь учитывают все отряды, а не только первый с каждой стороны - обновлен плагин "RMG_CustomizeObjectProperties.era": - добавлена возможность давать мифрил в качестве награды банкам существ (дописывается 8-м элементов в графу наград ресурсов); - добавлена возможность управлять генерацией свитков с заклинаниями: - Для заклинаний каждого уровня теперь можно выставить ценность, плотность генерации, ограничение на карту и на зону - Заклинания "Дверь Измерений", "Городской Портал", "Полёт" и "Хождение по Воде" теперь имеют псевдоуровень во время генерации равный 6, и имеют собственные настройки генерации (ценность установлена на 12500). - Свитки с Водными Заклинаниями теперь не генерируются на карте без воды; - выставлены ограничения на зону и карту для всех свитков с заклинаниями всех уровней - Управление параметрами доступно через ключи, где [spell_level] от 1 до 6 : ``` "RMG.objectGeneration.93.[spell_level].map": int, "RMG.objectGeneration.93.[spell_level].zone": int, "RMG.objectGeneration.93.[spell_level].value": int, "RMG.objectGeneration.93.[spell_level].density": int ``` - Исправлена некорректная расстановка отрядов в Погосте для 7-го отряда, что приводило к вылету при добавлении командира в данный банк существ; #### WoG Scripts: - Добавлены ограничения в количество WoG-объектов, генерируемых ГСК; #### Game Enhancement Mod: - Заменена способность Опыта Существ "Огненный шар" для Магогов и Кошмаров на "Проклятие" (поскольку ИИ не знает об этой способности). #### ERA Scripts: - Третий класс: исправлено несоответствие количеству вторичных навыков. #### ERA ERM Framework: - добавлена константа с адресом стандартного текстового буфера игры; - добавлена константа с размером структуры BattleStack; #### Other: - небольшие исправления описаний ### Версия 2.154 #### WoG: - обновлен плагин "wog native dialogs.era": - Экран встречи героев в городе: - добавлена кнопка с горячей клавишей "E" - переписана механика: - теперь только если ход активного игрока; - исправлено срабатывание кнопок диалога города; - исправлена редкая ошибка с блокировкой экрана города - добавлена горячая клавиша "ESC" для закрытия HMS - обновлен плагин "game bug fixes extended.dll": - исправлена ошибка WoG ERM !!CB:M: она устанавливала максимальный тип монстра на 196 (Драколич), если тип/число монстра проверялось/устанавливалось в качестве награды, если тип существа был выше 196; #### Game Enhancement Mod: - обновлен плагин "GameplayEnhancementsPlugin.era": - исправлено не обновление последних 8 пикселей диалога Карты Приключений; - Исправлено закрытие любого всплывающего диалога, если уже был другой диалог, вызванный ранее; - Добавлена совместимость со скриптами; - Рефакторинг и оптимизация кода; ### Версия 2.153 #### WoG: - updated plugin "game bug fixes extended.dll": - теперь кадры с бонусом или штрафом удачи и морали выше 1 отображает бонус и на картинке (ранее всегда отображалось 1) - Исправлен расчет урона для юнитов с низкой защитой; - Улучшено описание заклинания "Палач"; - Исправлены сообщения об ошибках редактора карт от WoG-объектов; ### Версия 2.152 - hotfix ### Версия 2.151 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле "/Help/Era manual/era iii changelog.txt" или просто кликните по версии ERA в главном меню игры; - ## обновление ядра era.dll без изменения версии: - Включен флаг "NXCOMPAT:NO" в исполняемых файлах h3era.exe и h3wmaped.exe, тем самым сигнализируя ОС, что эти исполняемые файлы не поддерживают DEP (Data Execution Prevention). Это изменение можно выполнить для любого пользовательского исполняемого файла, запустив "editbin.exe /NXCOMPAT:NO path_to_exe" из утилит Visual Studio. - Улучшена команда CM:H, чтобы всегда возвращать действительные идентификаторы героев из SwapManager даже в событиях без щелчка (-1, если диалог встречи героев не активен). - Исправлена ошибка с повреждением памяти, приводившая к случайным сбоям. Ошибка появилась в версии 3.9.16. - Исправлена ошибка Heroes 3: контрольные слова объектов карты приключений интерпретировались неправильно из-за использования арифметического сдвига вместо логического. Спасибо MoP за информацию. #### WoG: - обновлен плагин "game bug fixes extended.dll": - удалена генерация почвы "подземелье" на поверхности; #### Advanced Classes Mod: - Добавлен отсутствующий текст/анимация/звук для заклинания "Гипноз", наложенного командиром Суккуба. - Исправлена совместимость между опциями "Знать" и "Достижение". - Экспорт строки вставки из erm в json. #### ERA Scripts: - Remagic: Исправлено отсутствие ".es" в новых описаниях заклинаний. - Bounty Hunting: Исправлено неверное название ресурсов. - Драконьи Города: Исправлена возможность перестроить Утопию, когда она находится на краю карты, что впоследствии приводило к проблемам. #### Game Enhancement Mod: - Заменена способность опыта существ колдовство Волны Смерти Личами и Кошмарами "Печаль" Продвинутого уровня. - Удалены плагины: - "Hawaiing_DlgEdit_Keypad_Support.era" - "Hawaiing_hero_def.era" - "Hawaiing_town_def.era" - обновлен плагин "GameplayEnhancementsPlugin.era": - Добавлена поддержка цифровой клавиатуры для ввода цифр; - Добавлена возможность устанавливать пользовательский вид для героев на карте приключений: - Установить пользовательский вид для героя-мужчины класса [class_id]: ``` "gem_plugin.map_item_view.54.class.[class_id].0": string ``` - Установить пользовательский вид для героя-женщины класса [class_id]: ``` "gem_plugin.map_item_view.54.class.[class_id].1": string ``` - Установить пользовательский вид для точного heroId: ``` "gem_plugin.map_item_view.54.id.[hero_id]": string ``` - Добавлена возможность устанавливать пользовательский вид для разных уровней городов на карте приключений: - Установить пользовательский вид только для построенного форта: ``` "gem_plugin.map_item_view.98.[town_type].fort": string ``` - Установить пользовательский вид только для построенной цитадели: ``` "gem_plugin.map_item_view.98.[town_type].citadel": строка ``` #### WoG Scripts: - Командирские хижины ведьм: исправлена картинка основных навыков командира. ### Версия 2.150 #### WoG: - обновлен плагин "RMG_CustomizeObjectProperties.era" до версии 1.13: - добавлена возможность заменять свойства уже существующим объектам в текстовиках. Теперь можно изменить почвы для генерации объекта без необходимости редактировать оригинальные файлы игры. Ключом для определения замены свойств будет имя def, тип и подтип объекта; - исправлен оригинальный баг генерация Врат Подземного Мира для зон с разными почвами - добавлена генерация снежных объектов ВМЕСТО обычных на снегу; #### WoG Graphics Fix Lite: - в список объектов игры добавлены вся графика мода, что раньше требовала текстовики; #### WoG Scripts: - Улучшенные артефакты командиров: теперь артефакты не будут добавлять запрещенные вторичные навыки ### Версия 2.149 #### WoG: - обновлен плагин "RMG_CustomizeObjectProperties.era": - добавлена тонкая настройка для расстановки нападающих и защищающихся отрядов в Банках Существ. Для конкретного подтипа можно установить позиции для нападающих и защищающихся отрядов. Имейте в виду, что повторяющиеся позиции поместят несколько отрядов в одну точку, что может привести к вылету во время битвы: ``` "RMG.objectGeneration.16.[object_subtype].defenderPositions": int array "RMG.objectGeneration.16.[object_subtype].attackerPositions": int array ``` - Изменено расположение защитников в Погосте и Вертепе; - обновлён плагин "ERA_MultilingualSupport.era": - исправлен вылет при старте игры в режиме отладки; - добавлен файл отладки в папку "DebugMaps"; - Обновлена китайская локализация. #### Advanced Classes Mod: - Улучшен расчет урона М/ГМ Лидерства для совместимости со сторонними скриптами. - Синхронизировано изменение с опций "Артефакты Рюкзака". #### Advanced Difficulties Mod: - небольшие корректировки текста #### ERA Scripts: - Зомби-трупоед: Исправлено потребление HP, когда Зомби-трупоед изучает Удар по всем вокруг. #### Game Enhancement Mod: - Восстановлена прокрутка вторичных навыков командиров в диалоге командира; - Исправлена потеря опыта существ после переигровке боя - Исследование заклинаний: исправлена ошибка erm на некоторых пользовательских картах. - Исправлен сбой при входе на поле боя - исправлено описание святилищ для заклинаний, предоставляемых артефактами #### Human AI: - Исправлена совместимость с опцией "Ограничение количества героев". #### TrainerX: - Теперь трейнер учитывает опцию wog "Отключить чит-коды и меню". Если опция включена, TrainerX будет отключен. ### Версия 2.148 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле "/Help/Era manual/era iii changelog.txt" или просто кликните по версии ERA в главном меню игры; - ## обновление ядра era.dll до версии 3.9.21: - Включены современные исходники LuaJit2 OpenResty x86 и скомпилированные lua51.dll, luajit.exe без зависимостей VC++ и с частичной совместимостью с Lua 5.2. - Добавлены следующие функции в Era Erm Framework: ``` !?FU(ReadJsonIntArray); ; Считывает целочисленный массив из конфигурации json либо в существующий динамический массив, либо в автоматически созданный локальный. !#VA(jsonKeyPtr:x); Полный ключ JSON, например "test.guards" для { "test": { "guards": [1, 2, 3, 4] } } !#VA(intArray:x); ВХОД/ВЫХОД. Либо существующий идентификатор динамического массива, либо ?(localArrayId:y). Пример: !?FU(OnAfterErmInstructions); !!FU(ReadJsonIntArray):P^test.guards^/?(arr:y); !!FU(Array_Join):P(arr)/?(text:z)/^, ^; !!IF:M^%(text)^; ``` ``` !?FU(ReadJsonStrArray); ; Считывает массив строк из конфигурации json либо в существующий динамический массив, либо в автоматически созданный локальный. !#VA(jsonKeyPtr:x); Полный ключ JSON, например "test.names" для { "test": { "names": ["daemon", "corwin", "deo"] } } !#VA(strArray:x); ВХОД/ВЫХОД. Либо идентификатор существующего динамического массива, либо ?(localArrayId:y). Пример: !?FU(OnAfterErmInstructions); !!FU(ReadJsonStrArray):P^test.names^/?(arr:y); !!FU(Array_Join):P(arr)/?(text:z)/^, ^; !!IF:M^%(text)^; ``` - Функция GenerateDebugInfo (вызываемая F11) теперь очищает каталог отладки, но сохраняет "log.txt". То же самое касается исключений в игре (вылетов). - Улучшено обнаружение вылетов и выгрузка отладочной информации во время генерации сохраненной игры. - Исправлен префикс пути к изображениям для использования обратных слешей в качестве разделителей пути в диалогах IF:D. - Исправлен диалог IF:D: кнопка отмены должна быть включена по умолчанию. #### WoG: - добавлены 2 новых банка существ, отключенных для генерации по умолчанию; - максимальное количество уникальных подтипов банков существ объекта типа "16" на каждую зону установлено на 5 по умолчанию; #### Advanced Classes Mod: - Исправлена возможная ошибка с магической артиллерией, если у противника нет Символа Знаний. #### Other: - реорганизация списка модов и файлов в них; ### Версия 2.147 #### WoG: - обновлен плагин "RMG_CustomizeObjectProperties.era": - исправлено, что монстры никогда не убегают и разделяются до максимальных стеков; #### Game Enhancement Mod: - добавлены новые объекты для подсказок на карте приключений; - некоторым подсказкам изменено положение по высоте; - для героев в качестве подсказки рисуется потрет на карте приключений; ### Версия 2.146 #### WoG: - обновлен плагин "RMG_CustomizeObjectProperties.era": - теперь добавление звуков окружения объектов не будет работать, если загружены другие плагины, вносящие те же изменения; - реорганизация файлов, добавляющих объекты; - подготовка к переносу json-файлов в zip-архивы; #### Advanced Classes Mod: - Исправлена вероятность призыва Огненного Элементаля при атаке отряда с Мастерским/Грандмастерским Огненным щитом. #### Game Enhancement Mod: - Исправлена возможность нанести ответный удар, если отряд был уничтожен Огненным щитом. ### Версия 2.145 - hotfix ### Версия 2.144 #### ERA: - обновлены файлы до актуальной версии ERA из официального установщика; #### WoG: - обновлен плагин "RMG_CustomizeObjectProperties.era": - добавлена поддержка зацикленный звуков для новых и текущих объектов. Установка значения пустой строки отключит звук для уже заданного объекта. Примеры использования: - Установить зацикленный звук для определённого подтипа указанного типа объекта: ``` "RMG.objectGeneration.[object_type].[object_subtype].sound.loop": string ``` - Установить зацикленный звук для всех подтипов указанного типа объекта: ``` "RMG.objectGeneration.[object_type].sound.loop": string ``` - добавлен .dbgmap файл отладки; - добавлены звуки окружения хотовским объектам; #### Game Enhancement Mod: - исправлена рассинхронизация в PvP битвах при удержании открытым любого диалога одним из игроков; #### Other: - обновлён движок Lua до актуального; ### Версия 2.143 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле "/Help/Era manual/era iii changelog.txt" или просто кликните по версии ERA в главном меню игры; - ## обновление ядра era.dll до версии 3.9.20: - Добавлена поддержка отладки случайных чисел в log.txt. Эта функция контролируется опцией "Debug.Rng" в "heroes 3.ini". - Исправлена ошибка, появившаяся в 3.9.16: улучшение CombatManager::CastSpell использовалось для проверки уровня стека заклинаний вместо длительности заклинания. #### WoG: - обновлен плагин "RMG_CustomizeObjectProperties.era": - добавлена возможность устанавливать пользовательское значение ИИ для генерации охраны. Неустановленное значение или значение меньше "0" не изменит ИИ-ценность монстра: - Установить ИИ-ценность для каждого стража монстра: ``` "RMG.objectGeneration.54.[monster_id].value": int ``` - Установите ИИ-ценность для ВСЕХ стражей монстров (зачем вам это нужно :thinking:?): ``` "RMG.objectGeneration.54.value": int ``` #### Game Enhancement Mod: - исправлена редкая ошибка подсказки; ### Версия 2.142 #### HD Mod: - Обновлен до версии 5.5 R38; #### Game Enhancement Mod: - GameplayEnhancementsPlugin: - Теперь подсказки на для объектов рисуются поверх тумана войны; - Теперь подсказки на для объектов рисуются над входом в объект, если тот виден; ### Версия 2.141 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле "/Help/Era manual/era iii changelog.txt" или просто кликните по версии ERA в главном меню игры; - ## обновление ядра era.dll до версии 3.9.19: - Добавлена автоматическая перерисовка сетки и выделения после использования BM:Q на неактивном стеке. - Добавлены следующие функции в Era Erm Framework: ``` !?FU(EmptyIniCache); ; Заменяет кэш ini-файла в памяти на пустой. Используйте его для повторного создания ini-файлов с нуля, когда вам не нужны ранее кэшированные данные и исходный файл на диске !#VA(filePathPtr:x); Абсолютный или относительный путь к ini-файлу ``` ``` !?FU(MergeIniWithDefault); ; Загружает два ini-файла и объединяет исходные ini-записи с целевыми ini-записями в кэше без перезаписи существующих записей !#VA(targetPathPtr:x); Абсолютный или относительный путь к целевому ini-файлу (основные настройки) !#VA(sourcePathPtr:x); Абсолютный или относительный путь к исходному ini-файлу (настройки по умолчанию) ``` - Реорганизован и улучшен API обработки ini. Следующие функции были экспортированы/обновлены: ``` (* Забывает все кэшированные данные для указанного ini-файла. Любая операция чтения/записи приведет к его повторному чтению и повторному анализу *) procedure ClearIniCache (const FileName: pchar); stdcall; ``` ``` (* Забывает все кэшированные данные для всех ini-файлов *) procedure ClearAllIniCache; stdcall; ``` ``` (* Заменяет кэш ini-файла в памяти на пустой. Используйте его для воссоздания ini-файлов с нуля, когда вам не нужны ранее кэшированные данные и исходный файл на диске *) procedure EmptyIniCache (const FileName: pchar); stdcall; ``` ``` (* Читает запись из кэша в памяти. Автоматически загружает ini-файл с диска, если он еще не кэширован *) function ReadStrFromIni (const Key: pchar; const SectionName: pchar; FilePath: pchar; out Res: pchar): boolean; stdcall; ``` ``` (* Записывает и записывает в кэш в памяти. Автоматически загружает ini-файл с диска, если он еще не кэширован *) function WriteStrToIni (const Key, Value, SectionName: pchar; FilePath: pchar): boolean; stdcall; ``` ``` (* Загружает и анализирует ini-файл. Создает кэш в памяти для предотвращения дальнейших обращений к диску. Возвращает true только в том случае, если файл существовал, был успешно прочитан и проанализирован. Создает пустую запись в кэше в случае любой ошибки *) function LoadIni (FilePath: pchar): boolean; stdcall; ``` ``` (* Сохраняет кэшированный ini в указанный файл на диске. Автоматически воссоздает все каталоги в пути к файлу. Загружает содержимое файла с диска, если оно не было кэшировано ранее. *) function SaveIni (FilePath: pchar): boolean; stdcall; ``` ``` (* Загружает два ini-файла и объединяет исходные ini-записи с целевыми ini-записями в кэше без перезаписи существующих записей *) procedure MergeIniWithDefault (TargetPath, SourcePath: pchar); stdcall; ``` - Включен исходный код библиотеки Era B2 в "Tools/Era/Sources/Era B2 Library". - "OnRemoteEvent" больше не срабатывает для вызова FU:D. Era теперь использует FireRemoteEvent для синхронизации создания объектов на карте приключений в многопользовательском режиме. #### HD Mod: - Обновлен до версии 5.5 R37; #### WoG: - обновлён плагин "RMG_CustomizeObjectProperties.era": - исправлен вылет при генерации водных карт; - исправлено удаление настроек диалога #### WoG Scripts: - Рост популяции нейтральных городов: добавлена возможность не влиять на увеличение охраны Банков Существ по ключу: ``` "RMG.objectGeneration.[type].[subtype].isNotBank": bool ``` - Улучшения за мифрил: Добавлена поддержка высокоуровневых заклинаний для Магических Святынь; #### WoG Graphics Fix Lite: - Обновлён до версии 2.20.2 #### Other: - SD Менеджер Модов (@SyDr) обновлён до версии 0.98.53; ### Версия 2.140 #### WoG: - обновлён плагин "RMG_CustomizeObjectProperties.era": - исправлено сохранение настроек диалога; - теперь генерация WoG-объектов (тип 63) возможна лишь при включённом моде WoG Scripts; - удалена генерация некоторых снежных объектов; ### Версия 2.139 - hotfix ### Версия 2.138 #### Game Enhancement Mod: - Исправлена подсказка для стража прохода; #### Other: - восстановлен ярлык для запуска Редактора Карт через Лаунчер; ### Версия 2.137 - hotfix ### Версия 2.136 #### HD Mod: - Обновлен до версии 5.5 R36; #### Advanced Classes Mod: - Исправлена потеря опыта за существ, убитых артиллерией/баллистой. #### WoG Scripts: - Артиллерия: исправлена потеря опыта за существ, убитых превентивным выстрелом Баллисты; #### Other: - новый Менеджер Модов (@SyDr) обновлён до версии 0.98.51 - удалены некоторые лишние файлы; ### Версия 2.135 #### ERA: - ## обновление ядра ERA.dll до версии 3.9.18: - Реализована автоматическая перерисовка тени/сетки/границы выделения после вызова BM:C. - Исправлена ошибка, появившаяся в версии 3.9.16: глобальные скрипты загружались и анализировались во время загрузки сохраненной игры. #### Advanced Classes Mod: - добавлена отсутствующая проверка идентификатора героя при расчете урона командира Fire Mage - добавлена проверка Orb of Tempestuous Fire при расчете урона Fire Mage (+25%) #### Other: - Утилита "UncToBin" для преобразования команд UN:C ERM в двоичные патчи, теперь поддерживает смещения от адреса в памяти; - Обновлены источники Era и VFS в "Tools/Era/Sources". ### Версия 2.134 #### ERA: > [!IMPORTANT] > Критическое исправление загрузки сохраненных игр! - в список изменений ERA добавлена информация о работе ГСЧ в мультиплеерных играх. Файл находится по пути "/Help/Era manual/era iii changelog.txt", или просто кликните по версии ERA в главном меню игры, чтобы открыть его; #### Game Enhancement Mod: - GameplayEnhancementsPlugin: исправлено отображение подсказок для неактивного окна; ### Версия 2.133 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле "/Help/Era manual/era iii changelog.txt" или просто кликните по версии ERA в главном меню игры; - ## обновление ядра ERA.dll до версии 3.9.17: - Добавлена поддержка ввода IME (Input Method Editor), используемого азиатскими языками (китайский/японский/корейский). - Добавлена поддержка каталога "Lang/\*" для zip-архивов в Data - Введен еще один каталог для скриптов глобальной библиотеки ERM: "Data/s/lib_end". Скрипты из этого каталога будут загружаться после всех остальных скриптов карт/глобальных/библиотек. Аналогично каталогу "lib", эти скрипты не зависят от состояния опции UN:P5 WoG. - Улучшена функция CombatManager::CastSpell (также используется в BM:C) путем временной установки CombatManager->ControlSide в сторону, что позволяет контролировать стек кастов. - Переписаны команды IF:D, IF:F, IF:E (многоцелевая реализация диалога). Особенности: - Всякий раз, когда строка принимается в качестве параметра, это может быть любая строка или строковый литерал. Значение будет скопировано в глобальные настройки, больше нет зависимости от z-переменных. - Идентификаторы диалога полностью игнорируются (лучше использовать для них 0 или -1 для удобства чтения). В памяти находится только одна копия настроек диалога. - Настройки диалога полностью очищаются перед выполнением IF:D и после выполнения IF:E. - Исправлены ошибки с фантомными пустыми строками вместо путей к изображениям или подсказок. - IF:F принимает 0..6 параметров. Пустой параметр означает "удалить подсказку". - IF:E принимает следующие синтаксисы: IF:E(индекс v-var для сохранения результата) или IF:E?(любая целочисленная переменная для сохранения результата). - Расширенная команда VR:R с необязательным 4-м параметром: VR:R(фиктивный)/(мин)/(макс)/(свободный_параметр);: - В сетевых сражениях используется детерминированный генератор случайных значений, который генерирует значения с использованием текущего идентификатора действия, идентификатора раунда и идентификатора битвы. Попытка сгенерировать несколько случайных значений в одном действии дает одинаковые значения, например 44 44 44. Чтобы обойти эту проблему, передайте уникальное значение 4-му параметру для каждой итерации. Это может быть идентификатор стека или счетчик цикла, но лучше использовать XOR с предварительно сгенерированной константой int32, уникальной для эффекта/заклинания/функции, которые вы реализуете. Например, 1833290248 XOR идентификатор стека — хороший выбор. - Добавлена поддержка Phoenix Ressurection и Death Stare в сетевых сражениях PvP. - Обновлен "Era Erm Framework": - Добавлена поддержка существ, стреляющих по области, в функцию BattleStack_Shoot. - Синхронизировано с версией Launcher "Era Erm Framework". - Добавлены следующие типы экспорта и функции в era.dll: ``` Настраиваемый диалог с 4 внешними/внутренними картинками (bmp/jpg/png/pcx/pcx16,def?), необязательным полем ввода и 4 выбираемыми кнопками с флажками. Все указатели могут быть нулевыми. Все поля должны быть доступны для записи процедурами обработки диалога и должны считаться "грязными" после обработки диалога, за исключением поля, куда записываются результирующие значения. ``` - PMultiPurposeDlgSetup = ^TMultiPurposeDlgSetup; - TMultiPurposeDlgSetup = упакованная запись ``` Заголовок: pchar; // Верхний заголовок диалога InputFieldLabel: pchar; // Если указано, пользователь сможет ввести произвольный текст в поле ввода ButtonsGroupLabel: pchar; // Если указано, будет отображена правая группа кнопок InputBuf: pchar; // OUT. Поле для записи указателя на временный буфер с пользовательским вводом. Немедленно скопируйте этот текст в безопасное место SelectedItem: integer; // OUT. Поле для записи индекса выбранного элемента (0-3 для кнопок, -1 для отмены) ImagePaths: массив [0..3] из pchar; // Все пути указаны относительно корневого каталога игры или абсолютных пользовательских путей ImageHints: массив [0..3] из pchar; ButtonTexts: массив [0..3] из pchar; ButtonHints: массив [0..3] из pchar; ShowCancelBtn: TInt32Bool; end; ``` - TShowMultiPurposeDlgFunc = procedure (Setup: PMultiPurposeDlgSetup); stdcall; ``` (* Отображает настраиваемый многоцелевой диалог и возвращает выбранный идентификатор кнопки (1..4) или -1 для отмены *) ``` - function ShowMultiPurposeDlg (Setup: PMultiPurposeDlgSetup): integer; stdcall; ``` (* Заменяет текущий обработчик/реализатор многоцелевого диалога. Возвращает старый обработчик, если он есть *) ``` - function SetMultiPurposeDlgHandler (NewImpl: TShowMultiPurposeDlgFunc): {n} TShowMultiPurposeDlgFunc; stdcall; ``` (* Создает новый экземпляр API плагина для определенного плагина DLL. Передает реальное имя dll с расширением. Возвращает экземпляр плагина или NULL, если плагин уже создан *) ``` - function CreatePlugin (Name: pchar) : {On} TPlugin; stdcall; ``` (* Устанавливает новый хук по указанному адресу. Возвращает указатель на мост с исходным кодом, если таковой имеется. При желании укажите адрес указателя для записи указателя на примененную структуру патча. Это позволит откатить патч позже. MinCodeSize указывает исходный размер кода, который будет стерт (nopped). В большинстве случаев используйте 0. *) ``` - function Hook (Addr: pointer; HandlerFunc: THookHandler; {n} AppliedPatch: ppointer; MinCodeSize, HookType: integer): {n} pointer; stdcall; ``` (* Возвращает true, если примененный патч был перезаписан *) ``` - function IsPatchOverwritten (AppliedPatch: pointer): TInt32Bool; stdcall; ``` (* Возвращает размер примененного патча в байтах (количество перезаписанных байтов) *) ``` - function GetAppliedPatchSize (AppliedPatch: pointer): integer; stdcall; ``` (* Генерирует случайное значение в указанном диапазоне с дополнительным пользовательским параметром, используемым только в детерминированных генераторах для создания различных выходных данных для последовательности генераций. Например, если вам нужно сгенерировать случайное значение в бою для каждого вражеского стека, вы можете использовать идентификатор стека или переменную цикла для FreeParam. Но для лучшего качества генерации используйте (stackID XOR UNIQUE_ACTION_MASK) и определите константу UNIQUE_ACTION_MASK как уникальное предварительно сгенерированное значение int32. В сетевых сражениях несколько генераций случайных значений с одинаковыми параметрами создают одинаковый выходной сигнал до тех пор, пока не будет выполнено следующее действие. Эта функция позволяет вернуть случайность нескольким генерациям в одно и то же время. *) ``` - function RandomRangeWithFreeParam (MinValue, MaxValue, FreeParam: integer): integer; stdcall; - Добавлена опция "Debug.LogWindowMessagesOpt" в "heroes 3.ini", позволяющая вести журнал сообщений главного окна и их параметров. - Добавлены следующие переводимые строки в "era.json": - 'era.debug.game_saving_exception_warning': отображается при исключении записи сохраненной игры - 'era.debug.debug_dump_confirmation': отображается при любой ошибке ERM - 'era.incompatible_savegame_version_warning': отображается, если сохранение игры было выполнено на слишком старом движке Era > [!NOTE] > Отныне Era всегда запрашивает разрешение на загрузку глобальных скриптов при запуске карты или перезагрузке скриптов, если на карте есть внутренние скрипты. Текст разрешения был изменен с "skip" на "load" по умолчанию. Следующий ключ языка необходимо перевести: 'era.global_scripts_vs_map_scripts_warning'. WoG Option 5 всегда устанавливается на 3 (запрашивать загрузку глобальных скриптов, если на карте есть внутренние скрипты) перед загрузкой любых скриптов, поэтому больше нет необходимости сохранять его в WoG Options. Инструкция UN:P5/# в элементах управления внутренними скриптами карты, принудительно ли автор карты загружает глобальные скрипты или нет. - Включены обновленные исходные коды для следующих плагинов: "Buttons", "Erm Hooker", "WoG Native Dialogs", "Game Bug Fixes Extended". Спасибо команде baratorch и Hota за предоставление их заголовочных файлов. - Включены переработанные Delphi и C++ Era SDK (файлы API) в Tools/Era/SDK. - Включены последние исходные коды Era (Tools/Era/Sources/Era 3.9.16) и исходные коды Virtual File System. - Восстановлена функциональность чит-кодов WoG в моде Easy Cheats, исправлены опечатки в документации и добавлено отображение размеров выгруженных массивов. - Обновлен плагин "erm_hooker.era" для отражения изменений в движке Era. - Обновлен плагин "buttons.era" для отражения изменений в движке Era. - Обновлен плагин "wog native dialogs.era" для большей толерантности к неподдерживаемым типам изображений для диалогов IF:E. - Повышена стабильность обработки ресурсов snd/vid (используются хуки splice вместо хуков patch). - Поддержка файла "load only these scripts.txt" устарела. Она будет удалена в версиях Era 4.X. С этого момента дублирующиеся записи в этом файле игнорируются. - Обновлен мод "Era Erm Framework" для использования каталога "lib_end" для некоторых скриптов. > [!IMPORTANT] > Изменен формат файла сохранения. Добавлена проверка формата. Старые сохранения будут загружаться без данных скриптов/плагинов. - Удалены следующие функции из era.dll: "CalcHookPatchSize". - Исправлен сбой в сетевой игре в диалоге сохранения игры: нажатие ПКМ на некоторые элементы диалога приводило к недопустимой попытке обновления ScreenLog без инициализации поля textWidget. - Исправлено сообщение о неправильной версии ERA. - Обновлен C++ Era SDK (функция "ConnectEra" теперь принимает до 2 аргументов). #### WoG: - обновлён плагин "RMG_CustomizeObjectProperties.era": - исправлена некорректное значение ценности объектов при Генерации Случайной Карты: - Ящик Пандоры; - Тюрьма; - Свиток заклинания; - Хижина Ведьмы; - Палата Ключника; > [!IMPORTANT] > - Для добавления свойств с помощью ключа "RMG.[mod_folder_name].properties.[index]" теперь требует указывать имя папки мода в нижнем регистре. Например: > ``` > "RMG.wog.properties.0":"AVSidol0.def 011111111111111111111111111111111111111111111111 100000000000000000000000000000000000000000000000 111111111 011110111 38 0 0 0" > ``` #### Game Enhancement Mod: - исправлена улучшенная подсказка для Университета на ПКМ; - исправлены горячие клавиши для быстрых действий в бою; #### ERA Scripts: - Исправлены ошибки в дальнобойном ответном ударе Ящеров-Воинов; #### WoG Scripts: - Метаморф: Исправлено неправильное количество существ при трансформации Метаморфа. #### Other: - новый Менеджер Модов (@SyDr) обновлён до версии 0.98.47, а имя исполняемого файла изменилось на "Mod Manager.exe"; - добавлены исходники плагинов от igrik; - старые и новые исходники плагинов и приложений из папки "Tools\Era\Sources" запакованы в архив для экономии места; ### Версия 2.132 #### Advanced Classes Mod: - Исправлена невозможность воскрешать полностью убитый стек после применения заклинания М/ГМ Лечения. - Добавлена проверка идентификатора навыка sec в скрипте наведения курсора #### Game Enhancement Mod: - обновлён плагин "GameplayEnhancementsPlugin.era": - теперь дополнительное описание объектов не отображается в подсказке - теперь подсказки корректно отображаются в мультиплеере для неактивного игрока; - добавлены новые объекты для отображения по умолчанию - исправлена улучшенная подсказка посещённого университета на ПКМ; - Исправлена подсказка об ожидаемом уроне от стрельбы в бою #### TrainerX: - Теперь предоставление возможности летать активному герою перерассчитывает его путь; #### Other: Добавлен новый Менеджер Модов (@SyDr) - На данный момент запустить новый Менеджер Модов можно по пути "[Папка_с_игрой]/Tools/SD Mod Manager/main.exe" - Предложения, Сообщения об ошибках и Благодарности отправляйте в [канал Discord](https://discord.com/channels/665742159307341827/723550276077748357) ### Версия 2.131 #### WoG: - Обновлён плагин "RMG_CustomizeObjectProperties.era": - Добавлена генерация объектов на снегу, которые имеют необходимую графику; - При посещении Банка существ теперь пишется его имя и кол-во охраняющих существ; - Добавлена возможность отображать расширенные подсказки при посещении Банков Существ. Ключ: ``` "RMG.settings.creatureBanks.extendedDlgInformation": bool ``` - Добавлена возможность отображать имя подсказки при посещении Банков Существ. Ключ: ``` "RMG.settings.creatureBanks.displayName": bool ``` - Добавлена возможность установить собственное сообщение при посещении Банков Существ. Ключ: ``` "RMG.objectGeneration.[type].[subtype].text.visit": string ``` - Добавлена поддержка генерации жилищ существ с 4 существами (тип 20); - Улучшено описание заклинание "Антимагия"; #### Advanced Classes Mod: - Исправлена Атака Дыханием - Добавлен журнал боя для ловушки тележки с боеприпасами. - Исправлено отображение диалога возврата золота для палатки первой помощи для героя, проигравшего битву. - Исправлена ошибка: заклинания существ не работали при включенном аметисте. - Изменена область срабатывания умения "Доблесть". Теперь только нажатие на экран города или здания активирует эту способность. #### ERA Scripts: - Городские сокровищницы: Оптимизирован диалог грабежа. #### WoG Graphics Fix Lite: - Обновлён до версии 2.20.1 #### WoG Scripts: - Улучшенные артефакты I: теперь Сапоги Мертвеца дублируются только в том случае, если в рюкзаке владельца нет Сапог Мертвеца. #### Other: - прочие исправления и улучшения; ### Версия 2.130 ### WoG: - Обновлён плагин "RMG_CustomizeObjectProperties.era": - В диалог настроек объектов генерации добавлена возможность сбросить настройки для каждого объекта по отдельности; - В меню создания случайной карты добавлена возможность ввести точное зерно генерации для создания конкретной случайной карты; - Исправлен вылет при генерации Хижин провидцев; - Исправлен сброс типа ресурсов для Складов Ресурсов на дерево в начале каждой недели; - Добавлена поддержка установки объектам возможность посещения с соседней клетки (как для артефактов); #### Advanced Classes Mod: - Изменено время выполнения для FU(ACM_DrawActionPlay):P, надеюсь, анимация повреждения будет выглядеть лучше. #### Game Enhancement Mod: - обновлён плагин "GameplayEnhancementsPlugin.era": - Изменено изображение кнопки в диалоге разрушения постройки в городе - Улучшена подсказка об объектах; - Обновлён диалог настроек мода; - Добавлена настройка для отключения массового ожидания/защиты для Боевых Машин; #### ERA Scripts: - Опыт битвы: теперь скрипт учитывает множитель опыта человека/ИИ, установленный в скриптах или опциях wog; ### Версия 2.129 ### WoG: - Обновлён плагин "RMG_CustomizeObjectProperties.era": - "Беседка" теперь отображает стоимость услуг посещения объекта; - Исправлен бесконечный звук объектов; ### Версия 2.128 ### WoG: - Обновлён плагин "RMG_CustomizeObjectProperties.era": - Исправлена генерация WoG-объектов; ### Версия 2.127 #### Advanced Classes Mod: - Исправлена ошибка, из-за которой анимации Метеоритного дождя и Имплозии не менялись корректно в битвах с двумя героями. #### Game Enhancement Mod: - обновлён плагин "GameplayEnhancementsPlugin.era": - Исправлены неровные подсказки по объектам; - Для специалистов по броне ниже 868-го уровня максимальное снижение физического урона от брони установлено на уровне 4%. ### WoG: - Обновлён плагин "RMG_CustomizeObjectProperties.era": - Добавлена поддержка объекта "Колизей Магов"; - Добавлена поддержка объекта "Беседка"; - Теперь вы можете добавить любое количество дополнительных свойств объектов на карту с помощью ключа "RMG.[mod_folder_name].properties.[index]". Обратите внимание, что свойства должны идти упорядоченно (также можно использовать массив свойств); - Теперь генерация WoG-объектов работает лишь для тех объектов, работа которых обеспечена соответствующим скриптом ( номер опции прописан в json. Она должна быть включена, чтобы объект он создавался); - Теперь настройки диалога сохраняют лишь изменённые данные объектов; - Исправлено: хижины провидцев не генерировались; - Добавлено 2 хижины провидцев для генерации (итого 5); - Изменены свойства и почвы генерации для некоторых WoG-объектов (больше никаких Снежных Гротов на иных почвах); #### Other: - обновлён Sublime Text Editor до версии build 4189; ### Версия 2.126 ### WoG: - добавлены недостающие свойства объекта "Склад Кристаллов"; ### Версия 2.125 #### Advanced Classes Mod: - Исправлена ошибка, из-за которой анимация стека иногда не обновлялась после получения урона от скриптов (например, Магическая Артиллерия). - Исправлен тип возрождения Феникса, который не срабатывал сразу после урона скриптами. #### Game Enhancement Mod: - обновлён плагин "GameplayEnhancementsPlugin.era": - Исправлены неровные подсказки по объектам; ### WoG: - Обновлён плагин "RMG_CustomizeObjectProperties.era": - Добавлена поддержка объекта "Склад Мифрила" - графика @Grossmaestro; - Подправлено описание в диалоге; ### Версия 2.124 ### WoG: ## Добавлен новый крупный плагин "RMG_CustomizeObjectProperties.era": > [!NOTE] > Генератор Случайный Карт (далее ГСК) - Данный плагин позволяет: - добавлять полностью нативные для Героев 3 Банки Существ с типом объекта "16"; - изменять любые существующие банки; - изменять звуки для посещения и окружения для всех объектов; - генерировать WoG-объекты ГСК (больше никаких замен нужных объектов); - добавлять новые объекты в механику игры с полной поддержкой ИИ (Больше никаких "Пирамид"!): - уже добавлены "Склады Ресурсов" из HotA; - в разработке "Водопой" и "Беседка"; > [!TIP] > Всё вышеперечисленное делается ТОЛЬКО с помощью JSON-файлов. Больше никаких objects.txt! > Теперь каждый может добавлять свои объекты # А теперь самое интересное: ### В меню создания Случайной Карты добавлено 2 новых кнопки: - "Настройки ГСК" - открывает новый диалог, внутри которого можно (нужно): - настроить ЛЮБУЮ генерацию под себя! - включить/выключить большинство объекты для ГСК; - настроить максимальное количество объектов на карту/зону; - изменить ценность объектов; - изменить базовую стоимость жилищ существ; - изменить плотность генерации объектов; - изменить ценность объектов ( позднее попробую поработать и с лимитами зон); - "Игральные Кости" - перед каждой генерацией создай действительно случайные настройки для всех объектов, что превращает каждую карту в уникальный набор объектов; #### Game Enhancement Mod: - обновлён плагин "GameplayEnhancementsPlugin.era": - Добавлена возможность просмотра описания подсказок над объектами на карте приключений при нажатой клавише "Alt"; - Список объектов и горячую клавишу для работы вы можете изменить в файле "Runtime/gem_AdventureMapHints.ini"; - Вы можете включить/отключить отображение подсказок через окно настройки GEM; #### Advanced Classes Mod: - Добавлено исправление для предотвращения переполнения урона от критического удара (перепроверьте значение MF:D/F перед применением). - Исправлены описания специалистов по существам (снова). ### Версия 2.123 #### HD-Mod: - Обновлён до версии 5.5 R29. - Добавлено множество графических настроек в HD-mod Launcher - попробуйте новые режимы #### Advanced Classes Mod: - Огненный маг: новая реализация атаки Огненным шаром огненного мага, чтобы исправить некоторые ошибки (например, не срабатывание после того, как командир выучит Удар по всем направлениям) - Исправлены некорректные бонусы, отображаемые в описаниях особенностей существ. #### ERA Scripts: - Достижения: Исправлен особый эффект достижения Slayer (заставляет врагов пропускать свои ходы в битве), не пропускал неживых существ. - ReMagic: Исправлено взаимодействие с опцией "Призыв Элементалей" (позволяющей вызывать элементалей на карте приключений). Сфера Бушующего Огня теперь корректно увеличивает количество призванных огненных элементалей. - Лимит Героев: Исправлен текст подсказки в таверне, когда вы уже достигли лимита героев и пытаетесь нанять нового. - Зомби-трупоеды: Исправлена ошибка, из-за которой герой не получал опыт за съеденные стаки. - Исправлено неработающее срабатывание хуков FU(ES_OnAfterMelee) и FU(ES_OnAfterShoot). Это должно решить проблемы некоторых способностей существ, таких как зомби-трупоеды. #### Game Enhancement Mod: - Добавлена функция, показывающая статус посещения палатки ключника при наведении курсора или щелчке правой кнопкой мыши по пограничным воротам/стражу прохода. - Добавлено исправление, предотвращающее попадание ИИ в бесконечный цикл после оживления своих войск. #### WoG: - Добавлены пропущенные объекты типа 63 в zaobjects.txt для возможности их генерации с помощью RMG; #### WoG Scripts: - Улучшенные боевые машины I/II: Исправлены палатки первой помощи, которые могли снижать здоровье существ до 0 после исцеления. - Улучшенные монстры: исправлена ошибка со скоростью Дьяволов/Архидьяволов, которая сбрасывалась после переигровки битвы. - Гарнизоны: восстановлены заклинания мин/зыбучих песков в гарнизонах (были удалены, так как по какой-то причине наносили урон охране в гарнизонах). - Зеркало Пути Домой: отключена кабальная плата за использование; ### Версия 2.122 #### Advanced Classes Mod: - Исправлена возможность выбора класса в бою - Исправлены бонусы ACM от событий Разведки, которые не были переведены. - Добавлен переключатель для скрипта "Переключение действий", позволяющий включать/выключать его внешними скриптами. #### ERA Scripts: - Достижения: Исправлена ошибка erm при посещении хижины ведьмы без навыков. - Ответный выстрел ящеров-воинов: Теперь они наносят ответный удар только одним выстрелом, даже если могут выстрелить дважды при обычных атаках (та же логика, что и у ответных ударов крестоносцев). #### Game Enhancement Mod: - Исправлена ошибка Исследования Заклинаний, из-за которой не работала возможность исследования должным образом, когда количество заклинаний на уровне меньше обычного (происходит, когда большинство заклинаний запрещено в редакторе карт или скриптах) - Добавлено исправление для проверки иммунитета к заклинаниям, добавленных опытом существ. ### Версия 2.121 #### HD-Mod: - Обновлён до версии 5.5 R19 #### ERA Scripts: - Новая Вуаь тьмы: Исправлено искажение текста в - Воинская обязанность: опция адаптирована, чтобы её можно было настраивать внешними скриптами. #### Game Enhancement Mod: - Исправлено нажатие F для каста, который не работал для Сказочных драконов, когда герой-владелец не мог кастовать. - Исправлен сброс опыта существ после переигровки быстрой битвы #### WoG Graphics Fix Lite: - Обновлён до версии 2.19.5 #### WoG Scripts: - Расширенные специализации героев: специалист по вторичным навыкам со способностью кастовать заклинание в начале боя больше не требует книги заклинаний для активации. - Живые свитки: Живые свитки теперь работают для героя и без книги заклинаний. - Засады бандитов: Исправлено вмешательство опции достижений и внешних скриптов. ### Версия 2.120 #### Advanced Difficulties Mod: - добавлена совместимость между ADM и MNM. Теперь, когда опция "Рост существ за пределы 4т" активна, MNM будет показывать правильный размер стека в тексте подсказки и диалоговом изображении #### Game Enhancement Mod: - Исправление опыта существ у отрядов при переигровке битв: теперь используется более надежный способ получения указателей армии #### WoG Scripts: - Улучшения за Мифрил: улучшена совместимость между Mithril Enhancement (функция Monolith) и функцией GEM Monolith Locator. - Изумрудная Башня: количество существ для жертвоприношения сделано модифицируемым ### Версия 2.119 #### Game Enhancement Mod: - Исправлены неверные константы; #### ERA Scripts: - Исправлен скрипт "Захват мельниц и садов"; ### Версия 2.118 >[!WARNING] > Не обновляйте HD-mod, так как его новая версия конфликтует с некоторыми плагинами; #### Game Enhancement Mod: - Исправлена ошибка, из-за которой в некоторых сценариях при воспроизведении боя возникали неполадки в данных об опыте существ (влияла на опцию "Метаморф"). #### WoG Scripts: - Death Chamber: Now the hostile spell casting before action is only triggered when it's a monster action (Walk/Defend/Walk and Attack/Shoot). #### Other: - прочие мелкие исправления; ### Версия 2.117 >[!NOTE] > Мод 16 2-Ways Monoliths удален из сборки из-за отсутствия стабильности; #### Advanced Difficulties Mod: - Исправлены настройки банков существ. #### Advanced Classes Mod: - Теперь опция "Магические грибы" отключена, так как она конфликтует с несколькими функциями ACM - Убрана "Антимагия" из случайного заклинания, выдаваемого при использовании ГМ Воскрешения, так как она препятствует дальнейшему использованию Воскрешения. - Исправлены способности нейтральных командиров, не адаптированные ACM. - Исправлено улучшенное Лечение, которое прерывает возможность использования Воскрешения на убитых юнитах (из-за изменения их ОЗ). #### ERA Scripts: - Третий класс: Теперь эта опция частично совместима с ACM. Включение этой опции и ACM позволяет выбирать из 3 навыков вместо 2 при повышении уровня героя. #### Game Enhancement Mod: - Панель здоровья: добавлена возможность установить панель здоровья под меткой номера существа - Исправлено странное взаимодействие при наличии дубликатов частей комбинации - Исправлен текст плагинов GEM - Исправлено определение версии игры с помощью скриптов; #### WoG Scripts: - Новые поля сражений: исправлены новые поля сражений, которые иногда не включались. - Рост популяции нейтральных городов и банков существ: исправлен ежемесячный сброс охраны Банков Существ - Неделя монстров: скрипт переписан и теперь с ним можно играть - Рыболовный колодец: теперь событие "Тоннель" будет активироваться только на случайных картах (так как это потенциально нарушает совместимость с некоторыми пользовательскими картами) - Улучшения мифрила: исправлена ошибка !!MN:R (не используйте здесь краткую форму координат, например MN4, вместо этого используйте MNv4/v5/v6) - Артиллерия: исправлена сторона цели автоматического заклинания при применении артефактами после предотвращающего выстрела; #### WoG: - Исправлен плагин поддержки нескольких языков. ### Версия 2.116 #### Advanced Difficulties Mod: - отформатированы некоторые текстовые строки в файле json - Командиры в банках существ больше не будут получать способности и немного уменьшат свое масштабирование в начале игры - удалены лишние шрифты #### Advanced Classes Mod: - исправлено отображение текста в диалогах #### Game Enhancement Mod: - реорганизация тексты - добавлена полоска здоровья в бою - добавлена прокрутка карты на СКМ и ПКМ - добавлено удаление героев города - добавлено подтверждение команд с помощью пробела в диалогах - удалено "creature stats texts.era" - исправлена потеря строк опыта при переигровке боя #### WoG Scripts: - Метаморфы: Исправлена возможность трансформации при недостаточном пространстве. - Воссозданная функция GetRandomMonster (используется в Неделе Монстров/Метаморфах) - добавлена поддержка gosolo для скрипта разведки ### Версия 2.115 #### WOG: - Удалено отладочное сообщение, возникающие при открытии диалогов ### Версия 2.114 #### Game Enhancement Mod: - Исправлена путаница в статистике существ с опытом стека после повтора битвы, когда стек был убит флагом Summoned. Это исправило статистику Metamorphs и, возможно, некоторые сторонние скрипты. #### WOG: - переписаны некоторые плагины для повышения стабильности игры #### WoG Graphics Fix Lite: - Fixed WM II catapult small icon #### WoG Scripts: - добавлена поддержка плагина генерации ВоГ-объектов на случайных картах (плагин пока что доступен в VIP-канале) - Хижины командиров ведьм: добавлена возможность отказаться от предложенного навыка #### Other: - добавлен исходный код ERA - обновлены и добавлены заголовочники для создания плагинов для с использованием ERA API ### Версия 2.113 #### Advanced Classes Mod: - исправлена ошибка ERM во время лечения в бою #### ERA Scripts: - Удалена опция "Засады Бандитов", так как он очень похожа на "Атаку воров". - Удалены erm-файлы с неиспользуемыми функциями #### WoG Scripts: - теперь срабатывает только со второго дня (так же, как ежедневные события из оригинальной игры) - Хозява жизни - герои создают магический ландшафт каждый день - улучшенные монстры героя 7-го уровня становятся монстрами 8-го уровня ### Версия 2.112 #### Advanced Classes Mod: - Теперь Огненные Маги и союзники будут по-прежнему невосприимчивы к собственному Огненному Шару с представленной Сферой Уязвимости. - Теперь Дипломатия не может привлекать существ, которые не могут быть созданы на карте (необходимо заранее установить MA:H=0). #### Game Enhancement Mod: - hotfix ### Версия 2.111 #### Advanced Classes Mod: - В многопользовательских играх текст способностей из наборов "Усадьба"/"Природный Целитель"/"Тайный" не отображается для удаленного игрока. - Исправлена проблема в многопользовательской игре, когда во время боя можно было выбрать заклинание вражеского командира (классы Архимаг/Хранитель), что приводило к рассинхронизации. - Теперь немного сложнее получить высокие значения характеристик для заклинаний "Молитва" и "Благословение". - Различные исправления для многопользовательских игр. - Заклинание "Рассеивание" теперь принадлежит школе Воздуха, а "Маскировка" перемещено в школу Воды. - Исправлено сообщение о бонусе набора "Разведка" перед боем. - Изменено описание артефакта "Мощь Отца Драконов". - Знак Мужества больше не дает иммунитет к ментальным заклинаниям для всех войск. - Заклинания класса командира "Хранитель" теперь правильно масштабируются в зависимости от модификатора заклинания. - Все заклинания, накладываемые командирами, теперь имеют 50% шанс дать +1 к числу убитых. - Исправлена совместимость с ERA 3.9.15 (хук "Поместье"). - Отключена Экономика (опция ES), так как она вызывает проблемы с множественным текстом описания и совместимостью специализаций. - Оптимизированы триггеры HL (учтите, что они выполняются для героев с высоким уровнем по умолчанию. Здесь мы используем i^acm_isGameStarted^, чтобы пропустить процесс HL до начала игры). - Исправлен текст специалиста Мутаре. - Немного уменьшено масштабирование урона заклинания "Огненный Щит". - Исправлена ошибка с нулевым перемещением командира класса "Охотник". - Предотвращено уменьшение количества существ в отряде лечащего существа, если у него есть BM:B>BM:N. - Щит Огра имеет небольшой шанс блокировать 50% урона. - Деревянный щит Гнома дает бонус к жизни войскам 1 и 2 уровней. - Щит Гнолла накладывает эффект "Зеркало магии" в первом раунде боя. - Масштабирование артефактов командира уменьшено вдвое. - Артефакты командира больше не теряют бонусы при снятии. - Навык атаки командира (от Базового до Грандмастера) теперь масштабируется от 5 до 25, как и защита. #### ERA Scripts: - Исправлено зависание игры при отображении достижений - добавлена совместимость с модом WoG Graphics Fix #### Game Enhancement Mod: - Обновление главного плагина до версии 1.7: - Изменён курсор при наведении на номера версий в главном меню; - Добавлена возможность открыть список изменений игровой сборки (клик на установленной версии сборки) - Добавлена возможность открыть список изменений движка ERA (клик на версии ERA) - Напоминаю о возможности перейти на веб-сайт с последней версией (клик на последней версии сборки) #### WoG Scripts: - Улучшение замка: Исправлены данные о приросте, отображаемые в диалоговом окне, вызываемом правой кнопкой мыши по значкам существ в городах. - Случайный герой: Исправлен случайный герой, который становился доступным для всех игроков после битвы (если он был забанен на карте). ### Версия 2.110 #### Advanced Classes Mod: - Отключено удаление теоретического боя ИИ против ИИ - Теперь сила Мастерской/Грандмастерской Некромантии составляет 20%/25% (было 17%/20%) - Альтернативная Некромантия: - Теперь выбор существа для подъема для альтернативной некромантии будет сбрасываться, когда герой возрождается в тавернах. - Теперь сила Некромантии для подъема пользовательского существа рассчитывается на основе текущих значений: - Ходячие мертвецы: 80% от исходного значения - Призраки: 55% от исходного значения - Вампиры: 30% от исходного значения - Личи: 25% от исходного значения - Черные Рыцари: 15% от исходного значения #### ERA Scripts: - Смертные Герои: исправлена ошибка, из-за которой значок специальности иногда не сбрасывался, когда герой получал новую специальность. #### Game Enhancement Mod: - добавлен выбор шрифта добавляемых текстовых элементов главного меню; - добавлен вопрос перед открытием сайта с последней версией сборки на GitHub; #### Other: - Добавлен вьетнамский язык в диалог выбора языка; - Некоторые моды получили иконки; - Добавлены кампании Heroes Chronicles; ### Версия 2.109 ## HD Mod: - По умолчанию теперь активированы следующие твики: - `Fix.Crit.MapsOver5000` - исправляет вылет при огромном количестве карт; #### ERA Scripts: - Смертные Герои: исправлена опечатка; #### Game Enhancement Mod: - Добавлено исправление некорректного расчёта бонуса игнорирования защиты; ### Версия 2.108 #### ERA Scripts: - Смертные Герои: исправлена опечатка; ### Версия 2.107 ## HD Mod: - По умолчанию теперь активированы следующие твики: - `Misc.TournamentSaver` - ежедневно создаёт уникальные сохранения для каждой игры; - `Misc.RenameRandMap` - создаёт уникальное имя для каждой карты, созданной Генератором Случайных Карт; - `UI.Ext.TownMgr.AvailableInsteadGrowth` - В окне города отображает количество доступных для найма существ, а не прирост; - `UI.Tavern.InviteHero` - позволяет выбрать следующего нанимаемого героя после покупки текущего; - `UI.Ext.AdvMgr` - поддерживает расширенную подсказку в строке состояния карты приключений; #### Advanced Classes Mod: - Альтернативная некромантия теперь активируется щелчком левой кнопки мыши по значку некромантии (ранее — щелчком правой кнопкой мыши). #### ERA ERM Framework: - добавлен адрес массива структур Командиров; - добавлен адрес SWAP_MANAGER (Менеджер встречи героев); #### ERA Scripts: - Городские сокровища: исправлена ошибка, из-за которой иногда было невозможно обокрасть Красного игрока. - Ночная разведка: оптимизирован диалог для проверки принадлежащих героям ассасинов. - Смертные герои: - Предотвращение генерации одинаковых специальностей при спаме битв в одном и том же месте. - Сброс NPC теперь осуществляется функцией WoG, более высокая совместимость с опцией "Усиленные командиры" #### TrainerX: - Исправлена невозможность изменить уровень героев, не принадлежащих текущему игроку. ### WoG Scripts: - Исправлено описание вогификации в меню вог-опций; - ## Опция "Неделя монстров" временно отключена; - Стандартизировано взаимодействие вторичных навыков (Поместье II, Разведка I/III). Теперь они активируются щелчком левой кнопкой мыши по иконкам вторичных навыков на экране героя. Их нельзя активировать, если это не ход игрока/герой не принадлежит игроку. - При включении Разведки I и Разведки III диалог настройки Разведки I активировался щелчком правой кнопкой мыши по иконке Разведки. (так как диалог левой кнопки мыши занят Разведкой III). - Освобождены z250-z265, z770-z786 из скрипта Разведка III. Теперь их можно использовать свободно. - Разведка III: Базовая разведка больше не может красть ресурсы и заклинания (для использования необходимо перейти на продвинутый уровень). Исправлено неправильное отображение основных навыков героя в городе, в который проникли. - Артиллерия: ограничено количество баллист при превентивном выстреле до 1; - Усиленные Командиры: небольшая оптимизация кода, исправление сброса заклинания Астрального Духа; #### Other: - Добавлен хук (xxx_OnResetHero) для работы с переменными героя (или глобальными переменными героя). Это должно помочь сбросить выбор вторичных навыков/артефактов, когда герой уволен/побежден и возрождается в тавернах. - добавлены пропущенные данные кампаний Клинка Армагеддона ### Версия 2.106 #### Advanced Classes Mod: - Топор Кентавра теперь дает +5% к шансу физического крита - Трейнер заклинаний призыва теперь дает процентный бонус (слабее в начале игры, сильнее в конце) - Шлем Единорога, Подвода с Боеприпасами ( и её улучшения) обеспечивают большее восстановление очков заклинаний после боя - Восполнение очков маны (улучшение Подводы с Боеприпасами) теперь требует вторичный навык "Искусство Войны" (Тактика) вместо Обучения (делает его более доступным для Воинов, так как им может быть сложно иметь достаточно Маны). Улучшение "Overheal" теперь требует навык "Обучение" вместо Искусства Войны (Тактики). - Дубина Короля Огров: исправлена неработающая способность оглушения - Способность "Пацифист" больше не будет уменьшать урон от низкоуровневых юнитов на 50% (спасибо Diozia) - Исправлена некорректная работа Дипломатии - Перебалансированы эффекты способности "Калека". Минимальная скорость существ составляет 3 вместо 2 (те же характеристики, что и у крестьян). #### Advanced Difficulties Mod: - Исправлено: дополнительные способности не будут накапливаться при переигровки битв (спасибо TheInvisible1966) #### ERA Scripts: - Смертные Герои: Теперь специализация "Аура Проклятия" больше не дает вам скрытую специализацию заклинания. Улучшен текст журнала битвы: теперь он более понятен. - Удалены лишние функции; #### Game Enhancement Mod: - Добавлено взаимодействие с Водоворотом Маны в стиле HotA: Водоворот Маны теперь активируется вручную и может быть использован только гостевым героем. Кроме того, невозможно использовать Водоворот Маны в городах союзников. #### WoG Graphics Fix Lite: - Обновление мода до версии 2.18.0; #### WoG Scripts: - Пещера приключений: теперь способности, полученные от отшельников, можно использовать в сетевых битвах. #### Other: - исправления некоторых файлов локализации; ### Версия 2.105 #### ERA Scripts: - улучшены специалисты по существам: изменен хук и оптимизирован скрипт; - Скелеты с артефактами: убрана анимация при быстрой битве; #### WoG Scripts: - Артиллерия: исправлен вылет при атаке городов с башнями; ### Версия 2.104 #### Advanced Classes Mod: - Исправлено отображение сообщения о грабеже, когда город игрока-человека захвачен ИИ. #### ERA ERM Framework: - Добавлена инициализация боевых переменных в триггере OnSetupBattlefield; #### ERA Scripts: - Теперь опция "артефакты рюкзака" полностью совместима с ACM (снова). Включение этой опции с помощью ACM позволяет артефактам очков движения давать очки передвижения из рюкзака. #### Game Enhancement Mod: - Отключение кнопок и диалоги быстрого боя на карте обучения (поскольку в обучении отключена вся функция быстрого боя). #### WoG Scripts: - В скрипт "Хозяева Жизни" добавлена функция, позволяющая внешним скриптам управлять существами. - Рефакторинг скриптов бонусов для нейтральных юнитов, повышение производительности и устранение потенциальной проблемы пересечения переменных. ### Версия 2.103 #### Advanced Classes Mod: - Исправлена возможность колдовать "Забывчивость" на тех, кто не стреляет. #### WoG: - Исправлен вылет при попытке создания случайных карт; - Добавлены картинки для кампаний "Хроник"; ### Версия 2.102 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле "/Help/Era manual/era iii Changelog.txt"; - ## обновление ядра ERA.dll до версии 3.9.15: - Обновлен плагин erm_hooker.era до версии 3.0: — Переключен на современный API исправлений из era.dll. - Реализована защита от перекрытия патчей. - Реализована защита от восстановления патчей, если пропатченный код был изменен сторонним кодом. - Улучшен код исправления моста. - Добавлен отчет о версии (ПКМ по кредитам в меню игры). - Файл отчета об исправлениях (Debug/Era/ermooks.txt) теперь использует удобочитаемые имена функций ERM вместо числовых идентификаторов. - Добавлена поддержка библиотек сценариев ERM. Скрипты, расположенные в каталоге Data/s/lib, считаются скриптами библиотеки. Они загружаются перед другими глобальными скриптами и перед всеми скриптами карты (как внутренними, так и внешними). Такие скрипты необходимо грамотно писать, использовать только именованные переменные и функции с префиксами. Они не должны влиять на игровой процесс, интерфейс или другие скрипты. Их следует рассматривать как вызываемую коллекцию функций вместе со связанными константами и структурами данных. - Скрипты Era Erm Framework перемещены в "Data/s/lib" и теперь могут использоваться в картах, даже в картах, отключив глобальные сценарии ERM. - Исправлена команда "DL:H". Любая строка принимается как подсказка. Подсказка копируется во внутреннюю папку диалога и автоматически освобождается при закрытии диалога. Больше нет необходимости использовать глобальные z-переменные для пользовательских подсказок диалога. Подсказки больше не интерполируются во время показа. - Изменена команда "IF:L", позволяющая использовать любую строку в качестве аргумента и автоматически экранировать символ "%". Раньше строки с "%" приводили к некорректным результатам или даже к сбоям. - Изменены команды "HE:B0", "HE:B1", "HE:B3", чтобы использовать любую строку в качестве аргумента. - Переписаны функции WoG "ApplyString" и "NewMesMan", позволяющие использовать любую строку в нескольких командах ERM (CA, LE, GE и т. д.): - Отключен синтаксис установки сообщения о событии на сообщение о событии с заданным идентификатором (например, "GE:M30" для события с идентификатором 30). - Устаревший синтаксис использования -1 вместо пустой строки. - Расширенный синтаксис SN:K(str)/(ind)/[?](strchar или char code). Если результатом является целочисленная переменная, вместо нее возвращается символьный код. - Расширение команды "VR:F 4-м параметром: - Если указано (defaultValue) и переменная не соответствует диапазону (minValue)..(maxValue), ей будет присвоено значение (defaultValue): ``` !!VR(intVar):F(minValue)/(maxValue)/(showErrors)/(defaultValue); ``` - Повышена стабильность выполнения динамических команд ERM с использованием API ExecErmCmd. Добавлена поддержка всех переменных ERM 2 в параметрах команды. - Расширен буфер быстрой памяти ERM для строковых литералов и строковых аргументов в командах и триггерах ERM с 1 МБ до 3 МБ. - Добавлена возможность увеличить размер буфера для скомпилированных скриптов erm с помощью настройки heroes3.ini. Значение по умолчанию — 128 МБ. Для одной команды ERM требуется ~0,5 КБ: - CompiledErmBufSize = 134217728; максимальный размер буфера для скомпилированных erm-скриптов (не влияет на динамическую компиляцию на лету с использованием PersistErmCmd или ExecErmCmd) - Отключен трекинг ERM для кода обработки мыши и клавиатуры Era Erm Framework. - Улучшено форматирование отчета об отслеживании ERM. - Добавлено новое событие OnBeforeLoadGame для плагинов. Это происходит сразу после выхода из старой игры и перед загрузкой новой игры. - В файл heroes3.ini добавлена новая опция "Debug.CopySavegameOnCrash". Эта опция включена по умолчанию и включает копирование последнего использованного сохранения игры в каталог отладки при сбое, что может быть полезно для отладки вылетов/ошибок. - Несколько сообщений из кода перенесены в era.json для дальнейшей локализации: - era.no_memory_for_erm_optimization; - era.game_crash_message; - Переработаны и обновлены файлы Era SDK в "Tools/Era/SDK". Для C++ используйте "era.h" и "era.cpp". Для Delphi используйте "era.pas". - В Era Erm Framework добавлены следующие функции: - ``` !?FU(Interpolate); ; Interpolates ERM variables inside given string (%v1, etc). Can be used for nested translation strings like %T(...) is json. !#VA(strPtr:x); Source string. !#VA(resultPtr:x); OUT. Result string. Example: !!VRi^edu_age^:S33; !!VRs^edu_name^:S^Xeon^; !!VR(templateStr:z):S^%%s(edu_name) is %%i(edu_age) years old^; !!IF:M(templateStr); displays "%s(edu_name) is %i(edu_age) years old" !!FU(Interpolate):P(templateStr)/?(interpolatedStr:z); !!IF:M(interpolatedStr); displays "Xeon is 33 years old" ``` - ``` !?FU(Trim); ; Trims #0..#32 characters (space and control characters) from both sides of the string. !#VA(strPtr:x); Source string. !#VA(resultPtr:x); OUT. Result string. Example: !!VR(text:z):S^ Hello World ^; !!FU(Trim):P(text)/?(text); !!IF:M^%(text)^; displays "Hello World" without leading and trailing spaces ``` - ``` !?FU(StrPos); ; Finds the first occurance of needle string in the haystack string. Returns offset from string start or -1 for faulure !#VA(haystackPtr:x); String to search in !#VA(needlePtr:x); String to seacrh for !#VA(result:x); Result offset in the haystack string or -1. !#VA(offset:x); Zero-based offset in haystack string to start search from. Default: 0. Example: !!VR(text:z):S^Hello World^; !!FU(StrPos):P(text)/^World^/?(substrPos:y); !!IF:M^%(substrPos)^; displays "6" ``` - ``` !?FU(StrReplace); ; Replaces all occurencies of Pattern string in the Source string with Replacement string. Returns final string. ; Can be used inside triggers only. !#VA(sourcePtr:x); Original string to perform replacements in !#VA(patternPtr:x); What string to replace !#VA(replacementPtr:x); Replacement string !#VA(result:x); Result string index Example: !!VR(text:z):S^You should cast the spell. Spell casting increases your intelligence^; !!FU(StrReplace):P(text)/^cast^/^learn^/?(text); !!IF:M^%(text)^; You should learn the spell. Spell learning increases your intelligence ``` - В Era Erm Framework добавлены следующие константы: - CHAT_EVENT_TYPE_XXX для подтипа события "OnChat" - CHAT_EVENT_RESULT_XXX для результата события "OnChat" - В era.dll добавлены следующие экспортированные функции: (* Компилирует одну команду ERM без префикса !! и условий и сохраняет скомпилированный код в постоянной памяти. Возвращает ненулевой непрозрачный указатель в случае успеха и ноль в случае неудачи. Завершающая точка с запятой необязательна *) function PersistErmCmd (CmdStr: pchar): {n} pointer; stdcall; (* Выполняет ранее скомпилированную и сохраненную команду ERM. Для компиляции используйте PersistErmCmd API *) procedure ExecPersistedErmCmd (PersistedCmd: pointer); stdcall; (* Переводит заданную строку. Возвращает статический адрес преобразованной строки, который никогда не будет освобожден *) function trStatic (const Key: pchar): pchar; stdcall; (* Преобразует заданную строку. Передает параметры как пары (ключ, значение). Возвращает временный адрес строки, который необходимо немедленно скопировать в безопасное место *) function trTemp (const Key: pchar; Params: pointer to array of pchar; LastParamIndex: integer): pchar; stdcall; (* Возвращает удобочитаемую строку для идентификатора события ERM. Обычно это удобочитаемое имя триггера ERM или имя функции ERM. Вызывающий ДОЛЖЕН освободить возвращенный блок памяти, используя MemFree из era.dll *) function GetTriggerReadableName (EventId: integer): {O} pchar; stdcall; (* Устанавливает новый хук по указанному адресу. Возвращает указатель на мост с исходным кодом. При необходимости укажите адрес указателя, на который будет записан указатель структуры примененного патча. Это позволит позже откатить патч. Функция-обработчик должна использовать соглашение stdcall. Он получает указатель контекста ловушки и должен возвращать ненулевое значение, чтобы выполнить перезаписанный код. *) function HookCode (Addr: pointer; HandlerFunc: THookHandler; {n} AppliedPatch: ppointer): pointer; stdcall; type PHookContext = ^THookContext; THookContext = packed record EDI, ESI, EBP, ESP, EBX, EDX, ECX, EAX: integer; RetAddr: pointer; end; THookHandler = function (Context: PHookContext): LONGBOOL; stdcall; (* Рассчитывает количество байтов, которые будут перезаписаны при размещении крючка *) function CalcHookPatchSize (Addr: pointer): integer; stdcall; (*Патч откатится и внутренняя память и освободится. Больше не используйте*) procedure RollbackAppliedPatch ({O} AppliedPatch: pointer); stdcall; (* Освобождает структуру примененного патча. Используйте его, если вы больше не планируете откатывать его *) procedure FreeAppliedPatch ({O} AppliedPatch: pointer); stdcall; - Изменены некоторые экспортированные сигнатуры функций. Многие из них теперь используют тип TInt32Bool (32 бита 0 или 1) вместо логического значения для лучшей совместимости с ERM: type TIsCommanderIdFunc = function (MonId: integer): TInt32Bool stdcall; TIsElixirOfLifeStackFunc = function (Stack: Heroes.PBattleStack): TInt32Bool stdcall; function IsCommanderId (MonId: integer): TInt32Bool; stdcall; function SetIsCommanderIdFunc (NewImpl: TIsCommanderIdFunc): {n} TIsCommanderIdFunc; stdcall; function IsElixirOfLifeStack (Stack: Heroes.PBattleStack): TInt32Bool; stdcall; function SetIsElixirOfLifeStackFunc (NewImpl: TIsElixirOfLifeStackFunc): {n} TIsElixirOfLifeStackFunc; stdcall; (* Returns 32-character unique key for current game process. The ID will be unique between multiple game runs. *) procedure GetProcessGuid: static_pchar; stdcall; - Повышена производительность функции "Substr" из Era Erm Framework. - Небезопасные хуки Era с указанными вручную размерами хуков заменены на полностью автоматические хуки с расчетом длины хука с использованием встроенного механизма дизассемблера. - Исправлена ошибка: события "OnWinGame" и "OnLoseGame" не выполнялись после "OnGameLeave", поскольку к этому моменту движок ERM был отключен. Теперь "OnWinGame" и "OnLoseGame" происходят непосредственно перед "OnGameLeave". - Исправлена ошибка ERM. При доступе к элементу локального массива по индексу переменной отсутствовала поддержка отложенных вычислений. Такие конструкции, как "!!if&v1<>v1/(array[hugeValueVar])", используются для создания предупреждений во время выполнения. На данный момент индекс недопустимого элемента изменен на 0, что приводит к ошибке времени выполнения только в случае реального доступа к элементу. - Исправлена ошибка в функции IsCommanderId, приводившая к вылету. - Исправлена ошибка в игре: ввод текста в строке чата приводил к фантомному нажатию кнопки мыши в чате. - Исправлен сбой, возникающий при отключении опции "Debug.TrackErm". Ошибка появилась в версии 3.9.14. - Исправлена ошибка: контекст памяти ERM терялся в исключениях из-за новой реализации быстрого выхода в главное меню. - Исправлено полное обнаружение битвы ИИ в WoG. Таймер автозакрытия диалога больше не сравнивается с 0. Чит "gosolo" снова работает в боях без ошибок ERM. - Устаревшие экспортированные функции "ApiHook" и "Hook". "Hook" отобразит сообщение об ошибке, а ApiHook сохраняется только для устаревших версий. Вместо этого используйте HookCode или API patcher_x86 напрямую. - Исправлена старая ошибка обработки событий. Запуск события ERM с отключенным ERM также привел к тому, что глобальное событие не было создано. Например, Era и плагины не могли обработать событие OnSavegameRead, если ERM был отключен в момент загрузки сохранения игры. #### Advanced Classes Mod: - Теперь иммунитет к заклинаниям больше не действует на собственные войска. - исправлено самоисцеление палатки первой помощи при щелчке правой кнопкой мыши в бою. - Исправлены хуки ACM Before Attack/After Attack. - Исправлено отсутствие предоставления позиции в отряде для подсказок о боевых машинах. - Исправлен Свиток призыва, не работавший при экипировке более 1 свитка; - Исправлен Огненный Щит: 1. Теперь мы проверяем, был ли целевой стек применен героем "Огненный щит", вместо того, чтобы проверять, применил ли герой "Огненный щит" к какому-либо из стека, чтобы определить, следует ли призвать огненного элементаля. 2. Удалены все использование BG в MF1 для Fire Shield, избегая проблем с совместимостью. 3. исправлен расчет урона Огненного Щита. - Способность "Блокировать" у Торосара теперь ограничена 100% вероятностью/95% блокировкой урона. - Исправлены описания специалистов Командира. - Предотвращено уменьшение количества лечимых существ, если у него есть BM:B>BM:N. - Исправлена ошибка, из-за которой Сапоги Противодействия не обновляли экран после получения очков движения. - исправлен текст специалиста Мутаре - немного уменьшено масштабирование урона от Огненного щита. - исправлена ошибка с нулевым движением командира класса Охотник. - Знак отваги больше не дает иммунитет к разуму. - Мощь Отца Драконов - изменено описание, чтобы показать, что она не защищает от "Снятия Заклинаний". - Исправлен счетчик убийств командира при переигровке боя. - Добавлена подсказка в журнал боя для естественного сопротивления (поскольку многие игроки сочли эту способность запутанной) - Заклинания командирского класса "Страж" теперь имеют правильное масштабирование в зависимости от модификатора заклинания. - все заклинания, произнесенные командирами, теперь имеют 50% шанс дать +1 к количеству убийств. #### Advanced Difficulties Mod: - исправление неправильного расчета боевой награды с настройками банков существ (спасибо Maximo) - Настройки сложности банков существ немного уменьшили бонус ОЗ командира в неделю на более низких уровнях сложности. - Исправлена возможность получения боевой награды при убийстве атакующего героя. - Исправлена возможность давать ИИ опыт, если этого не должно быть (достижение максимального уровня или уровень 6424). #### Easy Cheats: - Выпущен новый мод "Easy Cheats" с действительно простыми для ввода и запоминания читами и встроенной консолью ERM. Для получения подробной информации введите "help" в чате (Не забудьте включить его в Менеджере Модов). #### ERA Scripts: - Халфинги-Уклонисты: исправлен диапазон урона, от которого нужно уклоняться. - Батраки: - Перемещено положение кнопки "Пеоны" на 5 пикселей вправо, чтобы не закрывать число доходов. - Теперь можно отправлять на "работу" войска героя-посетителя, если в гарнизоне нет войска - Банк Лепрекона: добавлено обновление экрана после заёма в банке. - Ночная разведка: исправлено изображение Ассасина в диалоге. #### Game Enhancement Mod: - Хижины Провидцев: части комбо-артефактов больше не будут выбраны в качестве квестового предмета в Хижинах Провидцев. - Исправлено отсутствие срабатывания условия победы после захвата всех 7 башен Грифона в сценарии "Да здравствует королева" — сценарий "Утес Грифона". - Исправлен вылет в бою без лодки на море - возникает из-за отсутствия фона поля боя, вызванного событиями на пользовательских картах, когда герой движется по морю с помощью полета/по воде. - Исправлена проходимость после посещения тюрем с плагином "game bug fixes extended.dll". #### HD mod: - Обновлен до версии 5.5 R6; #### TrainerX: - Для работы TrainerX требуется ERA 3.9.15. - Теперь TrainerX можно использовать на любой карте, включая карты Valery, предотвращающие WoGификации. - Добавлен Ctrl+ЛКМ по портрету героя в главном интерфейсе трейнера, чтобы центрировать камеру по местоположению героя. #### WoG Scripts: - Исправлена ошибка при нажатии на сумму боевого духа при активном моде 10SSkills; - Нейтральный опыт стека: исправлено взаимодействие с опцией опыта стека. Можно включить опыт нейтрального стека, не включая опыт другого стека. - Метаморфы: исправлена неверные параметры метаморфа после того, как он трансформировался и получил опыт. - Улучшения за Мифрил: исправлен эффект улучшения шахт, который длится всю игру (согласно описанию должно составлять 1 неделю) - Небольшая настройка Изумрудной Башни (не менять боевую ценность при улучшении) #### Other: - Несколько небольших корректировок скриптов. - В список objects.txt добавлены существа-командиры для поддержки их размещения на карте; - небольшая реорганизация файлов; - добавлены следующие шаблоны для создания случайных карт в набор hd mod: - 8xm8a; - 8xm8; - 13th Region; - Battle Arena; - Blood Star; - Great Sands; - Magic of Decateron; - Pentagram; - Penteract; - Tesseract; ### Версия 2.101 #### ERA: - Исправлена старая ошибка обработки событий. Запуск события ERM с отключенным ERM также привел к тому, что глобальное событие не было создано. Например, Era и плагины не могли обработать событие OnSavegameRead, если ERM был отключен в момент загрузки сохранения игры. #### Game Enhancement Mod: - исправлены неработающие чит-коды; #### Random Wallpaper Mod: - удалены лишние файлы; #### WoG Graphics Fix Lite: - Обновление мода до версии 2.18.0; ### Версия 2.100 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле /Help/Era manual/era iii Changelog.txt; - обновление ядра ERA.dll до версии 3.9.14: - добавлена поддержка захвата скриншотов: - Добавлена поддержка захвата игровых скриншотов в форматах png/jpg. В era.dll была экспортирована следующая функция: (* Захватывает скриншот и сохраняет его в виде файла. Формат определяется автоматически по расширению. Поддерживаются следующие расширения: 'jpeg', 'jpg', 'png'. По умолчанию также захватывается курсор в игре. Возвращает флаг успеха. 'Quality' используется для указания качества сохранения jpeg (0..100). 'Flags' - битовая маска функциональных флагов. TS_FLAG_HIDE_CURSOR = 1; // Скрыть курсор *) - function TakeScreenshot (FilePath: pchar; Quality: integer; Flags: integer): TDwordBool; stdcall; - В heroes3.ini добавлена новая опция "Debug.CaptureScreenshotOnCrash". Опция позволяет захватить скриншот при сбое и сохранить его в "Debug/Era/screenshot.jpg". - улучшена стабильность выполнения ERM: - Добавлено автоматическое сброс отслеживания ERM и восстановление настроек при запуске или загрузке игры. - Реализована автоматическая очистка директории "Debug/Era" перед генерацией файлов отладки при сбое. - улучшены средства отладки: - Добавлено API времени выполнения для контроля за отслеживанием ERM. Оно может быть использовано для исключения хорошо протестированной библиотеки из окончательного лога отслеживания ERM или для отслеживания только определенных блоков кода: - В heroes3.ini добавлена новая опция "Debug.AllowRuntimeErmTrackingControl". Опция включает или отключает контроль времени выполнения за отслеживанием ERM. По умолчанию она включена и должна быть отключена в случае сложного отслеживания ошибок, когда нельзя доверять никакому коду. - В era.dll были экспортированы следующие функции: - procedure DisableErmTracking; stdcall; // Приостанавливает отслеживание ERM. Вся ранее отслеженная информация сохраняется. - procedure EnableErmTracking; stdcall; // Возобновляет отслеживание ERM. - procedure RestoreErmTracking; stdcall; // Устанавливает отслеживание ERM в значение, указанное в heroes3.ini (используемое до манипуляций во время выполнения). - procedure ResetErmTracking; stdcall; // Очищает все ранее записанные треки. - улучшена стабильность сетевой игры: - ### Предупреждение. Использование "OnGameEnter" для ERM хуков в сетевых играх не работает в Era < 3.9.14. Добавлена поддержка событий "OnGameEnter" и "OnGameLeave" в сетевых играх. Ранее передача сохраненной игры и загрузка на удаленной стороне вызывали "OnAfterSavegameLoad", но не "OnGameLeave" + "OnGameEnter". Поэтому использование плагина erm_hooker с событием "OnGameEnter" приводило к сбросу хуков после первого конца хода. В сетевых играх последовательность событий после конца хода на удаленной стороне следующая: "OnGameLeave" - здесь мы восстанавливаем патчи UN:C и снимаем хуки erm_hooker "OnSavegameRead" - чтение переданного сохранения "OnAfterLoadGame" - полностью загруженное переданное сохранение "OnGameEnter" - установка патчей UN:C и ERM хуков снова - прочее: - Обновлен плагин erm_hooker.era и карта отладки (map-файл) - "OnAdvMapTileHint" был переименован в "OnAdventureMapTileHint". Предыдущее название устарело, но сохранено для совместимости. - Рефакторинг модуля внутренних настроек. - Диалог выбора IP больше не будет отображаться на экране настройки мультиплеера, если на ПК доступен только один IP-адрес. - Исправлено отслеживание команд ERM с ';' внутри строковых литералов (например, \^...;...\^). - Исправлено неточное определение местоположения и строки по адресу в модуле DebugMaps. - Исправлена карта отладки плагина buttons.dll (map-файл) - Устаревшее событие 'OnAbnormalGameLeave' больше не поддерживается. Способ HD мода вернуться с экрана боя в основное меню игры больше не поддерживается. - После события "OnGameLeave" выполнение ERM отключается. Триггеры MP3 и реального времени больше не выполняются вне основного цикла игры. Ранее триггеры выполнялись в контексте главного меню игры. - Исправлена ошибка, блокировавшая трэкинг ERM при вылете из игры; #### Random Wallpaper Mod: - Добавлена новая для всех меню; - Заменён логотип в главном меню; - Исправлены "пустые" картинки; - Удалены .pac/.vid файла из-за ненадобности; #### WoG: - Исправлен баг опыта существ из прошлых обновлений; #### WoG Scripts: - Исправлена логика обновления банков существ; - "Изменённые монстры": фикс скорости Архидьяволов; - Улучшенные Военные Машины III: Исправлено лечение вражеских юнитов; #### Other: - Переименованы триггеры "OnAdvMapTileHint" на "OnAdventureMapTileHint"; - TrainerX/Enhanced Henchmen моды теперь тоже поддерживают мультиязычность; ### Версия 2.99 #### ERA Scripts: - Исправлено затирание описания Вуали Тьмы; - Временно отключена анимация появление "Ассасинов" из-за вылета во время битвы; #### Enhanced Henchmen: - Добавлена поддержка динамической смены языка; #### TrainerX: - Добавлена поддержка динамической смены языка; #### WoG Scripts: - Исправлено восполнения банков существ; ### Версия 2.98 #### Other: - восстановлены недостающие файлы; ### Версия 2.97 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле /Help/Era manual/era iii Changelog.txt; - обновление ядра ERA.dll до версии 3.9.13: - Улучшена устойчивость к исключениям для механизма ERM (триггеры и команды). Очистка памяти ERM выполняется в исключительных случаях, что позволяет повторно использовать механизм ERM позже после восстановления. Исключения могут использоваться, например, для быстрого выхода из глубоко вложенных диалогов. - Улучшена обработка сбоев/исключений. Обработчики HD и WoG вообще не вызываются. Обработчик Era вызывается только один раз. Отчеты о сбоях становятся более стабильными и точными. Раньше могло возникнуть несколько исключений, которые переопределяли одни и те же журналы. - Добавлена экспериментальная (может быть удалена) экспортированная функция выхода из любого диалога в главном меню игры. - Командиры без флага UNDEAD теперь также обрабатываются Эликсиром Жизни. Плагины могут переопределять экспортированную функцию IsElixirOfLifeStack для реализации другого поведения. - В era.dll добавлены экспортированные функции, дополнительные шаги по переносу жестко закодированной механики WoG в заменяемый формат API. Установщики API возвращают ранее установленные функции реализации или ноль. - Кнопка запуска диалога выбора языка теперь работает и в окне кампаний; #### Advanced Classes Mod: - Выстрел Артиллерии теперь не может атаковать свои войска, когда активной стороной является вражеская; - В многопользовательских играх текст способностей наборов "Estate/Natural Healer/Secret" не будет отображаться для удаленного игрока. - Исправлена проблема в многопользовательских играх, когда была возможность выбора заклинания вражеского командира (класс "Archmage/Warden") во время боя, что приводило к десинхронизации. - Теперь немного сложнее получить высокие значения статистики для заклинаний "Молитва" и "Благословение". - Различные исправления для многопользовательских игр. - Заклинание "Dispel" теперь относится к воздушной магии, и в компенсацию "Disguised" перемещено в водную магию. - Исправлено сообщение о бонусе набора "Разведка" перед боем. - Исправлено: Огненный маг больше не пропускает бросок огненного шара после атаки, если он изучил умение "Strike all around". - Исправлено: Магоги не наносили урон своим войскам, если они загипнотизированы. #### Game Enhancement Mod: - Заменена иконка мифрила на панели ресурсов @Grossmaestro; - Удалена замена тумана войны; #### Enhanced Henchmen: - Исправлено неиспользование ИИ знамён полководца на оруженосцах; #### TrainerX: - удаление артефактов ранее не вызывало оригинальное событие снятия; - Исправлено затирание имения артефакта "Зеркало" при открытии карты; - Исправлено срабатывание открытия диалога дополнительных опций при нажатом "Ctrl"; - Исправлено некорректное удаление артефактов из структуры героя; #### Random Wallpaper Mod: - Переписан плагин логотипа; добавлена поддержка отрисовки поверх видео и управлением именем и положением картинки в обоих меню; #### WoG Scripts: - Артиллерия: исправлен стартовый выстрел баллисты. Теперь урон наносится согласно описанию на 100/200/300% от обычного урона отряда; - Добавлена поддержка восполнения новых банков существ; - Исправлено возможное отключение опыта отрядов при переигровке боя. #### Other: - Добавлены файлы предпросмотра кампаний Клинка Армагеддона; - В некоторых модах добавлена поддержка динамической смены языка - Небольшие правки описаний; ### Версия 2.969 #### ERA: - обновление ядра ERA.dll - уменьшена регенерация Эликсиром Жизни до 100 hp; - добавлена экспортируемая ф-ция SetStdRegenerationEffect для плагинов; #### Random Wallpaper Mod: - Исправлена невозможность выбрать размер карт в диалоге выбора сценария; ### Версия 2.968 #### ERA: - ВНИМАНИЕ! примеры использования всех нововведений находятся в файле /Help/Era manual/era iii Changelog.txt; - обновление ядра ERA.dll до версии 3.9.12: - Реализованы расширенные средства синхронизации памяти ERM в сетевых играх. - Добавлена команда !!IP:M для пометки ассоциативных переменных (SN:W, i^^, s^^) для дальнейшей синхронизации. Синтаксис: !!IP:M^имя_переменной_1^/^имя_переменной_2^/...; !!IP:M0/^array_var_name_1^/^array_var_name_2^/...; - Добавлена команда !!IP:S для синхронизации всех отмеченных переменных и массивов. Используйте !!IP:D, чтобы указать цели для синхронизации. После его вызова кэш отмеченных переменных очищается. !!IP:S автоматически вызывается непосредственно перед отправкой сетевого события "начало боя" с помощью !!IP:D-1. - В Era Erm Framework добавлены константы GAME_TYPE_XXX (см. 5-й параметр UN:V). - В Era Erm Framework добавлены следующие глобальные переменные: i^battle_isActingSideUiUser^: bool. Имеет значение TRUE, если действующий побочный игрок является локальным человеком и, следовательно, может использовать все действия пользовательского интерфейса. Используйте его, чтобы запретить неактивному сетевому проигрывателю выполнять действия пользовательского интерфейса по изменению состояния. - В Era Erm Framework добавлены следующие функции: - !?FU(Array_Move); Копирует часть массива в другую часть массива, разумно перезаписывая существующие значения. - !?FU(Array_Splice); Удаляет указанное количество элементов из начального индекса и впоследствии вставляет новые элементы в ту же позицию. - !?FU(ActivateNextStack); Находит и активирует следующий стек. Возвращает TRUE в случае успеха и FALSE, если никто не может двигаться на этом этапе. - Реализована возможность выбора желаемого IP для многопользовательской игры. Игра использует первый найденный IP-адрес ПК, при этом ПК может принадлежать нескольким сетям: LAN, WLAN, Virtual LAN, Интернет (белый IP-адрес). - В era.dll добавлены следующие экспортированные функции: - Выделяет новый идентификатор функции и привязывает его к указанному имени, если имя свободно, в противном случае возвращает уже связанный идентификатор. Эту функцию можно использовать для реализации пользовательских событий ERM в плагинах. Результатом будет 1, если был выделен новый идентификатор, и 0 в противном случае. функция AllocErmFunc (FuncName: pchar; {i} out FuncId: целое число): TDwordBool; stdcall; typedef bool (__stdcall* TAllocErmFunc) (const char* EventName, int32_t &EventId); — Добавлено новое событие для плагинов/Lua: "OnAfterReloadLanguageData". Это происходит всякий раз, когда Era перезагружает все языковые данные JSON с диска. - Переписана поддержка способности регенерации существ. (!) Плагины не должны перехватывать код регенерации и вместо этого должны использовать API Era 'SetRegenerationAbility'. — Экспортирована функция SetRegenerationAbility в era.dll только для плагинов (например, для новых плагинов существ). — Удалена опция "FixGetHostByName" в файле Heroes3.ini. - Исправлена ошибка: индексы локальных статических строковых массивов неправильно рассчитывались для неконстантных индексов в скриптах ERM 2, например. (arr[i]). - Исправлена ошибка в VFS.dll, из-за которой ERA не работала на Wine. Параметр пустой маски для NtQueryDirectoryFile обрабатывался как '*'#0 вместо '*'. #### Advanced Classes Mod: - добавлены исправления сетевого кода, игра теперь требует ERA 3.9.12; - Исправлено поведение невосприимчивости Мага Огня, если он был загипнотизирован. - Переработана переработка Огненного Щита. Теперь вместо проверки идентификатора существа, чтобы узнать, должны ли они быть невосприимчивы к Огненному щиту, мы используем крючок, чтобы проверить, должны ли они быть. Это также не позволяет "Огненному щиту" визуально показывать наличие у цели иммунитета. - Добавлен FU(ACM_GetCustomFireShieldMultiplier), вызываемый сторонними скриптами для определения дополнительного урона от Огненного щита, наносимого конкретными монстрами. - Исправлена совместимость MP таблицы заклинаний Архимага/Стража. Теперь вы не можете выбрать заклинание для своего противника. Логика заклинаний командира (для Архимага и Стража) воссоздана. - Теперь вы можете выбирать заклинание как в бою, так и вне его. - Частично исправлена поддержка MP - теперь в PvP бою смена типа заклинания командира будет отражаться на другую сторону. - Маг огня: теперь их атака Огненного шара/Инферно игнорирует иммунитет к заклинаниям враждебного юнита, а также защищает свои юниты. - Опыт паладина и грубое золото: исправлены многочисленные логические сбои. - Опыт паладина: теперь максимальный бонус опыта от урона составляет 10 миллионов. (со всеми бонусами. Значение может быть больше без переполнения, только для баланса) - Добавлены константы класса командира (для удобства настоятельно рекомендуется добавить новый .erm со всеми константами ACM) - Сброс купленных заклинаний при покупке командира в городе. - Исправлен ИИ, не использующий заклинания вызова элементалей. - Добавлены новые названия классов для искателей приключений каждой фракции. - Исправлена ошибка скрипта командира "Удар со всех сторон". - Исправлено обновление экрана при надевании второго одноименного артефакта #### ERA Scripts: - "Гноллы-мародёры бьют первыми": исправлено наложение Огненной Стены Пожарами, если их убивали Гноллы; - Смертные герои: исправлена функция переноса кампании. #### Game Enhancement Mod: - переписан плагин и скрипт получения локальной и удалённой версии. Для получения локальной версии теперь используется ф-ция, возвращающая строковое значение: "!!FU(gem_GetGameVersion):P?(gameVersion:z);"; - добавлена проверка на наличие сохранённых настроек ВоГ-опций и предупреждение о необходимости сохранить, если они отсутствуют; - Добавлен ArchBugFixes.era [исходники](https://github.com/Archer30/Era-Plugins/tree/main/ArchBugFixes); - Обновлена prima.dll: исправлена ошибка, из-за которой очки заклинаний не удваивались при посещении Вихря Маны, когда у героя было >127 знаний. #### Enhanced Henchmen: - Исправлена функция переноса кампании. #### Random Wallpaper Mod: - переписан плагин добавления логотипа для исправления вылета при попытке открыть окно загрузки игры; #### TrainerX: - добавлено корректное открытие карты после увеличения радиуса видимости героя; #### WoG: - Добавлен плагин "ERA_MultilingualSupport.era", позволяющий менять язык загруженных ресурсов из Lang/.\*json при наличии локализации. Список и параметры локализаций указывается в файле /Mods/WoG/Lang/era.json; #### WoG Scripts: - Нейтральный город: фиксированные элементальные существа не могут быть улучшены в крепостях на холмах. Исправлена опция нейтрального города, отключающая опцию Rampart Faerie Dragon. - Добавлено исправление, предотвращающее появление случайных монстров на карте. - Исправлено неправильное отображение внешних жилищ, дающее дополнительный рост существам в городе. #### Other: - добавлен недостающий файл /Tools/H3DefTool/Grid.pcx для запуска H3DefTool; - добавлен недостающий файл h3wmaped_unleashed.exe для запуска расширенного редактора карт; - добавлен мануал по отключению DEP (Help/DEP_tutorial.html); - удалены лишние файлы инструментов; ### Версия 2.967 #### Advanced Classes Mod: - Призыв элементаля: Теперь мы используем нативный способ призыва элементаля, исправили тень на поле боя, значок книги заклинаний и, возможно, другие проблемы. - Исправлена ошибка, из-за которой **ГМ Зыбучие пески** мешал подсветке. - Классы командиров теперь защищен от повторного воспроизведения. - Теперь количество убийств добавляется только после убийства (а не до него). Это также исправляет ситуации, когда убийство не считается действительным, например, из-за блокирующих или отражающих способностей атакующего юнита, которые могут предотвратить убийство, или если атакующий юнит умирает в процессе (например, от ожогов от **Огненного Щита**). - Исправлена ошибка, из-за которой **Стойкий Часовой** не давал 10% сопротивления, как указано в описании. - Некоторые изменения формата. - Теперь мы используем хук вместо воспроизведения **UN:C** в нужное время, чтобы охватить все в игре и упростить наш код. - Это исправило проблему с неправильным отображением количества очков заклинаний в бою ([ссылка](https://discord.com/channels/580473641104310301/580473641104310305/1238718760123109407)). - Исправлена неправильная проверка условия для 8-го существа **TUM**. - Исправлена невозможность воскрешения **Привидений**. - Исправление и балансировка **Фортуна**. - **ГМ Фортуна** теперь: - крадет 2 скорости, 3 урона, 4 атаки или 4 защиты при атаке (немного меньше, чем ранее); - уважает иммунитет к заклинаниям (черные драконы по умолчанию не могут быть украдены); - минимальная скорость теперь 2; - если недостаточно характеристик для кражи, в журнале боя отображается точное украденное значение. - Небольшая коррекция отображения восстановления очков заклинаний. - Улучшения секретного класса. - Исправлена дублированная опция в "Выборе класса" (в начале игры). Теперь одна из них задает вопрос после 2 уровней. - Исправлено обнаружение набора артефактов. Теперь экипировка двух артефактов с одинаковым названием не уменьшает количество частей набора. - Максимальное количество убийств для **Командиров** теперь 9999 (визуальное изменение). - Теперь ИИ также может улучшать характеристики своего набора класса с каждой победой (если ему удается украсть его у человека). Они не выпадают сами из-за условия &1000. ### Game Enhancement Mod: - Исправлена ошибка с первым действующим юнитом, когда скорость двух стеков одинакова; - Переписана функция GetTime; - Обновлена функция проверки версии; #### WoG (Wake of Gods): - Добавлен список локализаций для будущего диалога смены языка; #### WoG Scripts: - Убрано исправление ошибки атаки в ближнем бою для военных машин, так как оно уже представлена в плагине; - Улучшенные Боевые машины III: Исправлена возможность лечения враждебных стеков; - Рыболовный колодец: исправлено небольшое сообщение инициализации; ### Версия 2.966 #### Advanced Difficulties Mod: - Теперь способности по набору опыта для дальнобойных существ больше не будут применяться к ближнему бою. - Уменьшена скорость накопления стражей для крестьянских банков TUM. - Добавлена проверка, чтобы предотвратить выполнение ошибочного значения. - Нейтральные сложности: теперь при нажатии на кнопку сброса также будет отключаться смешанный нейтральный режим, если он был включен. #### Advanced Classes Mod: - Исправлена возможная ошибка erm с некромантией; - Когда включен Орлиный Взгляд I (заклинание обучения при повышении уровня), оно будет удалено, если в будущем нельзя будет изучить заклинание. Теперь, если включен ACM, эта механика не будет активирована. - Диалог улучшения Боевой Машины: исправлена интеракция при нажатии на кнопку улучшения без выбора улучшения - Усиление заклинания "Минное поле" с помощью следующих изменений: - Теперь заклинание можно использовать, если на стопке противника есть местные существа территории - Местные существа территории будут видеть минное поле как обычно, но получат урон от мин (это изменение должно быть пересмотрено после последних тестов) - Улучшена способность Арканного Пророка (теперь увеличение урона показывается при начале боя и не выбирается случайным образом перед каждым использованием. Увеличение урона непосредственно видно в книге заклинаний). Обновлено описание артефактов артефактов SP Reg. - Преимущество концентрации друидов теперь работает с повтором битвы. - Умение лорда или грабеж города теперь имеет перезарядку 2 недели для каждого города. - Исправлено имя умения Мастер Воин. Гибридные классы теперь получают такое же количество критических попаданий, как и Мастер Воин. - Пассивная способность командира грубиянов теперь также работает для защищающегося героя. - Исправление длительности гипноза благодаря SadnessPower - Улучшено взаимодействие мыши при нажатии на значок удачи на экране героя - Улучшено взаимодействие мыши (включить или выключить стандартное действие или когда отключить и т. Д.) - Исправлено имя секретного класса, которое может быть раскрыто до его разблокировки. - Экспорт некоторого текста в erm в json - Удалено неиспользуемое содержимое таблицы искусства TUM - Баланс класса Снайпер. Теперь ХП как урон составляет 7% + 1% за каждые 7 убийств (как обсуждалось). Максимальное значение достигается при 50%. Для боссовых существ (MA:P >= 5000) максимальное значение уменьшается вдвое (25%). - Теперь режим 10 навыков включается автоматически, когда в игре можно получить более 10 навыков, даже если 10ss или другой плагин, увеличивающий лимит навыков, включен после начала игры. - Расширена область кликабельности acmlist.txt - информация о продвинутом классе командира повышена, чтобы ее было удобнее нажимать. - Поставьте знак "+" перед статическим бонусом скорости в acmlist.txt. Так мне будет легче понять. - ACM - горячие клавиши на экране героя: - Нажмите A - текущий продвинутый класс - Нажмите W - информация о продвинутых классах - Нажмите E - таблица бонусов - Нажмите R - таблица тренера заклинаний (если включено) - Исправлено, что Альтернативная Некромантия позволяет выбирать существа более высокого уровня для воскрешения, даже если уровень Некромантии не соответствует требованиям. - ACM Усадьбы отображаются в Обзоре Королевства; - Больше не отключают Альтернативную Некромантию по умолчанию при включении TUM, так как они теперь совместимы. - Разведка: теперь она поддерживает расширенных монстров. В случайных событиях разрешается только монстры со статусом < уровня 8. - Дворянство: теперь оно поддерживает 8-го уровня существ (TUM); - Исправлены очки заклинаний не x10 при призыве элементалей на карте в развитом режиме; - Пересозданы специалисты по существам. Теперь оно работает стандартным образом, показывает бонусы в диалоговом окне существ, когда не в бою. Работает и для Игниссы. - Пересоздано правой кнопкой мыши для деталей усовершенствования боевых машин из экрана героя/экрана встречи героя. Теперь функция поддерживает экран встречи героя. - Исправлена критическая проблема: когда вы проверяете информацию о существе вне боя, иногда отображается информация о командирах (ACM_beforeCreatureInfoDlg_Show). - Добавлены иконки UN32 для новых специальностей - Исправлены все взаимодействия с мышью на иконках специализации героя. Теперь левый клик мыши вызовет обычное диалоговое сообщение вместо всплывающего, как и должно быть. - Отключить бесполезное взаимодействие мыши при установке имен из набора искусства ACM DL. Планируется добавить описание набора, когда нажимается на имена наборов, но управление русским языком не так просто. - Исправлено умение Лорда Хаарта: иконка и текст - Пассивная способность командира паладинов теперь работает для защитника - Заклинания, выученные с помощью Интуиции, будут сброшены в случае Повтора Битвы - ACM - Отключить функцию рюкзака ACM, исправить совместимость с описанием заклинаний; - Отключить функцию артефактов рюкзака ACM, освободить артефакты ERA Scripts из запрета, так как опция ES работает немного лучше и, кажется, более приветствуется (поскольку она также работает для артефактов, увеличивающих очки хода). - Отпустить Гейт Кей из запрета. Теперь его можно использовать для блокировки вашего города, как в WoG. Эффект будет изменен в будущем, когда у нас появятся новые идеи. - Исправлена совместимость с описанием заклинаний. Теперь неверный текст из книги заклинаний отключен. - Пассивное умение "Командир - удар со всех сторон" теперь не показывает -10% бонуса к атаке в таблице бонусов ACM - Добавлено условие безопасности для скрипта "Командир - удар со всех сторон" для вторичных целей. "; Этот скрипт не будет работать, если атакующий, защищающийся и вторичные цели находятся на одной стороне (возможно с Берсерком) ; Чтобы решить эту проблему, нам нужно ввести новый хук, чтобы получить фактический атакующий стек. Но это редкая ситуация, поэтому мы пока не делаем этого" - Исправлено взаимодействие мыши с иконкой очков заклинаний (для LMB действие мыши должно быть 12, а не 13) - Переработаны все добавления очков хода. Теперь вам не нужно беспокоиться о том, что максимальное количество очков хода изменится после открытия экрана героя. Исправлено то, что Умение "Мастер Путь" не дает вам по крайней мере 1700 очков хода каждый ход. Исправлено то, что Мастер/Великий Мастер Логистики не работают с Логистической специальностью. - Пересмотрено отображение специализаций существ. Теперь все бонусные статистики, включая местные, отображаются в описании специализации существа. - Исправлено, что Анциент не получает +4% после 100 убийств - Исправлена утечка памяти для описания Боевых Машин на поле боя - Переработан эффект стока. Теперь он должен работать точно так же, как и стандартный механизм Вампиризма. Скажите мне, если что-то отличается #### Enhanced Henchmen: - Исправлено невозможность изменения помощников, когда в армии героя находится только одно существо; - Исправлен текст "Отмена"; #### ERA ERM Framework: - FU(UpdateNextStackTurn) будет выполнен один раз в !?FU(OnBattleRound_Quit)&i^battle_round^=0, чтобы убедиться, что порядок ходов не нарушен скриптами. #### ERA Scripts: - Исправлены неограниченные призывы скелетов из опции Артефактов Скелета; - Исправлено падение игры при жертвоприношении Дьявола - 28 Вторичных Навыков: Улучшена совместимость с плагинами, изменяющими количество вторичных навыков. - Дальнобойный Смертельный Взгляд: Теперь навык не работает на командиров и существ 8 уровня (несмотря на то, что существа 8 уровня могут подвергаться действию ближнего смертельного взгляда). Исправлены ошибки erm. Оптимизированы подсказки мыши. Исправлены ошибки erm. FU(ES_995_CheckIfStackAffectedByDeathStare) может использоваться скриптерами, чтобы исключить свой стек из действия дальнобойного смертельного взгляда. - Ночная Разведка: Исправлено, что Ассасины не появляются. #### Game Enhancement Mod: - исправлен редкий вылет в битве; - Обновление "Game Bug Fixes Extended": - Исправлена тень курсора силового поля для защищающегося игрока; - Исправлено возможное застревание, когда ИИ воскрешает убитый стек; - Изменено исправление переполнения значения ИИ от деления значения ИИ существ на 15 до 10. Это смягчает проблему того, что ИИ становится намного менее агрессивным после деления. - Пересоздан призыв Драконьего Сердца так, как это было изначально, так как в оригинале можно вызвать драконов, перекрывающих другие юниты ([Обсуждение](http://wforum.heroes35.net/showthread.php?tid=4218&pid=138936#pid138936)) - Добавлено общее исправление, чтобы в новый день максимальные и текущие очки хода были равны для каждого героя - это помогает предотвратить некоторые особенности WoG и сценарии, мешающие этому; #### Secondary Skills Scrolling: - Исправлена неработающая кнопка тактики, когда навык "тактика" не находится на текущей странице навыков героя; #### TrainerX: - Теперь отключение/включение событий, строительство/разрушение городских зданий все равно будет работать, когда событие/город находится под нажатием героя. - Добавлен обратный режим бога, активируемый щелчком на портрет героя в основном интерфейсе тренера с зажатой клавишей Shift, по сути, все установить на минимум. - Исправлены некоторые ошибки в функции Отображения Событий Примечание: Поскольку теперь Отображение Событий зависит от хука erm для работы, загрузка TrainerX во время игры с помощью F12 требует одного дополнительного шага: сохранение игры и загрузка. - Улучшена возможность TrainerX загружаться после начала игры. Теперь вам не нужно нажимать F12 + Сохранить и Загрузить (достаточно только F12), когда загружаете TrainerX после начала игры - Исправлена возможная ошибка erm при проверке экрана героя из основного диалогового окна TrainerX. - Режим бога теперь может использоваться, когда нет героя для изменения видов карты и ресурсов. #### WOG: - Исправлено жилище Обители Эфритов и Повелителей Ям в zlagport.def #### WoG Fix Lite: - обновлено до версии 2.17; - [Исправлен спрайт Священного Феникса](https://discord.com/channels/665742159307341827/741855494276382801/1232159404359680041) #### WoG Scripts: - Теперь Рынок Времени на карте Титановой Зимы работает правильно; - Оптимизирована совместимость с Искусством Войны; - Изумрудная Башня: Добавлено Живое усиление; - Мифрил: Теперь эффекты мифрилового усиления на Ветряные Мельницы/Водяные Колеса являются постоянными (как в WoG 3.58f. Не уверен, почему это было изменено. Стоимость улучшения более разумная для постоянного улучшения); - Взаимоотношения Существ: Исправлено, что тип существа исказился после конфликта; - Исправлено, что Война не устанавливает все навыки сразу; - Улучшенные Монстры: Исправлено, что Дьяволы могли получать бесплатную скорость с активированными фазами тактики в бою - Улучшенные Артефакты I: Теперь сообщение о Подвеске Второго Зрения, Подвеске Свободной Воли и Накидка Сопротивления будет показано только в случае активации их эффектов. Исправлена невозможность обмена Гарнитуры Мешающего на магический навык по понедельникам. - Теперь все сценарии замены монстров/артефактов игнорируют настраиваемые нейтральные стеки и артефакты на карте. - Первая Помощь I: Предотвращен эффект от воскрешения существ, когда исходные войска полностью уничтожены. - Оруженосцы: Небольшая оптимизация выбора Оруженосца ИИ - Изумрудная Башня: Исправлены имена существ после усиления. - Изумрудная Башня: Уточнение информации, когда у игрока недостаточно для оплаты. - Алтарь Трансформации: Исправлено, что нейтральные существа не могут быть преобразованы. - Изумрудная Башни: Теперь ИИ больше не будет улучшать Нежить или Живые существа, так как они не могут использовать их должным образом. - Исправлено запрещение заклинаний от Ученых: Теперь заклинания, отключенные с карты (вместо из настроек wog), не будут запускать сценарий запрещения заклинаний от Ученых. - Исправлена подсказка поддержки горячего кресла для Улучшенных Боевых Машин III - Изумрудная Башня: Исправлено отображение двойных диалогов при возврате платы за запись (6 камней). ### Версия 2.965 #### Game Enhancement Mod: - восстановлена кнопка завершения хода; #### WoG Scripts: - Исправлена замена запрещенных заклинаний у ученых; - Перенесено знамя полководца от оруженосца в рюкзак героя после его смерти - спасибо Archer30; - Небольшие исправления текста; ### Версия 2.964 #### ERA ERM Framework: - добавлены константы о типах квестов и наградах; - добавлена функция обновления всех квестов на карте (не влияет на пользовательский текст); #### Game Enhancement Mod: - добавлено смещение 8 пикселей для отрисовки пользовательских диалогов рядом с границами окна игры;; - убрано создание лишних pcx; #### WoG Scripts: - Исправлено описание "Артефактов Дипломатии" при включении Улучшенных Артефактов I/II и "Дипломатических Торгов" - спасибо Archer30; - Улучшенные командиры: перемещено место для выхода из хука (хотя для командира разницы не будет) - спасибо Archer30; - Исправлено убийство нейтралов со случайными героями, не позволяющее выполнить соответствующий квест в хижине провидца - спасибо Archer30; - "Живые свитки" и "Усиленные специализации героя": удалены автоматические применения на обездвиженные вражеские отряды; #### ERA Scripts: - Захват мельниц и садов: добавлена проверка координат, так как был отчет о неверных координатах - спасибо Archer30; #### TrainerX: - Теперь удаление существ или героев на карте также завершает соответствующий квест в хижине провидца - спасибо Archer30; ### Версия 2.963 #### Game Enhancement Mod: - Исправлено перемешивание юнитов в замках (в крепости и сопряжении были копейщики); #### WoG Scripts: - Новые боевые поля: исправлены нерабочие поля - спасибо Yuritsuki; #### ERA Scripts: - Захват боевых машин: исправлен вылет при захвате иных артефактов; - Ночная разведка: исправлен нерабочий переключатель ассасинов; ### Версия 2.962 #### Game Enhancement Mod: - Убраны хардкорные правки памяти; #### WoG Scripts: - Искусство войны: исправлен сбой, когда ИИ пытается получить один из навыков Искусства войны; #### ERA Scripts: - Подавление стихий: исправлена возможность потери магических навыков после боя - спасибо Archer30; - Захват боевых машин: исправлено исчезновение захваченных боевых машин; - Удалены неиспользуемые скрипты и текст для Capture War Machines - спасибо Archer30; ### Версия 2.961 #### Game Enhancement Mod: - Добавлено несколько скриптов для 1 апреля; - Форты на холмах - стоимость улучшения рассчитывается на основе уровня улучшенного монстра, а не уровня текущего монстра - благодаря Archer30; - Исправлен скрипт ограничения максимального уровня героя - спасибо Archer30; - Оптимизирован гибкий ввод читов. Теперь пробел перед первым словом будет игнорироваться — благодаря Archer30. #### WoG Scripts: - Улучшенные артефакты II: Исправлено Кольцо Мага и его компоненты, которые могут не работать для увеличения урона от заклинаний - благодаря Archer30. #### Advanced Classes Mod: - Исправлена возможность изучения заклинаний из Артефактов с помощью GM Scholar - благодаря Archer30; - Добавлен фикс для будущего TUM Full - спасибо Archer30; - Обновлена графика Волшебной Палочки для совместимости с TUM - благодаря Archer30; - Обновлена локализация - Большое спасибо DrD_AVEL_; - Исправлено снижение уровня некромантии, работающее только для атакующего героя. - Исправлена альтернативная некромантия, устанавливающая скорость некромантии вместо ее ограничения - благодаря Archer30; - Грааль в Некрополисе вновь дает 20% бонус к Некромантии (вместо 10%) - благодаря Archer30; - Исправлен текст Усилителя Некромантии (он дает бонус 5% вместо 10%) - спасибо Archer30; - Оптимизирован диалог Альтернативной Некромантии. Теперь игра запоминает последний выбор героя. По умолчанию показано настоящее существо, которое нужно поднять (вместо скелетов) — благодаря Archer30; ### Версия 2.96 #### ERA: - Обновлена до версии 3.9.11 - спасибо Berserker; - Обновлен плагин "game bug fixes extended.dll" - спасибо igrik; #### HD mod: - Обновлен до версии 5.4 R86 - спасибо baratorch; #### ERA ERM Framework: - Добавлена инициализация i^battle_round_^ при переигровке битвы - спасибо Archer30. #### Game Enhancement Mod: - Добавлена функция гибких читов. Теперь поддерживаются все чит-коды от RoE/AB/SoD. Если чит-код введен с другой несвязанной информацией, он также будет распознан и применен — спасибо Archer30. - Улучшено исправление для гильдий магов в восстановленных городах (после сноса): теперь в гильдиях будут появляться заклинания высокого уровня. Добавлена поддержка исследования заклинаний - спасибо Archer30. #### WoG Scripts: - Новые банки существ: теперь, когда охранники "Потерянных бутылок" побеждены, героя спросят, стоит ли забрать бутылку. Если взять бутылку, герой может прочитать случайное сообщение внутри, и бутылка навсегда исчезнет с карты — спасибо Archer30. #### ERA Scripts: - Пользовательские основные навыки: исправлена возможность распределения Первичных Параметров при повышении уровня - спасибо Archer30. #### Advanced Classes Mod: - Исправлена возможность изучения заклинаний из Артефактов с помощью GM Scholar - спасибо Archer30. - Добавлено исправление для будущего TUM Full - спасибо Archer30. - Обновлена графика Волшебной Палочки для совместимости с TUM - спасибо Archer30 - Обновлена локализация - спасибо PerryR; #### Advanced Difficulties Mod: - Заменен значок основных навыков на оригинальный стиль H3 (был в WoG) - спасибо Archer30. #### TrainerX: - Добавлен режим Бога. Нажмите Alt-клик по портрету героя, чтобы максимально использовать Армию/Движение/Ману/Полет/Основные навыки/Вторичные навыки/Заклинания/Видение карты/Ресурсы - спасибо Archer30 - Добавлен щелчок с нажатой клавишей Ctrl/Alt/Shift по названию вторичных навыков, чтобы управлять всеми вторичными навыками одновременно – спасибо Archer30. - Исправлена ошибка, из-за которой прокрутка основных навыков не работала правильно, когда статистика превышает 127 - спасибо Archer30. - Теперь открытие экрана героя из трейнера позволит редактировать любые данные героя (а не только просмотр) - спасибо Archer30;