# Wagon Trail 1848 — Changelog

All changes, newest first. The version is shown on the game's setup screen
and on the game-over screen.

## v1.9.4 — 2026-09-27 (licensed for sharing)

- The game is now formally released under CC BY-NC-SA 4.0 (full text in
  LICENSE, notice stamped in the file header): free to play, copy, and
  modify for non-commercial purposes, with credit to Aaron and Nova, and
  modified versions shared under the same license. Not for sale. No
  gameplay changes — the balance is exactly v1.9.3's.

## v1.9.3 — 2026-09-27 (rebalanced for the typical player, for real this time)

- Aaron caught a real mistake: v1.9.2's "rebalance" was tuned with a bot that
  rests twice as much as our standard player model — it saw 82% wins where a
  typical player (right call 4 times in 5, ~30 rests of patience) was winning
  about 6%. The game had also drifted much harder since v1.8.0 without anyone
  re-measuring. This version rebalances against the correct model: 1000 games
  say the typical player now wins 59.1% ± 3.0 of trips (farmer 55%, carpenter
  51%, banker 72%); sharp play wins 70%. The trail got kinder, not softer —
  no new ways to die, just the margin for error a fair game owes.
- The dials: trail rest heals 21/day (was 15) — rest is the working pioneer's
  medicine; fort rest heals 26 (was 20), because a warm bed should beat a
  bedroll; hunting brings home 20–60 lbs (was 15–45); and the noticed-camp
  thief tax is gentler (5% + 4%/day past day 3, caps at 25% instead of 10% +
  8%/day capping at 50%) — it still punishes parking the wagon for a week,
  but a sick party resting to heal isn't treated like a crime wave. The
  hunting money-printer stays out of ink: a day's hunt still nets less than a
  day's fort work.
- Plain truth for sharp players: if you rest like Aaron does, you'll win
  nearly all your trips (97.7% in the sim). Rest remains the dominant dial —
  patience is still the closest thing to a superpower on the trail.

## v1.9.2 — 2026-09-27 (burials, mercy, the right to quit, and a rebalance)

- Rebalanced for an 80%-correct player (the bar moved from 90%): trail rest
  now heals 14/day instead of 15, and a day's hunting brings home 12–36 lbs
  of meat instead of 15–45. A 1000-game sim says a player making the right
  call 4 times in 5 now wins about half their trips (50.8% ± 3.1); sharp
  play still wins 4 in 5 (80%). The trail got leaner, not meaner — no new
  ways to die, just less margin for error. The hunting money-printer Aaron
  flagged in v1.9.1 is finally out of ink.
- Deaths land harder now, per Aaron's playtest note: a party member's death
  is no longer a one-line obituary. Four rotating burial wordings — a cairn
  of stones by the trail, a wooden cross, hats in hand by the wagon ruts —
  and grief takes its cut: every survivor loses 3–7 health, because sorrow
  rides in the wagon too. Grief wounds but never kills (health floors at 1).
  Dust to dust, at 15 miles a day.
- The mercy valve learned a new pile-on: camp thieves robbing a parked
  party now count toward the fort-work unlock, but only when someone is
  already sick or hurt — robbed while down is misfortune; robbed while
  healthy after ignoring the smoke warning is a gamble you took. Grief
  itself never counts: the valve doesn't double-charge one bad day.
