Live engine playground — the real update rule, running in your browser

⚠ This is a small DEMO SLICE of the engine, built for this playground — 3 fast states, 1 relationship, 5 actions, demo-paced constants. It mirrors the full engine's update rule and topology idioms, but it is not the full model (no drives/seeking, no multi-agent router, no full cast, no calibrated values).

One NPC. A handful of internal state variables — integrators that accumulate and decay. You are “you” in its world. Poke it. Nothing below is scripted: every visible action is a threshold crossing in the same kind of dynamics that run the full engine.

Persona (same dials, different settings)

Do something (events from you)

The world

Run

1×4×

Guided scenarios (scripted inputs, live dynamics)

😐
…idle

Fast states (reset by sleep)

Slow state — the relationship with you (survives sleep)

History anger stress resentment→you

Causal trace (why each action fired)

Border-case verification — run pending…

These run headlessly on the same pure step function the page animates. If any fails, the playground refuses to pretend: a banner appears and the page resets.

Scope, stated plainly: this playground embeds a deliberately small slice of the engine — 3 fast states, 1 relationship, 5 actions, demo-paced constants — so you can see every cause. The full engine adds more states, per-person relationships across a whole cast, drives and seeking, sleep/night dynamics, input filters, and a multi-agent router; its constants come from calibration, not hand-tuning. What IS the same here: the update-rule shape, the threshold-crossing selection, and the determinism — the same clicks at the same ticks always produce the same life.