PulseCore

Chapter 1 · Section 10

The Scale Model: MODEL_LEVEL and Lm

The BPT law

BPT does not state this; it is a game method. The book's laws are written for the true level, and the scale model serves one BPT idea directly: the Ten-Second Level of Part 8.1, L₁₀ = max{ L : 2^L × 16 × 2^(2L) ≤ 10 s × ρ }, "the largest level whose whole life one processor can replay from its packet in ten seconds; each level up is eight times the work". The work of a life is 16 × 8^L cell-pulses, the Rupture Rule's 2^L Tempos times the Local Pixel Count's 16·4^L pixels. A screen-sized processor reaches a shallow L₁₀, so a deeper universe can be played only by drawing a shallower one beside its true physics. The game's model level is that shallower universe.

The established physics

None: a game method. It resembles the "scale model" of an N-body run, where each particle stands for many bodies (Hockney & Eastwood 1988). The game's multipliers wellMult and starMult follow that idea.

The game's math

isPhone() app.js:4243 is true if the screen's shorter side is ≤ 480 px or the user agent matches Mobi, Android or iPhone. It falls back to 9999 when the screen size is unknown, and it tests the device, not the orientation (2026-10-27: a level 11 run on a phone held sideways got the desktop model).

MODEL_LEVEL() = isPhone() ? 4 : 6                                   app.js:4244
scaleModel(u):                                                      app.js:4245
    u.Lm = min(u.L, MODEL_LEVEL())
    u.trueRupture = u.rupturePulses;  u.trueLayers = u.layers
    u.rupturePulses = 2^Lm;           u.layers = 3·2^Lm
    u.matterLaw = matterLaw(depth)

After this call every reader of uni.rupturePulses and uni.layers sees the model's values. That covers the clock (physicalTempo(), harmonicTempo()), the nova schedule, the rupture bar and the layer HUD. The level's own physics (f, s, planckTime, consts, progeny, matterLaw) stays at the true L or depth. So a level 28 desktop run plays 2⁶ = 64 Tempos of life and 192 harmonics on a 256² field. Its clock, constants, matter, stars and law of 1,213 wells are those of level 28.

Other places that read the model level:

  • skinCapacity(uni.Lm): the Pulsecore's fill and the two novas (app.js:513, 517, 531, 1095, 1138, 4267, 4295, 5265, 5288).
  • novaTempo(uni.Lm) (app.js:4843).
  • The galaxy heat (app.js:2993). A model of level Lm lives 2^Lm Tempos while light crosses its field in two flips, so its motions run 2^(6 − Lm) times faster against light than in the level-6 model the heat was checked against. The speed is multiplied by 2^(Lm − 6), so a phone (Lm = 4) reads the same heat as a desktop.
  • cloudCells() app.js:1167: a gas cloud covers 8 cells of viewSide(min(L, 6)), scaled to the drawn field. This holds the cloud to the same share of the universe on any device.

The model level also appears in the records: model_level and device in the run summary and the save (app.js:2205, 2471), and "drawn at N cells across" in the readout and the HUD (app.js:2070, 2086, 2144).

In the game

The player is told when a universe is a scale model, and what it keeps. The HUD's "Level:" tooltip (index.php:81) reads "deeper than level 6 (4 on a phone) the field and clock are a scale model", and the line itself adds "drawn at 256 cells across" (app.js:2144). The readout's level row does the same, and a separate row appears, "Drawn at 256 cells across", with the tooltip "No screen can draw a field this deep, so it is drawn on a smaller grid; its physics, stars, wells and harmonics all follow its own level" (app.js:2086).

What the player watches is the model: a 256-cell field (64 on a phone), a Pulsecore that fills to its novas at Tempos 181 and 255, a life of 64 Tempos and 192 harmonics on the HUD. What the player reads is the true level: the readout's constants, the "law" on the wells line, the stars counted as "N drawn, each for X" (app.js:2783), the 3D lattice drawn at the true level's density (Part 1.8), and an end card that reports the true "Pulses lived" with "as a level 6 model", and the true "Harmonics" with "the drawn Pulsecore, 256 cells across, ran n of them, n − 4 drawn as rings" (app.js:2776–2777).

The scale model

This Part is the scale model. In short:

Quantity True level L (or depth) Model level Lm
Tempo, ℏ′, G′, s, f, H, constants ✓
Progeny law, matter law, stars law ✓
Field side, skin capacity, nova times ✓
Life length played, harmonics played ✓ (true kept as trueRupture, trueLayers)
Drawn wells ✓, each worth wellMult = law ÷ drawn
Galaxy heat speed scale read at 6, multiplied by 2^(Lm−6)
3D lattice density ✓

Below the model level (L ≤ Lm) the model is the level itself, and every multiplier is 1.

Where the game and the theory differ

  • BPT has one universe per level. The game plays two at once past the model level: the true level's physics and a level-Lm field and clock. The model level is chosen by device class (4 on a phone, 6 elsewhere), not by a measure of the device or by a BPT law. Chapter 9 of this book takes up how it could follow a law instead.
  • cloudCells() writes 6 as a literal, not as MODEL_LEVEL(), so the two would part if the desktop model level changed.
  • isPhone() reads the device, not the orientation. A phone held sideways still gets the phone model.

Fixed numbers

Number Where What it is Kind
6 app.js:4244 desktop model level CAP (device-class switch)
4 app.js:4244 phone model level CAP (device-class switch)
480 app.js:4243 phone if the screen's shorter side ≤ 480 px CAP (device-class switch)
9999 app.js:4243 fallback screen size when unknown METHOD (sentinel: unknown counts as not a phone)
6 app.js:2993 reference model level of the heat check METHOD (the level the heat law was checked at); tied to the CAP above
6 app.js:1167 reference level of the cloud size CAP (duplicates MODEL_LEVEL desktop as a literal)
8 app.js:1167 a cloud is 8 cells of the reference field METHOD (cloud size; matter chapter)
1e-9 app.js:2993 floor on light speed in cells, against division by zero METHOD

Measured

  • 2026-10-27 (comment, app.js:5277): "level 15 drew 374 against a law of 45". This is why the drawn wells are now never more than the law.
  • 2026-10-28 (comment, app.js:2990): on a phone, "59 of 60 phone galaxies read as hot halos" before the 2^(Lm−6) speed correction.
  • 2026-10-29 (comment, app.js:1163): a level 182 phone run "formed 302 stars where the weighting drew 40,000" before clouds were sized as a share of the universe.