the paper trail

Where we are,
in full.

Ordered by dependency, not by enthusiasm. No dates, because dates would be a lie.

Generated from the project's own roadmap file, last changed 18 September 2026. If a status here is wrong, the roadmap is wrong too — there is no second copy to fall behind.

phase 0

The foundation

Done · 1 of 1 built

One table that answers "how do I get this?" for every material in the world. Unglamorous, and everything else stands on it.

  1. Built

    0.1 The obtainedBy descriptor

    Every material in the world declares how it is obtained in one place, so nothing can exist without a way to get it.

phase 1

Plans and the knowledge tree

Done · 7 of 7 built

Recipes are never bought or found lying around — they are learned from a knowledge tree, paid for in patience or in doing.

  1. Built · 2026-08-07

    1.1 TECH_DEFS and the tree as a read-only view

    Catalog, derived unlock icons, the Professor, and the full-screen accessible view shipped first as a deliberately read-only slice. It has since been play-tested and extended by 1.2/1.3 below with lesson selection, progress, and tool-plan grants.

  2. Built · 2026-08-08

    1.2 Node costs — the learning clock and the tasks

    Both ways of paying, either of which finishes a node alone.

  3. Built · 2026-08-08

    1.3 Nodes granting plans

    player.plans already accepts a recipe id; node completion writes each recipe id in that node's grants.

  4. Built · 2026-08-25

    1.4 One plan-source model

    Every recipe declares exactly one planSource: starter or knowledge-tree. The Thing Maker routes every locked ready recipe to its exact Professor lesson.

  5. Built · 2026-08-25

    1.5 Non-tool plan grant seam

    TECH_DEFS grants recipe ids rather than assuming every grant is a tool id. The tree view resolves each recipe's output: tools retain their full tool art, while future output kinds have a readable plan fallback.

  6. Built · 2026-08-08

    1.6 The no-self-gating constraint test

    Asserts across every plan that it never requires a material only obtainable with the tool that plan unlocks. toolRequiredFor in obtaining.ts is what makes this checkable.

  7. Built · 2026-09-14

    1.7 Sturdy-tool play-test path

    The tier-2 digging and trimming lessons are both available from a fresh save once their starter plans are present, and a catalog test holds that path open. Their doing route now asks the player to own and make the starter tool once, rather than manufacturing two extra copies, so the Okayish Shovel and Sturdy Scissors can be reached in an ordinary play-test session without weakening the real-world learning-clock alternative.

phase 2

Critter knowledge

Done · 4 of 4 built

Ask a paper squirrel about this place and it will tell you, at length, and remember what it told you.

  1. Built · 2026-08-25

    2.1 "Tell me about this place"

    A conversation option, biome-scoped, drawing from a pool with randomised order and repeat availability.

  2. Built · 2026-08-25

    2.2 Threaded follow-ups

    Keep asking, keep learning. addFlags marks "already said this one" inside a thread; it never closes the topic. One critter should be able to yield several things in one exchange.

  3. Built · 2026-08-25

    2.3 Nearby-elsewhere knowledge

    Critters mention adjacent biomes, shops, and landmarks. Scope to nearby, not global — a squirrel who knows the whole map is an index, not a neighbour.

  4. Built · 2026-09-14

    2.4 The diary

    A searchable record of what you have been told, formatted like something the player kept.

parallel lane

The invited alpha

You are here · 5 of 6 built

Two people in one paper neighbourhood, joined by a code, with everything they built still standing after a restart. Then a handful of invited testers and one or two honest questions per build.

  1. Built · 2026-08-25

    MP.0 Maker identity contract

    The solo client now writes protocol-v2 makerId on completed and in-progress builds. Old solo saves with ownerId migrate on read.

  2. Built · 2026-08-25

    MP.1 Two-client vertical slice

    Wire the existing src/net/ client into an explicit development/shared mode: two tabs join one room, see fallback paper cutouts move, exchange DOM chat, and see the same placed piece. Keep solo mode as the default and reuse the same intent/validation rules.

  3. Built · 2026-08-25

    Colyseus 0.17 migration

    Client and server now run the 0.17 SDK/core/schema/transport line. The migration uses the root schema callback proxy so the first full state is not missed after the reflection handshake, and the 0.17 server lifecycle owns Express, matchmaking, WebSockets, and graceful shutdown.

  4. Built · 2026-08-25

    MP.2 In-game alpha feedback

    Add Send feedback to an always-reachable game menu and the scrapbook. It must accept Bug / Improvement / New idea / Other, attach safe reproduction context automatically, allow an optional screenshot, survive a lost connection in a local outbox, and show a receipt when sent.

  5. Built · 2026-08-26

    MP.3 Invite-only alpha shell

    Minimal connect/room UI, join codes, clear connection states, host kick/mute, personal mute/block, and a clean return to solo play. Deploy the already-audited Colyseus 0.17 server over wss:// using the split in hosting.md.

  6. Underway · 2026-08-26

    The first invited playtest

    The safety controls are built. What is left is running the hosted smoke test for real, and then asking three to five people whether an evening in a paper neighbourhood is a good evening.

