MixinBooter
Allows any mixins that work on mods to work effortlessly on 1.8 - 1.12.2
-
Current Mixin Version: UniMix 0.15.3 forked by CleanroomMC, derived from 0.8.7 branch by LegacyModdingMC
-
Current MixinExtra Version: 0.5.0-beta4
For Developers:
- Add CleanroomMC's repository and depend on MixinBooter's maven entry:
repositories {
maven {
url 'https://maven.cleanroommc.com'
}
}
dependencies {
// Common:
annotationProcessor 'org.ow2.asm:asm-debug-all:5.2'
annotationProcessor 'com.google.guava:guava:32.1.2-jre'
annotationProcessor 'com.google.code.gson:gson:2.8.9'
// ForgeGradle:
implementation ('zone.rong:mixinbooter:10.0') {
transitive = false
}
annotationProcessor ('zone.rong:mixinbooter:10.0') {
transitive = false
}
// RetroFuturaGradle:
String mixinBooter = modUtils.enableMixins('zone.rong:mixinbooter:10.0')
// modUtils.enableMixins('zone.rong:mixinbooter:10.0', 'mod_id.mixins.refmap.json') << add refmap name as 2nd arg (optional)
api (mixinBooter) {
transitive = false
}
annotationProcessor (mixinBooter) {
transitive = false
}
}
Pseudo-Changelog:
-
As of 4.2, MixinBooter's API has changed and all mods that uses mixins are encouraged to depend on MixinBooter, even those that mixin into vanilla/forge/library classes. To avoid mixin version mismatches with mods crashing trying to implement modded mixins (looking at you VanillaFix). Thanks to @embeddedt recommending and helping me introduce this change!
-
As of 5.0, MixinExtras by @LlamaLad7 is shaded. Available for developers to use.
-
As of 8.0, MixinBooter will now work from 1.8 - 1.12.2. One single build works with all these versions! (TODO: LiteLoader support?)
-
As of 8.4, MixinBooter actively attempts to be compatible with SpongeForge
-
As of 9.2, MixinBooter reinstates the older MixinLoader annotation for 1.8.x usages.
-
As of 10.0, MixinBooter follows Mixin 0.8.7
Tidbits:
- Consult
IEarlyMixinLoader
for mixins that affects vanilla, forge, or any classes that is passed to the classloader extremely early (e.g. Guava). - Consult
ILateMixinLoader
for mixins that affects mods. @MixinLoader
annotation's, as of 4.2, deprecated. Thefunctionality is akin toILateMixinLoader
. Both can be used at the same time, especially for 1.8.x versions where it is needed.
External resources
Project members
Cleanroom
Owner
Rongmario
Lead Developer