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