| name | climb-over |
| description | Climbs over a high obstacle using the hands and legs — mount, swing a leg over, and drop down the far side — via a sequence with a root.y arc and forward translation. Use when a command mentions climb over, get over the wall, scramble over, clamber over, or haul yourself over. |
| category | locomotion |
| disable-model-invocation | true |
| subskills | ["move-arm","move-leg","balance-and-posture"] |
climb-over
Reach up and pull onto the obstacle, swing a high knee over, then drop and step down beyond it.
Composes: move-arm + 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.
- Beats: reach/pull up (arms up,
root.y~0.2), swing a leg over (high knee, torso forward, root.y~0.35), drop beyond (legs to rest, root.y:0).
durationMs ~2000.
Example
- "climb over the wall" ->
{"durationMs":2000,"say":"Climbing over.","sequence":{"loop":false,"frames":[{"t":0,"pose":{"LeftUpperArm":[140,0,90],"RightUpperArm":[140,0,-90],"RightUpLeg":[100,0,0],"RightLeg":[100,0,0]},"root":{"y":0.2,"z":0.3}},{"t":0.5,"pose":{"RightUpLeg":[60,0,0],"RightLeg":[40,0,0],"LeftUpLeg":[80,0,0],"LeftLeg":[90,0,0],"Spine":[20,0,0]},"root":{"y":0.35,"z":0.7}},{"t":1,"pose":{"LeftUpperArm":[0,0,90],"RightUpperArm":[0,0,-90],"LeftUpLeg":[0,0,180],"RightUpLeg":[0,0,180],"LeftLeg":[0,0,0],"RightLeg":[0,0,0],"Spine":[0,0,0]},"root":{"y":0,"z":1.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.