Библиотека для исправления, замены и украшения. NET и Mono методы во время запуска. Предназначен для обеспечения того, чтобы все моды в списке модов игрока использовали последнюю версию Harmony для минимизации конфликтов. Мы также добавили Debug UI! Доступно
ПримечанияЭто неофициальное распространение
Гармониябиблиотека создана для упрощения управления внешними библиотечными зависимостями.
Репозиторий мода -
Bannerlord.Harmony.
Объявление Bannerlord.Lib.Harmony для моддеровОригинал
Гармониябиблиотека теперь полностью
поддерживаетnetstandard2.0, поэтому мы вернулись к нему. Наш
вилкабиблиотеки в настоящее время устарело.
УстановкаЭтот модуль должен быть самым верхним в порядке загрузки. Любые другие модули, которые необходимо установить первыми (Better Exception Window, ButterLib, MCM и т. д.), следует загружать после этого модуля.
Для игроков
Этот мод предназначен для того, чтобы все моды в списке модов игрока использовали последнюю версию Harmony для минимизации конфликтов.
Для моддеровМы добавили интерфейс отладки! Доступно сочетанием клавиш CTRL+ALT+H.Вам по-прежнему необходимо ссылаться на Harmony как на пакет NuGet, включать 0Harmony.dll в конечный вывод /bin вашего модуля не обязательно.
Вам необходимо добавить это в свой
Подмодуль.xml
Таким образом, игра обеспечит загрузку библиотеки Harmony перед вашим модом.
Версионирование
Модуль объединяет используемую версию Harmony и идентификатор сборки, опубликовавшей модуль. Идентификатор сборки просто добавляется в конец.
2.0.2.22 указывает на то, что используется Harmony 2.0.2.0, а 22 — это идентификатор сборки.
2.0.0.1025 указывает, что используется Harmony 2.0.0.10, а 25 — это идентификатор сборки.
Мы рассматривали вариант Rimworld с внедрением собственной системы версий, но это не позволит однозначно определить, какую версию Harmony содержит модуль. Пользователю проще сообщить версию используемого модуля, чем проверять и отправлять версию сборки.
Поиск неисправностей* Возникли проблемы с распаковкой архива? Установите через Vortex или скачайте.
7-молния.
НЕ ИСПОЛЬЗУЙТЕ НИЧЕГО ИЗ МАГАЗИНА ПРИЛОЖЕНИЙ WINDOWS.
Мы также добавили статью окак установить и использовать 7-zip!* Если игра вылетает при запуске, скорее всего, вы используете или использовали Fixed Launcher. При установке он копирует 0Harmony.dll, что препятствует работе Bannerlord.Harmony.
* Если Fixed Launcher был удален или никогда не устанавливался, проверьте, что в основной папке игры /bin (Mount & Blade II) отсутствуют следующие файлы
Bannerlord\bin\Win64_Shipping_Client)
- TaleWorlds.MountAndBlade.Launcher.exe.config
- 0Harmony.dll
- LauncherPatcher.dll
- LauncherPatcher.pdb
ОHarmony предоставляет элегантный и высокоуровневый способ изменения функциональности приложений, написанных на C#. Он отлично работает в играх и хорошо зарекомендовал себя в таких проектах, как
7 Days To Die, BattleTech, Besiege, Cities:Skylines, Kerbal Space Program, Oxygen Not Included, Ravenfield, Rimworld, Sheltered, Stardew Valley, Staxel, Subnautica, The Ultimate Nerd Game, Total Miner, Unturnedи многое другое.
Он также используется при модульном тестировании средств управления WFP и во многих других областях.
Как это работаетЕсли вы разрабатываете на C# и ваш код загружается как модуль/плагин в хост-приложение, вы можете использовать Harmony для изменения функциональности всех доступных сборок этого приложения. В то время как другие библиотеки патчей позволяют просто заменить исходный метод, Harmony идёт дальше и предоставляет:
• Способ сохранить оригинальный метод нетронутым
• Выполнять код до и/или после исходного метода
• Измените оригинал с помощью процессоров IL-кода
• Несколько патчей Harmony сосуществуют и не конфликтуют друг с другом.
• Работает во время выполнения и не затрагивает никакие файлы.
ДокументацияПожалуйста, проверьте
документация.
СпособствоватьпардейкеВ этот проект и его поддержку вложены тысячи часов. Поэтому каждое маленькое действие помогает:
• Оцените это
ответ на stackoverflow• Распространите информацию в своих сообществах разработчиков
• Станьте
Спонсор GitHubили
ПатреонЭтот проект использует большой
MonoMod.Commonбиблиотека от
0x0ade.