phase 3

Economy, shops, mail

Underway · 4 of 9 built

Shiny chips, flat prices in every shop, and a mailbox. Generosity means making a thing and giving that thing — never selling knowledge.

  1. Built · 2026-08-08

    3.1 Chips as a quantity

    A pouch of shiny chips, shown quietly. No session totals, no earnings summary, no tallies anywhere, ever.

  2. Built · 2026-08-08

    3.2 Shop data shape

    Every shop gets an explicit sells list and an explicit buys list, both initially "everything". This is five minutes now and a restructure later.

  3. Built · 2026-08-08

    3.3 Buying and selling

    Flat prices across shops, minimal markup over buy price. One price table, not per-shop pricing — that is what "no price-shopping" means mechanically.

  4. Built · 2026-09-07

    3.3b Build materials come out of the bag

    A bench is made of something you gathered. The picker offers the patterns you actually hold, building spends them, and restyling recycles what the piece used to be.

  5. Planned

    3.4 The owl-itect and finished creations

    The owl sells finished creations and takes commissions for lovely things a player would rather not make themselves. Chips, barter, and small material work orders can coexist without making her a progression gate.

    Reckoned at a few sessions

  6. Partly built · 2026-09-14

    3.5 Mailbox and PWMS

    Every player gets a mailbox; materials, chips, tools, and made creations can be sent to it. Plan knowledge is never transferable.

    Reckoned at its own project

  7. Planned

    3.6 Giving made creations

    Tools, furniture, clothing, decoration, and other finished creations can be handed over or mailed. Plans cannot: generosity is making a thing and giving that thing, which is warmer and cannot bypass another player's chosen learning path.

    Reckoned at a sitting

  8. Planned

    3.7 Recycling bins

    Tools for chips; materials for noticeably fewer chips. The gap between the two rates is the design.

    Reckoned at a sitting

  9. Planned

    3.8 Generosity payoffs

    Random, non-fungible, never itemised. Trinkets and decorations brought by a critter who "heard you did something nice." Keep the chip payout small, rare, and worth less than the thing you gave.

    Reckoned at a few sessions

phase 4

Water: rivers and lakes

Underway · 1 of 11 built

A creek that becomes a river that becomes something Mississippi. Fish, frogs, shorelines you can cross, and eventually a canoe.

  1. Built · 2026-08-25

    4.1 Puddle and ripple materials

    No dependencies. The most visible unfinished thing in the current build, and a material problem rather than a geometry one.

  2. Partly built

    4.2 WaterBody becomes a shape union

    pool | channel | basin, with submersionAt as a max over shapes — take the deepest, never the sum, the same rule overlapping digs already follow. Existing pools keep working unchanged.

    Reckoned at a few sessions

  3. Planned

    4.3 Deterministic flow field with accumulated drainage

    A low-frequency global function defines drainage; each page derives its own river segment by sampling it, so seams line up without pages negotiating.

    Reckoned at its own project

  4. Partly built

    4.4 Surface motion

    Current drift on the texture, subtle waves on large water, and white caps where a stream runs past rocks. Motion is what communicates depth and flow at a glance.

    Reckoned at a few sessions

  5. Planned

    4.5 Fish

    The cheapest thing that makes water feel inhabited. Needs a habitat field on species so spawning asks the water registry rather than each species hardcoding a test.

    Reckoned at a few sessions

  6. Partly built

    4.6 Shorelines and crossings

    Lakes get a mix of border types — beach, rocks, marsh, wooden walkways — never a single one uniformly. Cattails, water lilies, lily pads.

    Reckoned at its own project

  7. Planned

    4.7 Riverside and lakeside wayfinding

    Signs with distances to shops, landmarks, and specifically the nearest bridge, dock, or beach. This is what keeps water from being a frustration.

    Reckoned at a sitting

  8. Planned

    4.8 Frogs

    Amphibious: existing hopper gait on land, swimming at the shoreline. Worth it once shoreline transitions exist.

    Reckoned at a few sessions

  9. Partly built

    4.9 Lakes and deep water

    No drowning: you can always wade, and deep water is where a boat becomes necessary, not where you die. Cheap reflection trick — a flipped, faded, offset copy of nearby cutouts — sells a lake more than any shader.

    Reckoned at its own project

  10. Planned

    4.10 Wells, pumps, springs

    Independent of the rest of the phase. Water is not finite.

    Reckoned at a few sessions

  11. Partly built

    4.11 Boats

    Round one is a canoe or kayak. The houseboat-to-mega-yacht extension is parked until lakes are large enough to justify it.

    Reckoned at its own project

