Land value
A per-block value over the city map, computed from location, terrain, and nuisances, that steers where and how zones grow.
On this page
Land value rates each part of the city map. In SimCity it’s kept per 2×2-tile block, beside pollution and crime, while police and fire coverage use 8×8 blocks1. A block’s value falls with its distance from the city center and its pollution, and rises with nearby water and trees2.
Games
| Game | Year | How | Note |
|---|---|---|---|
| SimCity | 1989 | 2×2 blocks valued by nearness to the center, terrain, pollution, and crime; police and fire coverage in 8×8 blocks |
Every claim about this mechanic, by game (6)
References
- ^ abOver the 120×100-tile city, the simulation keeps population density, traffic, pollution, land value, and crime in 2×2-tile blocks (60×50), terrain in 4×4 blocks (30×25), and fire coverage, police coverage, commercial location, and growth rate in 8×8 blocks (15×13).CodeMicropolis (SimHacker/micropolis)
How we know
167#define SmY ((SimHeight + 7) >>3)micropolis-activity/src/sim/headers/sim.h lines 156–167 at c98f6b0 · upstream ↗ 484extern short FireStMap[SmX][SmY]; /* 8X8 Maps 15 x 13 */micropolis-activity/src/sim/headers/sim.h lines 474–488 at c98f6b0 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-21.
Checked by a second AI model, 2026-10-21.
- ^ abA 2×2 block holding any developed tile (a road or anything numbered above it) gets land value 4 × (34 − its distance from the city center, capped at 32), plus its 4×4 block's terrain value, minus its pollution, minus 20 more where its crime is above 190, held to 1–250. A block with nothing developed gets 0.CodeMicropolis (SimHacker/micropolis)
How we know
204 dis = 34 - GetDisCC(x, y);micropolis-activity/src/sim/s_scan.c lines 184–215 at c98f6b0 · upstream ↗ 291 z = (xdis + ydis);micropolis-activity/src/sim/s_scan.c lines 277–296 at c98f6b0 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-21.
Checked by a second AI model, 2026-10-21.
- ^A zone's new building takes one of four value classes from its block's land value minus pollution: below 30, below 80, below 150, and 150 or more.CodeMicropolis (SimHacker/micropolis)
How we know
295 if (LVal < 150) return (2);micropolis-activity/src/sim/s_zone.c lines 287–297 at c98f6b0 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-21.
Checked by a second AI model, 2026-10-21.
- ^A 2×2 block's pollution sums its tiles, held to 255, then is smoothed: heavy-traffic road 75, light-traffic road 50, fire 90, radiation 255, built industrial tiles 50, and seaport, airport, and coal plant tiles 100. Houses, commercial buildings, and the nuclear plant add nothing.CodeMicropolis (SimHacker/micropolis)
How we know
260 if (loc >= HTRFBASE) return (/* 25 */ 75); /* heavy traf */micropolis-activity/src/sim/s_scan.c lines 257–273 at c98f6b0 · upstream ↗ 191 Plevel += GetPValue(loc);micropolis-activity/src/sim/s_scan.c lines 191–202 at c98f6b0 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-21.
Checked by a second AI model, 2026-10-21.
- ^Crime in a 2×2 block with land value is 128 − land value + population density, held to 300, minus its 8×8 block's police coverage, held to 0–250; a block without land value has none.CodeMicropolis (SimHacker/micropolis)
How we know
320 z -= PoliceMap[x >>2][y >>2];micropolis-activity/src/sim/s_scan.c lines 313–323 at c98f6b0 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-21.
Checked by a second AI model, 2026-10-21.
- ^Each police station adds the police funding effect, 1000 × spending / requested funds (1000 when nothing is requested), to its 8×8 block, halved if unpowered and, by a change after the original release, halved again if no road touches it. Fire stations fill the fire coverage map the same way. Each map is then smoothed three times, every pass setting a block to half its value plus an eighth of its four neighbours' sum.CodeMicropolis (SimHacker/micropolis)revised
How we know
1067 z = z >>1; /* post PD's need roads */micropolis-activity/src/sim/s_sim.c lines 1040–1069 at c98f6b0 · upstream ↗ 680 (float)PoliceFund) * 1000.0);micropolis-activity/src/sim/s_sim.c lines 678–688 at c98f6b0 · upstream ↗ 307 SmoothPSMap(); 308 SmoothPSMap(); 309 SmoothPSMap();
micropolis-activity/src/sim/s_scan.c lines 307–309 at c98f6b0 · upstream ↗ 81 SmoothFSMap(); 82 SmoothFSMap(); 83 SmoothFSMap();
micropolis-activity/src/sim/s_scan.c lines 81–83 at c98f6b0 · upstream ↗ 519 edge = (edge >>2) + PoliceMap[x][y];micropolis-activity/src/sim/s_scan.c lines 515–520 at c98f6b0 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-21.
Revised after a check by a second AI model, 2026-10-21.
Sources
Code
- Wright, Will, Don Hopkins, and Electronic Arts. 2026. “Micropolis: the GPL release of the SimCity engine (SimHacker/micropolis).” Commit c98f6b0. SimHacker/micropolis @ c98f6b0 · licence, all uses