0.7.3:0 — bundle Station Master v0.7.3
Submodule pinned to v0.7.3 (45580d8), `current.ts` at `0.7.3:0`, release notes rewritten in all five locales, README.md and instructions.md updated. No new version file and no migration: the outgoing 0.7.2:0's `up` is empty, which is `versions.md`'s common case, so `current.ts` bumps in place and `index.ts` is untouched. Two features, both about the end of a game. A game no longer stops dead when the timetable runs out — it enters a fourth state, `awaitingExtension`, and asks the table whether to play one more Day, unanimously in multiplayer with one refusal decisive. The official result is frozen at the original `config.days` and never rewritten, so playing on is explicitly an exhibition, and a §3.4 collision breach is neither extendable nor able to overwrite a recorded result. And the end of a game renders a full results screen in place of the raw `outcome.reason` enum the page used to print. GAMES IN PROGRESS SURVIVE THIS ONE, which is the opposite of the last release and is why the notes lead with it in every locale. No card data changed and the engine changes are additive, so every intent in a 0.7.2 save is still legal: the save replays intact and the game simply pauses on the new question at the end. Upstream proves it rather than asserting it — the suite replays the three recorded games in `public/replays`, all made under an older ruleset, and asserts every intent still applies. Anyone updating from 0.7.1 or earlier is still in the old boat, and both docs say so. README.md gains a short diagnosing note, since `awaitingExtension` is a state an administrator can meet and misread: such a game is persisted and listed as `active`, resumes on restart like any live game, and shows nobody to wait for — because a vote is not a turn. Verified: `npm run check` clean, prettier clean, `make x86` packs as v0.7.3:0. NOT verified: not installed on a box and not played. Extended play has never been exercised against a running service — upstream `TODO.md` #35. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EAgJSmeV8zrMh55Mj85ESb
This commit is contained in:
+30
-6
@@ -43,13 +43,37 @@ changing any of them marks the game **Custom**, which keeps the scoring of the t
|
||||
from. The seed, the number of players and the number of Days sit above the type and do not make a
|
||||
game Custom — the targets re-derive from them.
|
||||
|
||||
**What changed in 0.7.2.** First, the thing to know before you update: **a game already in progress
|
||||
will not carry over.** The card deck has changed size, so a game saved under 0.7.1 can no longer be
|
||||
replayed, and the server declines to resume one rather than breaking it — it says which move it
|
||||
stopped at and leaves the save file alone. If you are mid-game and want to finish it, do that before
|
||||
updating, or put 0.7.1 back on afterwards.
|
||||
**What changed in 0.7.3.** **Your games in progress survive this one** — unlike the last update,
|
||||
nothing about the deck or the way a game is saved has changed, so a game saved under 0.7.2 picks up
|
||||
where it left off.
|
||||
|
||||
At the table, three things look different. **Crossing a Mainline card is quicker, and counted
|
||||
**The game asks before it ends.** When the last Day on the timetable runs out, you are no longer
|
||||
simply told the game is over: you are asked whether to play one more Day. Say yes and you get one
|
||||
Day — not two, not the rest of the evening — and at the end of it you are asked again. In a
|
||||
multiplayer game **everybody has to agree**, and one "no" ends it there and then, so nobody is kept
|
||||
playing a game they have finished with.
|
||||
|
||||
**Playing on cannot change who won.** The result is decided at the length you dealt the game for. If
|
||||
you set up five Days and carry on to eight, the winner is still whoever was ahead at the end of Day
|
||||
5, and the results screen says so — everything after that is recorded as what it is, an exhibition.
|
||||
One exception: a game that ends because of **too many collisions** is over for good and is not
|
||||
offered another Day, whether that happens on a scheduled Day or an extra one. A railroad that has
|
||||
been declared unsafe does not carry on regardless.
|
||||
|
||||
**The end of a game now tells you what happened.** In place of one line and a number there is a full
|
||||
results screen: why the game ended, in plain English rather than a code; who won and by how much;
|
||||
every player's Revenue side by side; the rules the game was actually dealt under, including the pay
|
||||
rates and any optional rules; who did what; and what the railroad managed — trains that ran the
|
||||
length of the Division and how many of them did any switching on the way, loads made up and broken,
|
||||
passengers boarded and set down, cars coupled and set out, and any trains lost to a collision along
|
||||
with the cars that went with them. It comes up by itself when the game ends and there is a button to
|
||||
open it again, so playing on never costs you the results.
|
||||
|
||||
**What changed in 0.7.2.** Before you read on: that update was the one where **a game already in
|
||||
progress did not carry over**, because the card deck changed size. If you are updating from 0.7.1 or
|
||||
earlier, that still applies to you.
|
||||
|
||||
At the table, three things looked different. **Crossing a Mainline card is quicker, and counted
|
||||
differently**: the speed sign printed on the card was always just scenery, and what decides the time
|
||||
is the number of regions drawn on it — Plains and Double Track one, Curves and Tunnel two, Heavy
|
||||
Grade three unless you have Helpers or Brakeman on it. A train's **Fast/Slow rating only matters on
|
||||
|
||||
Reference in New Issue
Block a user