Chapter 7 · Section 1
Reading the Field Back
This part is an overview. Each later part gives one piece in full.
BPT's picture is a field of pulses in which order appears by itself. The game's field is a torus of cells. Each flip, each cell is in one of three states: null (0), dark pulser (1) or lit pulser (2). A plain pulser goes 1, 2, 1, 2: period 2, one Tempo, BPT's binary pulse 0 → 1 → 0 seen cell by cell. A null that never pulses is period 1, the Pre-Pulse Field between pulsers. Everything the state detector reports is a departure from that plain pulse, or an order within it.
Four readers run while a universe lives:
- The State Watch (
StateWatch, states.js:117). It runs only once the universe epoch has begun (stepStates()app.js:1767). Every flip it records the field into a 48-flip window. Every 16 flips it scans the window for thirteen families of state: time crystal, breather, oscillon, soliton, Néel crystal, smectic stripes, pulse lattice, Wigner lattice, space-time crystal, quasicrystal, domain wall, revival and the unclassified state (STATE_FAMILIESstates.js:44). It reports a state only once that state has held for two scans in a row. This is the game's reading of BPT's time crystals and phase-locked domains (Parts 7.2 to 7.7). - The ring meetings (
rings.stepinstepFinds()app.js:1914). Where the rings sent out by wells meet in step, the game marks a harmonic node. These are BPT's interference patterns, not time crystals. Since 2026-10-28 they are drawn but no longer collected (Part 7.8). - The string tracker (
StringTracker, strings.js:44). Every second pulse, once wells exist, it looks for long, thin, connected runs of lit cells and follows them by position. These are the game's strings (Part 7.9). - The language reader (
LanguageReader, language.js:94). On every pulse in which the cell rule writes, it reads sampled rows of the torus as words. When the writing pauses, it keeps a snapshot of the whole field, which BPT calls the drive. At the end of the life it runs three tests and a control and prints a verdict. This is BPT Part 4.10 in the game (Parts 7.10 to 7.13).
Every find goes into the Collection (finds.js:6). The collection keeps the latest 500 finds in the browser, queues each find for the server, and words each one with describeFind() (finds.js:44). Since 2026-10-28 the game is QUIET (app.js:231): the pop-up notices and the discovery card are switched off, and what they would have said is still recorded. Part 7.14 covers the collection and the saved records.
On screen, the four readers show in different places. The ring meetings and the strings are drawn on the field, in 2D and on the 3D torus. The states of the field are not drawn; they are counted in the Finds readout and listed in the Collection. The language is read silently all through the fill and is shown only at the end, in the run summary and the Language Block.
All four readers work on the drawn field, the model level's grid of cells, and not on the true level. A find is a pattern of drawn cells, and it is counted once. Unlike a drawn well or star, a find does not stand for many real ones: there is no multiplier on finds. Finds are reports about the model, and each part below says so.