The Supporting World of the Infinite Game
Modeling-based design of an infinite O'Neill cylinder: structure, thermodynamics, and the closed food web.
The infinite game is set inside a world we are trying to build honestly. That world is an O'Neill cylinder — a spun tube whose inner wall is the ground — taken to the limit of having no end-caps, so it repeats for ever along its axis. A game world wants a setting; a habitat wants a proof. This dossier collates the supporting research into one report, organised around the three questions an enclosed world must answer before anyone can live in it: can the shell carry the spin that makes gravity (structure), does the enclosed air and water reach a livable steady state (thermodynamics), and can the life inside close its own carbon, oxygen and nutrient loops (biological webbing). Each question is modelled in its own deploy surface — rind, tide, biome — and each section below ends in a live figure that runs the wing's headline physics in your browser. The discipline throughout is the same: every model is deterministic, conserves its books to machine precision, and is pinned by an offline self-test — modeling, not hand-waving.
The cylinder, and the modeling discipline
Spin a cylinder about its long axis and an object on the inner wall is flung outward; the wall
pushes back, and that reaction is apparent gravity. The gravity is purely geometric:
g(r) = ω²r. It is full strength at the rim, where the floor is, and falls to zero on
the axis — so "up", toward the centre, is genuinely low-gravity, and the axis is weightless. Make
the tube long enough and drop the end-caps and the world becomes infinite: a ground that
curves up and over your head and runs away to a vanishing point in both directions. That is the
stage the game walks across. It is also a machine that has to work.
The package splits the machine into four wings, each a standalone site with its own model and its own landing page. hoop (here) is the game. The other three are the supporting world, and the rest of this report is about them: rind proves the shell, tide settles the climate, biome closes the ecology. The split is deliberate — each is small enough to be verifiable. Across all of them the method is the same three commitments: models are deterministic (same inputs, same world, on every machine — the property that lets the game's chunks be reproducible and persistable); they conserve their books (mass, carbon, energy, water) to machine precision, because a habitat that leaks a tracked quantity is lying; and each ships with an offline self-test that is the real contract. The three figures below are not decoration — each runs the same kernel the wing's self-test pins, re-derived here so this page stays self-contained.
the foam space-frame shell + the Rust/WASM frame solver that scores it
Problem statement
The same spin that makes the floor habitable is the load that tries to tear the shell apart. Every
tonne resting on the inner surface is being accelerated outward at ω²r, and the only
thing holding it in is the shell, which must take that pull as hoop tension — the ring stress
in a spinning band. There is a hard limit hiding in this: a rotating ring made of a material with
density ρ and strength σ can support its own mass only while the rim speed satisfies
v² < σ/ρ. That ratio σ/ρ — specific strength — is a property of the material
alone, so the maximum rim speed (and hence the size×gravity a habitat can reach) is set by chemistry,
not engineering cleverness. At the build modelled here — an 8 km floor radius spun for ~0.8 g —
the rim moves at ~250 m/s, and ordinary structural steel is already past its limit.
rind answers this without a closed-form hand-wave. It generates a layered, braced foam — a Voronoi space-frame whose edges form a "monster truss" and whose plates seal compartments without cutting the load path — and scores it with a Rust/WASM frame solver (banded RCM reordering + Cholesky; a matrix-free PCG truss solve at ~10⁵ DOF). Dial the radius, spin, material and safety factor and the walls recolour by the solver's actual stress — green holds, red overstresses — with the deflection exaggerated so you can watch it carry load. The same chamber-adjacency graph the solver stiffens doubles as a road network: rind's wayfinder threads drivable spiral ramps and level azimuthal roads through the foam and certifies them offline.
There is a second load path the foam doesn't have to walk alone: the secant cable web. Rather
than thicken the wall until it can take the whole hoop tension, string a tension net of straight
cables across the bore — each cable a chord (a secant of the ring), the set arranged
as an {N/k} star polygon of N anchors each joined to the k-th. The web carries a chosen
fraction φ of the pressure-and-payload load in pure tension, leaving the hull only the remaining
(1−φ); its efficiency is η = sin(πk/N) (the chord's radial pull), and — this is the design payoff —
it leaves a clear navigable core of radius R·cos(πk/N), where radial spokes to a central hub
would block the axis entirely. The catch is the one term cables can never remove: the
self-spin stress ρv². The hull is still a spinning ring of material, and no internal
tether changes that — so a material whose ρv² alone exceeds its allowable is beyond saving at that
size, web or no web. The cable web buys down the payload term; the flywheel term is
a property of the chosen material and rim speed.
{N/k} secant web is strung across the bore, taking φ of
the load and leaving a clear core (the dashed circle). The hull still carries
ρv², the self-spin floor a cable can't remove — so steel stays red at 8 km however hard the
web pulls. The full foam shell + cable-net is solved member-by-member at
rind.mino.mobi.
- The flywheel term is size-dependent through v²=aR: a 1 km ring of steel at 0.8 g is fine; the 8 km build is not, and no cable web changes that — ρv² is the material's own floor.
- A bare carbon hull at 8 km is marginal; a secant web carrying ~30–50% of the load takes it from tears to holds — the cable net is what makes the big build close.
- The
{N/k}choice trades efficiency for a clear core: rim-hugging chords leave a wide-open axis but pull less per cable; near-diametral chords pull hard but crowd the core. Secants leave the centre walkable — spokes-to-a-hub don't.
the radial atmosphere column · fog optics · the fountain & sun · the water/energy ledger
Problem statement
The interior has a thermal layout that is the inverse of a planet's, and it drives everything. The light source — a linear "sun" — runs down the axis; the cold sink is the shell, radiating to space at the rim. So the warm direction is up (toward the centre) and the cold direction is down (the floor). On Earth a cold ceiling re-densifies warm air and stirs the column; here there is no cold ceiling, so warm air that rises to the axis simply stays there. The steady state is permanent stratification: a hot, stable core over a thin weather layer hugging the vegetated floor. Two consequences follow. First, condensation happens at the cold surface, not aloft — the world is fog-and-dew, not rain, like a cloud forest. Second, and more dangerous, the same stagnation that gives gentle dew also suppresses vertical mixing of CO₂: a photosynthesising canopy strips CO₂ from its own boundary layer within minutes and nothing resupplies it. The fog that waters the plants and the stillness that starves them are the same phenomenon.
tide resolves the interior the only way its symmetry allows — as a 1-D radial column (temperature, pressure, humidity, CO₂ vs. radius) evolving under a pulsable axial sun, in true cylindrical finite-volume so the diffusion operator conserves heat, mass, CO₂ and water to machine precision (the method is Held–Suarez in spirit: radiation as Newtonian relaxation, dynamics as stability-dependent convective mixing). It reproduces the geometry's numbers by construction. Layered on top: Mie fog optics (the stratus deck blooms to near-blackout at night and the sun burns it off by day), a rotating-frame ballistic fountain that mechanically lofts air through the inversion and curves a water jet into an irrigation sheet, the 1/r luminous-flux budget (flooding an 8 km wall at one sun takes ~50 MW per metre of axis), and a closing water/energy ledger. The relief for the CO₂ trap is to run the fountain day-phased — ventilate when photosynthesis needs CO₂ and the sun is burning the fog anyway, then back off at night for free dew.
ratchet/, fountain/, atmosphere/ at
tide.mino.mobi.
- An 8 km build spans ~31 K and ~32% pressure axis→floor — a genuinely colder, thinner axis; an Island-Three-scale 3.2 km tube spans only a handful of K. Size sets the climate.
- Topology makes lakes possible: a perfectly smooth cylinder holds none — water relaxes to a uniform film. The ratchet teeth pen it into basins, where the free surface is an equipotential arc, not the dashed chord (~300 m of phantom head on the 4.4 km default). The shoreline leans far up the gentle glide and stops at the steep scarp — asymmetric by design.
- The ratchet river: push the jet past ~140 m/s and Coriolis carries its sheet over the crest, so the runoff drains into the next lake instead of home — irrigation circulates the rim and closes after one turn. Below that speed it falls back into its own basin (drop the slider and watch the landing dot flip).
the closed food-web box model · allometry · real-organism roster · the stability lab
Problem statement
A sealed world has to run its own life support, and the honest question is the zeroth one: can the loop close at all, as stocks and flows? biome answers it by modelling the interior as a living food web rather than a farm. The distinction is the whole point. A single crop pool with a passive decay term has nothing vigorously cycling carbon, so ambient CO₂ falls, productivity self-strangles, and the food store collapses to zero — the failure mode is built in. Put living decomposers and perennial standing biomass into the box and carbon pumps around fast enough that the harvest outpaces the crew and food accumulates. The model is data, not code: organisms and their trophic edges are two arrays, and a derivative function loops over them, so adding a species is a stat block plus an edge. Every ecological interaction is either a carbon transfer between pools or the canonical respiration reaction, so carbon, hydrogen, oxygen and nitrogen conserve by construction no matter how many trophic levels stack (drift < 1e-9 over a model-year).
On that base biome builds the apparatus of a real ecosystem-builder: an allometry layer that derives an animal's eight metabolic rates from a single trait — body mass — via Kleiber's law (rates scale as M−¼; small things live fast), validated by recovering the hand-tuned predator from first principles; a real-organism roster (honey bee, cross orbweaver, apple, common reed, springtail…) whose diets are corroborated against the GloBI interaction database and iNaturalist identity; a lake bioengine that fuses fish farm and water-treatment plant into one trophic web; and a stability lab that reads the fate of the steady state straight off the community matrix's eigenvalues — asymptotic stability (May), reactivity (Neubert & Caswell), keystones (Bender) — at interactive speed, validated against the nonlinear time-domain truth.
- The loop closes: producers, pollinators and decomposers reach a coexisting steady state with CO₂ in band and a positive larder — not the inevitable collapse of the single-crop model.
- Pollinators gate the harvest: crank predator pressure and fruit set falls, dragging the larder down even though the trees are alive — a trophic cascade you feel in the calories.
- The soil is the lungs: throttle the decomposer and litter piles up while CO₂ crashes and the producers starve — the real Biosphere-2 failure, now an emergent population dynamic.
- Area is the lever: air closes easily, calories are the hard part — full dietary closure needs a lot of ecosystem, and the area slider is the honest fix, not a hack.
Where the wings meet
The four wings are split for verifiability, but they are one cylinder, and the seams are where the design gets interesting. rind is the shell; tide and biome are the air and the life inside it. The deepest coupling is a single identity: radius is altitude is temperature, humidity and CO₂. tide's column makes the floor warm and moist and the heights cold and thin; biome's organisms each have a preferred niche — canopy, floor, swamp — so giving every species a preferred radius is what fuses the climate model and the ecology model into one. tide already hands biome a boundary condition (the lake surface it can sustain as a fishery); biome's non-spatial box model deliberately abstracts space away to answer "does it close?" and explicitly flags the radial structure as tide's job. The planned radius-niche coupling is the stake in the ground where the two become a single interior.
And the structure wing is not separate from the life: rind's foam is an insulator, not the heat path, which is exactly why tide has to pump heat to the outer skin actively; the foam's chamber graph is both the load path and the road network the game walks. The supporting world is, in the end, one model with three faces — and the game is the fourth, the place you go to walk around inside the thing the other three prove can exist.
One small geometry runs through both circular figures above, with opposite morals — a tell that the same rotating frame governs the whole interior. In structure, the secant is the answer: a chord across the bore is a cable in pure tension, and a clever star of them offloads the hull while leaving a clear core. In thermodynamics, the secant is the trap: a lake surface that looks like a level chord is actually an equipotential arc, and mistaking one for the other invents hundreds of metres of head that isn't there. Same chord, drawn on the same circle — load-bearing truth on the structural side, optical illusion on the fluid side.
References & provenance
- O'Neill, G. K. (1976). The High Frontier: Human Colonies in Space. — the cylinder colony and spin gravity g(r)=ω²r.
- Held, I. M. & Suarez, M. J. (1994). A proposal for the intercomparison of the dynamical cores of atmospheric GCMs. Bull. Amer. Meteor. Soc. — the relaxation-to-radiative-equilibrium method tide's column follows.
- Kleiber, M. (1932). Body size and metabolism. Hilgardia. — whole-organism metabolism ∝ M¾; mass-specific rates ∝ M−¼ (biome's allometry layer).
- May, R. M. (1972). Will a large complex system be stable? Nature. — asymptotic stability from the community-matrix eigenvalues (biome's stability lab).
- Neubert, M. G. & Caswell, H. (1997). Alternatives to resilience for measuring the responses of ecological systems to perturbations. Ecology. — reactivity from the symmetric part of J.
- Bender, E. A., Case, T. J. & Gilpin, M. E. (1984). Perturbation experiments in community ecology. Ecology. — press perturbations and keystone ranking from −J⁻¹.
- Bron, C. & Kerbosch, J. (1973). Algorithm 457: finding all cliques of an undirected graph. — maximal-clique community detection (used in the SimCluster feed lineage; the foam's Voronoi adjacency is the structural cousin).
- Todd, J. & Josephson, B. (1996). The design of living technologies for waste treatment. Ecological Engineering. — "living machines" / eco-machines; with Chinese integrated polyculture and constructed treatment wetlands, the basis for biome's lake bioengine (fish farm + water treatment fused).
- Closed-ecology precedents: BIOS-3 (Krasnoyarsk), MELiSSA (ESA), Biosphere 2 — the literature biome's parameters and the CO₂-crash failure mode are sourced from. NASA BVAD — human-factors numbers.
- Global Biotic Interactions (GloBI) & iNaturalist — the observed-diet and identity data corroborating biome's real-organism roster.
- Botea, A., Müller, M. & Schaeffer, J. (2004). Near optimal hierarchical path-finding (HPA*). J. Game Development. — the two-tier abstraction the world's wayfinder follows.
- Hilbert, D. (1891). Über die stetige Abbildung einer Linie auf ein Flächenstück. Math. Ann.; Morton, G. M. (1966). A computer-oriented geodetic data base. — the space-filling curves behind the locality-clustered address (Hilbert order, Z-order/quadtree path).
- Merkle, R. C. (1987). A digital signature based on a conventional encryption function. — the hash-tree behind the verifiable, forkable region digest.
- Live models & source: rind.mino.mobi (foam + frame solver), tide.mino.mobi (atmosphere + fountain + ledger), biome.mino.mobi (food-web + allometry + stability). The figures on this page re-derive each wing's headline kernel in
hoop/js/research.js, pinned byhoop/test/research.selftest.mjs.
The map is the forum; the world is a model. ◍