AutoHookGenPatcher автоматически создает файлы MMHOOK для MonoMod.RuntimeDetour.HookGen во время фазы предварительной загрузки BepInEx.
Установка и использование
Для ручной установки скопируйте папку BepInEx из архива в соответствующую папку BepInEx в каталоге игры.
Отличия от оригинального HookGenPatcher
- AutoHookGenPatcher генерирует
MMHOOKфайлы не только для фиксированного списка, а для всех плагинов, установленных в системе, если это возможно. - Используется кеш-файл для ускорения проверки актуальности сгенерированных файлов без необходимости анализировать каждый
MMHOOKфайл. - Генерация хуков выполняется многопоточно, что сокращает время создания множества
MMHOOKфайлов. Например, для всех файлов в папкеManagedигры Lethal Company время сокращается с 40 секунд до 22,5 секунд.
Настройка для разработчиков
По умолчанию AutoHookGenPatcher генерирует MMHOOK для Assembly-CSharp.dll. Если вам нужны только эти файлы, дополнительных действий не требуется.
Чтобы сгенерировать MMHOOK файлы для всех плагинов, отредактируйте конфигурационный файл AutoHookGenPatcher.cfg, включив параметр Enabled в секции [Generate MMHOOK File for All Plugins]:
[Generate MMHOOK File for All Plugins]
Enabled = true
Disable After Generating = true
После генерации файлов настройка автоматически отключится, если параметр Disable After Generating установлен в true.
Принцип работы
- Во время фазы предварительной загрузки BepInEx AutoHookGenPatcher сканирует метаданные всех DLL, обнаруживая ссылки на сборки с префиксом
MMHOOK_. - Если соответствующие сборки установлены, для них запускается генерация хуков с помощью MonoMod.
- Проверка обновлений происходит через сравнение даты изменения файлов с данными в кеш-файле.





