promotional bannermobile promotional banner

Entity Animation Helper

Useful framework for developpers to create player and entity animation

Animation Helper

Version Loader Status

A Fabric mod for Minecraft 1.20.6 that lets you define entity animations as datapack JSON. Play them as one-shots (a bow draw, an emote) or run them continuously from a model's setAngles.

Features

  • Datapack-driven: drop a file in data/<namespace>/animations/ and it is registered. The server syncs definitions to clients on join and on /reload.
  • Keyframed tracks: per-part rotation, translation and scale, with easing curves.
  • Blending and layers: fade in/out, layer priority, looping, playback speed.
  • Pose locks: freeze the head, body yaw, torso, arms or legs while an animation plays.
  • First-person support: the animated arm is rendered in first person.
  • Model base classes: AnimatedEntityModel and AnimatedCreatureModel for custom mobs.

Quick start

Create data/mymod/animations/wave.json (id mymod:wave):

{
  "length": 20,
  "fade_in": 3,
  "fade_out": 3,
  "tracks": [
    {
      "part": "right_arm",
      "rotation": [
        { "time": 0,  "value": [0, 0, 0] },
        { "time": 10, "value": [-160, 0, 20], "easing": "ease_out" },
        { "time": 20, "value": [0, 0, 0],     "easing": "ease_in_out" }
      ]
    }
  ]
}

Play it in game:

/anim play @s mymod:wave

Or from server-side code:

AnimationController.play(entity, new Identifier("mymod", "wave"));

Commands

/anim list [targets]
/anim play <targets> <animation> [speed] [loop]
/anim stop <targets> [animation]
/anim reload

/anim is an alias of /animationhelper. Both need permission level 2.

Documentation

docs/animation.md covers the full JSON schema, part names, easing curves, commands, the Java API and the model base classes.

Requirements

Minecraft 1.20.6, Fabric Loader ≥ 0.18.4, Fabric API, Java 21.

License

CC0 1.0

Entity Animation Helper Team

profile avatar
Owner
  • 1
    Followers
  • 21
    Projects
  • 3.4K
    Downloads

More from HdiView all