FermiumBooter — это утилита типа mixin mod, позволяющая разработчикам применять миксы как на ранних, так и на поздних этапах загрузки, что даёт возможность модифицировать классы, которые в обычных условиях не могут быть изменены.
Текущий функционал включает:
- Добавление миксов в очередь для применения на ранних и поздних этапах, позволяя модифицировать как Vanilla/Forge классы, так и классы модов
- Систему аннотаций @MixinConfig, расширяющую систему @Config от Forge, для автоматического включения миксов на основе настроек конфигурации
- Обработку совместимости через аннотации конфигурации, позволяющую задавать необходимые/несовместимые моды для конкретных миксов
- Логирование предупреждений при неудачных проверках совместимости миксов
- Опциональное принудительное отключение миксов при неудачных проверках совместимости
- Отображаемые в игре (отключаемые) предупреждения при проблемах совместимости
- Управление включением/отключением миксов до их применения через Supplier
- Утилитарный метод проверки наличия ModID, аналогичный Loader.isModLoaded(), но доступный на этапе загрузки миксов
- Возможность блокировки применения других миксов FermiumBooter для тестирования
- Использует Mixin 0.8.7 и MixinExtras 0.4.1
Инструкция для разработчиков:
В методе init вашего IFMLLoadingPlugin вместо "Mixins.addConfiguration("mixinConfigName")" используйте "FermiumRegistryAPI.enqueueMixin("mixinConfigName")".
Для регистрации поздних миксов используйте "FermiumRegistryAPI.enqueueMixin(true, "mixinConfigName")".
Дополнительные возможности описаны в документации кода.