Obfuscate is a simple library which provides useful events, utilities, and common code for mod developers. Originally created for compatibility in MrCrayfish's mod, this library is now targeted for all mod developers alike. This mod does not have any content by default.
📔 Library Features:
Manipulate the player's model safely:
This feature allows you to easily customise the rotations of limbs on player's model without having to worry about resetting them back to their default state. This could be used for creating a custom pose when holding a certain item, adding custom animations when swinging a sword and so much more!
Full control over item rendering:
This gives you the ability to handle rendering of items yourself. Obfuscate provides events that are called from the true source rather than relying on the camera transform type, like vanilla's ITESR system. This means when the event for rendering the held item on the player model is called, it's actually coming from the held rendering layer on the player model.
A completely new data syncing system for players:
It's not good practice to add data parameters to entities other than your own; this often results key mismatch due to the uncontrolled initialization order of static fields. Obfuscate solves this issue and provides even more features useful features. Using this new system, you can control if the parameter should be reset on death, prevent it from syncing to all players expect the player who owns the key, prevent it from syncing at all, and even save it to the player's data!
📔 Start Developing with this Mod:
You can start using this library simply by adding this code to your build.gradle file. You'll want to replace the curseforge_file_id with a version of Obfuscate targeted towards your Minecraft version.
- 1.16.1: 3000205
- 1.15.2: 2946425
- 1.14.4: 2912286
- 1.12.2: 2912288
💛 Supported Mods
These mods utilise Obfuscate to provide a better gameplay experience. You can get your mod here too by sending MrCrayfish a tweet on Twitter