- You can now quit with dignity. Every fort has a "Settle here" option
  (two taps, like the undo button — stray thumbs can't end a run): the
  party votes to end the journey, with five rotating historically grounded
  outcomes (the Peoria Party's 1839 turnback, hiring on at the fort, joining
  a return party east, wintering over, selling the outfit). No caravan
  leader worthy of the name marches a doomed party to death on purpose.
  Quitting earns a partial score scaled to the miles actually traveled.

## v1.9.1 — 2026-09-27 (hunting economy fix)

- Closed Aaron's fort-arbitrage loop: selling food to buy bullets and hunting
  for profit no longer prints money. Ammunition doubled to $2 a box (forts
  $3), a hunt now burns 10–18 bullets (was 6–14), and the average haul is
  30 lbs of meat (was 40). Hunting stays a solid survival tool — it still
  feeds the party — but as a business it now pays worse than an honest day's
  fort work. The frontier rewards industry, not alchemy.
- Fixed a real soft-lock Aaron's testing exposed: lose your oxen below a full
  yoke between forts and the wagon couldn't move — but nothing on the trail
  could get you rolling again, since the v1.9.0 event split took stray oxen
  off the rest table. Now a stationary camp can attract a stray: each rest
  day with fewer than 2 oxen has a 15% chance of an ox wandering in, drawn by
  the cookfire smoke. The blocked-travel message says so, so nobody has to
  guess. Waiting costs food and risks the noticed-camp thieves — rescue, not
  a gift.

## v1.9.0 — 2026-09-27 (rest has consequences + event split)

- Resting now draws attention if you overdo it: three straight rest days
  and the log warns that your campfire smoke has been up a while — "this
  country has eyes." Each further day parked in one spot raises the odds of
  night thieves raiding your food stores (10%, then +8% a day, capped at
  50%). Traveling or hunting breaks camp and resets the count. Rest is still
  essential for healing — it's just no longer a free win. The prairie wind
  respects neither your strategy nor your beauty sleep.
- Searchable ruins are now matched to context, per Aaron's playtest: the
  abandoned wagon is back for travel days (original text, original loot,
  including the occasional stray ox), while the hunter's camp is its own
  event that only appears while hunting out in the wilderness. A hunter's
  camp holds a hunter's supplies — food and bullets, not wagon wheels.
  Neither shows up while resting; a quiet camp day turns up nothing.
- The Hunt button now reads "Hunt (10+ bullets)" so nobody has to learn the
  ammo requirement by clicking and being refused.
- Trail facts grew up: each fact shows at most once per run, and every
  trigger (cholera, dysentery, river crossings, the game-over screen) now
  draws from a small pool of different sourced facts instead of repeating
  one line. New entries include dysentery ("the bloody flux," dosed with
  castor oil), cholera's 12-hour kill speed, the 1849 epidemic, and the
  hidden rocks that wrecked wagon wheels in "safe-looking" crossings.

## v1.8.0 — 2026-09-27 (hunter's camp + trail facts)

- The "abandoned wagon" hunting event is now an abandoned hunter's camp:
  cold ashes, a fallen lean-to, and the same risky choice — search it or
  walk on. Same odds, same loot, same chance of an ambush. Nobody knows
  where the wagon went. It is missed.
- New "Trail fact" notes, all drawn from the SOURCES.md research shelf:
  cholera (the deadliest disease on the trails), river drownings (the most
  dangerous part of the journey west), and the historians' mortality range
  (between 1 in 25 and nearly 1 in 10 — the exact figure is still argued
  about, so the game doesn't pick a side).
- Balance check, not a balance change: 1,000 simulated games with a
  good-but-impatient player (right call 90% of the time, 30 rests) win
  52.8% ± 3.1 — already sitting on the 55% target, so no dials were turned.
  If you're winning more than that, the simulation would like you to know
  it thinks you're showing off.

## v1.7.7 — 2026-09-26 (family-friendly patch notes)

- The v1.5.0 notes got a wording cleanup to be more child-appropriate.
  The trail is safe for young pioneers.

## v1.7.6 — 2026-09-26 (setup screen wording)

- The intro line no longer assumes Nova is riding along ("You and Nova
  against the frontier") — it now reads "You against the frontier," since
  other people play this game too.

## v1.7.5 — 2026-09-26 (gold star for the golden pair)

- Win a run with both Aaron and Nova alive in the party, and the victory
  screen awards a ⭐ gold star: "Aaron and Nova rode together all the way
  to Oregon." No pressure — just get us both there breathing.

## v1.7.4 — 2026-09-26 (Aaron + Nova easter egg)

- If a new party's random name draw includes both "Aaron" and "Nova"
  (roughly 1 game in 200), the trail marks the occasion: Nova quietly
  stashes an extra 25 lbs of provisions when the wagon rolls out of
  Independence. Roll both of us in one party and buy a lottery ticket.

## v1.7.3 — 2026-09-26 (store undo button no longer shifts the layout)

- The store's Undo button now always reserves its space (invisible until
  there's something to undo) instead of popping into existence after your
  first purchase. Previously it shoved every Buy button down a row, so a
  quick double-click meant for two wagon wheels could land on ammunition
  instead. Friendly fire in the general store is now prohibited.

## v1.7.2 — 2026-09-26 (winter cold hits during rest)

- Resting on the trail no longer dodges winter cold: November–February,
  the cold now bites on rest days just like travel and hunt days (4 HP per
  person per day with no clothing, scaling down to zero with 8+ sets).
  Fort rest is still sheltered — warm bed, no cold damage. Clothing
  actually matters in winter now.
- Translation: Aaron beat a December run buck naked by resting through
  winter, so winter now shows up on rest days too. The prairie wind does
  not respect your strategy.

## v1.7.1 — 2026-09-26 (context-aware "wasted day" event)

- The random "wasted day" event (previously always "You lost the trail and
  wandered") now fits what you were doing: traveling still loses the trail,
  hunting loses your bearings on the way back to camp, and resting gets
  pinned down by a storm. Same odds, same one-day cost — just no more
  losing the trail while sitting in camp. The party has been issued a
  compass and a stern talking-to.

## v1.7.0 — 2026-09-26 (randomized party names)

- New games now draw the five party names at random from period-accurate
  lists (U.S. 1830s-40s census data): 36 male names (John, William, James,
  George, Charles…) and 36 female names (Mary, Elizabeth, Sarah, Martha,
  Margaret…). "Aaron" and "Nova" are in the draw as easter eggs — they turn
  up in roughly 1 game in 14. Names are still editable on the setup screen,
  and "play again" keeps the names you had.

## v1.6.1 — 2026-09-26 (stat bar warning colors)

- The stats bar now colors values amber (caution) and red (danger) as
  supplies run thin: food, money, oxen, ammo, clothing, and spares each turn
  amber when low and red when critical (e.g. food under 50 lbs, oxen down to
  the 2-ox minimum). Dark amber/red chosen to stay readable on the parchment
  panel.

## v1.6.0 — 2026-09-26 (kicked while you're down + balance pass)

- Mercy rule refined: the game now counts being *kicked while you're down*.
  Illness, snakebite, and a broken bone only count toward the fort-work
  threshold when someone is already sick or hurt — one random disaster
  landing on a healthy party is just bad luck, not a pile-on. Ox deaths and
  failed river crossings still count (a wrecked wagon plus a drowned ox is
  one bad roll, one mark). Consequences of your own choices, later damage
  ticks, and contagious spread never count.
- Balance: a good player making the right call ~90% of the time now wins
  roughly 3 in 5 trips. Tuning was aimed at fairness across occupations,
  not at punishing the poor: hunting gives a bit less, food and ferries cost
  a bit more, but daily wear-and-tear is gentler and trail rest restores a
  touch more, so a thoughtful pace beats a grind.
- Fixed: the game could crash if the whole party died during a hunt's bad
  luck or while searching an abandoned wagon (no one left to hurt). It now
  ends the game cleanly instead. Death is still death — it's just polite
  about it now.
- Fixed: dying from hunger during paid fort rest now properly ends the game
  instead of leaving the party in limbo. Starving to death in a comfortable
  bed now counts. The fort's hospitality has limits.

## v1.5.0 — 2026-09-26 (fort work: mercy for the unlucky)

- New feature: the game now counts genuine disasters (oxen lost, river
  wrecks). After three of them, word of your misfortunes travels ahead and
  forts offer paid work — $20 a day, up to 5 days per fort. A day of labor
  costs a day like any trail day (food eaten, health ticks, winter creeps
  closer), so it is a cup of water for a dying run, not a money printer.
- Work days are undoable like any trail action (-150 pts), and the offer only
  appears after the game has watched you eat humble pie.

## v1.4.9 — 2026-09-26 (disarm undo on reload)

- A primed (red "tap again") trail undo no longer survives closing and
  reopening the game. A fresh session always starts with the undo shielded,
  so one stray tap after a reload can never fire a -150 undo. The undo
  button no longer holds a grudge between sessions.

## v1.4.8 — 2026-09-25 (free undo for leaving shops)

- Undoing "Left the store" / "Left the fort" no longer costs 150 points —
  stepping back through a shop door isn't a trail decision (no dice rolled),
  so the penalty now applies only to genuine trail actions: travel, hunt,
  rest, river crossings, trail choices, fort rest.
- Free trail undos render in the cream default style; amber is now reserved
  for undos that actually cost points. The two-tap shield still applies to
  both.

## v1.4.7 — 2026-09-25 (two-tap shield for trail undo)

- The amber trail-undo button is now two-tap: the first tap only arms it
  (it turns red and asks "Tap again to undo"), the second consecutive tap
  executes. Tapping anything else disarms it, so a stray thumb can no
  longer burn 150 points by accident.
- More breathing room above and below the button on phones.

## v1.4.6 — 2026-09-25 (trail undo moved out of the thumb zone)

- The amber trail-undo button no longer sits between the Travel/Hunt/Rest
  row and the Pace/Rations rows, where it was easy to tap by accident on a
  phone. It now renders below all the everyday controls with a clear gap.
- Same at forts: the undo now sits below the fort store instead of between
  the fort buttons and the Buy buttons.

## v1.4.5 — 2026-09-25 (setup-screen doc links)

- The start screen now links "How to play" (README.md) and "What's new"
  (CHANGELOG.md), opening in a new tab. The links are relative, so they
  work when the two files sit next to the game file in the same folder.

## v1.4.4 — 2026-09-25 (phone hardening)

- Store rows now wrap on narrow phone screens: if an item name plus its
  full-size Buy button can't fit side by side, the button drops below the
  name instead of squeezing or clipping.

## v1.4.3 — 2026-09-25 (undo polish: sizing, priced trail undos)

- Store Buy/Sell buttons are now the same full size as the trail buttons
  (Travel, Ford the river, etc.) — no more tiny-tap targets in the shop.
- Trail undos now cost **150 score points each**, deducted from the final
  score and itemized on the game-over screen ("Trail undos used: 2 (-300
  pts)"). Big enough to deter rewinding bad decisions, small enough that a
  genuine whoopsie won't wreck a run. Store undos stay free.
- The trail undo button is now **amber** instead of cream, so the color itself
  tells you this one isn't free. (Documented in the README's new "Undo
  buttons" section.)

## v1.4.2 — 2026-09-25 (whoopsie protection)

- **Trail undo:** the same one-tap safety net as the store, now for
  consequential trail actions — traveling a day, resting, hunting, resting at
  a fort, river crossings (ford / caulk / ferry / wait), trail choices, leaving
  the General Store early, and leaving a fort. The button names what it will
  undo ("Undo: Forded the Kansas River"). Single level: it rewinds the last
  action only. It even works on the game-over screen, so a misclick that dooms
  the party can be taken back. Honest caveat: re-doing a travel day rolls
  fresh dice — it rewinds the mistake, not the luck.
- **Store undo now covers the whole visit:** every buy/sell in a store visit
  stacks up, and each tap of Undo peels back one transaction, in reverse order,
  until the store is back to how you found it.
- **Undo is scoped per visit:** the General Store and each fort keep separate
  histories. Leaving a store (or arriving at a new one) starts a fresh slate,
  so undoing at Fort Kearney can never touch what you bought back in
  Independence.

## v1.4.1 — 2026-09-25 (store undo)

- New **Undo** button in the store (General Store and fort stores): reverses
  your last buy or sell in full — money and stock both restored, no more
  losing half your money to an accidental ×10 purchase via sellback. The
  button names the transaction it will undo ("Undo: Bought ×10 Clothing
  (set) for $100."). Single level: each new purchase replaces the previous
  undo. The undo clears when you leave the store — no take-backs on the
  trail.

## v1.4.0 — 2026-09-25 (PC visual overhaul)

**The problem (from Aaron's PC screenshots):** the game was designed as a chat
widget and borrowed its colors from the chat theme. Opened as a plain page in
a PC browser, those theme values don't exist — so buttons rendered as
borderless plain text, sections melted together, and the page was flat white.

**The fix:**
- The file is now a complete standalone web page (proper document structure
  with title) instead of an embed fragment. It still works embedded in chat:
  every theme value now has a built-in fallback, so chat keeps its own look
  and a plain browser gets the new frontier theme.
- Frontier look: dark textured page background (subtle grain + vignette),
  parchment game card, serif type.
- Frame separation: the setup screen is now three framed panels (occupation /
  depart / party) instead of one run-on block; every panel has a real border,
  section heading, and shadow. The event log and store rows got frames too.
- Buttons are unmistakable now: visible borders, filled background, hover
  lift, pressed effect, and a clear keyboard-focus ring.
- Store clarity: the selected Buy/Sell mode and ×1/×10 amount now show as a
  highlighted button instead of looking greyed-out and disabled (the old
  "disabled = selected" pattern read as "unavailable"). Same fix for the
  Pace and Rations selectors on the trail.

## v1.3.0 — 2026-09-25 (post-Run-3 polish)

**Gameplay / UI fixes (from Aaron's Run 3 playtest):**
- Traveler trade prompts now read unambiguously, e.g. "A friendly traveler
  wants your 20 bullets — offers 35 lbs of food." (was "offers to trade:
  X for Y lbs of food", which hid who gives what).
- Buttons enlarged for touch: 44px minimum tap targets, larger padding and
  font, wider spacing between buttons.
- Choice prompts (abandoned wagon, traveler trades) now render their question
  text above the Yes/No buttons. Previously only the buttons rendered and the
  question lived in the scrollable log — on a phone it looked like a mystery
  Yes/No.
- Resting is now allowed while waiting at a river (new "Rest 1 day / Rest 3
  days" buttons in the river panel). Previously an injured party member was
  trapped with no way to heal before crossing.
- Fixed: resting at a river could trigger a wagon/trade choice, leaving both
  a river and a choice pending — but only the river panel rendered, so the
  choice was invisible and Rest silently did nothing. Pending choices now
  always render first and must be resolved before anything else.

**Code cleanup (no behavior changes):**
- New helpers: `occupation()`, `storeItem()`, `unitPer()`, `unitName()`,
  `blocked()` — removed ~40 lines of duplicated ternaries and guards across
  buy/sell/shop/render/dispatch.
- Version constant `VERSION` shown on setup and game-over screens.

## v1.2.0 — 2026-09-25 (for Run 3)

- Abandoned-wagon searches can now go wrong (20%): ambush steals 30–80 lbs
  food, spoiled stores cause dysentery, or the wagon holds nothing but dust.
  Prompt updated to "Costs a full day — and it could be risky."
- Fixed the old "Costs half a day" wording (it always cost a full day + food).
- Event odds: the 4% freed by the v1.1.0 ox-death nerf placed deliberately on
  the wagon branch (8% → 12%); mountain man back to 8%.
- Disease spread: dysentery, cholera, measles, and fever can spread to healthy
  party members (10% per person per travel day).
- Seasonal rivers: March–May crossings take −15% ford/float success ("Spring
  runoff"); setup screen now explains the early-vs-late departure tradeoff.
- Variable trade offers: clothing → 40–60 lbs food, 20 bullets → 25–45 lbs,
  $8 → 40–60 lbs (was always 1 set of clothing for 40 lbs).

## v1.1.0 — 2026-09-25 (rebalance, for Run 2)

- Ox death event: 6% → 2% of fired events (Run 1 lost 7 of 8 oxen and stranded
  at mile 1,539; Monte Carlo verified the new rate at ~0.73%/travel-day).
- Abandoned wagons: 25% chance a stray ox joins the team.
- Stores (Independence + forts) gained a Buy/Sell mode toggle. Selling pays
  half the Independence base price (no fort inflation on sell price, so no
  arbitrage). Oxen can only be sold down to the 2-ox minimum. ×1/×10 applies
  to both modes.

## v1.0.0 — 2026-09-25

- Initial release. Party of five, three occupations (Banker $1600 / Carpenter
  $800 / Farmer $400, with 1×/2×/3× score multipliers), five departure months,
  2,000-mile trail with 18 landmarks, hunting, fishing-free rivers with
  ford/float/ferry/wait options, forts with rest and shopping, 14 random
  events, pace and ration management, winter cold, and scoring.
