Add tools/threat_report.py (action item 7)
Reads recipes/ships/modules/world.toml and reports per-item threat values, module contributions, hull-only and fitted ship threats (default_modules), producer:consumer ratio tables, and belt feasibility against the single-belt cap. Implements the agreed design semantics: per-unit threat (recipe threat divided by output amount), the scrap-fallback rule, and fixpoint resolution through reprocessing-only items. Running it against the current configs surfaced two ThreatCostCalculator deviations, recorded as new action items: multi-output recipes are double-priced (no per-unit division), and items downstream of reprocessing-only items never resolve, underestimating capital hull threat. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DyCu8vwChKMbLJQ3xosYEN
This commit is contained in:
@@ -341,10 +341,11 @@ prints per-item threat values and producer:consumer ratio tables.
|
||||
|
||||
### Numbers — first pass
|
||||
|
||||
Computed with a recursive threat calculator (to be ported to
|
||||
`tools/threat_report.py`, see the action items in
|
||||
`progression_design.md`); quantities and durations tuned so fitted
|
||||
ships land on the threat-cost ladder and the ratio curve is realized.
|
||||
Computed with a recursive threat calculator (now available as
|
||||
`tools/threat_report.py`, which reads the real config files — it
|
||||
verifies these numbers once the v2 tree lands in the configs);
|
||||
quantities and durations tuned so fitted ships land on the threat-cost
|
||||
ladder and the ratio curve is realized.
|
||||
|
||||
**Economy constants:** `scrap_per_threat = 0.25` (1 scrap per 4 threat
|
||||
destroyed — a cruiser kill drops ~59 scrap). Reprocessing: 4 scrap per
|
||||
|
||||
Reference in New Issue
Block a user