Skip to content

Shop economy, first career curve (2026-09-27)

Shop economy: first career curve (2026-09-27)

Section titled “Shop economy: first career curve (2026-09-27)”

Plan 1 of the shop-economy simulator (docs/superpowers/specs/2026-09-27-shop-economy-sim-design.md). Autopilot careers: play a Survival run, bank the gold, buy in shop-tip order (policy A), repeat. 3 profiles x 5 seeds, up to 150 runs, runs capped at 72,000 ticks (20 min). Catalogue: 66 items, 22,951 gold to own everything. Sweep wall time: 9 min 54 s on 8 parallel jobs.

Everything in the shop is bought in about 30 runs, not the 60-110 the flat estimate said. Gold per run is not flat: it roughly doubles over the first 20 runs, then jumps. Every career shows the same two phases:

  1. Runs 1 to ~20: short runs, slow buying. Runs last about 35-90 s and pay 140-400 gold.
  2. A cliff at about 7,000-8,100 gold spent (run 19-28, all 15 careers). Runs jump to 5-20 minutes (many hit the 20-minute cap) and pay 1,000-3,400 gold. The rest of the catalogue, about two-thirds of its cost, goes in the next 5-8 runs.

The cliff is one item: Field Medic (field-medic, 60 gold, one level). Standing still heals 6 HP/s, ramping to 40 HP/s after about 4 s (sim/sim.gd:2204-2233), on a 200-225 HP hull. The first run over 240 s comes 1-3 runs after Field Medic is bought in every career (the very next run in 10 of 15). Checked by ablation (final review, 2026-09-27) on the median-10000 run-22 save, seeds 10021-10028:

same save run times
with Field Medic 422, 113, 113, 773, 81, 1200 (cap), 256, 318 s
without it 77-114 s every seed
with it, pilot never counted as standing still 68-143 s every seed

It needs some defence under it: on a fresh save it adds about 30% and never makes a long run; on the run-17 save (vitality 5, bulwark 5) it makes 3 of 8 runs long, against 0 of 8 without it.

Where the cliff lands (run ~20, 7-8k spent) is a simulator artifact. Once the shop tips run out, the sim buys the cheapest item first, which puts Field Medic behind about 3-3.7k gold of 40-50 g drone stats, some for drone classes it doesn’t even own. A real player would likely buy it far sooner, so the cliff would come earlier. How big the cliff is for real players is also unknown: the autopilot stands still 21-74% of the time, and that hasn’t been checked against humans.

Milestones (runs needed; median, min-max over 5 seeds)

Section titled “Milestones (runs needed; median, min-max over 5 seeds)”
profile runs each gold/run (median) run time (median) first buy all Arsenal 25% spent 50% spent 100% spent
weak 33-38 354 74s 1 (1-1) 17 (16-17) 22 (20-22) 29 (28-30) 34 (33-38)
median 30-31 380 81s 1 (1-1) 15 (14-15) 19 (18-19) 25 (24-27) 30 (30-31)
strong 25-29 442 98s 1 (1-1) 12 (12-14) 16 (15-17) 22 (21-23) 27 (25-29)

(python3 tools/economy_sim/summarize.py reports/economy/career-*.json. The gold and time medians are over every run, so the long post-cliff runs pull them up.)

run weak gold / time median gold / time strong gold / time
1 165 / 35s 138 / 34s 226 / 57s
5 216 / 45s 275 / 66s 286 / 72s
10 253 / 62s 309 / 71s 375 / 83s
15 302 / 70s 404 / 80s 511 / 121s
20 355 / 67s 404 / 87s 928 / 275s
25 377 / 75s 1,213 / 290s 1,228 / 293s
30 2,589 / 708s 3,380 / 1,200s done
  • First meaningful buy in 1-2 runs: met. Every career buys on run 1 (two Vitality levels).
  • Core Pilot + Arsenal by ~run 20: all 13 Arsenal unlocks by run 12-17. Met, arguably early.
  • Drones as the long tail: not met. Drones are about two-thirds of the catalogue’s cost but mostly bought in the few post-cliff runs, so the tail is about 5-8 runs long, not a long tail.
  • The simulated players are weaker than real players early on. Calibration (Task 5, ai/skill_profile.gd): even the strongest setting, the plain skilled AI, dies at 51.6 s on a fresh save, below the median human’s 63.4 s (human p25/p50/p85 = 52.9/63.4/114.0 s, 196/227/384 gold, n=18, builds 185+). Gold for weak/median is within 20% of the human numbers; strong is about 40% short. So the early phase is probably slower here than for real players, and the cliff probably comes sooner for them.
  • Part of that gap is the humans’ own shop upgrades. Their shop state was not recorded (runs.meta_spent/meta_levels exist from 2026-09-27 and fill once a build ships). Device attract-mode runs of the same AI average 72.3 s / 369 gold (n=6, build 190).
  • Decoy play is perfect in every profile. The skill knobs don’t limit it.
  • Equip judgement calls: the Sentinel (the decoy drone) always keeps drone slot 1, and bought drone classes only fly in extra slots. The Bomber tip comes before Drone Slots, so on the 1-slot frigate the Bomber is bought at run 2 and not flown until slots are bought (see “In-game findings”). The Obsidian hull is always the last purchase in every career, so it is never flown.
  • The shop-tip order (ui/shop_advice.gd DRONE_PRIORITY) is itself still an open judgement call.
  • Two warnings in long runs: median seeds 12000 (run 30) and 13000 (run 26) each logged “SOFTLOCK? zero kills for 3+ min of game time”. These are boss stalemates: in median-12000 run 30 the boss is the only enemy alive for about 290 s and the pilot sits at full HP. Capped 20-minute runs contain long stretches where neither side can hurt the other.
  • Stand-still time is uncalibrated (ai/skilled_auto_player.gd:116-118, held between decisions by the profiles). It sets how much Field Medic heals, so it sets the cliff’s size.
  • The buy policy’s fallback buys stats for drone classes the career doesn’t own (tools/economy_sim/shop_tip_policy.gd:34-43). Fix in Plan 2.
  • n=5 seeds per profile, autopilot not human. Treat run counts as +/- a few runs.
  1. The shop tip recommends the Bomber before a second drone slot. On the 1-slot frigate the shop can’t auto-equip it (it only fills empty slots, sim/meta_state.gd auto_equip_class), and the player must swap the Sentinel (their decoy) out in the Drone Bay to fly it. A tip follower buys something they can’t use for many runs.
  2. Field Medic breaks runs open. A 60-gold, one-level item turns ~1-minute runs into 5-20 minute runs once the pilot has modest defence, paying 5-10x the gold. That one item, not general price levels, is the balance problem to look at first (its heal rate, ramp, or price), and the capped runs show stand-still healing can out-sustain a boss indefinitely.

Per-tier targets, in runs, for a median player:

  1. First meaningful buy: keep “run 1-2” (met today)?
  2. Core Pilot + all Arsenal: today about run 15. Target?
  3. Drones and the rest: today everything is gone by about run 30 because of the cliff. Should the whole catalogue take, say, 60 runs? 100?
  4. Field Medic: is a big “I can finally survive” jump wanted? If not, tone its healing down (rate, the 4 s ramp, or a cap) rather than repricing it, since price only moves the cliff.

Plan 2 covers the strong-autopilot work, the per-item value sweep, the value-per-gold buy policy, a fix to the buy policy’s fallback, and the price proposal.