Mixaill Posted December 4, 2022 Share Posted December 4, 2022 (edited) Описание Библиотека предзназначенная для облегчения написания установщиков модификаций для WoT. Основная функция -- поиск клиентов игры и получение информации о них (версия, локаль, реалм и прочее) а также помощь в разграничении контента для Wargaming/Lesta клиентов. Однако, есть и другие фишки, такие как: распаковка BigWorld XML работа с JSON конвертация PNG -> BMP поиск запущенных процессов в каталоге и их завершение отображение сплэшскрина замена в строке по регулярному выражению детектирование Wine поиск клиентов WGC / Steam / 360 / LGC Получение предпочительного клиента (текущий выбранный в WGC) работа с клиентом получение версии клиента и ее сверка по регулярному выражению получение версии исполняемого файла клиента получение реалма (EU/NA/ASIA/CN/RU) получение типа по контенту (SD/HD) получение типа лаунчера (WGC/Steam/360/LGC) получение типа релиза (Release/Common Test/Super Test/Sandbox) получение пути до активного в клиенте mods/res_mods получение языка клиента детектирование запуска и завершение клиента Как пользоваться 1) скачиваем 2) из комплекта поставки утягиваем два файла bin/openwg.utils.x86_32.dll innosetup/openwg.utils.iss 3) в своем корневом .iss файле прописываете #define OPENWGUTILS_DIR_SRC "bin" #define OPENWGUTILS_DIR_UNINST APP_DIR_UNINST #include "openwg.utils.iss" где OPENWGUTILS_DIR_SRC -- путь к каталогу куда вы положили .dll OPENWGUTILS_DIR_UNINST -- путь к каталогу файла деинсталляции относительно {app}, в подавляющем большинстве случаев должен совпадать с UninstallFilesDir 4) изучаем пример в innosetup_demo/openwg_utils_demo.iss и вызываем нужные вещи, подробности вызова можно подсмотреть в openwg.utils.iss и в *.h файлах в каталоге include Пользователи Название Сопровождающий Ссылка XVM.Installer v1 @Mixaill https://gitlab.com/xvm/xvm/-/tree/master/src/installer XVM.Installer v2 @ktulho https://gitlab.com/xvm/xvm.installer Protanki @Yusha https://protanki.tv/ Jove's @phantasm https://joves-modpack.ru/ KorbenTeam @phantasm https://korbenteam.org/modpack Amway921 @AtotIK https://wgmods.net/95/ Vspishka @AtotIK https://wgmods.net/131/ WGMods @AtotIK https://wgmods.net/16/ , RIP начиная с WoT 1.19.0 🥲 LeBwa team @POLIROID https://lebwa.tv/hub/modpack-lebwa-team Tomato.gg @POLIROID https://wgmods.net/6391/ ModPacker @Polyacov_Yury https://github.com/PolyacovYury/ModPacker напишите в комментариях если про вас забыл/не знал Скачать OpenWG.Utils_v2024.03.27.1.zip Исходный код https://gitlab.com/openwg/openwg.utils История версий v2022.12.04.1 первая для широкой публики v2023.03.17.1 переработано API для взаимодействия с JSON v2023.03.18.1 добавлены функции `JSON_SetDouble()`, `JSON_SetInteger()`, `JSON_SetString()` v2023.03.18.2 исправлена потеря комментариев в JSON-файлах v2023.08.01.1 исправлено дублирование клиентов WoT/МТ в случае если регистр имени каталога в файловой системе отличался от такового в конфигурационных файлах WGC/LGC v2023.09.01.1 добавлены фукнции `JSON_ContainsKey()`, `JSON_GetString()` v2023.09.17.1 добавлены функции WWISE_OpenFile(), WWISE_CloseFile(), WWISE_Close(), WWISE_LicenseGet(), WWISE_LicenseSet() v2023.09.21.1 добавлены конвертеры лицензий WWISE-файлов в виде exe-файлов: wwise_convert_to_unlicensed, wwise_convert_to_wg v2023.11.01.1 добавлена функция NETWORK_Ping добавлена функция NETWORK_Resolve v2023.12.10.1 добавлена функция FS_FileEqual добавлена функция FS_FileExists добавлена функция XML_AddKey добавлена функция XML_Close добавлена функция XML_ContainsKey добавлена функция XML_ContainsKeyEx добавлена функция XML_OpenFile добавлена функция XML_SaveFile v2023.12.11.1 порефакторено внутри v2023.12.12.1 добавлена функция FS_Search_QueryFolder (поиск каталога по регекспу) добавлена функция FS_Search_Close добавлена функция FS_Search_GetCount добавлена функция FS_Search_GetPath v2023.12.13.1 оптимизирован FS_Search_QueryFolder добавлена функция SPLASHSCREEN_Show добавлена функция SPLASHSCREEN_Close v2024.02.02.1 добавлена функция WOT_GetClientVendor исправлен вывод WOT_GetClientType для MT PublicTest исправлена работы функции CHECK_IsLesta если клиент был добавлен вручную в функцию CLIENT_FormatString добавлен вывод типа (WoT/MT) v2024.02.10.1 добавлена функция SPLASHSCREEN_CloseAfter добавлен фильтр по вендору в WOT_LauncherSetDefault (только ВГ, только Леста, все вместе) v2024.03.27.1 SPLASHCREEN_*: устранена проблема с перепутанными R и B каналами в .png в поставку добавлена демка owg_bwxml_unpack (анпакер XML, можно перетаскивать на exe) в поставку возвращена демка owg_wot_detect (поиск клиентов) в поставку возвращены демки owg_wwise_convert_to (смена лицензии WWISE банок) OpenWG.Utils_v2024.03.27.1.zip Edited August 23 by Mixaill 14 @ Quote Link to comment Short link Share on other sites More sharing options...
Mixaill Posted September 12, 2023 Author Share Posted September 12, 2023 (edited) Немного обновлений: v2023.03.17.1 переработано API для взаимодействия с JSON v2023.03.18.1 добавлены функции `JSON_SetDouble()`, `JSON_SetInteger()`, `JSON_SetString()` v2023.03.18.2 исправлена потеря комментариев в JSON-файлах v2023.08.01.1 исправлено дублирование клиентов WoT/МТ в случае если регистр имени каталога в файловой системе отличался от такового в конфигурационных файлах WGC/LGC v2023.09.01.1 добавлены фукнции `JSON_ContainsKey()`, `JSON_GetString()` Планы на будущее: * распаковка BWXML в буфер * смена лицензии банка WWise Edited September 12, 2023 by Mixaill 3 @ Quote Link to comment Short link Share on other sites More sharing options...
Mixaill Posted September 19, 2023 Author Share Posted September 19, 2023 (edited) Немного обновлений: v2023.09.17.1 * добавлены функции * WWISE_OpenFile() * WWISE_CloseFile() * WWISE_Close() * WWISE_LicenseGet() //0 - хз/битая банка, 1 - нет лицензии, 2 - лицензия ВГ * WWISE_LicenseSet() примерный сценарий использования procedure unlicense_bank(path:String); var Handle: Integer; begin Handle := WWISE_OpenFile(path); if WWISE_LicenseGet(Handle) = 2 then begin WWISE_LicenseSet(Handle, 1) WWISE_SaveFile(Handle, path) end; WWISE_Close(Handle); end; лицензию можно менять как в сторону нет -> WG, так и WG -> нет Планы на будущее: * распаковка BWXML в буфер * смена лицензии на банки внутри вотмода без ручной распаковки и запаковки * вынос менялки лицензии в консольную утилиту Edited September 19, 2023 by Mixaill 1 @ Quote Link to comment Short link Share on other sites More sharing options...
Mixaill Posted September 21, 2023 Author Share Posted September 21, 2023 (edited) v2023.09.21.1 * добавлены конвертеры лицензий в виде exe-файлов (достаточно перетянуть банки на ехешку) * wwise_convert_to_unlicensed - конвертирует банки в Леста-совместимые * wwise_convert_to_wg - конвертирует банки в ВГ-совместимые OpenWG.Utils_v2023.09.21.1.zip Edited September 21, 2023 by Mixaill 12 @ Quote Link to comment Short link Share on other sites More sharing options...
P.S.Enot Posted March 14 Share Posted March 14 12.09.2023 в 15:52, Mixaill сказал: Немного обновлений: v2023.03.17.1 переработано API для взаимодействия с JSON v2023.03.18.1 добавлены функции `JSON_SetDouble()`, `JSON_SetInteger()`, `JSON_SetString()` v2023.03.18.2 исправлена потеря комментариев в JSON-файлах v2023.08.01.1 исправлено дублирование клиентов WoT/МТ в случае если регистр имени каталога в файловой системе отличался от такового в конфигурационных файлах WGC/LGC v2023.09.01.1 добавлены фукнции `JSON_ContainsKey()`, `JSON_GetString()` Планы на будущее: * распаковка BWXML в буфер * смена лицензии банка WWise Подскажите пожалуйста как сделать так что бы всегда определялся и подставлялся клиент Лесты а не WG . Просто у меня два клиента леста и евро стоят и всегда первым делом в автоматическом поиске игры подставляется Евро клиент. А мне нужно что бы Леста была. Что мне сделать нужно. Не как самостоятельно разобраться не получается. Подскажите пожалуйста. нужно что бы всегда выбиралось первым делом так как на скреншоте @ Quote Link to comment Short link Share on other sites More sharing options...
_McClayn_EU Posted August 7 Share Posted August 7 14.03.2024 в 10:43, P.S.Enot сказал: Подскажите пожалуйста как сделать так что бы всегда определялся и подставлялся клиент Лесты а не WG . Просто у меня два клиента леста и евро стоят и всегда первым делом в автоматическом поиске игры подставляется Евро клиент. А мне нужно что бы Леста была. Что мне сделать нужно. Не как самостоятельно разобраться не получается. Подскажите пожалуйста. нужно что бы всегда выбиралось первым делом так как на скреншоте В данной библиотеке есть прекрасная функция - WOT_LauncherSetDefault(LauncherFlavour) -> Устанавливает дефолтным указанный "Launcher Flavour", и возвращает количество найденных клиентов на ПК @ Quote Link to comment Short link Share on other sites More sharing options...
P.S.Enot Posted August 7 Share Posted August 7 (edited) 1 час назад, _McClayn_EU сказал: В данной библиотеке есть прекрасная функция - WOT_LauncherSetDefault(LauncherFlavour) -> Устанавливает дефолтным указанный "Launcher Flavour", и возвращает количество найденных клиентов на ПК Спасибо за ответ. но уже давным давно все решено и сделанно вот Правда пришлось немного скрипт библиотекиOpenWG.Utils переписывать для полной совместимости с библиотекой FMXInno.dll Edited August 7 by P.S.Enot @ Quote Link to comment Short link Share on other sites More sharing options...
Polyacov_Yury Posted August 11 Share Posted August 11 04.12.2022 в 22:33, Mixaill сказал: Пользователи > напишите в комментариях если про вас забыл/не знал Второй вариант, пожалуйста :) https://github.com/PolyacovYury/ModPacker Буквально только что домигрировал код со старых костылей на утилиты в топике. Coбираю им свои Тёмные Подвалы в кучку. Буду обновлять только пак, архивы останутся в лимбе. (да, я собираюсь обновить свои поделия на 1.28/1.25. Зря отпуск брал, что ли?) 5 @ Quote Link to comment Short link Share on other sites More sharing options...
Mixaill Posted August 23 Author Share Posted August 23 Немного обновлений v2023.11.01.1 добавлена функция NETWORK_Ping добавлена функция NETWORK_Resolve v2023.12.10.1 добавлена функция FS_FileEqual добавлена функция FS_FileExists добавлена функция XML_AddKey добавлена функция XML_Close добавлена функция XML_ContainsKey добавлена функция XML_ContainsKeyEx добавлена функция XML_OpenFile добавлена функция XML_SaveFile v2023.12.11.1 порефакторено внутри v2023.12.12.1 добавлена функция FS_Search_QueryFolder (поиск каталога по регекспу) добавлена функция FS_Search_Close добавлена функция FS_Search_GetCount добавлена функция FS_Search_GetPath v2023.12.13.1 оптимизирован FS_Search_QueryFolder добавлена функция SPLASHSCREEN_Show добавлена функция SPLASHSCREEN_Close v2024.02.02.1 добавлена функция WOT_GetClientVendor исправлен вывод WOT_GetClientType для MT PublicTest исправлена работы функции CHECK_IsLesta если клиент был добавлен вручную в функцию CLIENT_FormatString добавлен вывод типа (WoT/MT) v2024.02.10.1 добавлена функция SPLASHSCREEN_CloseAfter добавлен фильтр по вендору в WOT_LauncherSetDefault (только ВГ, только Леста, все вместе) v2024.03.27.1 SPLASHCREEN_*: устранена проблема с перепутанными R и B каналами в .png в поставку добавлена демка owg_bwxml_unpack (анпакер XML, можно перетаскивать на exe) в поставку возвращена демка owg_wot_detect (поиск клиентов) в поставку возвращены демки owg_wwise_convert_to (смена лицензии WWISE банок) OpenWG.Utils_v2024.03.27.1.zip 2 @ Quote Link to comment Short link Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.