Добавить функцию в редактор триггеров Reforged Lua
Такая тема хочу написанную на Lua функцию и добавить в UI, чтобы для ее вызова не нужно было добавлять "Custom Script". В общем что-то типа того что расписано в этой статье xgm.guru/p/wc3/addingactionstotriggereditor
А то, например, дико бесит вечно в ручную писать DestroyGroup(х) и RemoveLocation(х), а почему их не добавили в новый редактор прямо загадка, либо я слепой

Лучший ответ:
Кароче, всё хорошо и работает, надо научиться только этим пользоваться
Включаем локальные файла кидаем triggerdata.txt в папку
Warcraft III\_retail_\ui
и начинаем править
я справил 1 строчку
_DialogDisplayBJ_Defaults=ShowHideShow,_,Player10
и у меня при создании диалога по умолчанию стоит 11 игрок вместо первого
Это доказательство, что всё работает
Что могу сказать, по идее, карта будет работать, с модифицированным triggerdata.txt, а при ошибке, будет ругаться точно так же как сейчас ругается рефорджа на функции jngp - "функция отсутствует в базе данных"
В общем надо развивать эту тему

О кстати тока заметил 3 параметр Unknow также добавился


Views: 468

» Лучшие комментарии


Феникс #1 - 3 months ago 0
Голосов: +0 / -0
Известного способа добавления в UI нет, но ты можешь сделать инжект в БЖ функцию и она будет работать из под оболочки триггеров
prog #2 - 3 months ago (изм. ) 0
Голосов: +0 / -0
Феникс, что значит нет, способ описанный в статье на которую приведена ссылка вполне должен работать, разница только в способе получения файлов для редактирования и способе подсовывания их редактору.

Нет известного рабочего способа сделать это на уровне карты, чтобы такая карта одинаково открывалась и сохранялась редактором на любой машине без дополнительных манипуляций.
GetLocalPlayer #3 - 3 months ago 0
Голосов: +0 / -0
что значит нет, способ описанный в статье на которую приведена ссылка вполне должен работать
В Рефорже должен работать?
PT153 #4 - 3 months ago (изм. ) 0
Голосов: +0 / -0
GetLocalPlayer, mpq там нет, но заменять файлы можно просто размещая их в папке вара по соответствующим путям.
DCFA #5 - 3 months ago 0
Голосов: +0 / -0
PT153:
GetLocalPlayer, mpq там нет, но заменять файлы можно просто размещая их в папке вара по соответствующим путям.
Да, но вытекает 2 проблемы, первая как достать именно реводжевые аналоги этих файлов, а вторая то что не факт что эти файлы остались текстовыми документами(хотя может для обратной совместимости могли остаться)
PT153 #7 - 3 months ago 2
Голосов: +2 / -0
CascView
DCFA #8 - 3 months ago 0
Голосов: +0 / -0
Феникс:
Известного способа добавления в UI нет, но ты можешь сделать инжект в БЖ функцию и она будет работать из под оболочки триггеров
Да я тоже думал об этом, но это вообще дичь, создаст большую путаницу. К тому же может возникнуть ситуация что вдруг нужна функция которая была там изначально, значит надо стандартную функцию сохранять в отдельной переменной перед инжектом, а потом устраивать жонглирование из функций
prog #9 - 3 months ago (изм. ) 0
Голосов: +0 / -0
В Рефорже должен работать?
Должен. Архитектура гуи не менялась, насколько я знаю.
DCFA #10 - 3 months ago 0
Голосов: +0 / -0
PT153:
CascView
Благодарю, не слыхал ранее про эту прожку
prog:
В Рефорже должен работать?
Должен. Архитектура гуи не менялась, насколько я знаю.
Буду надеяться, попробую сейчас с CascView поработать
dondonchakka #11 - 3 months ago 0
Голосов: +0 / -0
а толку от этого если в рефордже не работает мпк патчи, ну не будет же обычный юзер кидать твои Triggerdata.strings в cascview чтобы поигать в твою карту
DCFA #12 - 3 months ago (изм. ) 0
Голосов: +0 / -0
Я либо криворукий, либо реально нет возможности добавить в UI. Короче с помощью CascView извлек, отредактировал(кстати TriggerData.txt и TriggerStrings.txt теперь это один файл triggerdata.txt) и импортировал в карту. Добавил такие строчки
DestroyGroup=0,group
_DestroyGroup_DisplayName="DestroyGroup"
_DestroyGroup_Parameters="Destroy group - ",Unit Group
_DestroyGroup_Defaults=_
_DestroyGroup_Category=TC_UNITGROUP
При открытии карты этой функции не появляется. Или будет работать только если в файлы самой игры встроить, если да, то как? CascView только дает возможность посмотреть и извлечь файлы, но не заменить

