Skip to content

Commit baa718a

Browse files
docs(game): close stale DD-009 via length dial; propose DD-014 information budget (#70)
Follow-on to #69. Two bookkeeping fixes and one genuinely new proposal for you and Joshua to rule on. ## DD-009 was stale, not open I reported to Jonathan that DD-009 (game length) was the unruled blocker on Phase 1. **That was wrong, and this PR corrects it.** The ruling had already been made — `CANONICAL-MODEL.adoc` landed the three-preset **length dial** in #68, whose title even claims DD-009. The DD entry and tracker just never recorded it. | Preset | Eras | Turns | Time target | |---|---|---|---| | Short — "Skirmish" | 2 | ~5–6 | 60–90 min | | Standard — "Ascent" | 3 | ~9–10 | 120–180 min | | Extended — "Legacy" | 4 | 32 | 4–6 hr, multi-session | The original entry asked "how many turns?" as if one number had to serve every table. Length is a *dial*, like complexity (DD-008). 32 turns was never wrong — it was the *Extended* preset, mislabelled as the only one. **No new decision is taken here**; this is the log catching up with the model. ## The half of the risk that survives The 25–35 min/turn figure (`gameplay-storyboard.adoc:463`) is a **full-weight Industrial** turn. Short targets 60–90 min over ~5–6 turns = **10–15 min/turn**, i.e. a **~2–3× reduction**, expected from Core-only weight plus the leaner-turn levers. **That ~2–3× is assumed, not measured** — the most load-bearing untested number in the design. If the levers only deliver 1.5×, Short lands at 100–140 min and the target is gone. So: *time a Core-weight turn first, before balance, before content.* Now flagged in DD-009 and WAY-FORWARD. ## Contradiction fixed WAY-FORWARD said Short = "2 eras / **~12 turns**"; CANONICAL-MODEL says "**~5–6**". Canonical is the declared single source of truth, so it wins. Phase 0 also marked DONE — its bullets were pending recommendations that #68/#69 have since executed. ## DD-014 — The Information Budget (OPEN, ruling pending) The one new idea, deliberately logged as **proposed, not decided**. Hidden information is a *budget*, not a free good. DD-013 spent most of it on characters (hidden aspects + private objective). So DD-011 ("agreements public or private?") and DD-012 ("research public or private?") should lean **public** — each further hidden layer is charged to the same account. Bayes–Nash needs *both*: enough hidden information to make types uncertain, and enough public information to update from. Hide everything and an opponent watching you defect cannot tell _thin-skinned_ from _research failed_ from _private objective paid_. Priors never move; inference becomes guesswork. **More hidden information does not mean more Bayes–Nash — past a point it means less.** `player-roles.adoc` §8 already says hidden aspects must create *inference, not confusion*; DD-014 generalises that from characters to the whole design. If adopted, it **constrains** DD-011/DD-012 rather than resolving them — binding duration, defection penalty, and randomness model all stay open. Also logged: **do private objectives (DD-006) and eXperiment (DD-012) collapse into one subsystem?** Both are hidden, asymmetric-payoff machinery existing to obscure your payoff function. Unresolved — worth settling before either is drafted in Phase 1. ## Verification Installed `asciidoctor` (it was missing, which is why #69 shipped without a render check) and rendered all four docs — **zero warnings**. Confirmed the DD-009 table, DD-014 section, 9 tracker rows, and that the WAY-FORWARD NOTE renders as a real admonition without swallowing the following bullet. This also retroactively validates the #69 files. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent a93311e commit baa718a

2 files changed

Lines changed: 148 additions & 26 deletions

File tree

docs/game-design/DESIGN-DECISIONS.adoc

Lines changed: 126 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -313,21 +313,64 @@ weight — still needs playtesting.
313313

314314
*Raised by:* Claude
315315

316-
*Decision:* OPEN — needs playtesting.
316+
*Decision:* RESOLVED (2026-07-16) — *superseded by the length dial* in
317+
`CANONICAL-MODEL.adoc` §"Length dial — presets". There is no single game length.
318+
One ruleset ships *three length presets*:
317319

318-
*The concern:* 32 turns (8 per era) targeting 90-120 minutes is ambitious. At
319-
3-4 minutes per turn (with trading and crisis resolution), that's 96-128 minutes
320-
in ideal conditions. Real games will run longer with analysis paralysis and
321-
negotiation.
320+
[cols="1,1,1,1", options="header"]
321+
|===
322+
| Preset | Eras | Turns | Time target
323+
324+
| Short — "Skirmish" | 2 (Agrarian→Industrial) | ~5–6 | 60–90 min
325+
| Standard — "Ascent" | 3 (→ Digital) | ~9–10 | 120–180 min
326+
| Extended — "Legacy" | 4 (→ Post-Scarcity) | 32 | 4–6 hr, across sittings
327+
|===
328+
329+
*Why the original framing was wrong:* this entry asked "how many turns?" as
330+
though one number had to serve every table. It does not. Length is a *dial*,
331+
exactly as complexity is (DD-008), and the two compose. The 32-turn figure was
332+
never wrong — it was the *Extended* preset all along, mislabelled as the only one.
322333

323-
*Options:*
334+
*Bookkeeping note:* the ruling was actually made when the canonical model landed;
335+
this entry simply failed to record it and sat as OPEN. Resolved here to close the
336+
gap. No new decision has been taken.
324337

325-
* 32 turns, accept 2-3 hour games (Twilight Imperium audience)
326-
* 24 turns (6 per era), tighter 90-minute target
327-
* Variable era length based on player count and progression triggers
328-
* "Short game" variant with 2 eras instead of 4
338+
*The density caveat — the real risk, and it survives this resolution:*
339+
`gameplay-storyboard.adoc:463` traces a *full-weight Industrial turn* at *25–35
340+
minutes* wall-clock (~7 phases × 4 players × 4 crisis cards). That figure is the
341+
one genuinely alarming number in the design, and the presets only hit their time
342+
targets if per-turn time falls *with weight*:
329343

330-
*Status:* OPEN (playtesting will determine)
344+
* Short targets 60–90 min over ~5–6 turns — i.e. *10–15 min/turn*.
345+
* Against a 25–35 min full-weight turn, that demands a *~2–3× reduction*.
346+
* Short is expected to deliver it by running *Core (+ Diplomacy) only* (~2.0–2.5
347+
weight) with the *leaner-turn levers* — Simultaneous Production, Time-boxed
348+
Exchange, Batched boundary update — applied by default.
349+
350+
*That ~2–3× is assumed, not measured.* It is the single most load-bearing untested
351+
assumption in the design: if the levers only deliver 1.5×, Short lands at 100–140
352+
min and the 60–90 target is gone. *Timing a Core-weight turn is therefore the first
353+
job of the first playtest* — before balance, before content.
354+
355+
*Alternatives considered:* a single compromise length (24 turns) — rejected; it
356+
serves nobody well, and picking one number was the original error. Variable era
357+
length on progression triggers — deferred; adds a subsystem to solve what a preset
358+
already solves.
359+
360+
*Status:* RESOLVED (length dial adopted; supersedes the "32 turns" framing). The
361+
*time targets* remain PROVISIONAL pending the first timed playtest.
362+
363+
*FAQ:*
364+
365+
* _Q: So is the game 32 turns or 6?_
366+
A: Both, and neither is the "real" one. Skirmish and Ascent are complete games
367+
that end at their final era with a scored assessment — they are not truncated
368+
Legacy. Post-Scarcity is the narrative *horizon*, not a mandatory destination.
369+
370+
* _Q: Which preset does Phase 1 content drafting target?_
371+
A: *Short.* It is the only configuration reachable without an engine, it is what
372+
gets to a table fastest, and it needs the fewest cards. Drafting for Legacy first
373+
would be writing Post-Scarcity content for a game nobody has yet played once.
331374

332375
=== DD-010: Cascade Mechanic Threshold
333376

@@ -460,6 +503,73 @@ re-litigated by accident.
460503
symmetric (everyone has hidden aspects), it is about *players*, not the world,
461504
and it is the source of the negotiation the game is built on.
462505

506+
=== DD-014: The Information Budget
507+
508+
*Raised by:* Claude — *proposed, ruling pending (Jonathan/Joshua)*
509+
510+
*Proposal:* Hidden information is a *budget*, not a free good. DD-013 has now
511+
spent most of it on *characters* (hidden aspects + hidden private objective).
512+
DD-011's open question ("are agreements public or private?") and DD-012's ("is
513+
research public or private?") should therefore both default toward *public* —
514+
because the budget is largely spent, and each further hidden layer is charged
515+
against the same account.
516+
517+
*Reasoning:* a Bayes–Nash game requires players to form *priors* over each other's
518+
types and *update* them from observed play. That needs two things at once: enough
519+
hidden information to make types genuinely uncertain, and enough *public*
520+
information to update from. Hidden information is what creates the inference
521+
problem; public information is what makes it *solvable*.
522+
523+
Stack every layer as hidden — aspects, objective, research outcome, agreement
524+
terms — and there is nothing left to condition on. An opponent watching you defect
525+
cannot distinguish _he is thin-skinned_ from _his research failed_ from _his
526+
private objective just paid_. Every observation stays consistent with every
527+
hypothesis, priors never move, and inference degenerates into guesswork. The game
528+
would still be one of incomplete information; it would simply be an *unplayable*
529+
one. More hidden information does not mean more Bayes–Nash — past a point it means
530+
less, because it destroys the updating that makes the equilibrium reachable.
531+
532+
`player-roles.adoc` §8 already names this failure mode for characters: hidden
533+
aspects must create *inference, not confusion*. DD-014 is that same balance note
534+
generalised from the character model to the design as a whole.
535+
536+
*Consequences if adopted:*
537+
538+
* *DD-011 — agreements public.* The budget is the weaker argument here; the
539+
stronger one is that a public binding agreement *is a costly signal* about your
540+
hidden aspects. Signing publicly, and honouring it, is how you move opponents'
541+
priors — the mechanism DD-013 explicitly wants. Private agreements would remove
542+
the signalling channel entirely. (`CANONICAL-MODEL.adoc` already leans this way:
543+
the Core layer lists *open trades*.)
544+
* *DD-012 — research public in direction, hidden in outcome.* This preserves the
545+
bluffing DD-012 wants without breaking priors: seeing *what* you are working on
546+
anchors the prior; not knowing *what you got* keeps it uncertain. A blanket
547+
"research is private" would spend budget the character layer has already
548+
claimed.
549+
550+
*Open question — do private objectives and eXperiment collapse into one
551+
subsystem?* DD-006's private objectives and DD-012's speculative research are now
552+
strikingly similar machinery: both are hidden, both have asymmetric payoffs, both
553+
exist to make your true payoff function unreadable. That may be one subsystem
554+
wearing two hats, or two that must stay distinct to avoid double-charging the
555+
budget. *This is not resolved here* and should be settled before either is drafted
556+
in Phase 1.
557+
558+
*Alternatives considered:* hide everything and let players cope — rejected above
559+
(confusion, not inference). Hide nothing beyond the Core — rejected; it collapses
560+
the game back to complete-information Nash and discards DD-013.
561+
562+
*Status:* OPEN — proposed principle, awaiting a ruling. If adopted, it does not
563+
resolve DD-011 or DD-012; it *constrains* them, and their remaining questions
564+
(binding duration, defection penalty, randomness model) stay open.
565+
566+
*FAQ:*
567+
568+
* _Q: Is this a new mechanic?_
569+
A: No — it adds no machinery. It is a *constraint on future rulings*, meant to
570+
stop DD-011 and DD-012 each independently reaching for hidden information
571+
without noticing DD-013 already spent it.
572+
463573
'''
464574

465575
== Open Questions Tracker
@@ -470,11 +580,13 @@ re-litigated by accident.
470580

471581
| DD-006 | Aspect pool + private-objective deck content | OPEN — Phase 1 drafting (framework RESOLVED 2026-07-16)
472582
| DD-008 | Complexity management approach? | OPEN — playtesting (character dial resolved by DD-006)
473-
| DD-009 | Game length (32 turns vs. shorter)? | OPENplaytesting needed
583+
| DD-009 | Per-turn *time* at Core weight — do the leaner-turn levers deliver the ~2–3× the presets assume? | PROVISIONALfirst playtest must *time a turn* (length dial RESOLVED 2026-07-16)
474584
| DD-010 | Cascade threshold (8 correct?) | PROVISIONAL — playtesting needed
475-
| DD-011 | eXchange binding mechanics? | OPEN — core design needed
476-
| DD-012 | eXperiment randomness level? | OPEN — core design needed
585+
| DD-011 | eXchange binding mechanics? | OPEN — core design needed (public/private constrained by DD-014 if adopted)
586+
| DD-012 | eXperiment randomness level? | OPEN — core design needed (public/private constrained by DD-014 if adopted)
477587
| DD-013 | Reveal mechanism (voluntary/triggered/costed?) | OPEN — Phase 1 (model RESOLVED 2026-07-16)
588+
| DD-014 | Information budget — adopt as a standing constraint? | OPEN — proposed 2026-07-16, *ruling pending*
589+
| — | Do private objectives (DD-006) and eXperiment (DD-012) collapse into one subsystem? | OPEN — settle before either is drafted
478590
|===
479591

480592
== Decision Template

docs/status/WAY-FORWARD.adoc

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,25 +48,35 @@ perfecting the design in the abstract.
4848

4949
== Phases
5050

51-
=== Phase 0 — Reconcile & decide (needs owner)
51+
=== Phase 0 — Reconcile & decide — **DONE (2026-07-16)**
5252

5353
Produce the canonical model by resolving the contradictions the corpus already contains,
5454
and surface the genuinely owner-gated calls as a short decision list. Draft prepared by
55-
agent; **rulings are yours**:
55+
agent; **rulings are yours**. Outcome of each:
5656

5757
* **Stale turn-loop clash** — `core-mechanics.adoc` Phase 1 = passive "collect"; the
58-
storyboard + foundations = active Leontief production. → adopt the production version,
59-
retire the stale text.
58+
storyboard + foundations = active Leontief production. → *Adopted:* production version;
59+
stale text retired (`CANONICAL-MODEL.adoc` §Reconciliation log).
6060
* **Crisis-draw timing exploit** — sample boundary stress at *start-of-turn* vs
61-
*start-of-Crisis-phase* (`gameplay-storyboard.adoc:200`). Recommend start-of-turn to
62-
close the "recovery-spam to dodge crises" hole.
63-
* **Length/density — the #1 risk.** A single Industrial turn is estimated at 25–35 min ×
64-
32 turns; the playtest target is 90–150 min. → make the **"Short Game" (2 eras / ~12
65-
turns)** the *default* playable configuration; keep the 32-turn "Campaign" as advanced.
61+
*start-of-Crisis-phase* (`gameplay-storyboard.adoc:200`). → *Adopted:* start-of-turn,
62+
closing the "recovery-spam to dodge crises" hole.
63+
* **Length/density — the #1 risk.** → *Adopted:* not a single length at all, but a
64+
three-preset **length dial** (`CANONICAL-MODEL.adoc` §"Length dial — presets"):
65+
Short "Skirmish" (2 eras, *~5–6 turns*, 60–90 min) · Standard "Ascent" (3 eras, ~9–10
66+
turns, 120–180 min) · Extended "Legacy" (4 eras, 32 turns, multi-session). Short is the
67+
default playable configuration and the Phase 1 drafting target. DD-009 records this.
68+
+
69+
NOTE: *The density half of this risk is not retired.* The 25–35 min figure
70+
(`gameplay-storyboard.adoc:463`) is a *full-weight Industrial* turn. Short assumes
71+
Core-only weight plus the leaner-turn levers cut that to 10–15 min/turn — a *~2–3×
72+
reduction that is assumed, not measured*. Timing a Core-weight turn is the first job of
73+
the first playtest.
6674
* **Open design decisions to rule on:** DD-006 (named living figures vs archetypes —
67-
*legal risk*, esp. Musk), DD-008 (target complexity), DD-009 (game length), DD-010
68-
(cascade threshold = 8, provisional), DD-011 (eXchange binding rules), DD-012
69-
(eXperiment randomness model).
75+
*legal risk*, esp. Musk) → *RESOLVED* via character builder + DD-013 Bayes–Nash model.
76+
DD-009 (game length) → *RESOLVED* by the length dial above. Still open: DD-008 (target
77+
complexity, partially dialled by DD-006), DD-010 (cascade threshold = 8, provisional),
78+
DD-011 (eXchange binding rules), DD-012 (eXperiment randomness model), DD-013 (reveal
79+
mechanism), DD-014 (information budget — *proposed, ruling pending*).
7080

7181
=== Phase 1 — Content to playable (Opus manages friends)
7282

0 commit comments

Comments
 (0)