Skip to content

Commit 7030226

Browse files
PipFowerakerclaude
andauthored
docs(design): UI+features stack from #664 playtest (heuristics, backlog, playtest data) (#684)
Co-authored-by: Claude <noreply@anthropic.com>
1 parent 9aec90a commit 7030226

1 file changed

Lines changed: 90 additions & 0 deletions

File tree

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
# UI + features stack (Pip playtest 2026-07-17)
2+
3+
> Living backlog from Pip's #664 alpha playtest. Loved the patch overall ("mechanically it feels
4+
> amazing"; "sense of time progressing is fantastic"). This captures every note, the design
5+
> heuristics behind them, and the insight Pip wanted recorded. Priority: P0 ship-relevant / P1 soon
6+
> / P2 polish. Items marked IN-FLIGHT are already being built.
7+
8+
## Design heuristics / principles (Pip's -- treat as rules-of-thumb)
9+
- **No early loss:** a new player should NOT normally be able to lose within the first ~6 turns.
10+
- **Easy information transition once earned (pain/payoff):** the player can fight for or "buy"
11+
information; once earned it should flow easily across sub-menus (offer page etc.) with static
12+
bits staying put. Don't administratively hurt the player with clicks/attention the game can't
13+
also make easier -- every friction should have a payoff the game helps them realize.
14+
- **Rage-quit friction:** slow down rage-quitting -- quit-to-menu by default, offer reload, make
15+
"wait" moments (loading screens) fun rather than punishing.
16+
- **Time model:** a TURN is a planning period (count it); DAYS are the baseline tick; the game
17+
starts at the start of a period on a date. Show the turn count AND the date, cleanly.
18+
- **Channel discipline:** don't flood the event feed, especially at low situational awareness --
19+
down-tune volume or give obvious filtering.
20+
21+
## Insight to note (Pip credited this, well-received)
22+
- The **hiring mini-tab flavour + grouped status fields** (grouping the candidate's fields by
23+
category) was a good call and reads well. Keep this grouping pattern for other info-dense panels.
24+
25+
## IN-FLIGHT (building now, this session)
26+
- **Promise cost fix (B):** appetite-promises cost future domain obligations (paper slot / compute
27+
/ mission constraint), not raw reputation -- kills the turn-14 rep-collapse instant-death; +a
28+
test that promises can't cause a loss in <=6 turns; +cost shown before commit. (fix/promise-currency)
29+
- **Manual PLAN<->WATCH toggle** (switch views at will). (feat/ui-quick-wins)
30+
- **Turn/date display tidy** (Turn N + human date, clean-slated). (feat/ui-quick-wins)
31+
- **In-flight hiring steps in the action queue** with progress (interview 2/3 ticks, etc.). (feat/ui-quick-wins)
32+
33+
## P0 -- ship-relevant polish (do around the alpha)
34+
- **Quit -> Main Menu by default** (not quit-to-desktop) to slow rage-quits.
35+
- **Defeat title/cause mismatch:** the screen showed "The AI Destroyed Humanity" while the cause
36+
was reputation collapse. Title the defeat by its ACTUAL death-attribution (rep collapse ->
37+
"lost all credibility"). `death_attribution.gd`.
38+
- **Event-feed flooding:** the feed is drowning in `technical_research_breakthrough` / arxiv FEED
39+
lines. Either down-tune visible-event volume (scale to situational awareness) OR add obvious
40+
filtering -- MMORPG-style channels (global / local / org / party-equivalent) the player toggles.
41+
Start with the cheapest: a verbosity toggle + collapse the arxiv-flavour spam.
42+
CONFIRMED SEVERITY (turn-229 dump): the ENTIRE `hist_arxiv` deck fires -- 200+ entries in
43+
`event_cooldowns` -- so the feed is flooded by design, not a fluke. The flavour-arxiv stream
44+
needs its own channel/severity so it never crowds out real, actionable events.
45+
46+
## Playtest data (2026-07-17, seed weekly-2026-w0)
47+
- Two rep-collapse deaths: turn 14 (bill -54) and turn 229 (one `mission_charter` promise, bill
48+
-80) -- both from the promise-as-reputation-debt bug (promise principal 2183 vs start rep 50).
49+
Fixed by the promise-currency (B) lane.
50+
- Baseline (do-nothing) survives 588 turns / score 28413; the played runs died at 14 and 229 --
51+
inaction still outlives action, so promises + rep-collapse are the dominant early-loss vector.
52+
- Burnout is climbing correctly (Gray/Ellis at 81 after ~162 turns) -- the slow-burn works.
53+
- Defeat title said "The AI Destroyed Humanity" at doom 50 while the actual cause was rep-collapse
54+
-> the title/cause mismatch above.
55+
56+
## P1 -- soon (onboarding legibility + info flow + consequences)
57+
- **Onboarding-pending highlight on the main screen:** make pending onboarding read louder.
58+
Integrate the office visuals -- e.g. a hollow, glowing green DASHED outline of the absent item
59+
(laptop/desk), transparency for easy parsing. Fun + legible.
60+
- **Draw each step's result to easy-dismiss attention** (a light toast/blip per hiring-step
61+
resolution; dismissible, not modal).
62+
- **Warn before penalty:** surface a heads-up right around when the game is about to start
63+
penalising the player for inaction-to-date (the "you should probably act now" nudge).
64+
- **Offer page = earned-info transition:** scouted/revealed candidate info shows easily on the
65+
offer page; as you move through sub-menus, earned info persists/transmutes, static bits stay.
66+
(Direct application of the pain/payoff principle.)
67+
- **Reload from an earlier era** on defeat (once autosave lands) -- "make better decisions."
68+
- **Dev tools / debug reinstatement + upgrade:** better dev/debug tooling may have been lost /
69+
re-hotkeyed / combined during the UI work -- audit, restore, and upgrade. Add a processing-time
70+
/ perf readout in debug modes.
71+
72+
## P2 -- flavour + polish
73+
- **Early-game idle / "browse the internet" / shitpost actions:** low-stakes flavour actions that
74+
fill the calm early turns and reinforce the sense of time passing.
75+
- **CoD-style AI-safety quote collection** on defeat ("whoops, defeat" -- a rotating set of real
76+
AI-safety quotes; light rage-bait; extends the existing aisafety.info link).
77+
- **Loading screens / screen transitions** if runtime creeps (the baseline sim can hang a beat);
78+
make them a fun rage-bait moment. Tie to the debug processing-time work.
79+
- **Full Gantt / progress lane** for the two-view split (the wireframe's progress-bar idea, fuller
80+
version once the in-queue progress lands).
81+
82+
## Art to generate (a few hundred generations spare)
83+
- Onboarding "absent item" glowing-green dashed outlines (or do as a shader -- likely cheaper).
84+
- UI elements / panel frames / status blips (the earlier UI-filler batch was weak; pair with the
85+
palette + likely the gpt-image-1 pipeline for icons).
86+
- Loading-screen art.
87+
88+
## Cross-refs
89+
`BUILD_BRIEF_PLAN_WATCH_UI.md` (two-view), `PALETTE_AND_DOOM_INTENSITY.md` (glow colours for the
90+
green dashed outline = the "ok/computers-working" green), `docs/art/reviews/` (prop art for the office).

0 commit comments

Comments
 (0)