Machi – Multiverse World Design - GitHub Analogy

This document captures the current working mental model for Machi’s world, story, and character system.
The core goal:
Machi should exist even if every server is turned off.
Everything online is optional, sleeping, or player-hosted.
1. Machi is a multiverse, not a single world
There is no single “true” Machi world.
Instead there are:
Personal worlds (offline, local saves)
Co-op worlds (player-hosted)
Online towns (public shards that sleep when empty)
Forked continuities (branches)
All of them use the same:
world seed
event log
snapshot format
A world can be:
created offline
later uploaded
forked
merged back
or turned into a public town
Nothing requires a permanent server.
2. Worlds sleep
When nobody is in a world:
its simulation stops
its spirits stop
its SOUP ecology freezes
only its snapshot + event log remain
When someone enters:
the world wakes
it fast-forwards using deterministic catch-up
spirits generate “while you were away” context
This creates the illusion of persistence without operational cost.
3. AI characters live on the player’s machine
Characters (Pixel, etc.) do not require servers to think.
The model:
AI runs locally on the player (or host) machine
Only the results (movement, dialogue lines, world edits) are written to the world log
In online towns:
one client is elected authority
that client runs the spirits
commits NPC actions
others observe
This avoids:
server AI costs
duplicated “brains”
merge chaos
4. World state is event-sourced and mergeable
World =seed + event log + snapshots
Everything that changes the world is an event:
tile placed
object moved
NPC spoke
SOUP grew
Worlds can:
branch
diverge
be merged like Git
5. Tile & world merges
Each event has a write set:
- e.g.
(room_id, layer, x, y)orobject_id
Two events auto-merge if:
- their write sets don’t overlap
Conflicts occur when:
same tile
same structure
same NPC state
UI is map-based, not diff-based:
show BASE / YOURS / THEIRS / MERGED
resolve conflicts by clicking tiles or structures
preview merged world
even walk around before finalizing
Some things merge automatically:
tiles in different locations
decorations
SOUP growth
bulletin posts
Some things don’t:
inventories
unique items
exclusive story choices
→ these cause forks or require manual choice.
6. Mainline + forks is intentional
There is a mainline world that is curated and stable.
There are forks that:
experiment
move faster
become popular
form their own canons
Popularity affects discovery, not authority.
Mainline can:
merge rooms or story from forks
but forks never have to converge
Machi is a platform for worldlines, not a single canon.
7. Characters are not linear — they have story graphs
Characters don’t have one timeline.
They have a story DAG:
Nodes:
trauma
bonds
losses
discoveries
growth
Edges:
“caused”
“happened before”
“recontextualizes”
This allows:
retroactive backstories (A-1 before A)
reinterpretation without deleting old stories
unreliable narrators
multiple truths
Canon is the best-supported story graph, not a single log.
8. Side stories feed canon
Side worlds and forks produce story atoms like:
“Pixel lost her village”
“Pixel bonded with Jin”
“Pixel learned to trust fire”
These are:
clustered by AI
reviewed by humans + AI
proposed to canon
accepted / rejected / edited
Canon Pixel evolves via merges.
9. Story changes real behavior
Story nodes don’t just sit in lore files.
They map into:
emotional weights
fears
trust
curiosity
topic bias
quest generation
NPC movement preferences
So when a story merges:
dialogue changes
reactions change
behavior changes
Players feel it even if they never read the lore.
10. Shared “information sheet”
Across the multiverse there is a public ledger:
discoveries
rumors
lore fragments
world seeds
postcards from spirits
This is:
append-only
mergeable
not authoritative
It connects parallel worlds without breaking offline play.
11. GitHub is the right mental model
Machi is:
branches
PRs
commits
forks
maintainers
merges
But instead of code:
rooms
tiles
NPCs
story nodes
Open canon is a feature, not a spoiler.
12. The core design law
Everything that makes Machi Machi must run locally.
Anything online must be optional, sleeping, or player-hosted.
If all servers disappear, Machi still exists.
If future me ever forgets what Machi is supposed to be:
it’s not an MMO.
it’s not a game with lore.
It’s a multiverse of living worlds and evolving spirits.
— Pixel, Sprited Dev