dondonchakka:
а толку от этого если в рефордже не работает мпк патчи, ну не будет же обычный юзер кидать твои Triggerdata.strings в cascview чтобы поигать в твою карту
как это не работает? банальный пример ReplaceableTextures\CommandButtons\ и ReplaceableTextures\CommandButtonsDisabled\ для иконок все так же нужно указывать, к тому же карте так таковой не нужен triggerdata.txt для того чтобы играть в нее, функции то я собираюсь в самой карте описывать
dondonchakka #13 - 3 months ago 0
Голосов: +0 / -0
DCFA:
Я либо криворукий, либо реально нет возможности добавить в UI. Короче с помощью CascView извлек, отредактировал(кстати TriggerData.txt и TriggerStrings.txt теперь это один файл triggerdata.txt) и импортировал в карту. Добавил такие строчки
DestroyGroup=0,group
_DestroyGroup_DisplayName="DestroyGroup"
_DestroyGroup_Parameters="Destroy group - ",Unit Group
_DestroyGroup_Defaults=_
_DestroyGroup_Category=TC_UNITGROUP
При открытии карты этой функции не появляется. Или будет работать только если в файлы самой игры встроить, если да, то как? CascView только дает возможность посмотреть и извлечь файлы, но не заменить

dondonchakka:
а толку от этого если в рефордже не работает мпк патчи, ну не будет же обычный юзер кидать твои Triggerdata.strings в cascview чтобы поигать в твою карту
как это не работает? банальный пример ReplaceableTextures\CommandButtons\ и ReplaceableTextures\CommandButtonsDisabled\ для иконок все так же нужно указывать, к тому же карте так таковой не нужен triggerdata.txt для того чтобы играть в нее, функции то я собираюсь в самой карте описывать
а ну я думал что не открывается без triggerdata))
prog #14 - 3 months ago 0
Голосов: +0 / -0
DCFA, по читай про использование локальных файлов. Импортирование в карту, увы, не работает на данный момент на файлы используемые редактором. Если коротко - файл достаточно положить в правильное место на диске в папке игры, чтобы его подхватило и использовало, но для этого возможно понадобится отредактировать ключ в реестре.
DCFA #15 - 3 months ago 0
Голосов: +0 / -0
prog:
DCFA, по читай про использование локальных файлов. Импортирование в карту, увы, не работает на данный момент на файлы используемые редактором. Если коротко - файл достаточно положить в правильное место на диске в папке игры, чтобы его подхватило и использовало, но для этого возможно понадобится отредактировать ключ в реестре.
А она разве сможет схавать отдельно txtешник? Если есть какие-то наводки где искать инфу, можете подсказать подсказать? Пожалуйста
Bergi_Bear #16 - 3 months ago 0
Голосов: +0 / -0
А она разве сможет схавать отдельно txtешник? Если есть какие-то наводки где искать инфу, можете подсказать подсказать? Пожалуйста
Наводки есть, помните мы кидали звуковые файлы от классического варкрафта, не в mpq а просто в папку, я думаю тоже самое возможно для любых типов файлов
В общем надо triggerdata.txt положить в такую же папку, в которой он лежал внутри архива
Bergi_Bear #17 - 3 months ago 0
Голосов: +0 / -0

