Files
Battle-for-Tismo/ROADMAP.md
T

5.2 KiB

Battle for 'Tismo — roadmap

This reconstructs the feature brief that drove the recent work, from the task list given in the project chat and the state of the code afterwards. It is a reconstruction, not a verbatim copy: where the original wording was lost it has been restated from what was actually built.

[x] = implemented and covered by the test suite. [~] = implemented with a simplification worth revisiting. Anything unticked is still open.

General guidelines

  • If an icon is missing, add a dummy SVG that reads dummy icon - <name>.
  • Once an item is finished, move on to the next; keep the suite green and add tests for each new pure behaviour.
  • Percentages are for the final figure only; raw effects are stated in the model's own integer units (e.g. popularity points).

1. Visual / UI

  • City progress bar under the city name, plus a quick production view in the city panel.
  • Remove the city "improve" button; cities improve themselves as railways are laid.
  • Per-improvement buttons above the tile panel, with a control to remove an improvement.
  • Manual unit selection in the stack panel (checklist).
  • Clicking a unit opens the panel for its tile or city.
  • A stack splits immediately when a member leaves it.
  • Logarithmic scale for the population map mode.
  • Building squares drawn around the city icon, in a seeded pattern.
  • Upgrade tooltip forecasts the resulting budget income.
  • Artillery barrages are always visible, dimmed unless selected.
  • Square icon buttons for tile improvements: name in the tooltip, cost beneath the icon.
  • A progress bar for a tile improvement under construction, like a city's.
  • Technology tab: wide, short (3:1) cards in a grid; a focused technology shows a progress bar with X / Y to its right; the button no longer repeats the cost.
  • Key art behind the main menu.
  • Double-clicking a city opens its full city panel.
  • Barrages drawn as animated parabolic arcs from attacker to target (SVG Bezier, marching dashes, a shell riding the curve).

2. Populations and popularity

  • Popularity counted in integer points, shown through a logistic curve (0 -> 50%, +100 -> 75%).
  • Opinions drift one point an hour toward neutral.
  • War effects: declaring war, being declared on (rally when the aggressor is loathed), unit losses and kills, city capture and loss.
  • Pillaging leaves a popularity stain, doubled among the affected peoples.
  • Minorities above 10% cannot be expelled.
  • [~] Structure and city damage is modelled as city population/GDP loss plus improvement hit points, not a dedicated per-structure HP system.

3. Nation top info bar

  • Month-over-month arrows on population, GDP, GDP per capita, budget and popularity.
  • GDP, population and GDP per capita double their arrow past a 10% move; popularity past ten percentage points.
  • No arrows for January 2000, which has no past month.
  • Popularity tooltip estimates hours/days to neutrality at the drift rate.

4. Technologies

  • Focused research: every point flows straight into the chosen technology; there is no bank, so no focus means no progress.
  • Committed progress is kept per technology, so changing focus never loses work already done.
  • Repeatable technologies with a 2% cost growth per level, notified without flooding the news list.
  • Repeatable technologies, once researched, get automatically focused again
  • Theme tabs (Science / Economy / Society / Military).
  • Technology panel shows the research rate rather than a stockpile.
  • Readable effect text for the military and repeatable effects.

5. War mechanics

  • Zone of control: units deny their tile and the ring around it to hostile movement, mirrored in client prediction; the deliberate goal is exempt so charges resolve.
  • Battleships and ground batteries bombard coastal units and defenceless cities from range.
  • Capturing a city takes the aircraft based there.
  • Infantry capture unaccompanied artillery; a warship over a launch stack sinks it.
  • Trenches: dug by infantry, defensive bonus against melee and artillery, local GDP cost.
  • Combat order: infantry absorbs blows first; exposed support units are hit before dug-in troops.
  • New units: mobile radar (wide vision, captured or destroyed easily) and the launch transport (embark, carry one infantry, disembark a whole stack).
  • Buildable military tile improvements: fortifications (permanent area of control, defensive bonus, battle damage), radar tower (captured by an enemy walking on it), coastal cannon (auto-fires on warships).
  • Embark / disembark orders wired on server and client, with a cargo readout in the unit panel.

6. Content and tuning

  • Market and Bank base cost reduced tenfold (500k and 1M).

Open items

  • A dedicated structure hit-point model for cities and tile improvements (see the [~] note above).
  • Real art for the placeholder "dummy icon" SVGs: icon_radar.svg, icon_launch.svg, icon_fortifications.svg, icon_radar_tower.svg, icon_coastal_cannon.svg, icon_road.svg, icon_railway.svg.