Nuclear / WMD: a nuclear-capable nation can launch a strike that devastates a region and can end a war / trigger MAD #60

Closed
opened 2026-10-15 17:05:42 +02:00 by kamilkrzywda · 0 comments
Owner

What

Add nuclear / WMD capability. A nation that is nuclear-capable (e.g. possesses a rocket marker + a nuclear tech flag, or the LLM declares it) can launch a nuclear strike on a target region/nation that devastates it — potentially ending a war or triggering mutual-assured-destruction dynamics.

Mechanism

  • A nation's nuclear status is tracked on Nation (e.g. nuclear: boolean or a wmd flag) — settable via a nation op or the LLM's TurnResult.
  • TurnResult gains nuclear: { strikes: { from: string; target: string /* nationRef or regionKey */ }[] } — required, default [].
  • Effect: a strike wipes the target region (releases it to no-man's-land / a massive stat collapse), can end a war (the target capitulates), and risks MAD (the target or a third party retaliates if also nuclear-capable).
  • Note: the user deferred the full research/tech tree; this should be gated by a simple capability flag (rocket marker + a nuclear boolean), not a full tech tree.

Acceptance

  • e2e safety (critical): stub returns nuclear: { strikes: [] }, deterministic; additive; must not break the UK-in-wwii-1939 e2e (empty frontier, military 80→85, 7-item legend).
  • Unit tests in server/engine.test.ts (strike devastation, war-ending, MAD retaliation).
  • Version bump at PR time.
## What Add **nuclear / WMD** capability. A nation that is nuclear-capable (e.g. possesses a `rocket` marker + a nuclear tech flag, or the LLM declares it) can **launch a nuclear strike** on a target region/nation that devastates it — potentially ending a war or triggering mutual-assured-destruction dynamics. ## Mechanism - A nation's nuclear status is tracked on `Nation` (e.g. `nuclear: boolean` or a `wmd` flag) — settable via a nation op or the LLM's `TurnResult`. - `TurnResult` gains `nuclear: { strikes: { from: string; target: string /* nationRef or regionKey */ }[] }` — required, default `[]`. - Effect: a strike **wipes the target region** (releases it to no-man's-land / a massive stat collapse), can **end a war** (the target capitulates), and risks **MAD** (the target or a third party retaliates if also nuclear-capable). - Note: the user deferred the full research/tech tree; this should be gated by a **simple** capability flag (rocket marker + a `nuclear` boolean), not a full tech tree. ## Acceptance - **e2e safety (critical):** stub returns `nuclear: { strikes: [] }`, deterministic; additive; must **not** break the UK-in-`wwii-1939` e2e (empty frontier, military 80→85, 7-item legend). - Unit tests in `server/engine.test.ts` (strike devastation, war-ending, MAD retaliation). - Version bump at PR time.
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: OpenCode/History#60