| name | plank-walk |
| description | Travels sideways in a plank/push-up position, walking on the hands and feet, keeping facing, via a low translating sequence. Use when a command mentions plank walk, walking plank, lateral plank walk, or move sideways in a push-up position. |
| category | locomotion |
| disable-model-invocation | true |
| subskills | ["move-arm","move-torso","move-leg"] |
plank-walk
Hold a low plank and step the hands and feet sideways to travel. Translate root while OMITTING faceDeg so the heading holds.
Composes: move-arm + move-torso + move-leg
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. Step x; do NOT set faceDeg. Keep root.y low (~-0.55).
- Torso horizontal (
Spine+X60) on supporting arms (UpperArm X150); shuffle the hands and feet sideways together.
durationMs ~2600.
Example
- "plank walk sideways" ->
{"durationMs":2600,"say":"Plank walk.","sequence":{"loop":false,"frames":[{"t":0,"pose":{"Spine":[60,0,0],"LeftUpperArm":[150,0,90],"RightUpperArm":[150,0,-90],"LeftUpLeg":[-15,0,150]},"root":{"y":-0.55,"x":0.4}},{"t":0.5,"pose":{"LeftUpLeg":[-15,0,180]},"root":{"y":-0.55,"x":0.9}},{"t":1,"pose":{"Spine":[0,0,0],"LeftUpperArm":[0,0,90],"RightUpperArm":[0,0,-90],"LeftUpLeg":[0,0,180]},"root":{"y":0,"x":1.4}}]}}
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.