Files
History/presets/modern-2025.json
kamilkrzywdaandOpenCode e2936e85bb History: AI-driven alternate-history simulator
Pax Historia-style sim where the LLM is the world engine.

- React 19 + Vite 6 + Tailwind v4 + shadcn/ui frontend
- Express single-port backend (/api + /sse + built client + SPA fallback)
- SQLite (better-sqlite3) persistence, one row per game
- MapLibre choropleth map (OpenFreeMap dark + ISO_A3 regions)
- Defensive turn loop: strip fences, balanced-{} extract, parse, clamp 0-100,
  retry-once nudge, generic 'unclear' fallback; never crashes on bad output
- 5 seed presets (wwii-1939, coldwar-1955, modern-2025, no-wwii-1940, aegis-2400)
- LLM client over native fetch w/ injectable transport (mesh-bot pattern);
  LLM_STUB=1 deterministic transport for tests/e2e
- Unit (vitest, 19) + deterministic Playwright e2e
- Multi-stage node:22-slim Docker + Traefik (history.dev.kkhost.pl:4321)

Co-Authored-By: OpenCode <opencode@users.noreply.github.com>
2026-10-10 21:20:23 +00:00

67 lines
3.5 KiB
JSON

{
"id": "modern-2025",
"title": "Modern Day",
"startDate": "2025-01-01",
"summary": "A multipolar world of blocs, sanctions, and tech supremacy. Manage statecraft in the 21st century.",
"worldBackground": "It is 2025. The world is multipolar and hyper-connected. A small number of powers — the United States, China, Russia, the European Union, India, and Japan — set the direction of a global economy that is both deeply interdependent and increasingly fragmented by trade wars, sanctions, and technology races. Power now flows as much through chips and data as through armies, and through finance and shipping lanes as through borders.\n\nThe great challenges are shared and political: climate, the balance of economic power, the spread of autonomous weapons, and the struggle for influence across the oceans and the Arctic. You lead one of these powers. Your tools are sanctions, alliances, trade, cyber capability, and — always in the background — the military. How you manage the great-power competition over the coming years will reshape the world order.",
"simulationRules": [
"Serious, contemporary tone; write like a foreign-affairs desk at a major newsroom.",
"Prefer gradual change: 1-4 events per turn; great-power rivalry shifts incrementally.",
"Modern warfare favors economic, cyber, and proxy instruments over large conventional wars; keep full-scale wars exceptional.",
"Respect existing borders; territorial change requires a major war or a decisive political event.",
"No single nation may dominate the world; the system stays multipolar.",
"Trade, sanctions, technology, and alliances are the primary levers of power.",
"Keep all stat values between 0 and 100."
],
"nations": [
{
"id": "us",
"name": "United States",
"type": "major",
"stats": { "military": 95, "economy": 95, "stability": 70, "population": 85 },
"territory": ["USA", "CAN", "MEX", "BRA"],
"relations": { "cn": "hostile", "ru": "hostile", "eu": "ally", "in": "neutral", "jp": "ally" }
},
{
"id": "cn",
"name": "China",
"type": "major",
"stats": { "military": 85, "economy": 90, "stability": 80, "population": 100 },
"territory": ["CHN", "MNG"],
"relations": { "us": "hostile", "ru": "ally", "eu": "rival", "in": "rival", "jp": "hostile" }
},
{
"id": "ru",
"name": "Russia",
"type": "major",
"stats": { "military": 85, "economy": 55, "stability": 70, "population": 80 },
"territory": ["RUS", "KAZ", "BLR"],
"relations": { "us": "hostile", "cn": "ally", "eu": "hostile", "in": "ally", "jp": "hostile" }
},
{
"id": "eu",
"name": "European Union",
"type": "alliance",
"stats": { "military": 60, "economy": 85, "stability": 75, "population": 90 },
"territory": ["GBR", "DEU", "FRA", "ITA", "ESP", "PRT", "NLD", "BEL", "SWE", "NOR", "POL", "CZE"],
"relations": { "us": "ally", "cn": "rival", "ru": "hostile", "in": "neutral", "jp": "ally" }
},
{
"id": "in",
"name": "India",
"type": "major",
"stats": { "military": 70, "economy": 70, "stability": 75, "population": 100 },
"territory": ["IND"],
"relations": { "cn": "rival", "us": "neutral", "ru": "ally", "eu": "neutral", "jp": "ally" }
},
{
"id": "jp",
"name": "Japan",
"type": "major",
"stats": { "military": 55, "economy": 80, "stability": 85, "population": 60 },
"territory": ["JPN"],
"relations": { "us": "ally", "cn": "hostile", "ru": "hostile", "eu": "ally", "in": "ally" }
}
]
}