12) В "Monster Prototypes" столбец "Equipment Weapon №2", альтернативное оружие, могло бы быть жезлы, но как будто не работает. Или в №1 несколько предметов через запятую, но используют только первый. А вот заклинания могут выбрать, если выдать. Надо чтоб стрелковое оружие доставали, когда цель в ближнем бою не достать.
13) Убрать файл AutoRunSpellAddon123.mob, который каждую секунду пишет GetWorldTime() в некую глобальную переменную. Были комментарии, когда почему это делалось. Надо просто сделать просто и успокоиться.
14) CreateParticleSource(id, X, Y, Z, Size, "Type", "TextureName", n1, ... , n16) Дополнительно название текстуры, которая используется заместо чего там у этого типа частиц заложено по умолчанию. У таких текстур структура из 4x4 секторов, поэтому дополнительно 16 чисел от 1 до 16 (либо 0, можно с повторами) в каком порядке какие сектора запускать. Таких текстур с числами можно несколько (всего до 16). Такая вот технология соединения плоских спрайтов и трёхмерных пространств.
Для "Fire" и "Smoke" используются разные части одной текстуры "tendrismoke.mmp", в "CampFire" и то и то вместе.
У "Tornado" Size измеряет клубы песка, какие там крутятся, то есть размеров несколько (Size1, Size2).
Для "VulcanSmoke" отсутствующая в ресурсах текстура называется "vulkan.mmp", такие вот превратности судьбы.
15) Отслеживать, каким способом изменено состояние рычага, ловкостью рук или квестовым предметом, SwitchLeverState(id), предполагавшимися монтировками и отмычками. Результат зависит от способа. Скажем, сундук открывается ключом (который изымается), без ключа тоже открывается и взрывается, либо не открывается и взрывается. Отслеживать попытку использования. Для рычагов уже есть ячейки памяти, и их можно вытащить тем же самым GetLeverState(id, смещение) с дополнительным параметром. Важно, чтобы факт и способ использования менялись строго до изменения собственно GetLeverState(id).
16) AddMobEx(file.mob, SkipScript, StartId) Не 100, а дополнительный параметр, начальный номер id, с которого назначаются id для объектов без id из моб-файла. Это позволит назначать id ровно какие надо, известные. А для многократного перебора тысяч id уже добавленных объектов ещё помогают квантовые компьютеры. По умолчанию тоже не 100, а точно посмотреть, что реально встречается. Примерно от 1.1 млн до 1 млрд диапазон свободен и от 1.1 млрд.
17) В мультиплеере название прототипа голоса хранится отдельно от названия прототипа юнита. Тогда как повторяющиеся прототипы голосов прописаны для каждой ипостаси Кира, и ещё более 200 для всяких юнитов.
SetVoice(GetObjectByID(UnitId), "VoicePrototype") Чтоб действовало на персонажей в сингле и в мульте, так и на всяких юнитов. Ещё вспомнить про звуки "heroes\Hero" в прототипе юнита. Скорость передвижения и что ещё в CopyStats(...). В HG4 повторены женские голоса для мужчин и мужские для женских.
18) Прототипы голосов прописаны в database.res и для сингла и для мульта. В столбце "Bored" дополнительные индексы, заданные, должно быть, в экзешнике, произносить фразу под дождём, в пещерах, ползком. Было несколько модов, где это регулируется. Подобные индексы нужны для столбца "Cast", на себя и друзей кастуется, или урон на врагов, то есть по сути "Attack". Столбец "AttInDef" в первоначальных ПЗ не включён, и даже этих звуков в ресурсах нет. В ЗвА, похоже, включён, но фразы в том же неверном смысле "атака в ответ", тогда как это произносится во время боя с включённым режимом защиты, поэтому "выжидание в бою и атака по указанию".
19) В новом Жамевю на расширенных участках карт, видимо, нет графа проходимости. Тогда как в Фернео-моде графы проходимости обновляются. Мне казалось, что эту функцию уже делали в каких-то редакторах карт. Но суть в том, что построение графа проходимости надо делать именно в редакторе карт, а не в стартёре уже в игре (и где описание соответствующей настройки?), откуда её разве что извлекать тем же самым реверс-инжинирингом.
20) У орков и орчих модели с 4 причёсками. В былые времена их, наверно, можно было посмотреть перепаковкой с переименованием. Или в HG3 оркам и орчихам персонажам проставить причёски -1, 0, 1, 2. Для них там отдельные модели с дополнительными человеческими анимациями. Надо бы поправить орчихам ступни на уровне земли. Но в новом Жамевю на орчих уже как будто надели доспехи.
21) Новые заклинания в SpellAddon и ПЗ:СТ. Идея Торнадо нравится. Эксплозия по описанию похожа на тот же Огненный шар помощнее с ограничениями. Пожелание делать Вулкан, чтоб размер соответствовал эффекту, детонацию попробовать. Игра с Вулканом вышла лишь на месяц позже ПЗ.
22) Подгон библиотек, там не замена dgVoodoo, а обновлённые версии 4 библиотек из папки с игрой, дата 2005 соответствует как раз ЗвА. В новом Жамевю тоже какие-то версии.
23) lua-скрипты вдруг из ниоткуда появились сразу в каких-то модах.
12.03.2026, 16:35 (Сообщение последний раз редактировалось: 12.03.2026, 16:53 lite-ez.)
(12.03.2026, 00:59)Zyzyx Написал: Уже была версия 0.12.4.2 с Фернео-модом и 0.12.4.1 с новымЖамевю, а перечень чего там как бы и не было.
Что ещё надо:
12) В "Monster Prototypes" столбец "Equipment Weapon №2", альтернативное оружие, могло бы быть жезлы, но как будто не работает. Или в №1 несколько предметов через запятую, но используют только первый. А вот заклинания могут выбрать, если выдать. Надо чтоб стрелковое оружие доставали, когда цель в ближнем бою не достать.
13) Убрать файл AutoRunSpellAddon123.mob, который каждую секунду пишет GetWorldTime() в некую глобальную переменную. Были комментарии, когда почему это делалось. Надо просто сделать просто и успокоиться.
14) CreateParticleSource(id, X, Y, Z, Size, "Type", "TextureName", n1, ... , n16) Дополнительно название текстуры, которая используется заместо чего там у этого типа частиц заложено по умолчанию. У таких текстур структура из 4x4 секторов, поэтому дополнительно 16 чисел от 1 до 16 (либо 0, можно с повторами) в каком порядке какие сектора запускать. Таких текстур с числами можно несколько (всего до 16). Такая вот технология соединения плоских спрайтов и трёхмерных пространств.
Для "Fire" и "Smoke" используются разные части одной текстуры "tendrismoke.mmp", в "CampFire" и то и то вместе.
У "Tornado" Size измеряет клубы песка, какие там крутятся, то есть размеров несколько (Size1, Size2).
Для "VulcanSmoke" отсутствующая в ресурсах текстура называется "vulkan.mmp", такие вот превратности судьбы.
15) Отслеживать, каким способом изменено состояние рычага, ловкостью рук или квестовым предметом, SwitchLeverState(id), предполагавшимися монтировками и отмычками. Результат зависит от способа. Скажем, сундук открывается ключом (который изымается), без ключа тоже открывается и взрывается, либо не открывается и взрывается. Отслеживать попытку использования. Для рычагов уже есть ячейки памяти, и их можно вытащить тем же самым GetLeverState(id, смещение) с дополнительным параметром. Важно, чтобы факт и способ использования менялись строго до изменения собственно GetLeverState(id).
16) AddMobEx(file.mob, SkipScript, StartId) Не 100, а дополнительный параметр, начальный номер id, с которого назначаются id для объектов без id из моб-файла. Это позволит назначать id ровно какие надо, известные. А для многократного перебора тысяч id уже добавленных объектов ещё помогают квантовые компьютеры. По умолчанию тоже не 100, а точно посмотреть, что реально встречается. Примерно от 1.1 млн до 1 млрд диапазон свободен и от 1.1 млрд.
17) В мультиплеере название прототипа голоса хранится отдельно от названия прототипа юнита. Тогда как повторяющиеся прототипы голосов прописаны для каждой ипостаси Кира, и ещё более 200 для всяких юнитов.
SetVoice(GetObjectByID(UnitId), "VoicePrototype") Чтоб действовало на персонажей в сингле и в мульте, так и на всяких юнитов. Ещё вспомнить про звуки "heroes\Hero" в прототипе юнита. Скорость передвижения и что ещё в CopyStats(...). В HG4 повторены женские голоса для мужчин и мужские для женских.
18) Прототипы голосов прописаны в database.res и для сингла и для мульта. В столбце "Bored" дополнительные индексы, заданные, должно быть, в экзешнике, произносить фразу под дождём, в пещерах, ползком. Было несколько модов, где это регулируется. Подобные индексы нужны для столбца "Cast", на себя и друзей кастуется, или урон на врагов, то есть по сути "Attack". Столбец "AttInDef" в первоначальных ПЗ не включён, и даже этих звуков в ресурсах нет. В ЗвА, похоже, включён, но фразы в том же неверном смысле "атака в ответ", тогда как это произносится во время боя с включённым режимом защиты, поэтому "выжидание в бою и атака по указанию".
19) В новом Жамевю на расширенных участках карт, видимо, нет графа проходимости. Тогда как в Фернео-моде графы проходимости обновляются. Мне казалось, что эту функцию уже делали в каких-то редакторах карт. Но суть в том, что построение графа проходимости надо делать именно в редакторе карт, а не в стартёре уже в игре (и где описание соответствующей настройки?), откуда её разве что извлекать тем же самым реверс-инжинирингом.
20) У орков и орчих модели с 4 причёсками. В былые времена их, наверно, можно было посмотреть перепаковкой с переименованием. Или в HG3 оркам и орчихам персонажам проставить причёски -1, 0, 1, 2. Для них там отдельные модели с дополнительными человеческими анимациями. Надо бы поправить орчихам ступни на уровне земли. Но в новом Жамевю на орчих уже как будто надели доспехи.
21) Новые заклинания в SpellAddon и ПЗ:СТ. Идея Торнадо нравится. Эксплозия по описанию похожа на тот же Огненный шар помощнее с ограничениями. Пожелание делать Вулкан, чтоб размер соответствовал эффекту, детонацию попробовать. Игра с Вулканом вышла лишь на месяц позже ПЗ.
22) Подгон библиотек, там не замена dgVoodoo, а обновлённые версии 4 библиотек из папки с игрой, дата 2005 соответствует как раз ЗвА. В новом Жамевю тоже какие-то версии.
23) lua-скрипты вдруг из ниоткуда появились сразу в каких-то модах.
3) Этот файл подгружается только если включена соответствующая настройка, в чём вообще смысл просить убрать его у тех, кто не имеет к нему никакого отношения? И он не пишет ничего каждую секунду в глобальную переменную. На этом форуме нет авторов СпеллАддона
19) Там есть граф проходимости. Видимо - это где оно "видимо"? И зачем кидать ссылку на совершенно другие карты, которые отличаются от карт в Жамевю, в которых тоже есть граф проходимости?
21) А сам СпеллАддон взять и настроить там под себя заклы не судьба? В AutoRunMobFile123.mob как раз настройки заклов. Функции все в инструкции расписаны были.
А еще, вот програмка для генерации асков от Плейхардыча
13) В той версии AutoRunSpellAddon123.mob, которая с новым Жамевю, и правда нет никакого GetWorldTime(), что к лучшему. Не помню, при каких обстоятельствах мне такое показалось, может когда этот файл там впервые появился, а может и никогда нигде такого не было. Смысл в том, что авторы СпеллАддона это прочитают и примут к сведению. Главное, надо делать Вулкан. А меня тоже нет нигде, если что.
В этом файле из Жамевю много про некромантию. Script Spell#1g
(
if
(
IsDead( this )
)
then
(
KillScript( )
RemoveUnitFromServer( this )
CreateParticleSource( unitID, GetX( this ), GetY( this ), GetZValue( GetX( this ), GetY( this ) ), 1.5, "Mushroom" )
)
)
Есть подозрение, что рисует по координатам отсутствующего объекта 0,0,GetZValue(0,0).
VSS#i#val плохое слово. NULL тоже излишне.
А что такое kaTurbo?
19) "Видимо", это в каком-то репортаже по Жамевю кого-то из уже многих блогеров. В начале в Развалинах полез далеко к верху (к северу) от Посёлка на расширенные участки, где лазил по холмам. Поиск пути, зелёная линия, прокладывался только на близком расстоянии от персонажа. А на дальнем расстоянии показывалось как будто туда не пройти, хотя на самом деле можно пройти постепенно приближаясь. Такое бывает без графа проходимости. То есть, граф проходимости как таковой может быть, но не распространяется на какие-то участки.
Ещё ВГГ где-то изучала этот граф проходимости, и тогда средств построения у неё не было.
21) Фактически на данный момент не судьба настраивать под себя, только в каких-то модах, где уже настроено. Кстати, в addon.dll в config/ai.reg с настройкой UnlockExperimentalSpell=1 не замечено, что включается.
(12.03.2026, 19:52)Zyzyx Написал: 13) В той версии AutoRunSpellAddon123.mob, которая с новым Жамевю, и правда нет никакого GetWorldTime(), что к лучшему. Не помню, при каких обстоятельствах мне такое показалось, может когда этот файл там впервые появился, а может и никогда нигде такого не было. Смысл в том, что авторы СпеллАддона это прочитают и примут к сведению. Главное, надо делать Вулкан. А меня тоже нет нигде, если что.
В этом файле из Жамевю много про некромантию. Script Spell#1g
(
if
(
IsDead( this )
)
then
(
KillScript( )
RemoveUnitFromServer( this )
CreateParticleSource( unitID, GetX( this ), GetY( this ), GetZValue( GetX( this ), GetY( this ) ), 1.5, "Mushroom" )
)
)
Есть подозрение, что рисует по координатам отсутствующего объекта 0,0,GetZValue(0,0).
VSS#i#val плохое слово. NULL тоже излишне.
А что такое kaTurbo?
19) "Видимо", это в каком-то репортаже по Жамевю кого-то из уже многих блогеров. В начале в Развалинах полез далеко к верху (к северу) от Посёлка на расширенные участки, где лазил по холмам. Поиск пути, зелёная линия, прокладывался только на близком расстоянии от персонажа. А на дальнем расстоянии показывалось как будто туда не пройти, хотя на самом деле можно пройти постепенно приближаясь. Такое бывает без графа проходимости. То есть, граф проходимости как таковой может быть, но не распространяется на какие-то участки.
Ещё ВГГ где-то изучала этот граф проходимости, и тогда средств построения у неё не было.
21) Фактически на данный момент не судьба настраивать под себя, только в каких-то модах, где уже настроено. Кстати, в addon.dll в config/ai.reg с настройкой UnlockExperimentalSpell=1 не замечено, что включается.
13) Этот скрипт не вызывается. Мало быть написанным - надо быть вызванным. Ничего лишнего не вызывается, ВГГшка величайшая скриптерша ПЗ
19) Миллиарды раз говорилось уже что граф проходимости не влияет на проходимость. Можешь хоть всё поставить как непроходимое - и ходить сможешь. И наоборот тоже работает. https://habr.com/ru/articles/769050/ - статья. Там она код редактора графа прям даёт, какое "не было", пхпх?
21) Ну так система в СпеллАддоне уже есть, зачем заказывать инактивным разрабам Аддона то что уже сделано?
12.03.2026, 23:06 (Сообщение последний раз редактировалось: 12.03.2026, 23:19 Zyzyx.
Причина изменения: Про картинки перепадов высот
)
19) По идее, граф проходимости полностью строится по карте высот, с дополнительным указанием, где там деревья, вода, двери, возможность проползти... В мемуарах сценариста ПЗ Свиридова затрагивается вода. ВГГ определённо большая молодец. Я вот себе в заслуги могу только указать, что меня нигде нет. Где там в её статье про карты высот. Прямо не сказано, но есть картинки, похожие на карты перепадов высот рельефа без учёта объектов. Код рисует картинки по готовому графу проходимости, визуализирует, и обратно.
21) Есть подозрение, что разрабы Аддона.длл только здесь на своём форуме инактивны, а где то ещё (ТГ, Дискорд) экспериментальные версии клепают.
(12.03.2026, 23:06)Zyzyx Написал: 19) По идее, граф проходимости полностью строится по карте высот, с дополнительным указанием, где там деревья, вода, двери, возможность проползти... В мемуарах сценариста ПЗ Свиридова затрагивается вода. ВГГ определённо большая молодец. Я вот себе в заслуги могу только указать, что меня нигде нет. Где там в её статье про карты высот. Прямо не сказано, но есть картинки, похожие на карты перепадов высот рельефа без учёта объектов. Код рисует картинки по готовому графу проходимости, визуализирует, и обратно.
21) Есть подозрение, что разрабы Аддона.длл только здесь на своём форуме инактивны, а где то ещё (ТГ, Дискорд) экспериментальные версии клепают.
В этой статье https://habr.com/ru/articles/769050/ объясняется вся работа графа проходимости на практике и показывается что перс может ходить по поверхности, помеченной как непроходимая. Карт высот там нет. Там же в статье прямо код написан для проги переводящей граф в картинку и картинки вроде этой там и показаны ВГГшенькой
Нашлось чудесное обсуждение про построение графа проходимости с ЕИ_Плагином, заходить на карту с включённой настройкой GraphGen=1, сгенерированный граф сохраняется в моб-файл карты, после чего настройку отключать. Для брифинговых зон не известно, временно делать их игровыми.
По идее, "быстрый" алгоритм, который используется в экзешнике игры, только тогда быстрый, когда просчитывает отдельные фрагменты карты, где что-то переместилось или повернулось. А в целом должен выдавать тот же граф, что и оригинальный редактор.
Пришлось проверить карту Развалины из Жамевю. Место на возвышенности ровно к северу от Посёлка. В текущей версии карты не замечено недостатков с графом проходимости, и, наверно, их там и не было, а проблемы с проходимостью объясняются сложностью рельефа. В другом варианте расширенных карт от ПХГП на эту возвышенность и вовсе не залезть.
Надо думать, и в Фернео-моде, и в Жамевю, и от ПХГП для графов проходимости применён ЕИ_Плагин, нежели чем какая-то альтернативная собственная разработка ВГГ. В её статье, на этом пути можно дойти и до готового алгоритма, но его там ещё не было.
16.03.2026, 09:29 (Сообщение последний раз редактировалось: 16.03.2026, 09:29 lite-ez.)
(16.03.2026, 00:27)Zyzyx Написал: Нашлось чудесное обсуждение про построение графа проходимости с ЕИ_Плагином, заходить на карту с включённой настройкой GraphGen=1, сгенерированный граф сохраняется в моб-файл карты, после чего настройку отключать. Для брифинговых зон не известно, временно делать их игровыми.
По идее, "быстрый" алгоритм, который используется в экзешнике игры, только тогда быстрый, когда просчитывает отдельные фрагменты карты, где что-то переместилось или повернулось. А в целом должен выдавать тот же граф, что и оригинальный редактор.
Пришлось проверить карту Развалины из Жамевю. Место на возвышенности ровно к северу от Посёлка. В текущей версии карты не замечено недостатков с графом проходимости, и, наверно, их там и не было, а проблемы с проходимостью объясняются сложностью рельефа. В другом варианте расширенных карт от ПХГП на эту возвышенность и вовсе не залезть.
Надо думать, и в Фернео-моде, и в Жамевю, и от ПХГП для графов проходимости применён ЕИ_Плагин, нежели чем какая-то альтернативная собственная разработка ВГГ. В её статье, на этом пути можно дойти и до готового алгоритма, но его там ещё не было.
Ты в целом всё понял правильно. В Фернео не знаю, наверное, а в Жамевю точно ПХ_ГП не один раз генерил граф с этой утилитой. Для ПЗ СТ же граф генерился ВГГшкой - можно сказать уверенно что генерация графа это заложенная в движок ПЗ штука (например, когда ты открываешь ворота, то граф в этом месте пересчитывается "сплешем"), и если накинуть на всю карту ворота, можно из памяти граф взять