Animation Names¶
Animation names are editor labels stored with animation logic entries. The runtime primarily uses animation IDs, so names are for humans, tooling, and documentation.
Where Names Appear¶
Names commonly appear in logic.json:
{
"animationsLogic": [
{
"name": "Standing",
"duration": 266
},
{
"name": "Walk",
"duration": 40
}
]
}
The array index is the animation ID used by scripts, events, and animation behaviour. Renaming "Standing" does not change animation ID 0.
Suggested Naming Style¶
Use short action labels:
StandingWalkRunJumpLand from jumpAttack 1Attack 2BlitzDefensive specialOffensive specialGrab frontGrab backThrowBeing hitKnocked downLying downStand upDeath
Keep capitalization consistent within one entity. The editor and runtime do not require a particular case, but consistent names make debugging much easier.
IDs Are The Contract¶
Scripts and events use IDs:
character.set_animation(30)
{
"$type": "Sor2NewEra.Gameplay.JumpToAnimationEvent, Sor2NewEra",
"frame": 8,
"animationId": 30,
"animationFrame": 0
}
If you reorder animations, every ID reference can change. Avoid reordering established animations in Classic replacements unless you are ready to update scripts, events, hitboxes, and animation behaviour.
Classic Replacement Guidance¶
When replacing a Classic character, enemy, or item:
- keep original animation IDs when possible
- rename labels only to clarify, not to imply the ID changed
- keep common state animations near their original indexes
- update behaviour modes and events if you move an animation
- test every transition that jumps by ID
Using Names In Documentation¶
When documenting a move, include both:
Animation 30: Close shuriken slash
That lets another modder find the animation even if their local label differs.