CR-021 §6: plan 0.3, 0.5 and 12.1, CR-001 goals note, CR-014 Step 14.6
(the event-queue catch-up) and CR-019 (pilots choose from completable
boards). Full suite and e2e pass.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
An away scenario in the balance simulator: hired pilots fly Independent
for 8 hours and earn a median 56% of active play with the same fleet
(target 40-80%), never below the spending floor or stranded (CR-021).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A 'Yours for' chip in the first-look window, a 'Catching up on your
fleet' indicator for slow catch-ups, and a per-pilot logbook with company
totals on the away sheet (CR-021).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Buy the Dispatch Office on the Bridge; set hired pilots Independent,
see what they're doing and edit their orders on Pilots; the spending
floor in Settings; an Independent badge on Fleet (CR-021).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
CR-020 and Phase 20 went to the Bridge dashboard, recorded first in
another session. Independent Pilots is CR-021 (decisions 0.5.122-0.5.130);
its Steps 20.1-20.5 commits are Steps 21.1-21.5.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The dispatch sheet tells the engine which contract the player has open;
Independent pilots leave it alone, and the loop runs their decisions
while the app is open (decision 0.5.122).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Commands and the resolution loop replay arrivals and Independent
pilots' decisions in time order, at most 7 days, in chunks with
progress; the same time always gives the same save (decision 0.5.125).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Commands to buy the Dispatch Office, set a pilot's mode and orders, and
set the spending floor; save version 5 starts every pilot on Manual
(decisions 0.5.118-0.5.120).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Pure functions for Independent pilots: the jobs they may take, profit
per hour, fuel bought only for the leg above the spending floor, and the
chosen action (decisions 0.5.120-0.5.124).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
GameConfig.independentPilots: Dispatch Office price, first-look window,
turnaround, empty periods before heading home, catch-up cap and spending
floor (CR-020).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
CR-019 §6 amendments (plan 0.5.52, 0.5.53, 3.9, 9.4, 12.1; CR-002,
CR-006, CR-007). The balance player reads boards for the qualifying
fleet; e2e 12.6 learns Heavy Cargo before a Heavy job is offered.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contract cards drop the Too heavy and Too slow badges; an empty board
says no job fits the fleet, with the refresh countdown (decision 0.5.114).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Location boards are generated for the qualifying fleet and store it;
reads hide jobs it can no longer complete. Save version 4 drops stored
boards (decisions 0.5.115, 0.5.117).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
With a fleet, boards keep only candidates some pair can complete, up to
the board size or 200 attempts (decision 0.5.114). The balance player
keeps enough cash to refuel landed ships before buying one.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
permanentFailure, completability and qualifyingFleet: a job is
completable when some qualifying ship-and-pilot pair passes every
permanent check (decisions 0.5.114-0.5.116).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
CR-018 §6: plan 0.5.94, 0.5.96, 0.5.97 and 12.1, CR-015 §3, D5, Steps
15.4 and 15.6, CR-013 Step 10M.3 amended. The e2e flying helper refuels
before each trip now that ships are on Manual.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A Fleet card warns Low fuel when the tank can't fly the ship's longest
leg to a discovered place; the fuel sheet lists Manual first as the
default (decisions 0.5.112, 0.5.113).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
New ships (deal or Market) come full on Manual refueling; save version
3 puts every existing ship on Manual. The balance simulator refuels only
when a job needs it (decisions 0.5.111, 0.5.112).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Base fuel price 10 -> 5 cr/fu. No route is above 25% of the median
fitting payout but the Clipper's Mars -> Earth; the first purchase
window is now 30-95 min (user decisions, 0.5.110).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
For every purchasable ship and route it can fly, the leg's fuel at the
origin's price against the median payout of fitting contracts; the
balance script prints the table (decision 0.5.110).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
CR-017 §6: plan 0.5.30, CR-001 (story, 0.5.22, Steps 10A.1, 10A.3,
10A.7, 10A.8) and CR-011 Step 10H.4 amended. Full suite and balance
targets pass.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A one-time tip after the deal and the notification permission prompt,
listing each pilot's unspent skill points, with Go to Pilots and Later
(decision 0.5.109). The engine client exposes the pending permission
prompt as ApiClient.notificationPrompt().
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The Pilots tab badge shows the total unspent skill points across all
pilots, hidden at zero (decision 0.5.109).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Tests the five-run deal: not after four runs, available after the fifth
at the Moon, both pilots and ships at Earth after accepting, and an
older save with four runs done needing one more. No save migration is
needed since the deal is worked out from the run count.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The tutorial timing test now sums the slowest job on each of the five
runs' boards and keeps the total under 7 real minutes.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Tutorial runs earn their XP times the tutorial XP multiplier. At 2x
the five cheapest runs make exactly the 100 XP for level 1, so the
avatar always has a skill point at the deal.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Five tutorial runs before the deal and a tutorial XP multiplier of 2.
The deal no longer waits for the loaner to be back at Earth, since five
runs end at the Moon; accepting it still puts the avatar at Earth.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Applies CR-016's amendments to the implementation plan (eight
locations, the deferred list, content, map art, goods, fuel and balance
notes) and documents the belt and label planning. Phase 16 is complete.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Io and Europa sit at fixed screen offsets around Jupiter and Venus at
its place. Crowded label families fold into the parent's label with a
"+N" marker (the Jupiter system below zoom 2.5); tapping it or zooming
in shows all three. The haze strip is finer and repeats so it doesn't
streak when zoomed in. The discovery browser test waits for a Mars
first contact now that Venus competes for the slot.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Scatters 220 rocks from the six sliced images across the belt with a
seeded generator (denser in the middle, mostly small, varied rotation
and brightness), keeps them clear of Ceres at every zoom, and draws them
in one non-interactive container. Review screenshots added.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Draws the asteroid belt's haze as a ring mesh between 314M and 494M km
on the map's compressed scale: a strip drawn in code (or belt-haze.png
when provided) wrapped around the ring, static, non-interactive, above
the orbit rings and below routes and bodies. Review screenshots added.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The art script slices belt-asteroids.png into its six separate rocks
(connected regions of visible pixels, each cut out on its own) and
exports them at 64 and 128 px; an optional belt-haze.png strip is
supported. The source images are only read.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Older saves open with the three new places undiscovered and nothing
else changed (the save lists only discovered places, so no migration is
needed), Earth boards offer first contacts to Venus, and delivering one
discovers Venus and opens its board with Venus goods.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Every cell of the CR-015 reach table and the CR-016 additions holds with
the existing tanks, so no content changes: the step adds one test per
new cell, the Bulk Hauler's 900M km minimum, and the Courier's
Jupiter-system loop.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Adds Atmospheric Data Cores, Refined Sulfur, Volcanic Isotopes and
Subsurface Ocean Samples, and the new producers and destinations for
existing goods at Venus, Io and Europa.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Venus Cloud City, Io Sulfur Works and Europa Ice Station join the map
(fixed positions, Io and Europa riding with Jupiter), with their
fuel prices, range factors, shippers and sprites. Each makes a
Standard good so boards work there. The first-purchase balance window
widens to 45-95 minutes (user decision).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Caddy listens on port 80 inside the container (the Caddyfile had moved
it to 8080, which the port mapping didn't reach). NPM handles the domain
and HTTPS, so compose publishes only HTTP_PORT (default 8080) and drops
the HTTPS ports, certificate volumes and SITE_ADDRESS.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Applies CR-015's amendments to the implementation plan (deferred list,
decisions, content, sim, client and phase notes). The balance check now
also confirms no simulated ship ever needs emergency fuel while the
player has credits on Auto top-up. Phase 15 is complete.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The map places every body once and moves only flights; orbit rings
stay as decoration. Reach wording loses its dates: "From Earth: Moon,
Mars", "Out of range (...)", and the Market's "Other dates" line is
gone.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>