| name | climb |
| description | Climbs straight up a ladder or wall via a sequence that reaches an arm overhead, drives the opposite knee up, and raises root.y. Use when a command mentions climb, climb up, climb a ladder, scale a wall, climb the rope, or pull yourself up. |
| category | locomotion |
| disable-model-invocation | true |
| subskills | ["move-arm","move-leg"] |
climb
Pull the body up a ladder/wall with alternating reaches — one arm overhead while the opposite knee drives up, raising root.y each cycle. Faces the wall, so little/no horizontal travel.
How
- Use a
sequence with loop:false (frame root is ABSOLUTE — y grows). Reach one arm overhead (LEFT up = LeftUpperArm:[0,0,-90]; RIGHT up = RightUpperArm:[0,0,90]) and drive the OPPOSITE knee up (UpLeg:[80,0,0],Leg:[90,0,0]); alternate, and lift root.y each reach.
durationMs ~2400–2800.
Example
- "climb up the ladder" ->
{"durationMs":2600,"say":"Climbing up.","sequence":{"loop":false,"frames":[{"t":0,"pose":{"LeftUpperArm":[0,0,-90],"RightUpLeg":[80,0,0],"RightLeg":[90,0,0]},"root":{"y":0}},{"t":0.5,"pose":{"LeftUpperArm":[0,0,90],"RightUpperArm":[0,0,90],"RightUpLeg":[0,0,180],"RightLeg":[0,0,0],"LeftUpLeg":[80,0,0],"LeftLeg":[90,0,0]},"root":{"y":0.25}},{"t":1,"pose":{"LeftUpperArm":[0,0,90],"RightUpperArm":[0,0,-90],"LeftUpLeg":[0,0,180],"LeftLeg":[0,0,0]},"root":{"y":0.5}}]}}