B
BlackSpigot Guides
Guest
Start with a model you can inspect
Use the workshop_bot project from the robot guide, with separate head and leg groups. Save a copy before adding animations. The goal is three short animations with unmistakable behavior, so you can tell a bad pivot from a bad in-game state trigger.
1. Create idle
In Animate mode, add an animation named
Watch the time indicator cross the end rather than only scrubbing the middle. If the head snaps, compare the first and last key values and confirm the animation length actually includes the last key. Make sure you keyed the group rotation, not a cube transform in the modeling workspace.
2. Create walk
Add
Keep root translation at zero for this first in-place walk; let the game move the mob. Play only walk while judging the legs. The opposite phase makes each foot visibly alternate. If the feet sweep around a distant point, fix the leg group pivots at the hip rather than compensating with more keyframes. If they cut into the body, reduce the angle before changing the entire model.
3. Add a recognizable one-shot state
This robot has no arms, so its wave is a friendly head tilt. Add
4. Check the hand-offs
Preview idle alone, walk alone and wave alone. Then inspect idle plus walk to see whether they affect separate bones as intended. If your editor preview retains a pose after stopping, reset playback before judging the next animation. Save, reopen the bbmodel, and verify names, length, loop mode and keys. Keep before/after files for any renaming.
Model Engine uses recognized state names such as idle and walk; its animation documentation explains naming and playback requirements. Keep hitbox bones unanimated. Do not mark ordinary idle/walk animations as overriding all lower animations without understanding how that changes blending.
5. Verify the game separately
After rebuilding the model and applying its resource pack, spawn a fresh test mob. Check idle while still, walk while moving, and trigger wave explicitly using the state mechanic in the companion guide. A working timeline in Blockbench only verifies the authored keys. A still mob may never select walk, a misspelled state will never select wave, and an old client pack can make a correct model look broken. Test those layers separately rather than rewriting a working animation.
Use the workshop_bot project from the robot guide, with separate head and leg groups. Save a copy before adding animations. The goal is three short animations with unmistakable behavior, so you can tell a bad pivot from a bad in-game state trigger.
1. Create idle
In Animate mode, add an animation named
idle, set length to 2 seconds and loop it. On the head group, add Y rotation keys at 0 seconds = -4°, 1 second = +4°, and 2 seconds = -4°. Leave the body and root still. Use linear interpolation for the first pass. The small head turn should repeat without a jump at the seam.Watch the time indicator cross the end rather than only scrubbing the middle. If the head snaps, compare the first and last key values and confirm the animation length actually includes the last key. Make sure you keyed the group rotation, not a cube transform in the modeling workspace.
2. Create walk
Add
walk, length 1 second, looping. Key X rotations like this:
Code:
Time (seconds) left_leg X right_leg X
0.0 +20° -20°
0.5 -20° +20°
1.0 +20° -20°
3. Add a recognizable one-shot state
This robot has no arms, so its wave is a friendly head tilt. Add
wave, length 0.8 seconds, play once. Key head Z rotation at 0 = 0°, 0.2 = -12°, 0.4 = +12°, 0.6 = -12°, 0.8 = 0°. End at neutral so the hand-off back to idle is easy to inspect. A custom state name must match the name used by the game mechanic exactly.4. Check the hand-offs
Preview idle alone, walk alone and wave alone. Then inspect idle plus walk to see whether they affect separate bones as intended. If your editor preview retains a pose after stopping, reset playback before judging the next animation. Save, reopen the bbmodel, and verify names, length, loop mode and keys. Keep before/after files for any renaming.
Model Engine uses recognized state names such as idle and walk; its animation documentation explains naming and playback requirements. Keep hitbox bones unanimated. Do not mark ordinary idle/walk animations as overriding all lower animations without understanding how that changes blending.
5. Verify the game separately
After rebuilding the model and applying its resource pack, spawn a fresh test mob. Check idle while still, walk while moving, and trigger wave explicitly using the state mechanic in the companion guide. A working timeline in Blockbench only verifies the authored keys. A still mob may never select walk, a misspelled state will never select wave, and an old client pack can make a correct model look broken. Test those layers separately rather than rewriting a working animation.
