This plugin aims to integrate a private lib called Dlib, developed to allow the player to transform into entities, perform registered animations, and be compatible with the modded entity, geckolib, and mcreator's own animation system.
Please note that this plugin requires the Java Plugin feature to be enabled.
Why use my plugin?
Dlib was developed by my team as a private lib, without adding commands, so only modders with the plugin could use it.
Unlike public mods that provide commands and an interface for easy manipulation, Dlib adds nothing beyond direct manipulation during mod development, with simple calls, fully adapted to blocklys and composite implementation, without generating dependencies.
Currently, it supports geckolib, but exclusively for Java Entity and its animation system.
Usage rights:
This is a demo version, with initial support for Dlib version 1.0.
To use any blockly plugin, it is necessary to have the mandatory blocklys plugin installed first.
It also adds some Blocklys:

Animation Registration System:
Dlib now has a procedure-based registration method.
Note: The order in which the animations are registered must be the same as how they were placed in the entity, and you cannot add more animations than were placed in the entity.
For now, only 1.20.1 is supported.
I'm currently focusing solely on Forge 1.20.1. If you'd like to port to another version, please contact me privately via Discord, and we'll discuss the cost.
Payment accepted: PayPal only, and the fee will be included in the total price.
Note: You can choose whether the port will be private or public.
How does the plugin work?
The DG Dlib Transform has an API. When activated, it creates a folder called jarjar, which initially contains the "metadata" file. Control of the integration has been moved to the Dlib Menu.
Set to true or false;
If true, the implementation occurs directly in the main mod, without generating dependencies, complementing the basic implementation of a composite mod.
If false, the implementation will be done through a dependency, requiring the library's .jar file.
A file necessary for the implementation, called "metadata," is also generated. Edit it only if you know what you are doing.
When exporting, the same "metadata" file will be copied to the correct location.
Animation playback by blockly:
- Geckolib: support only in the basic transformation function.
Current Changelog
- Coming soon 2.0 as a Plus Version ---> ability to change the player's weapon based on transformation, render items in third person, modelPart manipulation, both for transformation and for entities in the world.
V1.4.1
- Changes to the rules for mandatory Blockly.
- Added the blockly "CurrentEntity".
V1.4
- Animation registration system redesigned.
- New blockers added.
- Completely redesigned integration system.
- And a few more improvements.
V1.3
- Updated dlib to 2.0.2
V1.2
- fixed mixin issue on mod export.
V1.1
- Added, modified generator for 2025.1
- dg_dlib_play_animation is empty (corrected).
V1.0
- start of plugin.
If you have any questions, join my server (Come in here)
If you want to support my work click here ---> 👉Offer a gem!!
Comments
I'm using a GeckoLib Entity to transform, but when I use the procedure:
"Play animation on the transformed player (Enter animation name), in Loop mode"
an error appears that I can't resolve:
The Entity Input in the dg_dlib_play_animation block is empty.
How do I solve this? I thank you in advance for your attention and your plugin is being essential for my project <3
I understand, thanks for the reply; but I saw that the example model you sent is the same one used in 2025.X without geckolib. It doesn't work for 2024.1 (which I'm using), unfortunately... But even so, your plugin is still useful to me, thank you.
I hope to see many interesting updates for your plugin in the future. Thank you for your attention and work <3
Dlib uses existing or created entities, so first of all, create your entity, activate the Api, and in the procedure always put first, the "start Dlib" it references the player, then the next ones will always use the reference of the "Start Dlib" take the next one that is to transform, put the id of your entity and the id of your mod, as follows the example in the image in the plugin description.
Hello, I'm new to MCreator. When I enable this API in workspace settings and rebuild the workspace, it always fails. To check if it's my environment issue, I tested mcreator_link_1.20.1 alone and it works fine, but as soon as I enable dlib_api, it fails. My project is a blank Forge 1.20.1 project using MCreator 2025.2. Key error message:
Could not get unknown property 'fg' for object of type org.gradle.api.internal.artifacts.ds(in mcreator.gradle line: 97 )
Does anyone know how to fix this? Thank you!