Remix in the Studio
Français · Type: how-to · Audience: author · Context: local Studio · Status: ready · Applies from: 4.1.15
The local Studio · contract: stable · verified by CI (support matrix of 4.4.0, 2026-10-23): Chromium end to end (the Studio's checks); Windows: the unit suite only · automated checks: jobs
e2e,windows; CI plane2e,windows; 2 test files · people's passes:studio-hero-matrixnot run (#238) · known limits:remix-compiledSpeedrun and Remix · contract: stable · verified by CI (support matrix of 4.4.0, 2026-10-23): Replays in four runtimes (cross-runtime) · automated checks: jobs
cross-runtime,e2e; CI plane2e; 2 test files · people's passes:runs-real-playersnot run (#85),run-resume-power-cyclenot run (#84),mystery-deployednot run (#82),livesplit-obsnot run (#81),code-wheel-humannot run (#78) · known limits:remix-compiled
For a game with a Remix manifest, the Remix tab shows its dimensions, previews any seed's world, locks some dimensions and rerolls the others, compares two worlds, and measures coverage and bias over many seeds, with the engine's own compiler: the Studio never shows a world the player would not play.
What you get
A seed you have looked at before players do: each dimension's value, the world's hash, a link that plays it, and, when something is wrong, a frozen world to export for a bug report.
Context and versions
The local Studio, engine repository or created project, from 4.1.15. What Remix is and how a manifest is written: Remix.
Prerequisites
- The Studio running (overview).
- A game with a Remix manifest. A manifest that cannot make a world shows the validator's reasons instead.
Where to run the commands
In the browser, on the Remix tab.
Steps
- Read the dimensions: each with its values, the story value, and the modes the game offers.
- Preview a typed seed, or New seed: each dimension's value, the world's hash, a link that plays that world in
the game (
?seed=,?world=), and a frozen world to Export.
- Lock the dimensions you want to keep and Reroll the others.
- Compare with another seed. A puzzle-order dimension draws its order as a graph.
- Coverage and bias draws many seeds and counts how often each value comes out.
- Anchors: the rooms' anchors (room, anchor, what it is on, phase, used by). Add an anchor from the scene's
selection writes
anchors.<entity>into the room file of the entity selected in the Rooms tab, throughset_value(dev server only).
What the player sees
The title screen gains Remix (after New game and Continue): the story, a new world, a typed seed or the daily
challenge; the page starts again in the chosen world. The pause menu shows the code to copy, or "hidden until the end"
in a masked mode. Accessibility options never touch the seed. A link names a world: ?seed=, ?daily=, ?world=.
Limit ·
remix-compiledEvery world the tab shows is computed with the engine's compiler (src/studio/remix-model.ts). The tab writes nothing in the game except an anchor you add; the manifest itself is edited in code.
Expected result, and how to check it
The preview's link opens the game in that world; Coverage and bias shows no value that never comes out.
Common errors
| Symptom | Cause | Fix |
|---|---|---|
| The validator's reasons instead of a world | The manifest cannot make a world | Fix the manifest (Remix) |
Files or data changed
An anchor added from the selection is written in rooms/<room>.ts (anchors.<entity>). Exported worlds are
downloads.