Кароче, всё хорошо и работает, надо научиться только этим пользоваться
Включаем локальные файла кидаем triggerdata.txt в папку
Warcraft III\_retail_\ui
и начинаем править
я справил 1 строчку
_DialogDisplayBJ_Defaults=ShowHideShow,_,Player10
и у меня при создании диалога по умолчанию стоит 11 игрок вместо первого
Это доказательство, что всё работает
Что могу сказать, по идее, карта будет работать, с модифицированным triggerdata.txt, а при ошибке, будет ругаться точно так же как сейчас ругается рефорджа на функции jngp - "функция отсутствует в базе данных"
В общем надо развивать эту тему

О кстати тока заметил 3 параметр Unknow также добавился
Прикрепленные файлы
GetLocalPlayer #18 - 3 months ago 0
Голосов: +0 / -0
В общем надо развивать эту тему
Создавай репозиторий на GitHub с именем GUIStdLib. Будет потихоньку коммитить туда весь недостающий функционал из common.j
Bergi_Bear #19 - 3 months ago 0
Голосов: +0 / -0
GetLocalPlayer:
В общем надо развивать эту тему
Создавай репозиторий на GitHub с именем GUIStdLib. Будет потихоньку коммитить туда весь недостающий функционал из common.j
за близов их работу делать предлагаешь? 1 дело добавить своё для удобства друга, или наработка ради наработки, но запилить теже фреймы на гуи? О_о нет, чет не хочется, а потом баз и близы выпустят свой вариант и работа в холостую
GetLocalPlayer #20 - 3 months ago 3
Голосов: +3 / -0
нет, чет не хочется
Что тогда означало
Bergi_Bear:
надо развивать эту тему
?
prog #22 - 3 months ago 0
Голосов: +0 / -0
Эту фичу было бы здорово иметь в сборщике, чтобы определенным образом отмеченные функции из кода карты автоматически добавлялись в генерируемый triggerdata.txt.
Я даже планировал включить это в свой сборщик, но потом редактор перестал подтягивать triggerdata.txt и другие файлы из карты, а с локал файлами мне связываться не хотелось, ну а потом я просто подзабил на сборщик.
Bergi_Bear #23 - 3 months ago 0
Голосов: +0 / -0
GetLocalPlayer:
нет, чет не хочется
Что тогда означало
Bergi_Bear:
надо развивать эту тему
?
Ну я не против гифки посмотреть, если кто то в этом будет ковыряться. Не против если кто то другой это будет делать, ну или мне нужна инфа по созданию своих гуи триггеров. На примере gngp, чёт ничего не найду, бан в Гугле. А методом тыка ковырять, такое себе.
prog #24 - 3 months ago 0
Голосов: +0 / -0
ну или мне нужна инфа по созданию своих гуи триггеров
Так вон же прямо в вопросе ссылка на статью, там вроде достаточно информации чтобы добавить любую свою функцию в ГУИ.
Bergi_Bear #25 - 3 months ago 0
Голосов: +0 / -0
prog, ослепление
GetLocalPlayer #26 - 3 months ago (изм. ) 0
Голосов: +0 / -0
Потестил, все оказывается работает - события, действия, функции, категории и т.д.
Я хз что тут тогда полгода сопли по стенке размазывают, работы просто океан.
Прикрепленные файлы
Ярг Восьмой #27 - 3 months ago (изм. ) 0
Голосов: +0 / -0
У нас же есть потрошитель редактора WCIII.
Подобную тему уже разбирали, и даже один человек сделал модификацию FNWE для редактора 1.26a. Могёт и для рефорги. Только в ВК обратитесь к нему, в ЛС. Она там частит, ежели тут.
DCFA #28 - 3 months ago (изм. ) 0
Голосов: +0 / -0
Bergi_Bear, GetLocalPlayer, Да , рили все работает, спасибо ребята. Я сначала по тупости кидал куда попало, не додумался в папке retail создать папку ui, я ее в корне варика создавал и даже в папке расположенной в документах, естественно ничего не работало.