Brian Andrew Mulrooney

A Game World That Cannot Lie About Water

SATELLITE TERRAIN — A GAME WORLD THAT CANNOT LIE ABOUT WATER

NASA 30 m elevation → rainfall simulation → a branching river network solved as one system — and the audit that refused our own first attempt · 2026-07 → 2026-08
1 · Background & problem

A strategy game set on real terrain, built in two steps: 1. render the land from public NASA satellite elevation data, 2. earn the water from a rainfall simulation and a branching river network — nothing drawn by hand, and every claim checked by refusal-style audits that stop the build rather than ship a lie.

Problem: those audits caught our own pipeline. Each river was carving its own private copy of the terrain, and merging the copies afterwards left rivers disagreeing with each other — water levels stepping up to 1.4 m where rivers met, sheets standing 2.9 m above the ground that shipped.

2 · Root cause & countermeasures
root causecountermeasure
each river computed its water level on a private copy of the groundONE solver now sets every level for the whole 164-river network in a single in-memory pass — 1.0 second for 25,039 river stations
where a tributary met its parent, two private answers met too (steps up to 1.4 m)the meeting level is a solver constraint: tributaries sit exactly 1 cm under their parent, by construction, at all 72 junctions
164 separate terrain edits were merged after the fact, deepest cut winsONE carve pass cuts the solved network into ONE terrain — 215,726 cells in 34.8 s, zero over-limit cuts
a measured carving bug: river segments cut terrain past their own ends, up to 0.8 m too deep on descending reachesevery terrain cell now takes its depth from the nearest river station and no other — found by the new audit, proven by test before the fix shipped
build order mattered (parents before children), so one failure starved a whole subtreewith levels pre-solved, all 164 rivers build independently in parallel — the first fully complete build the project has produced
BEFORE · every river owned a private ground; the merge reconciled the disagreements after the fact · junction steps to 1.4 m, water hanging above its banks, and no build ever completed all rivers
AFTER · one solve, one carve, one terrain · junction agreement to 1 cm by construction · 164 of 164 rivers built · the strictest water-on-ground audit is now honest enough to argue with a 4 m terrain grid about centimeters
3 · Results — the evidence
In-game world map — the solved river network flowing to the sea
The world in-game: the live world map under the one-system build — every channel shown is solved and carved as part of one 164-river network (92 sea mouths), selected from the rainfall simulation, never drawn.
A river junction under the old pipeline — stepped, stacked water sheets
Before — the same junction, old pipeline: stacked sheets and stepped edges where three rivers each brought their own private answer for the water level.
The same river junction under the network solve — one continuous confluence
After — one solved system: the identical camera. The confluence is one continuous surface; the tributary sits 1 cm under its parent because the solver makes any other answer impossible.
A carved valley that was dry under the old pipeline, now carrying a river
A dry valley comes alive: twelve rivers the old per-river build had to abandon (their valleys shipped carved but dry) all solve under the network approach — this one now runs to the sea.
River network map with accepted branching links
The branching network: a candidate river split joins only after passing four physical tests (inflow, no cycles, flow share, descent) — from the published GRIT method.

NETSOLVE, GREEN — 164 courses / 25039 stations / 72 junctions solved in 1.0s; max junction step 0.0100m (bar 0.0100m, <= tuck BY CONSTRUCTION); d_max 1.33m (cap 15m)

Verbatim line from the network solver's witness: the whole forest solved in one second, and the largest disagreement between any tributary and its parent is exactly the designed 1 cm tuck — not approximately, structurally.

4A · Resolved: one system, one terrain, complete builds
  • All 164 rivers solve, carve, and build together · junction agreement is a property of the solver, not a repair pass · a measured sub-meter carving bug was found by the new audit and fixed with a proving test · total water stays governed by the region's real-world cap (projected 3.1% of land against an 8.0% river budget)
4B · Unresolved: the audit is now arguing about centimeters
  • The strictest check demands water sit within 1 cm of its shipped ground; a 4 m terrain grid can only honestly represent that to a few centimeters, so the check currently refuses the build — the refusal is the system working, and deciding the check's correct form is the next piece of work · a handful of steep coastal sites (66 of 24,528 stations past 1 m) are real defects on a named worklist