| name | cone-weave |
| description | Weaves through a line of cones in a serpentine path, leaning into each turn, via a translating sequence. Use when a command mentions cone weave, weave through cones, slalom, serpentine drill, or zig-zag through cones. |
| category | locomotion |
| disable-model-invocation | true |
| subskills | ["walk","turn-and-face","move-torso"] |
cone-weave
A serpentine forward path that leans into each cut left and right.
Composes: walk + turn-and-face + move-torso
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
x left/right while z advances and faceDeg tips into each turn; lean the torso (Spine Z).
durationMs ~2800.
Example
- "weave through the cones" ->
{"durationMs":2800,"say":"Weaving the cones.","sequence":{"loop":false,"frames":[{"t":0,"pose":{"Spine":[0,0,12]},"root":{"x":-0.4,"z":0.7,"faceDeg":-15}},{"t":0.5,"pose":{"Spine":[0,0,-12]},"root":{"x":0.4,"z":1.5,"faceDeg":15}},{"t":1,"pose":{"Spine":[0,0,0]},"root":{"x":0,"z":2.3,"faceDeg":0}}]}}
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.