--- title: "The Purest RTS" author: Claude-Fable-5.1, Claude-opus-4.8, GPT-6 Astra, Gwern description: "Real-time strategy is a conjunction of separable factor-games, so 'purest' is defined only per factor. A 3×3 arrangement of Binding Constraint × Opposition says what each factor is worth, why the Design × Rival cell stays thin, and why _Factorio_ became a benchmark." created: 2026-09-17 modified: 2026-09-17 status: finished confidence: log importance: 1 css-extension: dropcaps-kanzlei ...
"Real-time strategy" names a conjunction of separable factor-games: a compounding economy, attention-rationed execution, adversarial inference under fog, and spatial tactics. Purity is therefore defined only per factor, and the claim that _Factorio_ is the purest RTS is a claim about the first one. What that factor purifies is *stored judgment*: a decision, once made, keeps working without you, and the attention it releases becomes the budget for a larger decision. I arrange the genre on two ordered axes. The rows are the binding constraint on the player, by delegation depth: attention (you are the labor), design (you build the machine), allocation (you fund the machine). The columns are the opposition, by what it can invalidate: your design (a rival, which selects against your particular arrangement), your scale (a hazard, coupled to your output but blind to your structure), or nothing. The axes are ordered but have no metric, so the arrangement places games and generates predictions; it does not locate centers. Two predictions follow. A design law: where capital compounds, routine interventions per module must fall at least as fast as modules multiply, or attention becomes binding by default---_Factorio_ obeys it, _Civilization_ violates it late, _StarCraft_ refuses it on purpose and clamps the exponent instead. And the Design × Rival cell stays thin, not because it is impossible (_Screeps_ and _Gladiabots_ are there) but because the move is a portable artifact: competition then imports the community's research frontier into the individual's private learning, and the preparation, not the play, becomes the game. Hence the drift to machine use. _Core War_'s vices---cheap exact evaluation, copyable artifacts---are benchmark virtues, and _Factorio_ became one for the opposite reason: its terminal state is a victory screen which invites you to keep going, so throughput separates agents without a ceiling. The design row is also where reward hacking is native, since the score is a state variable the agent writes to.
> Where a puzzle is dead a game is alive. > > ---[Chris Crawford](!W "Chris Crawford (game designer)") ([_The Art of Computer Game Design_](https://book.huihoo.com/the-art-of-computer-game-design/Chapter1.html#INTERACTION "'The Art of Computer Game Design § Interaction', Crawford 1984"), 1984)
# The Conjunction Video-game genre names are usually conjunctions passed off as natural kinds, and "RTS" is the clearest case. The acronym names the two properties _[Factorio](!W)_ lacks while omitting the one it shares. Real-time is not a binding constraint there: _Factorio_ would lose little if construction could be done while paused, whereas _[StarCraft](!W)_ would lose its central skill, and pausable Paradox grand-strategy games are already conventionally excluded from the genre. Strategy in the game-theoretic sense is likewise absent. What remains, and what _Factorio_ has undiluted, is the compounding harvest → build → produce engine. That engine is the genre's differentia, which is the strongest form of the purity argument. Real-time wargames predate _[Dune II](!W)_ (1992), and _[Herzog Zwei](!W)_ (1989) already accumulated resources and bought units, so the invention claim usually made for _Dune II_ is wrong: what it assembled was a particular bundle of harvesting, base-building, and unit production, not the economy as such. Games carrying everything but that bundle got split off into a separate genre.[^RTT] Define the genre by differentia and _Factorio_ is its limit case; define it by binding constraint and _Factorio_ is the anti-RTS. Both readings are available because the word names a bundle, and the useful move is to unbundle it. [^RTT]: Real-time tactics: _Myth_, the _Total War_ battles, the _Commandos_ line. The split is instructive, because it was made on exactly the axis the acronym does not mention. Nobody proposed "non-real-time strategy" as the contrast class; the industry silently agreed that what distinguished the RTS was base-building, and then kept the name which says otherwise. # Stored Judgment Unbundling requires knowing what is being purified, and it is not number-go-up. A score can rise without preserving any decision: a button marked "double" suffices, which is why _Progress Quest_ is a joke rather than a genre. A belt is satisfying because an arrangement you understood keeps working while you are elsewhere, and because its reliability is what makes a larger arrangement thinkable. Before the module exists, "supply this district" names a project; after it, the same phrase names one reliable operation. The player is partly constructing the interface through which later problems will be posed. This is not confined to code. A narrow entrance decides where defenders meet attackers; a buffer decides whether a brief stall propagates; a rail layout decides which traffic conflicts can arise at all. A spatial arrangement makes a decision in advance by removing the need to make it later, and _Factorio_ makes such arrangements explicitly portable through exportable [blueprints](https://wiki.factorio.com/Blueprint "'Blueprint', Factorio Wiki"). So "purest RTS" has a defensible reading: the activity being purified is building systems which preserve decisions, and a competitive RTS interrupts that activity continually by design. It is a claim about a preferred factor rather than about the genre's essence, and the rest of this essay is about which factor, and what follows from removing the rest. # Four Factors The bundle has four factors, each with a purification series ending in a degenerate limit. *Compounding economy* runs from the city-builder and factory game through _shapez_ (strip the enemies, the depletion, and the costs), then the incremental (strip the space), to _[Universal Paperclips](!W)_; the limit is number-go-up. *Attention-rationed execution* runs through the MOBA (one unit, no macro) to the fighting game to the rhythm game; the limit is a dexterity test. *Adversarial inference* under fog, ie. build-order poker, runs through the auto-battler (zero execution) to poker itself; the limit is a matrix game. *Spatial tactics* runs through real-time tactics to _[Into the Breach](!W)_; the limit is a positional puzzle. The factors both substitute for and create each other, which is what made the product unstable. They substitute in that the deeper the economy, the more fights are decided before contact; they complement in that combat threatens investment and investment changes which fights are feasible, so neither is interesting alone. The genre unbundled along these seams, largely out of its own map editors: _Aeon of Strife_ became _[Defense of the Ancients](!W)_ became the MOBA; the _StarCraft_ and _Warcraft III_ tower-defense maps became a genre; _[Dota Auto Chess](!W)_ became the auto-battler. The relationship among the survivors is convergence rather than descent, since _[SimCity](!W "SimCity (1989 video game)")_ (1989) predates _Dune II_ and _Factorio_ descends from Minecraft tech mods rather than from Westwood. So the taxonomy has to be a morphospace, not a cladogram. # The Discount Rate What an opponent contributes to the economy game is a discount rate, in a restricted but real sense. If a project costs _c_ now and pays _v_ after a delay _τ_, and an independent destruction event arrives at constant rate _λ_, the project is worth starting when _v_ ⋅ exp(−_λτ_) > _c_. Raising _λ_ prices long horizons out of the market, which is the greed < rush < safe < greed cycle, and which is the "S" in the acronym doing its work. The army bought instead is not deadweight: map control converts directly into income, so military investment in an RTS is frequently the compounding move rather than the alternative to it. What the hazard costs is *horizon*, not investment as such. Lowering _λ_ therefore buys longer horizons and more attention for the productive system; it does not supply an objective. Perpetual reinvestment becomes optimal only given a further specification of what counts as success, and a peaceful player can instead minimize time-to-rocket, hold pollution under a ceiling while meeting a quota, or fit a target output into a small footprint. Those produce different factories. _Factorio_ supplies a terminal state and then declines to enforce it: the [rocket silo](https://wiki.factorio.com/Rocket_silo "'Rocket Silo', Factorio Wiki") is the base game's sole win condition, and the first launch triggers a victory screen which thanks the player and invites them to keep growing. The megabase is a chosen continuation, licensed by the designers. That is a weaker claim than "no terminal state exists" and a more interesting one, because what is notable is that the objective is handed back to the player rather than missing. # Two Axes "Other players: yes or no" is too coarse, and [Crawford](!W "Chris Crawford (game designer)") said so before the genre existed: interactiveness is not binary but [a continuous quantity, an index of "gaminess"](https://book.huihoo.com/the-art-of-computer-game-design/Chapter1.html#INTERACTION "'The Art of Computer Game Design § Interaction', Crawford 1984"). The test which orders the continuum is not whether the opposition models you, since a scripted skirmish AI can scout and counter-build while a human can execute a memorized rush without updating on anything. The test is what the opposition can invalidate. A rival selects against your particular arrangement: it attacks the fuel line precisely because you optimized away its reserve, and it relocates the bottleneck once you have found it. A hazard is coupled to your magnitude and blind to your structure: biter evolution indexes pollution, _RimWorld_ raid points index colony wealth, winter arrives on schedule. It can tax your scale; it cannot make your design obsolete. Control is the second axis, running from in-the-loop (_Brood War_) through queued flow economy (_[Total Annihilation](!W)_ and _[Supreme Commander](!W "Supreme Commander (video game)")_, the real missing link, with rate-based income, assist, and infinite queues), indirect (_The Settlers_, _Majesty_, _[Dwarf Fortress](!W)_), programmed (_Factorio_ combinators; blueprints plus construction bots are the factory replicating itself), and capital allocation only (incrementals), to zero-player. Collapsing each axis to three levels gives an arrangement, conditioned on a compounding economy, so MOBAs, real-time tactics, and fighting games fall off it entirely and spatial tactics is orthogonal. The axes are ordered but carry no metric, so the table below places games and generates the predictions in the next section; it locates no center, and any claim about midpoints or diagonals would be an artifact of having chosen three bins.
| | **Rival** (invalidates your design) | **Hazard** (taxes your scale) | **None** (self-limited) | |---------------------------------------|--------------------------------------------------------|--------------------------------------------------------|---------------------------------------------| | **Attention** (you are the labor) | _StarCraft_, _Age of Empires_ ladder | _They Are Billions_; RTS campaign, comp-stomp, co-op | _Stardew Valley_, _Diner Dash_ | | **Design** (you build the machine) | _Screeps_, _Gladiabots_, auto-battlers, _The Settlers_ | **_Factorio_**, tower defense, _[RimWorld](!W)_ | _shapez_, _Satisfactory_, _SimCity_ | | **Allocation** (you fund the machine) | multiplayer 4X, _[M.U.L.E.](!W)_, _[Offworld Trading Company](!W)_ | _[Frostpunk](!W)_, _FTL_, single-player _Civilization_ | _[Cookie Clicker](!W)_, _Universal Paperclips_ | Table: An arrangement of productive strategy games: Binding Constraint × Opposition, conditioned on a compounding economy. Ordered, but without distances.
# What the Grid Predicts [Rows set skill]{.margin-note} Attention is multitasking, real-time is essential, and a machine needs an action-rate cap before the win is legible: AlphaStar carried a monitoring layer enforcing APM limits, which its authors describe as introducing [an action economy requiring the agent to prioritize actions](https://storage.googleapis.com/deepmind-media/research/alphastar/AlphaStar_unformatted.pdf "'Grandmaster Level in StarCraft II Using Multi-Agent Reinforcement Learning', Vinyals et al 2019") ([Vinyals et al 2019](https://www.nature.com/articles/s41586-019-1724-z)). That phrase is the row's definition. Design is debugging and refactoring, real-time is only a throughput clock, and the machine version is program synthesis. Allocation is valuation, it works in turns or idle, and the machine version is a solver. Each row automates the one above: labor → engineer → investor. The ordering is one of what the player does, not a claim about which is harder, for machines or anyone else. [A design law]{.margin-note} That gives the arrangement's strongest prediction. Where capital compounds, the player accumulates two things which need not grow together---productive capacity, and the capacity to coordinate it---so ten more modules can mean ten more standing demands on attention. Continued expansion therefore requires that routine interventions per module fall at least as fast as modules multiply, or attention becomes binding by default no matter which row the design intended. _Factorio_ obeys this, since bots and blueprints arrive as scale demands them; _Civilization_ violates it late, where unit-shuffling is an allocation game regressing into labor; _StarCraft_ refuses it on purpose, pinning the player in row 1 through UI friction and macro mechanics, and accordingly clamping the exponent with a supply cap and mining saturation. The corollary is a familiar bad upgrade: a machine with a higher ceiling and constant fiddling is an improvement on the resource ledger and a regression on the attention ledger, and a throughput-only score conceals the trade. [Revealed preference]{.margin-note} The second prediction is about where the audience went. Most buyers of nominally left-column games likely live in the middle column, playing campaign, skirmish AI, co-op, and single-player _Civilization_, so the RTS's decline was migration within the arrangement rather than abandonment of it: right along the top row, diagonally toward the center, and, for the auto-battlers, straight down the left column. # The Thin Cell Design × Rival is thin rather than empty, and the difference matters. _Screeps_ has resource harvesting, unit production, and territorial conflict between JavaScript colonies which run while their owners are asleep; _Gladiabots_ sells exactly the loop of building a squad's decision rules, watching them lose, and revising them. Both exist, both work, and both have small audiences. So the claim to defend is about audience and preparation cost rather than about possibility, and the mechanism is visible as far back as the genre's origin. [Darwin, 1961]{.margin-note} _Darwin_, the first programming game, was played for a few weeks at Bell Labs before Robert Morris wrote a program nobody could beat, which ended it ([McIlroy 1971](https://www.cs.dartmouth.edu/~doug/darwin.pdf "'Darwin, a Game of Survival of the Fittest among Programs', McIlroy 1971")). The winning trick is the tell: a 44-instruction program which remembered which probe distance had found an unprotected location and reused it, initializing new copies with the successful value, so that it [speciated into variants adapted to particular enemies](https://corewar.co.uk/darwin.htm "'Darwin', corewar.co.uk"). The rival-modeling had moved inside the artifact within a fortnight. [_Core War_](!W) shows the same migration one level up: the community named its archetypes [paper, scissors, and stone](https://corewar.co.uk/strategy.htm "'_Core War_ Strategy Guide', corewar.co.uk"), and the [p-switcher](https://corewar.co.uk/switcher.htm "'P-Switcher', corewar.co.uk") put iterated rock-paper-scissors inside the warrior by selecting a midgame strategy from the results of previous rounds. Note what this does *not* show: a deterministic simulator with finitely many opponents need not have a dominant strategy, cyclic dominance is the usual outcome, and a compiled policy can still observe, remember, and respond. What migrates is where the thinking happens, not how much of it there is. [Two histories]{.margin-note} The real cost appears once two histories of discovery are separated. A community discovers effective designs; an individual learns why designs work; the two need not advance together. In single-player the separation is a feature---solving a problem thousands of others have solved is not spoiled by their having solved it, and declining to import a blueprint is as sensible as declining to read the last page first. Competition destroys the separation, because the move is a file. Files are copyable, so skill cannot be held privately except by secrecy; they are scored by simulation, so the rival supplies a free fitness function; they are produced offline, so tooling cannot be policed and anything which helps is compulsory. The community's research frontier therefore enters the individual's learning curve as an entry requirement, and the preparation rather than the play becomes the activity. Correspondence chess is the same story: permit offline analysis and you get engine-operator research, then draw death. Row 1 has the opposite profile, since the solution is public (build orders), performance is private (hands), and tooling is bannable at the live interface, which is why _Brood War_ has run on the balance of patch 1.08 (2001) ever since, receiving only bug fixes and conveniences ([Liquipedia](https://www.liquipedia.net/starcraft/Patches_1.09-1.15 "'StarCraft: Patches 1.09–1.15', Liquipedia"); a 2007 patch was reported as [deliberately not touching balance](https://www.engadget.com/2007-08-21-blizzard-issues-new-patches-for-starcraft.html "'Blizzard Issues New Patches for Starcraft', Engadget 2007")). In _Factorio_ the same copyability is harmless because there is nobody to beat, which is why blueprint-sharing is culture rather than cheating. [Crawford saw it]{.margin-note} The underlying observation is from 1984: [a game which puts most of its challenge value into an included puzzle rapidly loses that challenge once the puzzle is solved](https://book.huihoo.com/the-art-of-computer-game-design/Chapter1.html#INTERACTION "'The Art of Computer Game Design § Games versus Puzzles', Crawford 1984"), and Crawford's criterion for the difference is whether you create your own solution or discover someone else's. Design × Rival makes that boundary unusually easy to cross, since someone else's solution is a file which runs without being understood. The fix is not a shallower game but legible improvement: a replay which shows the convoy stalling on fuel and names the priority rule responsible converts a scalar loss into a causal question answerable in one edit. Absent that, occupants slide to a neighboring cell in one of three ways. Up, building the machine live through a rate-limited interface in view of the opponent (_The Settlers_, _Supreme Commander_, _Mindustry_ PvP), at the price of attention returning as co-binding. Down, using random offers so that no offline-optimal artifact exists, with shallow legible machines (auto-battlers, limited-format collectible card games), at the price of becoming a valuation game. Or out, installing a perturbation authority which moves the landscape faster than the community's optimizer converges---rotations, patches, a fresh game each year, as in _Battlecode_---at the price of a permanent treadmill which also depreciates what players have learned. _Core War_ took none of the three. # Benchmarks, Not Games Every property which raises the cost of human competition in that cell is a virtue for machine use: cheap exact evaluation, copyable artifacts, and open-ended [Red Queen](!W "Red Queen hypothesis") dynamics. [Kumar et al 2026](https://arxiv.org/abs/2601.03335 "'Digital Red Queen: Adversarial Program Evolution in _Core War_ with LLMs', Kumar et al 2026") duly has LLMs evolving _Core War_ warriors against the accumulated history of their predecessors, and pitches _Core War_ as a sandbox and a benchmark rather than as a game. The old pathology reappears inside the new method and has to be engineered against: their champions exhibit rock-paper-scissors cycles across rounds, and one reported effect of the full algorithm over its ablation is that it *reduces* the cycling, while independent runs converge on similar general-purpose strategies. That is the best evidence against reading the cell as solved, and the best evidence for reading it as a benchmark. [Column inversion]{.margin-note} The benchmark argument then inverts on the column axis. The Factorio Learning Environment exists for the reason _Core War_ fails to sustain a large human scene: _Factorio_'s designed terminal state is a doorway rather than a wall, so production throughput can separate agents where a bounded task imposes a ceiling ([Hopkins et al 2025](https://arxiv.org/abs/2503.09617 "'Factorio Learning Environment', Hopkins et al 2025")). The right column, with no rival at all, turns out to be a serviceable substrate, and the difficulty is supplied by the environment rather than by an adversary: agents discover electric-powered drilling and then fail at electronic-circuit manufacturing. Self-play manufactures unbounded difficulty when the environment is shallow, and _Factorio_ has the difficulty already. The middle column is the awkward one for measurement, not because hazards are strategically empty---they still reward restraint, composition changes, and reserves---but because magnitude-coupled opposition makes difficulty a function of the agent's own output, so score and challenge move together. An unbounded score is also not an unbounded supply of *interesting* difficulty, which is the open question about FLE as it ages. Row 2 is where reward hacking is native rather than contrived. In row 1, cheating means an aimbot, which is outside the game. In row 2 the score is typically a state variable the agent writes to, so the middle case---proxy exploitation, as distinct from honest optimization on one side and tampering with the scorer on the other---is the default failure mode rather than an exotic one. FLE's authors accordingly [manually verified successful production lines to confirm the agents had not cheated](https://epoch.ai/benchmarks/factorio-learning-environment "'Factorio Learning Environment', Epoch AI"). A benchmark whose scoring requires manual anti-cheat review is telling you it is the right benchmark and the wrong metric. # A Caveat on SimCity _SimCity_ is a paperclipper only if the player supplies the utility function, and Crawford's distinctions sort the cases without further machinery: toy (loose, no fixed goal), puzzle (goal, obstacles [passive or static](https://book.huihoo.com/the-art-of-computer-game-design/Chapter1.html#CONFLICT "'The Art of Computer Game Design § Conflict', Crawford 1984")), competition (each competitor optimizing [without direct interaction](https://book.huihoo.com/the-art-of-computer-game-design/Chapter1.html#ATHLETIC "'The Art of Computer Game Design § Athletic Games', Crawford 1984")), game (interaction). That is this essay's column axis, minus the economy condition, forty years early. _Factorio_ is the puzzle rung, science-per-minute leaderboards and speedruns are the competition rung, _StarCraft_ is the game rung, and _SimCity_ is the toy: Will Wright coined [software toy](!W) for it, and its dynamics come from [Jay Forrester](!W "Jay Wright Forrester")'s _Urban Dynamics_ by way of [system dynamics](!W), which Wright has named as his largest single influence. An objective becomes paperclipping when every remaining resource becomes another input to one quantity, and what prevents that is a sufficiency condition: a city specified by acceptable ranges rather than by a maximand permits a machine which eventually stops demanding more. Magnasanti is what happens when a player imposes the maximand on the toy anyway, spending years of graph-paper optimization to produce a stable 6-million-population _SimCity 3000_ city with no roads, no schools, and total police saturation ([Vice 2010](https://vice.com/en/article/the-totalitarian-buddhist-who-beat-sim-city "'The Totalitarian Buddhist Who Beat Sim City', Vice 2010")). It duly looks like a paperclipper's output. Whether returns to scale decide this in general---_SimCity_ has congestion and an interior optimum, _Factorio_ has constant returns and a corner solution, tile the map---is a candidate third axis and the claim here I would drop first, since it may be a property of individual titles rather than a dimension. The purity intuition survives all of this in its restricted form. Removing the rival does not impose endless growth; it buys a longer horizon and hands the objective back. What the released attention is for---another factory, a rival's next move, a town worth living in, or permission to stop---is left open, and that openness is the actual content of the claim. # External Links - ["Digital Red Queen: Adversarial Program Evolution in _Core War_ with LLMs"](https://pub.sakana.ai/drq/), [code](https://github.com/SakanaAI/drq) - [Factorio Learning Environment leaderboard](https://epoch.ai/benchmarks/factorio-learning-environment) - [McIlroy's 1971 letter describing _Darwin_](https://www.cs.dartmouth.edu/~doug/darwin.pdf) - [_The Art of Computer Game Design_, ch. 1](https://book.huihoo.com/the-art-of-computer-game-design/Chapter1.html) ([scan](https://archive.org/details/artofcomputergam00chri)) - [_Core War_ strategy guide](https://corewar.co.uk/strategy.htm) - [_Screeps_](https://www.moddb.com/games/screeps), [_Gladiabots_](https://www.moddb.com/games/gladiabots)