phase 5

The map, then underground

Not started

A full-page map of everywhere you have been, and then caves worth getting lost in. Deliberately last: the underground is only worth having once you can find your way around it.

phase 6

Becoming someone

Not started

Drawing yourself, a wardrobe and a closet to keep your looks in, and the slower careful work of a world that strangers can share safely.

the important part

Parked on purpose.

Every good idea that is not next lives here. Each one has a written reason, and the reason is the useful part — it tells you what would have to change for it to move.

Diary annotation and highlighting UI
Needs a diary with entries in it first (2.4). The data shape is not parked.
Player-authored plans and a marketplace
Version-two at the earliest. Constrains today only in that plan ids, recipe shape, and output type must stay open rather than enumerated.
Clothing, including the light-up mining helmet
Wants the affix verb and the plan engine generalised past tools. Delightful, not foundational.
Houses, multi-storey building, furniture
Wants build, disassemble, and placed-entity persistence. The mailbox (3.5) is the cheapest excuse to build that persistence. Design intent now captured in land-and-dwellings.md — read it before starting, since spacing and maker-id are cheap now and expensive later.
Moving house to another neighbourhood
Wants dwellings to exist first. Designed in land-and-dwellings.md. Cheaper than it looks — home is a single HOME_PLACE_ID record that already drives signs, map, and places panel.
Vehicles and transporters
Wants advanced tree nodes and, for vehicles, the platform-height sampling that boats (4.11) also need — do that once. Designed in land-and-dwellings.md; the rule that matters is transporters only connect places you have already walked to, built on the existing saved-places registry.
Houseboats and mega yachts
Wants lakes large enough to matter (4.9) and boats that exist (4.11).
Player-made water features and toy-car channels
Wants channels as a registry shape (4.2) and reversible water edits. Genuinely appealing; genuinely a whole feature.
Weather and rain
Undecided, and the no-seasons decision argues against global world state. A rain barrel that simply refills gives you the barrel without the system.
Snow and cold regions
Needs climbable mountains first.
mix / cook
Wants a party to cater, so it wants multiplayer.
paint as a verb
Needs the decorate-versus-create split resolved, and shares the "canvas not material" surface rule with cave murals.
Specialty vs. general shop differentiation
Decision owed (below). Costs nothing to defer if 2.2 lands with both fields.
Player-to-player selling for chips
Where communal economies turn into markets. Barter and gifting between players carry the same warmth with less risk, so they go first.
Player-run farms and small businesses
Explicitly wanted (economy.md), and mostly falls out of sellable player-made goods + the generalised plan engine. Not a separate build.
Tier-3 tunnel extension / player-carved tunnels
Replaced by the pre-authored, always-connected underground. If it returns, it returns as its own feature with its own guardrails.
Recipes deriving names from TOOL_DEFS
Small cleanup. Two names were renamed by hand on 2026-08-04, which is the argument for doing it — but it is not blocking anything.
A family of owls / travelling easel
Worth holding until multiplayer, when "which owl did you find?" means something.

Draw your friend

Whatever you make here follows you down the page. This is roughly how the real avatar editor starts.