Components

StretchProposed — not confirmed yet.

It's a stretch now and then after a long wait.It has no meaning — it's a sign of being alive.

Open in Labpure.jsonFigmaVideo

Robot

Stretch uses the posture role and secondary channels (breathing, blink). Nothing replaces it when a part is missing; it is simply smaller.

  • Jointless Driving
  • Joint Driving
  • Joint Fixed
  • Joint Walking
  • Full-body

Intensity

It depends on how long I've waited. A habit is tiny; a real stretch stays within the default size.

Light
≤ 2°Habit
drift.m
Normal
40 % ROMStretch
op.amp
Strong
70 % ROMCap
op.amp.max

Time Line

Sound leads by 0.1 s, then the face, then the body. The face holds 0.6 s after the body stops.

0 s3.2 s
Face
Wake
Motion
StretchHoldReturn

Variant

Variants only change the combination of tokens, not the meaning.

VariantChangeWhen
Habit8–20 s, irregularwhile waiting (§6-4)
Dark roomsmallerdark or quiet
Wakingblink ×2 firstfrom Doze
No displayFace track skipped, motion unchangedno face screen

State

The robot's status overrides or weakens its actions.

  • Idleplay as is
  • Quiet hourssound lower, motion smaller
  • Low batteryhabit only
  • Held / In-airOmit → Carried
  • ErrorStop + Face

Token Spec

The token name is the same as Primitive tokens.

StateTrackTokenValue
enabledmotionop.amp≤ 40 % ROM
enabledmotionop.second≤ 30 % · 0.15 s after
enabledmotionhold.s0.5 s
enabledfaceblink2 times on waking · 70 %
quiet hourssoundvolumelower · motion smaller
heldalloverride→ Carried