Skip to content

$08 · Live demo · runs entirely in this tab — nothing is sent anywhere

Spar with the ghost.

This is the memorial policy — a 2.2-million-parameter neural net trained on 7,554 recorded matches of a friend who passed — running live in your browser. Move, and it answers with real 16-frame motor chunks from his learned vocabulary: his walk rhythm, his jumps, his spacing. You're standing in for his most-faced opponent.

An abstraction, honestly labeled: this arena is original — it contains no game code, art, or audio. The net sees live positions, velocities and spacing through the exact feature schema it was trained on; the game context it can't see here is held at its training averages.

$08 / Sparloading 2.2M parameters…
his motor policy · abstract arena — not the game

How this works

Model
VQ-BeT decoder — d192 × 4 transformer layers, LoRA matchup adapters, 8 factored heads. Behavior-cloned from his replays, one motor token per 16 frames from a 256-code learned codebook.
Inference
A hand-written forward pass in ~200 lines of TypeScript-adjacent JS — no runtime, no WebGPU needed at this scale. Verified bit-close (<1e-5 max logit error) against the trained MLX model.
Weights
1.74M deploy parameters, 6.97 MB float32, fetched once. Sampling uses the exact deploy calibration the live bot ships with (T=1.0, prior-adjusted logits).
Perception
The 266-dim state schema from the training stack: spatial, velocity, wall-distance and facing dims are computed live from this arena; the rest hold their means over 458k real training states.
Provenance
Every frame of training data was extracted from CPS-2 emulator RAM with a reverse-engineered schema — positions, frame data, hitboxes — built by hand for this project.

Built as a memorial — to keep the way he played from being lost. Not affiliated with any game publisher; no copyrighted assets are used.