Discovery only; nothing adopted. tools/objpresence.js, a post step through tools/exam.js's hook (T-685). Snapshot d8b5a1bb14 (inputs hash c5e7d85b43f8), Track A (step 34b, wCarry 0). No ledger file, ledger.js or exam.js change.
The question
Jordan's Votann note: a Sagitaur lets a ten-strong Hearthkyn squad split into two fives, one holding home, one riding to the expansion, and Hearthkyn keep an objective after leaving it. The ledger credits OC per point (Score, Hold), so it misses that a split puts the same OC on two objectives, and that a sticky unit can hold one and walk to the next.
What was built
Per solo form, our reading of the 11th-edition rules (Wahapedia, 11e pages; our words):
- Pieces: the separate scoring units it fields: 2 when it can split, else 1. Each piece carries its share of the OC.
- Sticky: 1 when it keeps an objective after leaving (frozen unitfx.json, kind "oc"), else 0.
- Reach: the share of the event field's maps on which a piece reaches its near expansion by turn two, starting at a random depth of its zone. It can walk (Scouts + 2 × (Move + 3.5) + 3"), ride a transport the ledger lists for it, or arrive anywhere (Infiltrators, Deep Strike, a tunnel, Aerial Seeding: 1). Aircraft hold nothing.
- Control: OC ÷ (OC + H), the steal's control share, where H = 8.26 is the field's holder OC (tools/steal.js).
- Presence: the sum over pieces of (1 + sticky) × reach × control.
- Credit: Q = presence × 1 VP × 2,000 ÷ 65 points (30.8 points a VP). Value' = Value + objPresence × Q × P ÷ points, as the screen, jail and steal credits add theirs. The 1 VP for a unit of presence was fixed before any run: about 32 VP a game from non-home objectives, shared among about 16 units of presence, at half the average for the margin. 0 is today exactly, checked on all 16 armies.
- Placebo: each unit's real Q is dealt to the army's units in a seeded random order (3 seeds).
Reach turned out almost flat: nearly every infantry unit gets to its near expansion by turn two (most at 0.9 to 1.0). So the dial is mostly OC × control × (split, sticky).
Three variants were measured beside it, never the dial's default:
- enabler: the split's gain over the same squad unsplit is also credited to the transport that enables it. This is T-710's ground (a transport is worth what only it can carry).
- extras: only what splitting and stickiness add over a plain one-piece unit (Jordan's "what OC per point misses").
- extras + enabler: both.
How the splitting units were found
BSData (checkout 374f505) was searched for a rule that splits a unit into two before the battle, and unitfx.json's "list" notes were read (Combat Squads, Kommandos, Let Loose the Wolves). node tools/objpresence.js --scan <bsdata> reruns the search. The table holds names only, in our words.
- Own rule: Tactical Squad (Space Marines, Dark Angels; two fives), Kommandos (Orks; two fives), Wolf Guard Headtakers (Space Wolves; its Headtakers and its Hunting Wolves; the wolves hold nothing without a character near).
- Enabled by a transport in the army:
- Hearthkyn Warriors by the Sagitaur.
- Hernkyn Yaegirs by the Kapricus Carrier.
- Kabalite Warriors, Wyches and Hand of the Archon by the Venom.
- Sisters of Battle Squad by the Agents' Sisters of Battle Immolator.
- Outside the exam's armies: Battle Sisters, Dominion and Novitiate Squads by the Adepta Sororitas Immolator; Ynnari Kabalite Warriors and Wyches by the Ynnari Venom.
- In the exam's armies, ten in all: Tactical Squad (Space Marines, Dark Angels), Sisters of Battle Squad, Wyches, Kabalite Warriors, Hand of the Archon, Hearthkyn Warriors, Hernkyn Yaegirs, Kommandos, Wolf Guard Headtakers.
- Sticky units present:
- Intercessor Squad (Space Marines, Dark Angels), Skitarii Rangers, Sisters of Battle Squad, Cadian Shock Troops (Astra Militarum, Genestealer Cults).
- Plaguebearers, Kabalite Warriors, Tormentors, Neophyte Hybrids, Hearthkyn Warriors, Gretchin, Jakhals.
- The Tyranids have none.
The numbers
Track A: 59.4 pooled over 15 armies on their 11th-edition lists (60.1 on consensus pairs). Tyranids' three 11e lists: 82.4 (90.7 on consensus pairs).
| Measure | objPresence | Placebo |
|---|---|---|
| Held out by army (choose on 10, score on 5, 3 seeds; ± sd over folds) | +0.00 ± 0.00 (picks 0, 0, 0) | −0.46 ± 0.79 (picks 0, 1, 0) |
| Held out, consensus pairs | −0.31 ± 0.27 (picks 0.5, 0.5, 0) | −0.43 ± 0.74 |
| Variant enabler, held out | −0.36 ± 0.70 (picks 0.5, 1, 0) | −0.46 ± 0.79 |
| Variant extras, held out | +0.00 ± 0.00 (picks 0, 0, 0) | −0.11 ± 0.10 |
| Variant extras + enabler, held out | +0.61 ± 0.53 (picks 1, 1, 1); consensus +0.60 | −0.06 ± 0.10 |
| Strength | Pooled exam Δ [armies resampled] | Placebo Δ | Consensus Δ | Placebo Δ | Better / worse of 15 | Tyranids 3 lists | Placebo |
|---|---|---|---|---|---|---|---|
| 0.25 | −0.2 [−0.5, +0.1] | −0.1 | −0.2 | −0.1 | 4 / 8 | 82.4 (−0.1) | +0.1 |
| 0.5 | −0.2 [−0.8, +0.3] | −0.2 | −0.1 | −0.2 | 5 / 8 | 82.5 (+0.0) | +0.4 |
| 1 | −0.4 [−1.2, +0.4] | −0.3 | −0.4 | −0.3 | 4 / 9 | 82.4 (+0.0) | +1.0 |
By army, at 0.5 and then at 1 (exam Δ):
- Up: World Eaters +1.6 / +3.5, Space Wolves +1.4 / +1.4, Space Marines +0.9 / +1.5, Thousand Sons +1.0 / +0.0, Dark Angels +0.5 / +0.8.
- Down: Drukhari −2.4 / −2.4, Emperor's Children −1.6 / −2.1, Death Guard −1.3 / −1.1, Leagues of Votann −1.0 / −1.9, Orks −0.8 / −2.1.
- Near zero: the rest.
The variants by strength, at 0.25, 0.5 and 1 (pooled Δ / placebo Δ; the armies that move):
- enabler: −0.0 / −0.1, +0.1 / −0.2, +0.1 / −0.2. Votann +1.0, +1.9, +3.8; Drukhari −0.5, −1.9, −1.0.
- extras: −0.1, −0.1, −0.2 (placebo −0.0). Votann −1.0 and Drukhari −1.9 at 1 (Hearthkyn and Kabalite Warriors rise, away); World Eaters +0.9 (Jakhals).
- extras + enabler: +0.1 / −0.1, +0.1 / −0.0, +0.3 / −0.0. At 1: consensus +0.4, 5 armies better and 5 worse; Votann +4.8, World Eaters +0.9, Drukhari −0.5. Its held-out gain is the two folds that hold Votann out (+0.95 and +0.87); the third fold scores +0.00.
Units before and after at 0.5
Rank in the army, today → at 0.5 (with the enabler variant in brackets). Letters are every list's, 11th and 10th edition.
| Army | Unit | Letters | Rank | Value | OC | Presence | Q (pts) | Why |
|---|---|---|---|---|---|---|---|---|
| Votann | Hearthkyn Warriors | CBCC | 6 → 4 (4) of 22 | 1019 → 1282 | 20 | 2.19 | 67.4 | split by the Sagitaur, sticky |
| Votann | Sagitaur | CADA | 14 → 14 (11) | 701 → 726 | 2 | 0.19 | 6.0 | OC 2; the split's worth lands on the squad unless the enabler variant is on (extras + enabler at 1: 14 → 7) |
| Votann | Hernkyn Pioneers | BAA | 2 → 2 (2) | 2402 → 2459 | 12 | 0.59 | 18.2 | already 2nd |
| Space Marines | Tactical Squad | BBD | 42 → 36 of 84 | 728 → 815 | 20 | 1.10 | 33.7 | Combat Squads |
| Space Marines | Intercessor Squad | ASSA | 36 → 31 | 756 → 860 | 20 | 1.42 | 43.5 | sticky |
| Space Marines | Scout Squad | SSSS | 50 → 43 | 691 → 742 | 10 | 0.55 | 16.8 | infiltrates |
| Space Marines | Infiltrator Squad | AAB | 23 → 22 | 892 → 926 | 10 | 0.55 | 16.8 | infiltrates |
| Tyranids | Gargoyles | BBASBBB | 46 → 46 of 52 | 351 → 433 | 40 | 0.83 | 25.5 | cheap OC, but its Value is far below its neighbours' |
| Tyranids | Termagants | BBABBC | 38 → 37 | 590 → 705 | 40 | 0.83 | 25.5 | cheap OC |
| Tyranids | Ripper Swarms | BCBDDBCB | 50 → 50 | 114 → 114 | 0 | 0 | 0 | OC 0: no presence |
| World Eaters | Jakhals | SSS | 21 → 18 of 30 | 679 → 800 | 20 | 1.30 | 39.9 | sticky |
The other splitting units at 0.5:
- Rose: Sisters of Battle Squad (Agents, B) 8 → 5 of 29; Kabalite Warriors (Drukhari, C) 11 → 8; Hand of the Archon (A) 24 → 22; Hernkyn Yaegirs (SA) 18 → 17; Kommandos (Orks, B) 18 → 16; Dark Angels' Tactical Squad (ungraded) 47 → 40.
- Held: Wyches (S) 6 → 6; Wolf Guard Headtakers (B) 6 → 6.
- The enablers, with the enabler variant on: the Venom (S) rises 34 → 30 and the Sisters of Battle Immolator 12 → 10.
The biggest movers elsewhere are cheap OC units: Gretchin +8, Cadian Shock Troops +2 (+10 in the Genestealer Cults), Skitarii Rangers +4, Plaguebearers +3, Genestealers +4.
Against the prediction
The prediction was written before any run (reports/tiers/ledger-steps.md, row objpresence).
- Right:
- The named units moved as predicted: Jakhals, Intercessors, Hearthkyn, Kabalite Warriors, Termagants, Scouts and Tactical up; Sagitaur, Pioneers and Ripper Swarms flat.
- Kabalite Warriors went the wrong way, as predicted.
- The Tyranids stayed within ±0.5.
- The pooled change was negative at 1.
- Wrong:
- The pooled change is negative at every strength (predicted +0 to +1 at 0.25 to 0.5).
- Held out, it reads +0.00 against a placebo of −0.46, but every fold picks 0.
- The placebo beats the real credit on the Tyranids at 1 (+1.0 against 0).
- Gargoyles didn't move: their Value sits far below their neighbours'.
Verdict, and the cascade
As specified, game-wide, objective presence carries no signal the reviewers share. It lifts every cheap OC unit, and across armies that helps as often as it hurts (World Eaters, Space Marines and Space Wolves up; Drukhari, Emperor's Children, Death Guard, Votann and Orks down), level with its placebo.
What Jordan described is narrower: the split's worth belongs to the unit that makes it possible. Extras + enabler credits only what splitting and stickiness add, and the split's gain to its transport too. It is the one variant that holds out (+0.61, every fold picking 1, placebo −0.06). But nearly all of that is Votann's single 11th-edition list (18 graded units, Sagitaur 14th → 7th toward its A), so it is one army's evidence.
For the cascade:
- objPresence plain: leave it out, or at most {0, 0.25} as a game-wide axis. It is level with its placebo at every strength.
- objPresence with extras and enabler: an army-specific axis at {0, 0.5, 1}, in Jordan's army-specific scheme (pulled toward the game-wide 0 by thin evidence). It stands in for T-710's "a transport is worth what only it can carry" for splitting transports; T-710 should absorb the enabler half when it is built.
Doubts
- OBJ_VP = 1 is a reasoned constant, not fitted; the grid's strengths scale it.
- H is the steal's holder OC, the same for every objective.
- Battle-shock and the opponent's fire on holders are left out; Hold already carries survival.
- Reach is nearly flat, so a sharper "by turn one" or "far expansion" version would separate fast units more.
- Enhancements (Liberator, Bold Leadership, Tyrant's Shadow) and Trazyn's leading stickiness are not counted.
- The single-list armies weigh as much as the three-list ones in the pooled mean.
Rerun the measurement (about 10 s): node --max-old-space-size=2500 tools/objpresence.js --measure.