Skip to content

feat: revamp city training and battlefield UI - #19

Merged
prayujt merged 6 commits into
mainfrom
feat/city-training-pipeline
Aug 24, 2026
Merged

prayujt merged 6 commits into
mainfrom
feat/city-training-pipeline

Conversation

@prayujt

@prayujt prayujt commented Aug 24, 2026 •

Copy link
Copy Markdown
Contributor

Outcome

Makes troop training a barracks interaction backed by the city-wide queue, gives active combat clearer map and detail treatments, exposes observable casualties in real time, and lets players name their armies.

City training

  • Keeps the navbar Training tab as a read-only per-city overview.
  • Shows each city name, barracks lane levels/speeds, and upcoming queue.
  • Adds a Go to training action that centers a barracks and opens its management view.
  • Makes every barracks in a city expose the same shared training workspace.
  • Moves troop selection, batch sizing, costs, population reservation, and submission into that workspace.
  • Shows active batches only on assigned lanes; the queue contains only upcoming batches.
  • Allows full-refund cancellation of upcoming batches.
  • Prioritizes Recruitable and Militia in the barracks population summary instead of duplicating the full City Management chart.
  • Anchors active training badges to their barracks and gives troop types distinct accents.
  • Links to City/Town Policy and labels every unowned building action as View details.
  • Gives the training panel more width and independent scrolling.

Battlefield clarity

  • Removes duplicated per-army battle badges.
  • Adds one compact red, text-free crossed-swords marker per active battle.
  • Makes battle markers directly open the battle details dialog.
  • Marks besieged settlement centers with a pulsing red perimeter without an oversized banner.
  • Adds amber pulsing territory boundaries, a center ring, and an occupation flag during occupation.
  • Drives the five-second countdown and progress width from the same server timestamp on a 250ms display clock.
  • Shows completed rounds, cumulative casualties, and latest-round casualties for both sides.
  • Shows troop-type, militia, and civilian losses while keeping undisclosed enemy starting/surviving strength hidden.
  • Carries the same public-casualty/private-strength model into mailbox battle reports.
  • Honors reduced-motion preferences and uses the game custom action cursor.

Army names

  • Uses persistent army names in the army list, inspector, orders, battle dialog, and mailbox reports.
  • Adds an inline rename control for owned armies.
  • Applies streamed rename responses immediately so the UI does not wait for a bulk resync.
  • Falls back to Army plus the short ID when reading pre-change data.

Dependency

The training, battle-summary, and army-name changes require backend PR #24.

Verification

  • yarn run check
  • yarn build
  • targeted ESLint for changed UI/map files
  • Prettier check
  • git diff --check

Show each city queue and barracks lane, route placement and cancellation through the city-scoped API, and surface lane speed and refund details.
Keep the navigation tab focused on city queue visibility while every barracks exposes the shared pipeline, lane status, cancellation, and batch controls.
Show in-progress batches only on barracks lanes, keep the shared queue upcoming-only, and add population and policy navigation to the training workspace.
Replace per-army combat badges with a clickable animated engagement marker, distinguish siege and occupation states on settlements, and stabilize round countdown presentation.
@prayujt prayujt changed the title feat: manage troop training by city feat: revamp city training and battlefield UI Aug 24, 2026
Replace oversized battle labels with a compact red crossed-swords marker and drive round progress directly from the server timestamp. Prioritize recruitable population and militia in barracks, anchor training badges to their lanes, and label unowned building actions as details.
Show both sides' live and reported casualties without revealing concealed total strength. Use persistent army names throughout the game UI and add inline renaming for owned armies.
@prayujt
prayujt merged commit 35ef512 into main Aug 24, 2026
2 checks passed
@prayujt
prayujt deleted the feat/city-training-pipeline branch August 24, 2026 03:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant