Skip to content

Blockilization: city-states marked on the map, and spoken to with a click - #40

Merged
Potrock merged 1 commit into
mainfrom
claude/project-thread-wo7rqw
Oct 25, 2026
Merged

Potrock merged 1 commit into
mainfrom
claude/project-thread-wo7rqw

Conversation

@Potrock

@Potrock Potrock commented Oct 25, 2026 •

Copy link
Copy Markdown
Owner

Requested by Patrick · project thread

What this is

A city-state's banner on the map looked exactly like a civ's capital (a crown, its people, its name), and clicking its city did nothing. Both are fixed, client side only.

On the map (overlay.ts), a city-state's banner now has:

  • a "City-state" tab over it, in its kind's colour;
  • its kind's glyph (anchor, lyre, sword, coin, faith) where a capital's crown would be;
  • a gold "!" at its end while it asks something of you (an open quest);
  • your influence on a bar beneath it, marked at friendship (30) and alliance (60) and coloured by your standing (gold ally, green friend, grey neutral, red war). A damaged city-state's health bar moves down under it.

The tooltip over its city says it too ("Maritime city-state · Your friend · influence 45"), with "Click to talk to Venice".

Clicking a city-state's city (its banner or its tile, with no unit of yours selected) opens its card alone in Diplomacy, the way Civ V's city-state screen greets you:

  • its envoy speaks first, by your standing (ally, friend, at war, distrustful), or by its kind when you're strangers;
  • then everything that can be done with it, as on the city-states' list: gifts of gold, its requests, pledging protection, tribute, war or peace, and a hint on giving it a soldier;
  • "All city-states" goes back to the list, where each name now opens its card.

The same card opens from the city-state's emblem on the leaders' ribbon, from its notes (requests, thanks, pledges), and from the advisor's city-state tip ("Speak to Venice"). With a unit selected, a click on the city still sends the unit, as before.

Clicking another civ's city (no unit selected) opens Diplomacy with its leader, as in Civ V.

The Civilopedia's Diplomacy article and the advisor's tip mention the banner and the click.

Screenshot or clip

Screenshots are in the project thread: the banners next to a civ's capital, a close-up, and the card opened from a click on Venice.

Checklist

  • npm run build: tsc --noEmit, the boundary and presentation checks, BUNDLE_REPORT=1 vite build and check:bundle all pass. (npm run wasm couldn't download binaryen's wasm-opt here, so the engine was built without it.)
  • npm run test:headless: all 99 pass.
  • Imports only from inside the game
  • No new names or assets

Tested in the browser (dev server, Chromium): banners for friend, ally and neutral city-states and a quest "!", clicking a city-state's banner opens its card, gifts update it, the list's names open cards, clicking Berlin opens Bismarck's diplomacy, a click with a unit selected still moves the unit, and the card on a phone-width screen.

🤖 Generated with Claude Code

https://claude.ai/code/session_01W9EYvwEihXHZKXCYU2v8g7

…lick

A city-state's banner looked just like a civ's capital (a crown, its people,
its name). Now it carries a "City-state" tab, its kind's glyph in place of
the crown, a gold "!" while it asks something of you, and your influence
with it on a bar beneath, marked at friendship and alliance and coloured by
how it stands with you. The tooltip over its city says the same in words.

Clicking a city-state's city (with no unit of yours selected) opens its card
alone in Diplomacy, Civ V's way: its envoy greets you by your standing, and
everything that can be done with it is there (gifts, quests, pledges,
tribute, war and peace). The leaders' ribbon, its notes and the advisor's
tip open the same card, and a name on the city-states' list does too.
Another civ's city opens Diplomacy with its leader.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W9EYvwEihXHZKXCYU2v8g7
@Potrock Potrock self-assigned this Oct 25, 2026
@Potrock
Potrock merged commit 1bcdc60 into main Oct 25, 2026
3 checks passed
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.

2 participants