Choosing a pose¶
The base mod registers 79 poses in ModAnimations. Pick one by reading what it does, never by its name: a pose called "power up" can be exactly the opposite motion of the technique it sounds like.
Poses whose behaviour has been read¶
| Id | What it does |
|---|---|
POINT_RIGHT_ARM |
right arm extended forward. Blends with the walk: the arm keeps swinging instead of locking |
POINT_ARMS |
both arms extended forward, blending the same way |
RAISE_ARMS |
both arms straight up. Arms only, static |
CROSSED_ARMS |
arms crossed. Arms only, static |
LOW_SWING_ARMS |
both arms low and out, with a slow circular sway of exactly 20 ticks |
BODY_ROTATION_WIDE_ARMS |
the body turns with the arms spread: a gesture around the user |
THROW_CHAKRAM |
a flat throw, suited to something that comes back |
THROW_SPEAR |
an overhand throw, suited to a slow arcing projectile |
LOWERING_RIGHT_ARM |
right arm held up for 15 ticks, then swept down: fits a ~20 tick charge |
CHARGE_PUNCH |
right arm cocked back, left guarding, with a tremor. Arms only |
PUNCH_RUSH |
both arms pistoning forward, looping whatever the duration |
AIM_SNIPER |
an aiming stance |
SCREAM |
arms flung out, stance widening, eased in |
POWERUP |
the whole figure lifted, arms drawn up and back. No easing |
GEPPO |
legs tucked, the whole body pitched forward, head up |
DODGE |
a randomised side-step, eased in and out |
WEAPON_SLAM |
arms overhead while airborne, swung down near the ground |
SPIN_TO_WIN, YAW_SPIN |
a spin about the vertical axis |
PLAY_DEAD |
the whole body laid on its side, through the pose stack only |
BLACK_HOLE poses nothing
Its angles method is empty. Never pick it.
The library adds two poses of its own, in AkumaAnimations: RIGHT_ARM_FORWARD (one arm straight forward) and KNEEL_PUNCH_GROUND (kneel and strike the ground).
Poses by meaning, kept consistent across a kit, and across fruits, read clearly: a cone in front is POINT_ARMS, aiming at one target is POINT_RIGHT_ARM, an area around the user is BODY_ROTATION_WIDE_ARMS, pouring or sweeping low is LOW_SWING_ARMS, making something rise is RAISE_ARMS.
What a pose assigns decides whether it can be held¶
Not its name. Read the animation before holding one for a continuity.
| The pose assigns | Held for a long state | Examples |
|---|---|---|
| arms only | yes: the walk cycle still drives legs and body | CROSSED_ARMS, RAISE_ARMS, POINT_RIGHT_ARM |
legs, body, or the pose stack |
no: the player walks frozen | POWERUP, SCREAM, GEPPO, DODGE |
Holdable is not the same as should-be-held
A state the player spends fighting should not hold a pose, even an arms-only one: it overrides the attack swing. Fire the pose once as a telegraph with start(entity, id, ticks) and let the effect carry the rest.
A charge is not a pause¶
ChargeComponent does not immobilise anyone
Unless the ability adds a movement lock itself, the user walks, runs and jumps for the whole charge. A pose that assigns legs, body or the pose stack freezes a moving player for all of it. A charge pose follows the arms-only rule above, exactly like a held one.
Several library base classes do root their user while charging: ZoneAbility, StompAbility (when isStuckWhileCharging()) and OceanAbility apply the base mod's MOVEMENT_BLOCKED effect. Check the ability before trusting either case.
Two things make an arms-only pose better, not just acceptable, on a charge:
- Blending:
POINT_RIGHT_ARMandPOINT_ARMSkeep moving with the walk, so a user repositioning while charging still reads. - A matching period:
LOW_SWING_ARMSsways once every 20 ticks, so a 20-tick charge shows one full cycle rather than an arbitrary slice.
Easing¶
| Shape | Behaviour | Examples |
|---|---|---|
| none | snaps in on the first tick and out on the last | POWERUP, CROSSED_ARMS, RAISE_ARMS |
| ease in, hold | ramps over part of the duration, then holds | SCREAM, GEPPO |
| ease in and out | reverses near the end | DODGE |
A pose with no easing is invisible when held and conspicuous when brief: on a short flourish the snap shows at both ends. Prefer an eased pose for anything short.
Read the source of an unlisted pose: javap on ModAnimations gives the names of the other poses, not what they do. Decompile the animation class, or test it in game, before relying on one that is not in the table above.