Commit Graph
14 Commits
Author SHA1 Message Date
adrien 34e755d1a4 Optimised snapshot traffic and map rendering 2026-09-20 01:07:03 +02:00
adrien eca9e39760 Added political and economic map modes 2026-09-19 22:40:24 +02:00
adrien 2c022d0cbb Reworked terrain relief, the ocean and the borders 2026-09-19 21:40:37 +02:00
adrien b514a19ecc Added a tilted orthographic camera looking north 2026-09-19 19:37:17 +02:00
adrien 08f1b2d154 Added textured terrain, procedural water and a blurred fog of war 2026-09-19 17:16:41 +02:00
adrien 3b4e19b451 Added a WebGL map renderer with a DOM fallback 2026-09-19 10:34:04 +02:00
adrien 1a9d48cdc9 Added aircraft sorties, artillery bombardment and local testing mode
- aircraft attack orders fly a sortie to the target, bomb once, return to a
  friendly airport and re-arm (two-day cooldown, charged per aircraft); rebasing
  is bounded by fuel rather than the 10-tile combat radius
- artillery and warships open a sustained hourly bombardment on a standing
  target, drawn as a red dashed line and ring while either endpoint is selected
- a game launched from localhost can enable a testing mode whose train and build
  rows offer free, instant orders; the server only honours them for a loopback
  admin in a testing game
- an open city panel now unlocks aircraft as soon as an airport finishes
2026-09-18 21:55:30 +02:00
adrien 7ed6fe065f Sped up the test suite with a parallel runner and a world cache
- run_tests.js discovers and runs each *_test.js in its own worker process
  (--jobs N to cap the pool, --file <name> for a single suite)
- GameState caches the deterministic terrain, city sites and road network by
  (seed, mapConfig, civ count), rebuilding only the mutable per-game state
- the snapshot ships mapConfig and the client rebuilds terrain from it, so the
  DOM tests can use the small map fixture and a non-default config renders right
- shortestPaths can stop once every target city is settled
2026-09-18 21:25:02 +02:00
adrien 3acd2487df Added roads, regional taxation and a reworked budget view
Roads are pre-generated between cities with a greedy geometric spanner and flatten unit movement cost. City improvements now only affect the tiles their region controls, with per-region tax collection and a Cities tab. The budget is a grouped, scrollable table with 25%/year tax and a 10%-of-GDP opening treasury. Also merged the tile info into the city panel, kept conflict and budget expansion state across snapshots, added join notifications, filled border corners, drew battle sides as stacks and made tab overflow scroll.
2026-09-18 07:11:59 +02:00
adrien 4e2eae3306 Better map generation 2026-09-17 22:01:30 +02:00
adrien b08074a2f3 Visual improvements 2026-09-17 00:56:59 +02:00
adrien bc727c408f Visual improvements 2026-09-17 00:28:17 +02:00
adrien 06df4be96f Artillery + encirclement + budget 2026-09-16 22:41:57 +02:00
adrien 0b8c5bee68 Switched to HTML5 2026-09-16 19:59:18 +02:00