Commit Graph

17 Commits

Author SHA1 Message Date
fireshaper e28597e09e Step 19.2: sim: generation keeps only completable jobs
CI / check (push) Failing after 58s Details
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>
2026-10-10 20:41:43 -04:00
fireshaper 1b16063fdc Step 19.1: sim: completability check
CI / check (push) Successful in 6m17s Details
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>
2026-10-10 20:32:51 -04:00
fireshaper c627bb9954 Step 15.3: content: fuel
CI / check (push) Successful in 5m43s Details
Ships get a tank capacity and a burn rate instead of range and fuel
cost; locations get a fixed fuel price and a sellsFuel flag instead of
the launch cost multiplier. A leg burns burn rate x the economic
distance of (distance / origin factor), and reach is a full tank's
worth. Tanks are sized so every reach answer is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 01:05:13 -04:00
fireshaper 0a1ca1d3ea Step 15.2: sim: static positions and distances
CI / check (push) Successful in 5m44s Details
Positions, distances, range checks, trip times, fuel and the no-strand
rule no longer take a time argument; the 48-hour no-strand margin goes
with it. Tests now check that a route's pay, trip time and fuel are the
same whenever it is offered or flown.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 00:54:57 -04:00
fireshaper c02126c908 Step 12.1: balance simulation, economic distance and reachable first contact
CI / check (push) Successful in 6m17s Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 19:16:32 -04:00
fireshaper 92520dbc4f Step 10I.2: effective ship stats in the sim
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 19:13:11 -04:00
fireshaper 4acf346005 Fit jobs pick from all goods that fit; no undersized heavy lots
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 18:20:56 -04:00
fireshaper bf19f498b8 Step 10H.2: each board contract pays its own market rate
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 18:02:31 -04:00
fireshaper 83d0b3900f Step 10G.3: goods, Priority and shippers in board generation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 17:01:14 -04:00
fireshaper 13f5b04ffb Step 10G.2: contracts carry goods, shippers and Priority fields
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 16:59:00 -04:00
fireshaper 8a7b612bc7 Step 10G.1: goods catalog, shippers and Priority config
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 16:53:17 -04:00
fireshaper 215f380e80 Step 10F.3: boards fit the player's fleet
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 12:17:08 -04:00
fireshaper dff2c576cf Step 10B.1: generate contract boards for any location
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 14:41:56 -04:00
fireshaper c36d1edf55 Give every contract board jobs for each ship size
CI / check (push) Successful in 2m46s Details
Bay contract mass now comes from per-ship-size bands, and the first
contract in each band is a no-skill Standard job to a discovered
location, so a new player with only a Courier always has work.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 12:22:02 -04:00
fireshaper dd0b26813f Step 10A.3: add tutorial board v2
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 10:54:44 -04:00
fireshaper 0a0a43a54e Step 3.10: add tutorial contract board
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 18:45:48 -04:00
fireshaper b7a40aa490 Step 3.9: add contract board generation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 18:45:01 -04:00