| name | prance |
| description | Prances forward with bouncy, springy high-stepping strides via a translating sequence of root frames. Use when a command mentions prance, prancing, springy steps, bouncy walk, trot proudly, or step high and lively. |
| category | locomotion |
| disable-model-invocation | true |
| subskills | ["move-leg","balance-and-posture"] |
prance
A lively, bouncy travel with high knees and a little hop on each step. The bounce needs root.y, so this is a translating sequence.
Composes: move-leg + balance-and-posture
How
- Use a
sequence with loop:false. Frame root is ABSOLUTE; compute the travel axis from state.position+state.faceDeg (0=+Z, 90=+X). The example assumes origin facing +Z.
- Alternate high knees (
UpLeg~80, Leg~60) and pop root.y~0.12 each step while z grows.
durationMs ~2400.
Example
- "prance around" ->
{"durationMs":2400,"say":"Prance!","sequence":{"loop":false,"frames":[{"t":0,"pose":{"LeftUpLeg":[80,0,0],"LeftLeg":[60,0,0],"RightUpLeg":[0,0,180],"RightLeg":[0,0,0]},"root":{"y":0.12,"z":0.5}},{"t":0.5,"pose":{"RightUpLeg":[80,0,0],"RightLeg":[60,0,0],"LeftUpLeg":[0,0,180],"LeftLeg":[0,0,0]},"root":{"y":0.12,"z":1.2}},{"t":1,"pose":{"LeftUpLeg":[0,0,180],"LeftLeg":[0,0,0],"RightUpLeg":[0,0,180],"RightLeg":[0,0,0]},"root":{"y":0,"z":1.8}}]}}
Limits & posture
Keep ≥1 foot grounded except at a jump's airborne apex; stay inside human joint ranges and keep weight over the support — see balance-and-posture.