Fix repayments that overcharged, and act on the first Frontier playtest
A debt repayment took its whole instalment even when less was owed: four dollars owed at the store cost twenty. Content could not express "pay what is owed", so an add effect's amount may now be read from state, with a cap. Five repayments across both packs use it, and a conformance test holds every pack to it. The turn record now says which options were hidden, so the analyser stops counting doors nobody saw, and it reads only feedback logs. From the same session: wages are labelled as wages, a clamped change says where it stopped, two unreadable option labels are rewritten, the sale barn no longer offers what the player already owns, Ward hints at what the promotion waits for, and the office has five more events. DECISIONS #38-40. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01C6UDQ9o6L6Ey173U7XVou6
This commit is contained in:
co-authored by
Claude Opus 5
parent
d84ae495f4
commit
112e558dbb
@@ -25,7 +25,7 @@ real browser.
|
||||
| Event selection, option gating | done |
|
||||
| Turn loop, per-turn upkeep | done |
|
||||
| Content validator + reachability tests | done |
|
||||
| Corporate Ladder pack — 31 events, two tiers | done |
|
||||
| Corporate Ladder pack — 32 events, two tiers | done |
|
||||
| Turn screen, retrospective, feedback widget | done |
|
||||
| Local-storage save, file export/import | done |
|
||||
| Single-file build | done |
|
||||
@@ -34,10 +34,10 @@ real browser.
|
||||
| Repetition analytics (`npm run analyze`) | done |
|
||||
| Version and build shown on screen | done |
|
||||
| Keyboard play (Enter / Tab) | done |
|
||||
| Second content pack — The Frontier, 29 events, two tiers | done |
|
||||
| Second content pack — The Frontier, 37 events, two tiers | done |
|
||||
| Setting picker, one save slot per pack | done |
|
||||
| Pack conformance suite (every pack, every check) | done |
|
||||
| Played in a real browser | Corporate Ladder yes, first playtest 2026-09-09; **The Frontier not yet** |
|
||||
| Played in a real browser | Corporate Ladder since 2026-09-09; The Frontier 2026-09-15 (112 turns, 0.3.3) |
|
||||
|
||||
The first playtest confirmed the interface, saves and the exported log all work
|
||||
in a real browser. Its findings — an unexplained daily drain, no sense of the
|
||||
@@ -58,7 +58,7 @@ npm run serve # then open http://localhost:8080
|
||||
The game plays from the keyboard: Enter takes the focused option, Enter again
|
||||
moves to the next day, and Tab / Shift+Tab pick a different option. The top of
|
||||
every screen names the game, the pack, your current title, and the build —
|
||||
`0.3.0 · dev` when running from source, and the commit it came from when built.
|
||||
`0.3.4 · dev` when running from source, and the commit it came from when built.
|
||||
|
||||
A server is needed during development because browsers refuse ES module imports
|
||||
over `file://`. If port 8080 is taken, run `python3 -m http.server <port>`
|
||||
@@ -74,7 +74,7 @@ That is one self-contained file with the stylesheet and every module inlined.
|
||||
It plays by double-clicking it — no server, no network, nothing installed.
|
||||
|
||||
```sh
|
||||
npm test # 149 tests: engine, both packs, UI wiring, and the build
|
||||
npm test # 162 tests: engine, both packs, UI wiring, and the build
|
||||
```
|
||||
|
||||
Tests are in three layers. `test/conformance.test.js` runs over **every pack in
|
||||
@@ -101,34 +101,32 @@ used only to run the tests, the single-file build, and the log analyser.
|
||||
|
||||
## Where things stand
|
||||
|
||||
The MVP is complete and has survived three playtests, and a second setting now
|
||||
exists to prove the engine/content split holds. Adding it required **no engine
|
||||
change** — and three interface changes, two of which were latent defects a
|
||||
second pack made visible (a single global save slot, and the one place the UI
|
||||
still named a setting). See DECISIONS.md #34.
|
||||
The MVP is complete and has survived four playtests, and a second setting exists
|
||||
to prove the engine/content split holds. Adding it required **no engine change**
|
||||
— and three interface changes, two of which were latent defects a second pack
|
||||
made visible (a single global save slot, and the one place the UI still named a
|
||||
setting). See DECISIONS.md #34.
|
||||
|
||||
The Frontier had its first human session on 2026-09-15: 112 turns, promoted on
|
||||
turn 44, both lifestyle purchases taken and the standing charge firing as
|
||||
designed. What it found — an overcharging debt repayment in both packs, wages no
|
||||
one could recognise, a sale barn offering what the player already owned, and an
|
||||
office stage too thin — is what 0.3.4 fixes. The repayment fix needed one small
|
||||
engine addition: an effect's amount may be read from state. See DECISIONS #38–40.
|
||||
|
||||
Open questions, in the order they are likely to matter:
|
||||
|
||||
- **The Frontier has never been played by a human.** Its economy is asserted by
|
||||
the conformance suite and exercised by six archetypes, and that is exactly the
|
||||
evidence that was not enough the last two times. It needs a session before its
|
||||
numbers are believed.
|
||||
|
||||
- **Standing costs money to keep, and the Frontier's version is unplayed.**
|
||||
Each setting has a `lifestyle` tier bought on the second rung and charged for
|
||||
every cycle after, a standing penalty for lagging behind what the job expects,
|
||||
and a charge levied by standing itself that no purchase ever ends. Corporate
|
||||
Ladder's has had one 96-turn session: both purchases were found and taken, and
|
||||
the standing pressure worked, but the run arrived at the top with nothing left
|
||||
to spend on — which is where the never-stopping charge came from. The Frontier
|
||||
carries the same system at its own scale and has never been in front of anyone.
|
||||
See DECISIONS #36.
|
||||
- **Dispatch is eleven events against the mailroom's nineteen.** It passes the
|
||||
variety guard, but it has had far less play than the mailroom. Waits on more
|
||||
playtesting.
|
||||
- **0.3.4 has not been played.** Everything in it is asserted by tests and
|
||||
archetype runs, which is the evidence that was not enough before. In simulation
|
||||
promoted Frontier runs now end with about twice the money they did ($164 against
|
||||
$88) and less standing, and why is not yet isolated. The next Frontier session
|
||||
should watch whether money stops mattering at the top. See DECISIONS #40.
|
||||
- **Dispatch is twelve events against the mailroom's eighteen.** It passes the
|
||||
variety guard, but it has had far less play than the mailroom. The Frontier's
|
||||
office had the same thinness in a real session; Dispatch may too.
|
||||
- **A third tier in either pack.** Two rungs is what both settings have. The
|
||||
split is now proven across settings; it is not proven across a long ladder.
|
||||
Waits until the Frontier has been played.
|
||||
split is now proven across settings; it is not proven across a long ladder. The
|
||||
Frontier has now been played once, so this is the designer's call to open.
|
||||
|
||||
Settled, and not open: Corporate Ladder's negotiation gate stays as it is, and
|
||||
the feedback widget stays as it is (DECISIONS #35). Money mattering late is
|
||||
|
||||
Reference in New Issue
Block a user