Tier 0 Number Proposals
Proposed values for every number that Tier 0 of the prototype needs and the other docs don’t set yet. Written November 1, 2026.
Everything here is Tentative and a proposal. None of it is design until the designer accepts it. When a value is accepted, move it into balance-and-simulations.md (or the system’s own doc) and delete it here.
Numbers that are already set (Harvester speed and cargo, building costs, stack size, study time and so on) are in balance-and-simulations.md and aren’t repeated. The checks are in scripts/sim/tier0_checks.py; results are under Balance checks.
Terms
- Tile: one square of the map grid, 4 m × 4 m (world.md). Distances here are in tiles.
- Cell: a tile that’s part of a deposit, so it holds the resource. A deposit’s edge is irregular, so its cells don’t form a neat rectangle.
- Footprint: the 2 × 2 block of tiles that one Harvester (or later a drill) works. Only one Harvester collects in a footprint at a time.
- Productive cells: how many of a footprint’s 4 tiles are deposit cells. A full footprint has all 4. Collection is 0.25/s per productive cell, so a full footprint gives 1/s and a footprint with 2 cells gives 0.5/s.
- Patch size is given in footprints: “2 footprints” means room for two Harvesters at once, about 8 cells.
What the numbers have to do
Taken from the design docs. Each proposal below says which of these it serves.
- Tier 0 is quiet. Nothing attacks before Tier 1; “nothing is noisy enough to provoke an attack yet.”
- The first fight is inevitable, in Tier 1. Run 8 has it at 24–26 minutes, from Harvester and refinery noise alone.
- A quiet base is safe even with a visible hive about 50 tiles (200 m) away.
- Distance hurts, so players want logistics.
- Never watch a progress bar. Always three or more things going on.
- Sword Bots are wimpy; they handle weak wanderers, not hives.
- Walls are a consumable and a reason for creatures to detour.
- Losing vehicles is a short dip; losing buildings is a real loss; nothing deadlocks.
- Keep the Run 7 and Run 8 economy. Those runs hit the 12-minute and Tier 2 targets, so the proposals avoid moving their inputs.
1. Simulation tick
Decided: the prototype runs a server-owned simulation at 20 ticks per second (50 ms a tick). It’s in balance-and-simulations.md and player-and-platform.md. The research behind it is below.
At 20 ticks/s the fastest unit, the Scout at 3 ticks a tile (about 6.7 tiles/s), moves a third of a tile per tick, and every Tier 0 rate is still a whole number of ticks: a Harvester cell yields one item every 80 ticks, a 2 s craft is 40 ticks and a 6 s craft 120. The fair-share allowance becomes 40 ticks to stay at 2 s (see base-network-and-inventory.md).
| Variable | Proposal | Why |
|---|---|---|
| Noise update | Once per second (every 20 ticks) | Noise moves slowly and creatures react over seconds. Fog updates every tick. |
| State updates to clients | 10 per second, separate from the tick | Clients smooth motion between updates. Halves bandwidth without slowing the simulation. |
What other games use
| Game | Simulation rate | Notes |
|---|---|---|
| Factorio | 60 ticks/s | Deterministic lockstep; only player inputs go over the network. Belts and inserters move items every tick, which is what needs 60. Sleeping entities drop out of the update loop. |
| Minecraft | 20 ticks/s | Authoritative server. Only chunks within “simulation distance” of a player tick. |
| StarCraft II | 16 game loops/s (22.4 on Faster) | Lockstep. |
| Supreme Commander | 10 ticks/s | The sim runs at a fixed 10 Hz; rendering runs up to 60 fps and interpolates. |
| Age of Empires | 200 ms command turns, about 15 fps sim on minimum hardware | Lockstep; commands run two turns later. |
The pattern: RTS and strategy games simulate at 10–20 ticks/s and render faster by interpolating. Factorio’s 60 is the outlier, and it’s driven by belts, which this game doesn’t have. We chose 20, the top of that range and Minecraft’s rate, for headroom: faster vehicles, trains, turret projectiles and sub-second recipes in later tiers.
Built for enormous maps
The prototype map is 640 × 640, but real maps will be far bigger, and the world keeps running wherever players have bases, not just where someone is looking. So the cost of a tick has to grow with active things, not with map area or total entities:
- Sleeping, as in Factorio. A starved, blocked or switched-off machine leaves the update loop until stock, space or the player wakes it. A crafting machine schedules the tick it finishes on instead of being checked every tick.
- Vehicles as scheduled arrivals. A Harvester or truck on open ground can be “arrives at tick N” with its position interpolated, and only needs work at stops or when something could intercept it.
- Noise checks by neighborhood. Each hive or creature only sums the sources within the loudest possible radius, found through a spatial grid, rather than every source on the map.
- Chunked map data. Terrain, deposits and fog are stored and generated in chunks (Factorio and Minecraft both do this), so unexplored map costs nothing. The first test uses flat arrays on its 640 × 640 map instead, behind a function that chunks can replace.
- Define rates in seconds. Recipes, speeds and delays are written in seconds and converted to ticks at load. If the tick rate ever changes, only tick-based values like the fair-share allowance need retuning.
The server owns the tick Decided (see player-and-platform.md). That’s the Minecraft model, not Factorio’s lockstep: clients don’t each run the simulation, so they can’t desync. Single player runs the same simulation on the phone. Determinism still matters for replays and testing.
2. Map generation
| Variable | Proposal | Why |
|---|---|---|
| Map size | 640 × 640 tiles for the prototype, ship in the middle. Real maps will be far bigger | The Scout reaches 75 tiles (section 4), which leaves about 245 tiles of fog past its reach on every side. Hatched fog inside the noise zone then always has something unknown behind it. The other rows here describe the start area, so they should carry over to big maps unchanged; see Built for enormous maps. |
| Near Basalite | 3 small patches, 15–20 tiles from the ship, 90–150° apart. A small patch is 7–12 cells around a full 3 × 2 core, rounded rather than stringy (within 5 × 4 tiles). It was 2 full footprints (8 cells) until the first playtest | About the same capacity as Run 8 (6 Basalite footprints near home), so the Run 7 economy holds. Spread out, they make the first scout trip find Basalite in 92% of directions. The core keeps one full footprint, so the opening still matches the sims; the irregular edge reads as a deposit on screen, where the rectangle didn’t (first-test.md). |
| Second Basalite | 1 patch, 6 footprints, 40–60 tiles | Run 8’s 50-tile patch. The first expansion target. |
| Colite | 1 patch, 4 footprints, 25–40 tiles | Run 8: 30 tiles. |
| Ferrite | 4 footprints at 30–45 tiles; 8 footprints at 80–130 tiles | Run 8: 35 and 80. The far patch is the reason for logistics. |
| Cuprite | 4 footprints at 35–50 tiles; 8 footprints at 80–130 tiles | Run 8: 45 and 90. |
| Calcified Evolite | 1 deposit, 2 footprints, 50–70 tiles, inside spawn protection | Run 8: 60 tiles. Inside the 150-tile zone, no hive can be within 80 tiles of it, which meets “no dangerous hive on top.” |
| Edge irregularity | Outside the near Basalite, about 60% of footprints full, 25% with 3 cells, 15% with 2 or 1 | Most footprints are fine, so sim rates stay roughly right (average 0.84×). Enough bad edges that the footprint UI and the 2×2 choice matter. |
| Deposits beyond 150 tiles | About one patch per 60 × 60 tiles: Basalite 35%, Ferrite 25%, Cuprite 20%, Colite 20%; 4–12 footprints each | Bigger patches farther out reward expansion. A rough start; tune on real maps. |
| More Calcified Evolite | 2–3 deposits at 150–300 tiles, each within 40 tiles of a hive | The lore puts aliens where the Evolite is. More Evolite means more risk. |
| Hives | Nearest small hive 160–220 tiles; 4 small hives in the 150–250 ring; medium hives only beyond 250 | Just outside spawn protection and, since the Scout’s reach became 150, outside its reach too: the first Scout can’t find a hive, and finding one is a step the player pushes out to take. Base noise reaches them at about 40 noise (section 7), when Run 8 has its first fight. |
| Wanderers | 6–8 lone basic creatures roam the 150–250 ring and never enter spawn protection unless drawn by noise | The Sword Bot’s role is to “handle weak wanderers,” so they have to exist. A hive is a small target for a 24-tile scout strip; wanderers make the first sighting likely in minutes 6–10 (Run 7: 6:10). |
| Terrain | Open ground everywhere. Only buildings and walls block movement; vehicles drive over deposits and foundation | Keeps pathfinding to the wall rules that matter. Roads remain open (#24). |
3. Fog and vision
| Variable | Proposal | Why |
|---|---|---|
| Explored vs visible | Once seen, terrain, deposits and hives stay revealed (hives as last seen). Creatures show only inside current vision | The usual fog model. It’s what makes “hatched fog inside the noise zone” mean danger you can’t see. |
| Ship vision | 20 tiles | Its sensors are damaged (Restore Sensor Systems is a later repair). It was 12, which kept the 15–20 tile Basalite just out of sight so the first find came from a scout mission. In the first playtest (Nov 2026) the designer took 2–3 minutes of full-range trips to find it, since a 2 × 2 patch is easy to fly past. At 20 the ship sees at least one near patch on every generated map (two or three on 95% of 300 seeds), and the Scout is for what’s beyond. |
| Building vision | 20 tiles (unchanged) for the Depot, Barracks and later production buildings and turrets. None for the Storage Silo, Foundation and Stone Wall | Answers #10 with the docs’ leaning: passive structures give no vision, so cheap tiles can’t map the world. The cheapest building that sees is a 100-Basalite Depot. |
| Scout vision | 12 tiles | “Relatively low.” One trip reveals a strip 24 tiles wide. |
| Ground units | Harvester and Engineering Crew 6 tiles; Sword Bot 10 tiles | Enough to show what’s attacking them. A Sword Bot’s vision is its engage range. |
4. Scout Drone
| Variable | Proposal | Why |
|---|---|---|
| Range | 150 tiles of flight per trip, so it reaches 75 tiles out | First read as a 500-tile battery reaching 250 tiles, then cut to 150 out (Nov 2026): 250 tiles is 5–8 phone screens and lets the first hour see everything near home. The first playtest cut it again. With a long reach, the obvious move is to send the Scout as far as it goes every time, which teaches the wrong habit when the player can’t redirect it mid-trip. At 75, trips are short, and covering the whole circle takes about 8 minutes of back-to-back trips (spokes 24 tiles apart at the edge). A longer reach is meant to be an early upgrade. Hives and the far deposits stay out of reach. |
| Speed | 3 ticks a tile, about 6.7 tiles/s | Was 10 tiles/s, which felt too fast in the first playtest. A full trip takes 22.5 s. Still nearly seven times a Harvester, so flying clearly feels different. |
| Recharge | 4 s per 100 tiles flown (6 s after a full trip) | A full cycle is about 29 s. Orders given while it’s away queue up (see first-test.md), so the player can plan several short trips at once. |
5. Harvester
| Variable | Proposal | Why |
|---|---|---|
| Slot size | 1 | Implied by “small Harvester = 1.” |
| HP | 60 | A basic creature kills it in 6 s. It’s free and back in 30 s, so a lost Harvester is a short dip. |
| Noise | 1 while driving or collecting; 0 while parked or waiting for a footprint | Run 8’s value. Section 7 turns it into a 25-tile radius. |
| Calcified Evolite rate | 0.1/s per cell (0.4/s on a full footprint) | Run 8’s value; “slow, hard to extract.” Run 8 found Evolite runs ahead late in Tier 1 (#40). That’s a Tier 1 question. |
| Live Evolite rate | 0.25/s per cell, the same as ore | “Harvesting is quick and easy; the fighting is the hard part.” |
| Evolite cargo | 50, like ore | One rule for every cargo. |
| First sample | Before the study, a Gather on Calcified Evolite comes home as soon as it holds 10 | Filling to 50 would add 100 s of collecting. From 60 tiles, the sample trip takes 2:30. |
| Evolite before the study ends | Banked; it joins the global balance when the study completes | Nothing is wasted. One Harvester brings less than one load in 3 minutes, so it doesn’t speed up Tier 1. |
| Unloading | No queue at Depots and the Crashed Ship: any number unload at once | Only the Outpost is one-at-a-time, by design. |
6. Engineering Crew and construction
| Variable | Proposal | Why |
|---|---|---|
| Speed | 2 tiles/s | Run 8’s placeholder. Faster than a Harvester so building doesn’t feel like waiting; slower than a truck. |
| Carrying | 100 materials per trip (two stacks) | Every Tier 0 job is one trip: a Depot or Barracks (100), a Silo (67), 10 foundation tiles, 33 wall tiles. Tier 1 buildings over 100 need two trips, so building far from home costs time and a remote Depot as a materials store pays off. |
| Build time | 0.3 s per unit of material (minimum 1 s) | Keeps the 30 s Depot and Barracks. The Silo becomes 20 s, foundation 3 s a tile (1 s since the first playtest; see first-test.md), wall 1 s a tile. Fixes Run 7 building 10 wall tiles with no time cost. Bigger buildings take longer without a separate table. |
| Rebuild time | Same as build | |
| Demolish time | Half the build time. The crew carries the 50% refund home | |
| Repair | Free; restores HP at the build rate (a wrecked Depot takes 30 s) | A rebuild costs 100%, so repairing before something is destroyed is the reward for defending or shutting down in time. Walls stay a consumable, because destroyed tiles still cost. Alternative if this is too generous: repair at 50% of the lost share of the cost. |
| Slot size, respawn, HP, noise | 1 slot, 30 s, 60 HP, noise 1 while driving or building | Same small vehicle as the Harvester. A crew in a Depot takes a slot a Harvester could have, which is a real trade-off. |
| Auto-foundation radius | 8 tiles (at most 80 Basalite) | Between the 5 and 10 floated (#11). Under one Depot’s price; show the cost before confirming. |
7. Noise
| Variable | Proposal | Why |
|---|---|---|
| Model | Intensity adds across sources and falls with the square of distance. A source of noise n is heard out to 25 × √n tiles. Overlapping sources sum | It’s how sound works, and it gives exactly the docs’ “combination effect”: four Harvesters together are heard at 50 tiles, not 100. Cheap: one sum per hive or creature per second. |
| Formula | Heard at a point if Σ nᵢ × (25 / dᵢ)² ≥ 1 (distance at least 1) | |
| Tier 0 sources | Harvester 1 and Engineering Crew 1 while active. 0 for the Scout Drone, Crashed Ship, Depot, Silo, Barracks, foundation and walls | “Passive structures make little or none.” The Scout is airborne and can’t be hurt early, so it shouldn’t draw anything either. |
| Sword Bots | No noise, but they’re aggressive targets (priority 1) once creatures are close | “Military units count as noise for targeting” through threat, not by drawing creatures from far away. |
| Idle machines | No noise while starved or blocked | Answers #7. An idle machine is silent, like one switched off. The commitment rule already stops toggle-kiting. |
| Who hears | Hives and wanderers, at their own position | |
| Tier 1 sources | Refinery 3, fabricator 2, drill 8, truck 1 (Run 8, unchanged) | Left for Tier 1 tuning. |
Under this model the 12-minute Tier 0 base is inaudible past about 90 tiles, a three-Harvester Depot is safe beside a hive 50 tiles away, and a Run 8-sized Tier 1 base is heard about 165 tiles out, at the nearest hives. See Balance checks.
8. Basic creature
The first fights happen in Tier 1, but Sword Bots, walls and building HP need a reference creature.
| Variable | Proposal | Why |
|---|---|---|
| HP | 100 | Round reference for everything else. |
| Damage | 10/s, melee, against units and structures | |
| Speed | 2 tiles/s | Faster than Harvesters (1) so they can’t flee, equal to crews, slower than Sword Bots (2.5) so bots can intercept, and slower than trucks (3) so trucks can escape. That’s part of why trucks are worth having. |
| Target range | 12 tiles | Inside this range, it picks a target: threats first, then the nearest noise. |
| Commitment | Keeps attacking its target for 15 s after that target goes quiet | Anti-toggle-kiting. After that it disengages unless something noisy or threatening is in range. |
| Losing the sound | Heads for the loudest point it hears; after 15 s hearing nothing, goes home | “Confused, turns around.” |
| Retreat | A group retreats when half of it is dead | Fights end with retreats, not wipes. |
| Detour | 20 tiles, 80 m (unchanged) | At 2 tiles/s a 20-tile detour costs 10 s and a wall tile takes 30 s to chew, so going around really is the better choice. The rule and the numbers agree. |
| Evolite drop | 10 per creature; lasts 5 minutes (unchanged) | Run 8’s value. A raid of three drops 30, about 2.5 minutes of a Harvester on the starting Calcified Evolite: worth collecting, not a reason by itself to fight. |
9. Sword Bot
| Variable | Proposal | Why |
|---|---|---|
| HP and damage | 100 HP, 8 damage/s | It loses one-on-one to a basic creature (“wimpy”). Two beat one; four beat three with two left. A full Barracks of four holds raids of 2 and 3; the third raid (4 creatures) needs turrets or a second Barracks. That matches Run 8, where three Sword Bots held the first two groups. |
| Speed | 2.5 tiles/s | Fast enough to intercept. Slows to 1 tile/s on escort, to match the Harvester. |
| Respawn | 45 s | Between a Harvester (30 s) and a truck (60–90 s). |
| Engage range | 10 tiles (its vision) | |
| Patrol leash | Chases up to 15 tiles outside its patrol area, then returns | Stops a patrol from being dragged to a hive. |
10. Buildings
| Variable | Proposal | Why |
|---|---|---|
| Crashed Ship footprint | 6 × 4; connects to adjacent buildings and foundation like any building | The crew draws materials from what the ship stores, so it has to be on a network. |
| Crashed Ship units | Always one Scout Drone, one Harvester, one Engineering Crew; the Harvester and Crew respawn in 30 s. No extra slots | The never-stuck guarantee. More units come from Depots. |
| Depot slots | 3 (#5) | Runs 7 and 8 balance on 3, and the compounding risk argues against 4. |
| Barracks slots | 4 (#5) | The designer’s own example: 4 Sword Bots, 2 Sword + 1 Gun, or 2 Gun Bots. |
HP:
| Building | HP | HP per Basalite | One creature needs |
|---|---|---|---|
| Depot | 1000 | 10 | 100 s |
| Barracks | 1200 | 12 | 120 s |
| Storage Silo | 600 | 9 | 60 s |
| Foundation | 150 / tile | 15 | 15 s |
| Stone Wall | 300 / tile | 100 | 30 s |
| Crashed Ship | Indestructible |
Why: buildings get about 10 HP per Basalite. Walls get ten times that, so they’re the cheap barrier and a consumable. Foundation is weak, so a thin base gets cut through quickly, which rewards wide, redundant layouts. The Barracks is a little tougher because it’s the military building.
11. Hives
Seen in Tier 0, fought in Tier 1.
| Variable | Proposal | Why |
|---|---|---|
| Small hive | 4 × 4 cells of Live Evolite (4 footprints), 300 Live Evolite | Six Harvester loads: “many trips” for one, quick for a fleet. Worth about 25 minutes of one Harvester on Calcified Evolite, so clearing one is the fast, risky route. |
| Defenders | 4 at the start, +1 every 4 minutes, up to 8; they stay within 15 tiles unless raiding | An untouched hive grows more dangerous with no level scaling. By Tier 1 most small hives are full, so clearing one needs Tier 1 military. Mating into larger creatures is left for Tier 1. |
| Raids | When a hive hears noise, it waits 60 s, then sends a group of 2. While it still hears noise, it sends a group one larger every 6 minutes, up to half its defenders | Matches Run 8’s waves (2, 3, 4… every 6 minutes). With 160–220 tiles of travel at 2 tiles/s, the first group arrives about 2½–3 minutes after the base gets loud enough, as in Run 8. |
| Alien sighting | The first creature or hive seen reveals the Barracks and Stone Wall. Fallback: if nothing has been seen when the Evolite study completes, the study reveals them (“traces of an organism”) | Defense has to be reachable before the first raid, even for a player who never pointed the Scout at a hive. |
Balance checks
From scripts/sim/tier0_checks.py:
| Check | Result | Target |
|---|---|---|
| Noise of the Run 7 base at 12 minutes (10 Harvesters and a crew, 11 noise) | Loudest point 150 tiles out: 0.33 (heard at 1) | Tier 0 is quiet: no hive within 150 tiles hears it |
| Run 8-sized Tier 1 base (42 noise) | Heard 165 tiles out | Reaches the nearest hives (160–220) around Run 8’s first fight |
| Harvesters on a patch with a hive 50 tiles away | 3: 0.75 (safe); 4: 1.00 (just heard) | A quiet site is safe at 50 tiles |
| Sword Bots vs basic creatures | 1v1 lost; 2v1 won; 3v2 won with 2 left; 3v3 lost; 4v3 won with 2 left | Wimpy; a full Barracks holds the first two raids |
| Time for one creature to chew through | Wall tile 30 s, foundation 15 s, Depot 100 s; a 20-tile detour takes 10 s | Detours beat chewing; walls buy time |
| First scout trip sees Basalite | 92% of directions | The first mission finds the first resource |
| First Depot done | 4:03 (found at 0:30, two 89 s trips, 5 s drive, 30 s build) | 4–6 minutes |
| Evolite sample trip | 2:10 / 2:30 / 2:50 from 50 / 60 / 70 tiles | Tier 1 opens around 12–15 minutes |
Knock-on effects
- First Depot lands at about 4:00, not 3:50. That moves it inside the 4–6 minute target, which Run 7’s 3:50 slightly missed.
- The Evolite sample takes about 2:30, not the 1:00 implied by Run 7 (found 8:00, at the ship 9:00). With Evolite found at 8:00, the study starts about 10:30 and Tier 1 opens about 13:30. That’s inside the 12–15 minute window, but Run 8 starts at 12:00, so its finish times would shift by about 1½ minutes.
- The Silo builds in 20 s, not 30.
- The Depot’s 6-stack storage is tagged Decided in base-network-and-inventory.md but listed without a tag (so Tentative) in balance-and-simulations.md. One of them needs fixing.
Not covered
- Still open, and not numbers: what the Engineering Crew does before the first Depot (#8), the list of what crews can build remotely (#9), day/night in the prototype (#15), how a hive’s danger reads on sight (#16).
- Tier 1 numbers: Gun Bot, turret, truck slot size and the rest stay with Run 8 and open-questions.md.