| name | walk-figure-eight |
| description | Walks a figure-eight path, via a sequence of root waypoints that trace two crossing loops. Use when a command mentions figure eight, figure-8 walk, walk a figure eight, or trace an 8 on the floor. |
| category | locomotion |
| disable-model-invocation | true |
| subskills | ["walk","turn-and-face"] |
walk-figure-eight
Trace a figure-eight: loop one way, cross center, loop the other way, return.
Composes: walk + turn-and-face
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.
- Waypoints make two opposite loops sharing the center;
faceDeg follows the path.
durationMs ~6000.
Example
- "walk a figure eight" ->
{"durationMs":6000,"say":"Figure eight!","sequence":{"loop":false,"frames":[{"t":0,"root":{"x":0,"z":0,"faceDeg":0}},{"t":0.25,"root":{"x":1,"z":1,"faceDeg":90}},{"t":0.5,"root":{"x":0,"z":2,"faceDeg":180}},{"t":0.6,"root":{"x":-1,"z":1,"faceDeg":270}},{"t":0.75,"root":{"x":0,"z":0,"faceDeg":0}},{"t":0.85,"root":{"x":1,"z":-1,"faceDeg":90}},{"t":1,"root":{"x":0,"z":0,"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.