Conway's rules don't survive the jump to 3D — 23/3 in a 26-neighbour
grid explodes on contact. This is an explorer for the rules that do work,
starting with the ones Carter Bays found in 1987.
Every cell in a 64×64×64 grid is either empty or alive. On each tick, a cell looks at its 26 neighbours and a short rule decides whether it lives, dies, or is born. Nobody designs the shapes you see — they're the only thing the rule permits.
Press Play, drag to orbit, and try a few presets. Everything below the viewer is optional reading.
Drag to orbit · scroll to zoom · click the viewer, then Space play · S step · R reseed · C clear · P next palette
In two dimensions a cell has 8 neighbours, and
Conway's Life is
written 23/3: survive on 2 or 3 neighbours, be born on exactly 3. That
balance is the whole reason it produces gliders and still lifes instead of noise or
emptiness.
Move to a cube and a cell suddenly has 26 neighbours. "Born on exactly
3" now fires almost everywhere, because in any half-populated region three live
neighbours is nearly guaranteed. The grid saturates within a few generations. Nudge the
numbers the other way and everything starves instead. The interesting band is narrow,
and 23/3 is nowhere near it.
2-3/3/2/M into the rule box — Conway's exact
rule, lifted into 3D — and press Apply. It collapses almost at once. Now switch to a
Bays preset and watch the difference.
In
Candidates for the
Game of Life in Three Dimensions (Complex Systems 1, 1987, 373–400 —
full PDF), Bays
searched the 3D rule space for rules that neither die out nor explode, and published the
survivors. He writes a rule as a 4-tuple of environment and fertility
bounds, printed as four digits: the first pair is the survival range, the second the
birth range. Conway's own rule is 2333 in that notation, so
5766 means survive on 5 to 7 neighbours, be born on exactly 6.
5766 is his headline result, and it has a glider — a pattern that translates through space rather than sitting still or oscillating. Finding one was the main evidence that 3D Life is genuinely Life-like and not just noise with good PR.
23/3 does in 2D. The interesting phase
is the beginning. Use Step rather than Play, and expect stillness at
the end rather than a light show.
A binary rule gives every live cell the same value, so the render is a single flat colour — you can see the shape and nothing else. The hobbyist strand that grew up around Softology's Visions of Chaos (3D Cellular Automata, which is where most of the rule names in circulation come from) adds one parameter: a cell is born at full strength and counts down through N states before it's finally gone.
That single change is what turns a box of blinking cubes into something that looks grown. It also carries real information — the decay value tells you how recently each part of the structure was built, so you can see where a pattern is actively working versus where it's just cooling off.
| Field | Means | Examples |
|---|---|---|
| survive | neighbour counts at which a living cell stays alive | 5-7 · 4,6,8-9 |
| born | neighbour counts at which an empty cell comes alive | 6 · 13-14,17-19 |
| states | 2 for classic binary; higher adds that many decay generations | 2 · 10 |
| neighbourhood | M = Moore, all 26 surrounding cells · N = von Neumann, the 6 face-touching ones |
M · N |
So 5-7/6/2/M is Bays 5766, and 4-7/6-8/10/M is Pyroclastic:
survive on 4 to 7, born on 6 to 8, ten decay states, Moore neighbourhood.
0-6 covers every von Neumann count — so it's pure accretion with fractal
faces until it hits the walls.
0-26/0-26/2/M to fill the box instantly, or 1/26/2/M for
a rule almost nothing can satisfy. Invalid strings report the problem instead of
breaking the page.
Almost nothing here is original — the rules, the notation and the decay convention are all borrowed. These are the places worth reading.
23/3 is new to you.
(n+2)³ typed array with a dead border, so the
inner loop needs no bounds checks. Roughly 8ms per generation at 64³.