| name | hurdle |
| description | Clears a hurdle while running — the lead leg extends over the bar, the trail leg tucks to the side, via a sequence with a root.y arc and forward root.z. Use when a command mentions hurdle, clear a hurdle, hurdle over, jump the hurdle, or sprint over a barrier. |
| category | locomotion |
| disable-model-invocation | true |
| subskills | ["move-leg","move-torso","walk"] |
hurdle
A running hurdle clearance: lead leg snaps over straightish, trail leg tucks high to the side, body forward.
Composes: move-leg + move-torso + walk
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.
- Apex: lead leg over (
RightUpLeg~95,RightLeg~20), trail tucked (LeftUpLeg~70,LeftLeg~110), torso forward, root.y~0.4.
durationMs ~1100.
Example
- "hurdle over it" ->
{"durationMs":1100,"say":"Over the hurdle!","sequence":{"loop":false,"frames":[{"t":0,"pose":{"RightUpLeg":[40,0,0],"RightLeg":[50,0,0]},"root":{"y":-0.1,"z":0.3}},{"t":0.5,"pose":{"RightUpLeg":[95,0,0],"RightLeg":[20,0,0],"LeftUpLeg":[70,0,0],"LeftLeg":[110,0,0],"Spine":[18,0,0]},"root":{"y":0.4,"z":1.1}},{"t":1,"pose":{"LeftUpLeg":[0,0,180],"RightUpLeg":[0,0,180],"LeftLeg":[0,0,0],"RightLeg":[0,0,0],"Spine":[0,0,0]},"root":{"y":0,"z":2}}]}}
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.