diff --git a/docs/game-design/DESIGN-DECISIONS.adoc b/docs/game-design/DESIGN-DECISIONS.adoc index 9ccdde2..a965530 100644 --- a/docs/game-design/DESIGN-DECISIONS.adoc +++ b/docs/game-design/DESIGN-DECISIONS.adoc @@ -313,21 +313,64 @@ weight — still needs playtesting. *Raised by:* Claude -*Decision:* OPEN — needs playtesting. +*Decision:* RESOLVED (2026-07-16) — *superseded by the length dial* in +`CANONICAL-MODEL.adoc` §"Length dial — presets". There is no single game length. +One ruleset ships *three length presets*: -*The concern:* 32 turns (8 per era) targeting 90-120 minutes is ambitious. At -3-4 minutes per turn (with trading and crisis resolution), that's 96-128 minutes -in ideal conditions. Real games will run longer with analysis paralysis and -negotiation. +[cols="1,1,1,1", options="header"] +|=== +| Preset | Eras | Turns | Time target + +| Short — "Skirmish" | 2 (Agrarian→Industrial) | ~5–6 | 60–90 min +| Standard — "Ascent" | 3 (→ Digital) | ~9–10 | 120–180 min +| Extended — "Legacy" | 4 (→ Post-Scarcity) | 32 | 4–6 hr, across sittings +|=== + +*Why the original framing was wrong:* this entry asked "how many turns?" as +though one number had to serve every table. It does not. Length is a *dial*, +exactly as complexity is (DD-008), and the two compose. The 32-turn figure was +never wrong — it was the *Extended* preset all along, mislabelled as the only one. -*Options:* +*Bookkeeping note:* the ruling was actually made when the canonical model landed; +this entry simply failed to record it and sat as OPEN. Resolved here to close the +gap. No new decision has been taken. -* 32 turns, accept 2-3 hour games (Twilight Imperium audience) -* 24 turns (6 per era), tighter 90-minute target -* Variable era length based on player count and progression triggers -* "Short game" variant with 2 eras instead of 4 +*The density caveat — the real risk, and it survives this resolution:* +`gameplay-storyboard.adoc:463` traces a *full-weight Industrial turn* at *25–35 +minutes* wall-clock (~7 phases × 4 players × 4 crisis cards). That figure is the +one genuinely alarming number in the design, and the presets only hit their time +targets if per-turn time falls *with weight*: -*Status:* OPEN (playtesting will determine) +* Short targets 60–90 min over ~5–6 turns — i.e. *10–15 min/turn*. +* Against a 25–35 min full-weight turn, that demands a *~2–3× reduction*. +* Short is expected to deliver it by running *Core (+ Diplomacy) only* (~2.0–2.5 + weight) with the *leaner-turn levers* — Simultaneous Production, Time-boxed + Exchange, Batched boundary update — applied by default. + +*That ~2–3× is assumed, not measured.* It is the single most load-bearing untested +assumption in the design: if the levers only deliver 1.5×, Short lands at 100–140 +min and the 60–90 target is gone. *Timing a Core-weight turn is therefore the first +job of the first playtest* — before balance, before content. + +*Alternatives considered:* a single compromise length (24 turns) — rejected; it +serves nobody well, and picking one number was the original error. Variable era +length on progression triggers — deferred; adds a subsystem to solve what a preset +already solves. + +*Status:* RESOLVED (length dial adopted; supersedes the "32 turns" framing). The +*time targets* remain PROVISIONAL pending the first timed playtest. + +*FAQ:* + +* _Q: So is the game 32 turns or 6?_ + A: Both, and neither is the "real" one. Skirmish and Ascent are complete games + that end at their final era with a scored assessment — they are not truncated + Legacy. Post-Scarcity is the narrative *horizon*, not a mandatory destination. + +* _Q: Which preset does Phase 1 content drafting target?_ + A: *Short.* It is the only configuration reachable without an engine, it is what + gets to a table fastest, and it needs the fewest cards. Drafting for Legacy first + would be writing Post-Scarcity content for a game nobody has yet played once. === DD-010: Cascade Mechanic Threshold @@ -460,6 +503,73 @@ re-litigated by accident. symmetric (everyone has hidden aspects), it is about *players*, not the world, and it is the source of the negotiation the game is built on. +=== DD-014: The Information Budget + +*Raised by:* Claude — *proposed, ruling pending (Jonathan/Joshua)* + +*Proposal:* Hidden information is a *budget*, not a free good. DD-013 has now +spent most of it on *characters* (hidden aspects + hidden private objective). +DD-011's open question ("are agreements public or private?") and DD-012's ("is +research public or private?") should therefore both default toward *public* — +because the budget is largely spent, and each further hidden layer is charged +against the same account. + +*Reasoning:* a Bayes–Nash game requires players to form *priors* over each other's +types and *update* them from observed play. That needs two things at once: enough +hidden information to make types genuinely uncertain, and enough *public* +information to update from. Hidden information is what creates the inference +problem; public information is what makes it *solvable*. + +Stack every layer as hidden — aspects, objective, research outcome, agreement +terms — and there is nothing left to condition on. An opponent watching you defect +cannot distinguish _he is thin-skinned_ from _his research failed_ from _his +private objective just paid_. Every observation stays consistent with every +hypothesis, priors never move, and inference degenerates into guesswork. The game +would still be one of incomplete information; it would simply be an *unplayable* +one. More hidden information does not mean more Bayes–Nash — past a point it means +less, because it destroys the updating that makes the equilibrium reachable. + +`player-roles.adoc` §8 already names this failure mode for characters: hidden +aspects must create *inference, not confusion*. DD-014 is that same balance note +generalised from the character model to the design as a whole. + +*Consequences if adopted:* + +* *DD-011 — agreements public.* The budget is the weaker argument here; the + stronger one is that a public binding agreement *is a costly signal* about your + hidden aspects. Signing publicly, and honouring it, is how you move opponents' + priors — the mechanism DD-013 explicitly wants. Private agreements would remove + the signalling channel entirely. (`CANONICAL-MODEL.adoc` already leans this way: + the Core layer lists *open trades*.) +* *DD-012 — research public in direction, hidden in outcome.* This preserves the + bluffing DD-012 wants without breaking priors: seeing *what* you are working on + anchors the prior; not knowing *what you got* keeps it uncertain. A blanket + "research is private" would spend budget the character layer has already + claimed. + +*Open question — do private objectives and eXperiment collapse into one +subsystem?* DD-006's private objectives and DD-012's speculative research are now +strikingly similar machinery: both are hidden, both have asymmetric payoffs, both +exist to make your true payoff function unreadable. That may be one subsystem +wearing two hats, or two that must stay distinct to avoid double-charging the +budget. *This is not resolved here* and should be settled before either is drafted +in Phase 1. + +*Alternatives considered:* hide everything and let players cope — rejected above +(confusion, not inference). Hide nothing beyond the Core — rejected; it collapses +the game back to complete-information Nash and discards DD-013. + +*Status:* OPEN — proposed principle, awaiting a ruling. If adopted, it does not +resolve DD-011 or DD-012; it *constrains* them, and their remaining questions +(binding duration, defection penalty, randomness model) stay open. + +*FAQ:* + +* _Q: Is this a new mechanic?_ + A: No — it adds no machinery. It is a *constraint on future rulings*, meant to + stop DD-011 and DD-012 each independently reaching for hidden information + without noticing DD-013 already spent it. + ''' == Open Questions Tracker @@ -470,11 +580,13 @@ re-litigated by accident. | DD-006 | Aspect pool + private-objective deck content | OPEN — Phase 1 drafting (framework RESOLVED 2026-07-16) | DD-008 | Complexity management approach? | OPEN — playtesting (character dial resolved by DD-006) -| DD-009 | Game length (32 turns vs. shorter)? | OPEN — playtesting needed +| DD-009 | Per-turn *time* at Core weight — do the leaner-turn levers deliver the ~2–3× the presets assume? | PROVISIONAL — first playtest must *time a turn* (length dial RESOLVED 2026-07-16) | DD-010 | Cascade threshold (8 correct?) | PROVISIONAL — playtesting needed -| DD-011 | eXchange binding mechanics? | OPEN — core design needed -| DD-012 | eXperiment randomness level? | OPEN — core design needed +| DD-011 | eXchange binding mechanics? | OPEN — core design needed (public/private constrained by DD-014 if adopted) +| DD-012 | eXperiment randomness level? | OPEN — core design needed (public/private constrained by DD-014 if adopted) | DD-013 | Reveal mechanism (voluntary/triggered/costed?) | OPEN — Phase 1 (model RESOLVED 2026-07-16) +| DD-014 | Information budget — adopt as a standing constraint? | OPEN — proposed 2026-07-16, *ruling pending* +| — | Do private objectives (DD-006) and eXperiment (DD-012) collapse into one subsystem? | OPEN — settle before either is drafted |=== == Decision Template diff --git a/docs/status/WAY-FORWARD.adoc b/docs/status/WAY-FORWARD.adoc index e92c563..690ad79 100644 --- a/docs/status/WAY-FORWARD.adoc +++ b/docs/status/WAY-FORWARD.adoc @@ -48,25 +48,35 @@ perfecting the design in the abstract. == Phases -=== Phase 0 — Reconcile & decide (needs owner) +=== Phase 0 — Reconcile & decide — **DONE (2026-07-16)** Produce the canonical model by resolving the contradictions the corpus already contains, and surface the genuinely owner-gated calls as a short decision list. Draft prepared by -agent; **rulings are yours**: +agent; **rulings are yours**. Outcome of each: * **Stale turn-loop clash** — `core-mechanics.adoc` Phase 1 = passive "collect"; the - storyboard + foundations = active Leontief production. → adopt the production version, - retire the stale text. + storyboard + foundations = active Leontief production. → *Adopted:* production version; + stale text retired (`CANONICAL-MODEL.adoc` §Reconciliation log). * **Crisis-draw timing exploit** — sample boundary stress at *start-of-turn* vs - *start-of-Crisis-phase* (`gameplay-storyboard.adoc:200`). Recommend start-of-turn to - close the "recovery-spam to dodge crises" hole. -* **Length/density — the #1 risk.** A single Industrial turn is estimated at 25–35 min × - 32 turns; the playtest target is 90–150 min. → make the **"Short Game" (2 eras / ~12 - turns)** the *default* playable configuration; keep the 32-turn "Campaign" as advanced. + *start-of-Crisis-phase* (`gameplay-storyboard.adoc:200`). → *Adopted:* start-of-turn, + closing the "recovery-spam to dodge crises" hole. +* **Length/density — the #1 risk.** → *Adopted:* not a single length at all, but a + three-preset **length dial** (`CANONICAL-MODEL.adoc` §"Length dial — presets"): + Short "Skirmish" (2 eras, *~5–6 turns*, 60–90 min) · Standard "Ascent" (3 eras, ~9–10 + turns, 120–180 min) · Extended "Legacy" (4 eras, 32 turns, multi-session). Short is the + default playable configuration and the Phase 1 drafting target. DD-009 records this. ++ +NOTE: *The density half of this risk is not retired.* The 25–35 min figure +(`gameplay-storyboard.adoc:463`) is a *full-weight Industrial* turn. Short assumes +Core-only weight plus the leaner-turn levers cut that to 10–15 min/turn — a *~2–3× +reduction that is assumed, not measured*. Timing a Core-weight turn is the first job of +the first playtest. * **Open design decisions to rule on:** DD-006 (named living figures vs archetypes — - *legal risk*, esp. Musk), DD-008 (target complexity), DD-009 (game length), DD-010 - (cascade threshold = 8, provisional), DD-011 (eXchange binding rules), DD-012 - (eXperiment randomness model). + *legal risk*, esp. Musk) → *RESOLVED* via character builder + DD-013 Bayes–Nash model. + DD-009 (game length) → *RESOLVED* by the length dial above. Still open: DD-008 (target + complexity, partially dialled by DD-006), DD-010 (cascade threshold = 8, provisional), + DD-011 (eXchange binding rules), DD-012 (eXperiment randomness model), DD-013 (reveal + mechanism), DD-014 (information budget — *proposed, ruling pending*). === Phase 1 — Content to playable (Opus manages friends)