Description
MixinTale is a Harmony-inspired mixin/bytecode patching framework built specifically for Hytale.
It allows mod developers to modify and extend server/game behavior without editing game files, using familiar patch semantics such as Prefix / Postfix / Replace, plus advanced callsite patching (RedirectCall / WrapCall).
What makes MixinTale different
MixinTale is designed for modern Java and real modding constraints (isolated classloaders, early transforms, strong encapsulation).
To guarantee runtime reliability, MixinTale:
- Uses a compile-time annotation processor to generate a patch index (
mixintale.index.json) inside mod jars - Applies patches at runtime without requiring patch classes to be visible to the target classloader
- Achieves this by copying patch handler methods into the target class, avoiding
NoClassDefFoundErrorand classloader visibility issues
Key features
- Harmony-like patch model: Prefix / Postfix / Replace
- Callsite patching: RedirectCall / WrapCall with
Operation<R>(call original safely) - Deterministic, predictable injection pipeline
- Modern Java compatibility
- Minimal overhead (index-based discovery, no heavy runtime scanning)
š§ Installation (Required)
MixinTale is an early bootstrap framework and must be installed as an EarlyPlugin.
Place the MixinTale JAR in:
- Singleplayer:
[GameFolder]/UserData/EarlyPlugins - Dedicated Server:
[ServerFolder]/EarlyPlugins
Server only: start the server with:--accept-early-plugins
š§° For mod developers
If you want to create mods using MixinTale, install MixinTale – Developer Tools (API + annotation processor).
This is not required for players/servers running mods — only for compiling mods.
š Documentation (GitHub)
https://github.com/Traktool/MixinTale
ā ļø MixinTale is a core framework, not a gameplay mod.
Other mods may depend on it to function properly.
