Simplistic mixin mod utility to allow developers to load mixins both early and late
FermiumBooter is a mixin mod utility to allow developers to load mixins both early and late, allowing for modifying classes that normally could not be modified otherwise.
Current features include;
Enqueue mixins to be applied both early and late, to allow for for modifying Vanilla/Forge classes, as well as mod classes
@MixinConfig annotation system to expand on the Forge @Config system, to allow for automatic mixin enqueue based on config toggles
Optional compatibility handling through the config annotation system to allow developers to define required/incompatible mods for specific mixins
Logged warnings when a mixin using the config annotation system fails compatibility checks
Optional forced mixin disabling when a mixin using the config annotation system fails compatibility checks
Ingame (disable-able) warning rendering when mixins using the config annotation system fail compatibility checks
Enable/disable enqueued mixins prior to application through the use of a Supplier, to allow developer control over optional mixins
Utility method to check if a ModID is present similar to Loader.isModLoaded() however usable during mixin enqueue/early mixin application unlike Loader.isModLoaded()
Disallow other FermiumBooter enqueued mixins from applying, for testing or tweaking purposes
Shadows Mixin 0.8.7 and MixinExtras 0.4.1
For developer usage:
In your IFMLLoadingPlugin init, instead of "Mixins.addConfiguration("mixinConfigName")", use "FermiumRegistryAPI.enqueueMixin("mixinConfigName").
If you are registering it as a late-loaded mixin use "FermiumRegistryAPI.enqueueMixin(true, "mixinConfigName")".
That is all that is required, and FermiumBooter takes care of the rest.
For additional utilities as described previously, all are documented in code with explanations of usage and purpose.
If you have any issues/suggestions/requests, please post them to the Github issue tracker linked above.
Need to get in contact with me, or want to support me? Click the badges below:
Need a server? Click the banner below and use code "fonny" for 25% off your first month with Bisect Hosting:

Conversation