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

Full Version: Новые свойства для бланковых артефактов WoG
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
Доброго всем дня!
Я являюсь давним поклонником игры WoG версии 3.58f и по совету друзей решил обратиться к вам за помощью.
Дело в том, что в игре есть 10 пустых артефактов и у меня появилась идея их «оживить».
Почитав help по ERM и прошерстив форумы я нашел много полезной информации и скриптов,
Которые мне сильно помогли для осуществления идеи. Я увлекаюсь программированием в Delphi и C++, но скрипты еще не писал, поэтому меня это заинтересовало вдвойне.
По замыслу артефакты должны иметь следующие названия и свойства:
161 – Шлем Тамплиера. Дает + 5 ко всем параметрам героя. В начале каждой недели дает 1 Лазурного дракона. Стоимость 35000 золота.
162 – Меч Тамплиера. Дает + 5 ко всем параметрам героя. В начале каждой недели дает 1 Барона Ада. Стоимость 35000 золота.
163 – Щит Тамплиера. Дает + 5 ко всем параметрам героя. В начале каждой недели дает 1 Духу Погребального Костра. Стоимость 35000 золота.
164 – Перстень Тамплиера. Дает + 5 ко всем параметрам героя и максимальную удачу герою. Стоимость 35000 золота.
165 – Кольцо Тамплиера. Дает + 5 ко всем параметрам героя и максимальный боевой дух. Стоимость 35000 золота.
166 – Ожерелье Тамплиера. Дает + 5 ко всем параметрам героя. В начале каждой недели дает 1 Драколича. Стоимость 35000 золота.
167 – Кираса Тамплиера. Дает + 5 ко всем параметрам героя. В начале каждой недели дает 1 Громовержца. Стоимость 35000 золота.
168 – Сюрко Тамплиера. Дает + 5 ко всем параметрам героя. В начале каждой недели дает 1 Кошмарную Гидру. Стоимость 35000 золота.
169 – Сабатоны Тамплиера. Дает + 5 ко всем параметрам героя. В начале каждой недели дает 1 Верховного Архангела. Стоимость 35000 золота.
170 – Призывный Рог Тамплиера. Дает + 5 ко всем параметрам героя. В начале недели дает + 5 ко всем ресурсам и 10000 золота. Стоимость 35000 золота.
В дальнейшем есть идея, чтобы они собирались в сборный артефакт «Доспехи Тамплиера», который будет давать герою эксперта всех стихий и в начале каждой битвы кастовать на врага
Яд, страх, болезнь и кислотную атаку.
Пока что удалось увеличивать параметры героя и частично получилось реализовать прирост существ у героя в начале каждой недели.
Не могу разобраться почему не дают существ 167(Кираса) и 168(Сюрко) артефакты. Там какая-то ерунда с командой !!OW: I-1/?v10; Если везде ставить I-1, то ошибку выдает сразу после WoGификации, если чередовать I-1 и I-0, то работает, но не всех существ дает.
Таймер ставлю в конце скрипта, где идет описание последнего артефакта, иначе существа каждый день прибавляются.
Помогите разобраться в чем причина?
Скрипт прилагается: (Click to View)
(01.11.2021 05:24)Protos Wrote: [ -> ]Там какая-то ерунда с командой !!OW: I-1/?v10; Если везде ставить I-1, то ошибку выдает сразу после WoGификации, если чередовать I-1 и I-0, то работает, но не всех существ дает.

В хелпе можно прочитать, что "-1" - это текущий игрок. В инструкции карты/таймерах его может и не быть, поэтому ошибки обеспечены.

(01.11.2021 05:24)Protos Wrote: [ -> ]Таймер ставлю в конце скрипта, где идет описание последнего артефакта, иначе существа каждый день прибавляются.

В синтаксисе куча ошибок. Скрипт необходимо переписать. Да и сами таймеры использовать не рекомендую, т.к. они глючные (вообще, самое первое, что срабатывает после запуска игры - это таймеры, из-за чего WoG и ERA могут переглючить не доходя даже до главного меню 148 ).

Если бы мне пришлось написать такой скрипт, то логика была бы примерно такой:

1. Вызов функции 30379 (а-ля Триггер_Новый_день) - она есть только в MoP и ERA+
2. В вызове пишем цикл, проходящий по всем героям и проверяющий наличие артефактов у героев.
3. Если артефакт у героя найден, то:
а. Герою выдаётся целевой монстр, если в слотах его возможно разместить, если слоты заняты, то фиг ему.
б. Узнаём хозяина героя и даём ему ресурсы.

Очень простой скрипт.
Protos, я бы советовал сразу учить команды ERA. Это намного упростит написание скриптов.
XEPOMAHT дал тебе алгоритм, я хочу показать его реализацию.
SergOz, есть триггер OnEveryDay, куда можно добавить лишь проверку новой недели:
к тому же добавлять надо не единоразово для всех героев, а лишь на ход того или иного игрока с проверкой лишь нанятых героев, иначе армия будет пропадать у нанятых героев неактивных игроков, но появляться из воздуха у не нанятых героев.

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

в таком случае придётся дополнительно использовать
ERM help Wrote:C#1/#2/…/#14
Изменить монстров: дать игроку выбор монстров. Используется команда C с 14 параметрами:
(01.11.2021 12:10)daemon_n Wrote: [ -> ]SergOz, есть триггер OnEveryDay, куда можно добавить лишь проверку новой недели:
к тому же добавлять надо не единоразово для всех героев, а лишь на ход того или иного игрока с проверкой лишь нанятых героев, иначе армия будет пропадать у нанятых героев неактивных игроков, но появляться из воздуха у не нанятых героев.

