PROCITY/docs/THE_FRONTIER.md

117 lines
7.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# PROCITY — THE FRONTIER (what is genuinely not figured out)
*Fable (m3), 2026-07-17. John's challenge, verbatim: "there is heaps more to figure out — all
the systems are set you say?" He's right. This doc is the honest map: what 29 rounds built is
the WORLD and the PIPELine; the GAME — the reason a stranger would play for an hour — is
mostly unfigured. Nothing here is chartered; it's the space the next epochs get picked from.
Sibling docs: V2_IDEAS (the old parking lot), V6_LIVING_STREET (chartered, in flight).*
## What is actually solid (don't re-litigate)
Procedural + real towns · enterable interiors · citizens with identity · gigs · weather/tram ·
the dig with real/mint/parody stock · the tier ladder + offline law · the two-studio pipeline ·
the QA culture. The platform is genuinely done-ish. Everything below stands ON it.
## THE BIG ONE — it isn't a game yet
You walk, you dig, you buy. Then you close the tab and it never happened. The whole loop that
makes digging MEAN something is unbuilt:
1. **Persistence.** No saves. The wallet resets, the collection vanishes, "gone this session"
is the only memory. (localStorage fits the seeded-everything law trivially — the world
regenerates from seed; only the DELTA needs saving: cash, owned items, day. This is days of
work, not an epoch, and it unlocks everything below.)
2. **The collection.** You buy records and they go... nowhere. No crate at home, no album/
shelf UI, no "look what I found in Katoomba." The collection IS the trophy case of the
whole game and it does not exist.
3. **The thrill loop.** thriftgod's `mint()` gem bands exist as DATA (price bands, gems,
CBD-distance curation) and drive NOTHING. No underpriced gem in a dusty crate, no "is this
worth more than they're asking", no sell/flip loop, no wantlist hunting across towns. The
entire reason op-shopping is exciting in real life is un-simulated.
4. **Why today matters.** No day structure — no opening hours pressure (hours exist! nothing
makes you race them), no end-of-day, no "the gig starts at 9, the shops shut at 5, choose."
The clock is scenery.
5. **The player.** No hands, no home, no inventory UI beyond a number, no character. Who are
you in this town?
6. **Onboarding.** A stranger at digalot.fyi/procity gets pointer-lock and silence. The first
five minutes are unfigured entirely.
## Chartered but unbuilt (in flight or waiting)
- **v6 LIVING STREET** — spikes gated on footage; then clips-at-scale, personas, footpaths +
occasional cars, generated bodies.
- **Option B** — real reservation holds (John's hold budget).
- **Tier-2 auto-discovery** — needs a reachability contract.
- **The editor/override layer** (V2_IDEAS, still the best long-game idea: hand-author any shop
interior over the procedural base).
- **Multiplayer presence** (see who's digging the same town).
## Unowned design questions (nobody has even sketched these)
- **What is a session?** 20 minutes? A day-cycle? A town per sitting?
- **The economy loop:** buy low → ??? → profit. Sell where? To whom? GodBay (thriftgod's
auction sim) is sitting right there as the obvious answer and no design connects them.
- **Cross-town play:** 23 towns exist; nothing makes you travel. Regional wantlists? A gem
rumor system? The tram/train BETWEEN towns?
- **The gig layer as gameplay:** you can attend a gig; you can't book one, play one, or care
about one. 90sDJsim overlap sits unexplored (DJ the venue?).
- **Music identity:** procedural beds exist; a game this specific deserves a sound.
- **The 90s-ness:** it's in the fabric (video shops, milk bars) but no system USES the era —
no phone-free navigation puzzles, no street-press gig guide, no mixtapes.
## THE THIRD DIMENSION + TEXTURE LIFE (filed 2026-07-18 — John's Perlin question, answered from the code)
**The ruling that frames this section:** world *structure* stays on the semantic hash-stream
system (`prng.js` — `seedFor(citySeed, kind, id)`, independently-keyed streams per entity).
That architecture is why 31 rounds of features never moved a golden: a draw added to one
stream shifts no other. Perlin answers a different question — a *continuous* value over
space/time — and it enters the toolbox only where the question really is continuous. When it
does, it seeds from the same citySeed keying: deterministic, gate-able, no exceptions.
Candidates, ranked by honest cost:
1. **TERRAIN / ELEVATION — the headline, epoch-scale, chartered as a v8+ candidate.**
Everything is flat, which is *wrong for the real map*: Katoomba is a mountain town rendered
as a billiard table. Per the real-map DNA, the primary source is REAL elevation (SRTM /
contour data for each town bbox, the same discipline as the roads fetch) — noise is only
the infill between samples, never the shape of a real hill. **The cost is named now so
nobody charters it lightly:** terrain touches everything — roads follow grades, buildings
need foundations and steps, footpaths slope, the chunk streamer and the walkers and every
budget meet a Y axis, and the classic covenant needs a flat-forever fence. This is an
epoch with an alpha/beta/close arc of its own, not a round.
2. **Sky / cloud domes — cheap, near-term (v6/v7 polish).** Skies are baked textures today; a
seeded FBM dome gives every day its own weather-shaped sky, composes with the existing
weather states, and is one lane's item (B, lighting).
3. **Wear & grime — cheap, high-charm (E/C canvas painters).** Seeded value-noise for sleeve
ring-wear, facade sun-fade, footpath staining — per-item, deterministic, and exactly the
90s patina the parody sleeves deserve. Pairs with the beta's price-guide work (a worn
sleeve *reading* worn next to its condition grade).
4. **Crowd ebb (LIVING STREET track, D).** A slow 1D noise curve modulating street density
across the day — mornings trickle, arvo swells — richer than uniform draws, one stream,
identity-safe.
5. **THE VERNACULAR KIT (filed 2026-07-18, John's idea, source corrected) — buildings that
feel real.** The town's massing is same-y boxes; the fix is **1520 parametric Aussie
vernacular archetypes** (Queenslander, Federation cottage, terrace row, weatherboard
shopfront + verandah, deco corner pub, brick milk bar, fibro shack, tin warehouse…) with
seeded knobs — width, storeys, verandah depth, roof pitch, parapet, tint, and the wear
noise from item #3 above. **Source ruling: NOT Google Maps 3D** (licence-fatal — the one
thing the provenance spine must never touch — and photogrammetry mush at house scale
anyway). Instead: (a) **OSM/Overture building footprints + heights** for the real towns —
ODbL, the licence and pipeline we already ship, one more fetch class under the standing
authorization; (b) the kit designed from Street View *reference* (looking is not
extracting) and built parametrically on B's existing instanced-attribute machinery, which
already varies tint/hours per instance. Real footprints place real shapes on real streets;
the kit + knobs cover everything unfootprinted. Pairs with terrain as the two halves of a
future "the streetscape gets real" epoch — but unlike terrain, the kit is INCREMENTAL
(archetype by archetype, budget-measured, classic fenced), so it could also drip in as
B/E polish rounds. Goldens untouched either way (plan hashes don't see meshes); budgets
re-measured per archetype.
## The honest sequencing opinion (Fable's, not a ruling)
The private-test deploy is the design instrument: John walks the game cold and writes down
every "why can't I..." — that list IS the v7 charter input. My candidate for v7 once v6's
spikes land: **THE GAME (persistence + collection + the thrill loop + a day that matters)**
it's the smallest set that turns the platform into something a stranger plays twice.