00-direction.md · non-normative

Every Last City — Design Direction (supersedes the fidelity premise)

1. What changed, and why this document exists

The specification was written around a pillar saying that Classic mode reproduces Empire Deluxe Combined Edition exactly. That pillar was never requested. It was assumed by the spec's author and is now withdrawn. The project is not a reproduction. It is an original strategy game in the Empire tradition, designed to be better than the thing that inspired it.

Two consequences follow, and they govern everything below.

Clean-room. No asset, number, name, table, or text is taken from Empire Deluxe. We do not obtain, install, decompile, or read the original's data files. Mechanics and ideas are not protected and are free to use — "cities produce units, units capture cities, no diplomacy, fog of war" is a design space, not a possession. Specific expression is protected and we take none of it.

The improvement mandate. Where we find a better way, we take it. Nothing is inherited merely because the original did it that way. "The original did X" is not an argument. There is no fidelity obligation and no Classic mode.

2. Clean-room rules (binding on every document and every contributor)

  1. No transcribed data. Unit stats, costs, movement points, hit points, combat tables, terrain costs, production times — every number is designed by us, justified on its own terms, and traceable to a design intent rather than to a source.
  2. No EDCE page citations in normative text. The old spec cited (EDCE p. 41) as authority. Every such citation must go. Where a historical note genuinely helps a reader understand why a design space exists, it may appear as clearly-marked non-normative context — never as justification for a requirement.
  3. No VERIFY flags meaning "check against the original." There is nothing to check against. Each becomes either a design decision we make, or an open design question we own.
  4. Original names. Unit, terrain, ability, and rule-option names are ours. Generic military vocabulary (Infantry, Destroyer, Fighter) is common property and fine; anything distinctive to the original is not.
  5. No original art, sound, or manual text, ever, in any form.

3. What we keep — the soul, not the shape

Ideas worth building on, and they are ideas, not expression:

Everything else is ours: economy, combat resolution, unit roster, movement, supply, terrain, production, victory.

4. The turn model — pipelined activation by creation order

A deliberate departure and the design's most novel element. Strict sequential turns are the single worst thing about multiplayer games of this shape: in a six-player game you spend five-sixths of your time watching. Fully simultaneous resolution fixes waiting but introduces move-conflict paradoxes and is harder to reason about.

The model is a hybrid: nominally it is someone's turn, but activation is governed by a single global queue ordered by unit creation sequence, not by player. Every unit, when built, receives a monotonically increasing global sequence number unique across all players. Each turn walks that queue in ascending order. Because the queue interleaves players' units, the granularity of waiting drops from "a whole player's turn" to "one unit," and in practice several players are active at once.

Properties to preserve:

OPEN — must be settled before this is specified. The originating example: units 1,2,3,7,8,9 belong to player 1 and 4,5,6 to player 2, and "as soon as unit 7 is moved, player 2 can move 4,5,6." Two readings are possible and they are materially different games:

Resolve this, state the chosen semantics precisely, and answer: what happens when a player stalls; whether the queue re-walks identically each turn; where newly built units enter; what a player sees of opponents' in-progress actions under fog; and whether seniority ordering needs a counterweight.

5. Victory is a configurable system, not a fixed rule

Total conquest — take every city — is one option, not the definition of winning. The design must offer many victory conditions selectable at setup, combinable, and legible during play. This is a first-class subsystem, not a settings checkbox.

It also answers the genre's worst structural flaw: the endgame where the outcome is decided but you still spend an hour hunting the last holdout across a huge map. Varied and shorter victory conditions dissolve that problem rather than patching it.

The option space should be genuinely broad — thresholds, objectives, economic and territorial goals, timed and scored outcomes, asymmetric and per-player objectives, elimination variants — and every option must be understandable at a glance in setup and trackable during the game.

6. Known weaknesses to fix

Named so they are not accidentally reproduced:

7. What is unaffected

The technical foundation stands and no work there is lost: the deterministic TypeScript core, Q16.16 fixed-point arithmetic, the seeded PRNG, canonical hashing, event-sourced games, the determinism lint rules and CI gate, the Phaser + DOM client, Colyseus rooms, WASM plugins, and the services platform. Those documents describe how we build, not what the game does. They need fidelity language and validate-against-the-original test strategy scrubbed, not redesign.