Вот-вот, именно поэтому в ERA+ и был добавлен триггер-функция 30379, в которой не нужно каждый раз проверять всю эту колбасу, замедляя работу циклов на ERM. Триггер_Новый_день срабатывает ровно и конкретно в междудневие игры, а не так как установлен триггер OnEveryDay - перед собственно ходом игрока (т.е. по факту это клон воговского таймера, что совершенно не годится для начисления ежедневных бонусов 108 ).
daemon_n, зачем в событии, срабатывающем каждый день, ставить проверку на начало недели?
Намного проще создать таковой таймер.

Если внимательно посмотреть, то в моём коде можно увидеть проверку героев на надетые арты. Как у не нанятых/нанятых героев может пропадать/появляться армия, если у них нет пустых артов?

Я потому и задал вопрос Protos'у об автоматическом присоединении войск, потому что это не совсем логично.

Я не знаю всех заморочек, которые хочет сделать Protos, потому дал примерный код. Если пустые арты могут быть только у героев игрока, например, или если... или если... , то скрипт будет иметь совершенно другой вид.
Спасибо всем за то, что откликнулись. Сразу несколько вопросов.
1. Для написания скриптов ERA необходима своя программа или ERM Script поддерживает команды ERA?
2. Чтобы скрипт заработал его нужно использовать с новым WoG на движке ERA? У меня есть HoMM3 WoG UE, там наверное это можно реализовать?
(01.11.2021 16:30)Protos Wrote: [ -> ]1. Для написания скриптов ERA необходима своя программа или ERM Script поддерживает команды ERA?

Лично я использую ERM Scripter от Александра Трифонова. Поддерживаю отечественного производителя.

(01.11.2021 16:30)Protos Wrote: [ -> ]2. Чтобы скрипт заработал его нужно использовать с новым WoG на движке ERA? У меня есть HoMM3 WoG UE, там наверное это можно реализовать?

Лучше начинать с чистой ЭРЫ. В модах может быть множество нюансов.
Protos, если ты установишь чистую ERA или сборку с этого форума , то в папке Tools найдёшь Erm_Editor_Sublime.
Я не знаком с ERM Scripter от Александра Трифонова, но Sublime значительно лучше старого редактора.

Сейчас Бес снова перенесёт последние посты в другую тему. Sorry
Я сейчас использую для написания скрипта ERM Scripter от Трифонова. Нормальная прога. Но надо еще посмотреть ERM_Editor_Sublime, на ее возможности.
Понимаю, что я забегаю вперед, но созрел еще один вопрос. Сейчас артефакты у меня дают существ на созданной мной карте, соответственно я их разбросал на карте в хаотическом порядке. Скрипт я выложил в ту же папку, где и сама карта в папку Maps. Что нужно сделать, чтобы эти артефакты появлялись на рандомной карте? Выложить скрипт в папку Data\s ?
Или надо в один из существующих скриптов внедрить весь написанный код?
Еще раз спасибо за ценные советы!!!
Protos, для этого лучше всего создать свой мод и активировать его в менеджере модов.
Вот здесь и здесь можно почитать как сделать свой мод и задать там вопросы, если понадобиться.
Спасибо! Попробую с ERA поработать
(01.11.2021 16:52)SergOz Wrote: [ -> ] Сейчас Бес снова перенесёт последние посты в другую тему. Sorry
не сейчас, но надо бы 103
Всем доброго дня!

С той поры, как я начал создавать скрипт для придания свойств пустым артефактам WoG(161-170), меня мучают несколько вопросов. Почему пустым артефактам до сих пор не дали названия, не придумали им свойства и не реализовали возможность их сбора в комбо-артефакт? В самой игре возможность не описана что-ли? Надо через delphi вносить изменения в код и экзешник новый создавать? Насколько это трудозатратно? Я просто постоянно встречаю на форуме в тех или иных местах, как мододелы/скриптописцы придают свойства этим пустым артефактам и интерес явно большой!
(08.11.2021 09:58)Protos Wrote: [ -> ]Почему пустым артефактам до сих пор не дали названия, не придумали им свойства и не реализовали возможность их сбора в комбо-артефакт?

Есть куча модов, в которых это было сделано, например в ERA+.

(08.11.2021 09:58)Protos Wrote: [ -> ]В самой игре возможность не описана что-ли?

Нет. Сама игра ограничена 144 артефактами. WoG поднимает до 160.

(08.11.2021 09:58)Protos Wrote: [ -> ]Надо через delphi вносить изменения в код и экзешник новый создавать?

Теоретически надо, но на практике этим уже давно никто не занимается.

(08.11.2021 09:58)Protos Wrote: [ -> ]Насколько это трудозатратно? Я просто постоянно встречаю на форуме в тех или иных местах, как мододелы/скриптописцы придают свойства этим пустым артефактам и интерес явно большой!

Если с нуля, то вполне. Если использовать готовый плагин, то затраты - только для придания свойств (и не пытайся соревноваться с MoP, где запрограммировано 225 свойств новым артефактам по сравнению с WoG 148 ).
Pages: 1 2 3
Reference URL's