LaughProposed — not confirmed yet.
It's the same rhythm as Joy, larger.It's never used without a face — the body alone reads as broken.
Robot
Laugh uses the posture role for the bounce and the face for the smile. A robot with no face does not laugh at all.
- Jointless Driving
- Joint Driving
- Joint Fixed
- Joint Walking
- Full-body
Intensity
It depends on how funny it is. I grow the bounce up to the cap and speed the sound up, never past them.
Light
40 % ROMSmile
op.ampNormal
1.4×Laugh
sound.tempoStrong
70 % ROMCap
op.amp.maxTime Line
Sound leads by 0.1 s, then the face, then the body. The face holds 0.6 s after the body stops.
0 s2.4 s
1.4×
Smile
BounceBounceReturn
Variant
Variants only change the combination of tokens, not the meaning.
VariantChangeWhen
Repeat2nd beat 30 % smalleralways (pulse rule)
Vs. Joylarger, same rhythmsomething is funny
No speakerBody + face as isno speaker
No displayOmitted — never without a faceno face screen
State
The robot's status overrides or weakens its actions.
- Idleplay as is
- Quiet hourssound lower, motion smaller
- Low batteryJoy instead, smaller
- Held / In-airOmit → Carried
- ErrorStop + Face
Token Spec
The token name is the same as Primitive tokens.
StateTrackTokenValue
never
motionop.anticrepeating motion — no anticipation
enabled
motionpulse.m90–120 / min · 2 times max
enabled
motionop.amp40 % ROM · max 70 %
enabled
faceloopbounce · 0.32 s period
enabled
soundsound.tempo1.4× (max) · 0.1 s first
quiet hours
soundvolumelower · motion smaller
heldalloverride→ Carried


