Command: node tools/charge.js --write (about 1 s), which writes tools/charge-tyranids.json and this report. Tests: tests/unit/charge.test.js. Reads the ledger's 1106 forms (docs/lab/ledger/tyranids.json), tools/deployments.json (T-592) and the datasheets (BSData 374f505). Rules read on Wahapedia's 11th-edition core rules and the Tyranids pages on 2026-10-03, in our words. Our own numbers; nothing on the site changes. T-596 wires lands into the ledger.
The method in plain words
- Where it starts. A unit deployed on the table stands on the front of its zone, and the enemy stands on the front of theirs, at the point nearest to it. The distance is taken point by point along the front on each of the six deployment maps, and the maps weighted by how often the 45 event layouts use them under the field's Force Dispositions (T-592's weighting): a mean of 22.52" (Tipping Point 25.44, Sweeping Engagement 20.84, Search and Destroy 18.68, Hammer and Anvil 24.00, Dawn of War 20.00, Crucible of Battle 25.36). Scouts X" moves X" straight at the enemy first, stopping more than 8" away; Infiltrators start just over 8" away; Deep Strike arrives in our second turn just over 8" away and may charge at once (9 or more on 2D6, 10 in 36).
- Each turn. The unit moves its Move straight at the enemy and stops just outside 2" (it may not end a move engaged). If it is then within 12" it rolls 2D6 and the charge lands when the total reaches the distance. A unit that advances (Move plus a D6) can't charge that turn unless a rule says so (Bounding Leap; Vanguard Invaders in Vanguard Onslaught); the model advances only when that is worth more to
lands, turn by turn, which is usually when it is too far to charge anyway. So a faster unit'slandsis never lower; its chance by one particular turn can be, on a few starts no form uses (it swaps a sure approach for an early try). A failed charge doesn't move the unit. The enemy stays put for three turns and nothing screens it. There is no terrain yet, so lines are straight and Fly changes nothing. - What it gives. P(charged by the end of our turn 1, 2, 3), cumulative, and
lands, one number for the ledger: the plain average of the three, which is the share of our first three fight phases the unit gets to fight in if it stays in combat once there. It is labelled as such in the JSON; it is not a share of damage and leaves out fights in the opponent's turns. - Choices. Each form takes the arrival way that gives it the highest
lands(all ways are listed per form), and a form the ledger merged across detachments (the same dice in each) takes the detachment that helps its charge most: Vanguard Onslaught (Vanguard Invaders advance and charge), Synaptic Nexus with Surging Vitality (+1 to advance and charge in one round), Subterranean Assault (any unit from reserves through a tunnel, just over 6" away: 7 or more, 21 in 36; assumes another burrower opened it first), Ambush Predators (Deep Strike for Lictors, Neurolictors and the Deathleaper). A joined unit moves at its slower member's pace and has Deep Strike, Scouts or Infiltrators only if both members do. The Lictor's and the Hyperadapted Raveners' own cheap Rapid Ingress (in at the end of the opponent's round-2 Movement phase, then a move and a charge in our next turn, before our turn 2 or 3 by who goes first) is computed too; it never beats infiltrating or walking. Aircraft (Harpy, Hive Crone) can't declare charges and a unit with no Move characteristic (Sporocyst) can never be moved, so all three get 0. - Transports. The model can carry a unit in a transport (ride on, or get out before it moves and charge, or after and not charge), but no ledger form starts embarked, so no form uses it. The Tyrannocyte's own Aerial Seeding (in from the first round, just over 8" away) is used for the Tyrannocyte itself.
- Left out (listed per form in
notModelled): surge moves in the opponent's turn (Carnifexes, the Prime with Lash Whip, Unending Swarm's gaunts, Termagants' Skulking Horrors), Harpooned's conditional +2, stratagems (Command Re-roll, Heroic Intervention, Bounding Advance, Rapid Ingress for units without a cheap one of their own), enhancements, and going back into reserves. No unit has a charge re-roll of its own, so none is used. Advancing costs a unit its non-Assault shooting that turn; the model doesn't charge it for that.
Reference: walking from the front
P(by turn 1 / 2 / 3) and lands for a unit deployed on the front, by Move, with and without leave to charge after advancing.
| Move | Normal moves | lands | May advance and charge | lands |
|---|---|---|---|---|
| 4" | 0.00 / 0.19 / 0.75 | 0.31 | 0.06 / 0.47 / 0.91 | 0.48 |
| 5" | 0.01 / 0.34 / 0.89 | 0.41 | 0.08 / 0.62 / 0.97 | 0.56 |
| 6" | 0.02 / 0.50 / 0.96 | 0.49 | 0.12 / 0.76 / 0.99 | 0.62 |
| 8" | 0.05 / 0.80 / 0.99 | 0.62 | 0.21 / 0.93 / 1.00 | 0.71 |
| 9" | 0.08 / 0.89 / 1.00 | 0.66 | 0.28 / 0.96 / 1.00 | 0.75 |
| 10" | 0.12 / 0.95 / 1.00 | 0.69 | 0.35 / 0.98 / 1.00 | 0.78 |
| 12" | 0.23 / 0.98 / 1.00 | 0.73 | 0.51 / 0.99 / 1.00 | 0.83 |
| 14" | 0.38 / 0.98 / 1.00 | 0.79 | 0.67 / 0.99 / 1.00 | 0.89 |
The 52 units, best form
Each unit's form with the highest lands among the ledger's forms it appears in (solo or joined; ties go to the first listed), its arrival way and detachment, the start distance in inches, and P(charged by the end of our turn 1 / 2 / 3).
| Unit | Move | Best form | Way | Detachment that helps | Start | P by 1 | P by 2 | P by 3 | lands |
|---|---|---|---|---|---|---|---|---|---|
| Barbgaunts | 6" | Barbgaunts ×5, datasheet wargear (no choices), Ambush Predators or 5 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.03 | 0.58 | 0.98 | 0.53 |
| Biovores | 5" | Biovores ×1, datasheet wargear (no choices), Subterranean Assault | tunnel | – | 6.0 | 0.00 | 0.58 | 0.99 | 0.52 |
| Broodlord | 8" | Broodlord ×1, datasheet wargear (no choices), Vanguard Onslaught | Scouts | – | 14.6 | 0.80 | 0.99 | 1.00 | 0.93 |
| Carnifexes | 8" | Carnifexes ×1, Auto-equip, Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.08 | 0.84 | 1.00 | 0.64 |
| Deathleaper | 8" | Deathleaper ×1, datasheet wargear (no choices), Ambush Predators or 5 others | Infiltrators | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 8.0 | 1.00 | 1.00 | 1.00 | 1.00 |
| Exocrine | 8" | Exocrine ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.08 | 0.84 | 1.00 | 0.64 |
| Gargoyles | 12" | Gargoyles ×10, datasheet wargear (no choices), Vanguard Onslaught | deploy | – | 22.5 | 0.51 | 0.99 | 1.00 | 0.83 |
| Genestealers | 8" | Genestealers ×5, datasheet wargear (no choices), Vanguard Onslaught | Scouts | – | 14.6 | 0.80 | 0.99 | 1.00 | 0.93 |
| Harpy | – | Harpy ×1, Auto-equip, Ambush Predators or 4 others | can't charge | – | – | 0.00 | 0.00 | 0.00 | 0.00 |
| Harridan | 14" | Harridan ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.47 | 0.99 | 1.00 | 0.82 |
| Haruspex | 8" | Haruspex ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.08 | 0.84 | 1.00 | 0.64 |
| Hierophant | 12" | Hierophant ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.30 | 0.98 | 1.00 | 0.76 |
| Hive Crone | – | Hive Crone ×1, datasheet wargear (no choices), Ambush Predators or 4 others | can't charge | – | – | 0.00 | 0.00 | 0.00 | 0.00 |
| Hive Guard | 6" | Hive Guard ×3, Auto-equip, Ambush Predators or 5 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.03 | 0.58 | 0.98 | 0.53 |
| Hive Tyrant | 8" | Hive Tyrant ×1, Auto-equip, Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.08 | 0.84 | 1.00 | 0.64 |
| Hormagaunts | 10" | Hormagaunts ×10, datasheet wargear (no choices), Ambush Predators or 5 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.51 | 0.98 | 1.00 | 0.83 |
| Hyperadapted Raveners | 10" | Hyperadapted Raveners ×5, datasheet wargear (no choices), Vanguard Onslaught | deploy | – | 22.5 | 0.35 | 0.98 | 1.00 | 0.78 |
| Lictor | 8" | Lictor ×1, datasheet wargear (no choices), Crusher Stampede or 4 others | Infiltrators | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 8.0 | 1.00 | 1.00 | 1.00 | 1.00 |
| Maleceptor | 8" | Maleceptor ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.08 | 0.84 | 1.00 | 0.64 |
| Mawloc | 10" | Mawloc ×1, datasheet wargear (no choices), Vanguard Onslaught | deploy | – | 22.5 | 0.35 | 0.98 | 1.00 | 0.78 |
| Mucolid Spores | 4" | Mucolid Spores ×1, datasheet wargear (no choices), Subterranean Assault | tunnel | – | 6.0 | 0.00 | 0.58 | 0.99 | 0.52 |
| Neurogaunts | 6" | Neurogaunts ×11, datasheet wargear (no choices), Ambush Predators or 5 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.03 | 0.58 | 0.98 | 0.53 |
| Neurolictor | 8" | Neurolictor ×1, datasheet wargear (no choices), Crusher Stampede or 4 others | Infiltrators | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 8.0 | 1.00 | 1.00 | 1.00 | 1.00 |
| Neurotyrant | 6" | Neurotyrant ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.03 | 0.58 | 0.98 | 0.53 |
| Norn Assimilator | 10" | Norn Assimilator ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.17 | 0.96 | 1.00 | 0.71 |
| Norn Emissary | 10" | Norn Emissary ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.17 | 0.96 | 1.00 | 0.71 |
| Old One Eye | 8" | Old One Eye ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.08 | 0.84 | 1.00 | 0.64 |
| Parasite of Mortrex | 12" | Parasite of Mortrex ×1, datasheet wargear (no choices), Vanguard Onslaught | deploy | – | 22.5 | 0.51 | 0.99 | 1.00 | 0.83 |
| Psychophage | 12" | Psychophage ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.30 | 0.98 | 1.00 | 0.76 |
| Pyrovores | 5" | Pyrovores ×1, datasheet wargear (no choices), Subterranean Assault | tunnel | – | 6.0 | 0.00 | 0.58 | 0.99 | 0.52 |
| Raveners | 10" | Raveners ×5, datasheet wargear (no choices), Vanguard Onslaught | deploy | – | 22.5 | 0.35 | 0.98 | 1.00 | 0.78 |
| Ripper Swarms | 6" | Ripper Swarms ×1, Auto-equip, Ambush Predators or 5 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.03 | 0.58 | 0.98 | 0.53 |
| Screamer-killer | 8" | Screamer-killer ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.08 | 0.84 | 1.00 | 0.64 |
| Spore Mines | 4" | Spore Mines ×3, datasheet wargear (no choices), Subterranean Assault | tunnel | – | 6.0 | 0.00 | 0.58 | 0.99 | 0.52 |
| Sporocyst | – | Sporocyst ×1, datasheet wargear (no choices), Ambush Predators or 4 others | can't charge | – | – | 0.00 | 0.00 | 0.00 | 0.00 |
| Termagants | 6" | Termagants ×10, Auto-equip, Ambush Predators or 5 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.03 | 0.58 | 0.98 | 0.53 |
| Tervigon | 8" | Tervigon ×1, Auto-equip, Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.08 | 0.84 | 1.00 | 0.64 |
| The Red Terror | 10" | The Red Terror ×1, datasheet wargear (no choices), Vanguard Onslaught | deploy | – | 22.5 | 0.35 | 0.98 | 1.00 | 0.78 |
| The Swarmlord | 8" | The Swarmlord ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.08 | 0.84 | 1.00 | 0.64 |
| Toxicrene | 8" | Toxicrene ×1, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.08 | 0.84 | 1.00 | 0.64 |
| Trygon | 10" | Trygon ×1, datasheet wargear (no choices), Vanguard Onslaught | deploy | – | 22.5 | 0.35 | 0.98 | 1.00 | 0.78 |
| Tyranid Prime with Lash Whip | 10" | Hormagaunts ×10 led by Tyranid Prime with Lash Whip, datasheet wargear (no choices), Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.51 | 0.98 | 1.00 | 0.83 |
| Tyranid Warriors with Melee Bio-Weapons | 6" | Tyranid Warriors with Melee Bio-Weapons ×3 led by Winged Tyranid Prime, datasheet wargear (no choices), Vanguard Onslaught | deploy | – | 22.5 | 0.12 | 0.76 | 0.99 | 0.62 |
| Tyranid Warriors with Ranged Bio-Weapons | 6" | Tyranid Warriors with Ranged Bio-Weapons ×3 led by Winged Tyranid Prime, Auto-equip, Vanguard Onslaught | deploy | – | 22.5 | 0.12 | 0.76 | 0.99 | 0.62 |
| Tyrannocyte | 8" | Tyrannocyte ×1, datasheet wargear (no choices), Ambush Predators or 4 others | Aerial Seeding | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 8.0 | 0.42 | 0.98 | 1.00 | 0.80 |
| Tyrannofex | 9" | Tyrannofex ×1, Auto-equip, Ambush Predators or 4 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.12 | 0.93 | 1.00 | 0.68 |
| Tyrant Guard | 6" | Tyrant Guard ×3, Auto-equip, Ambush Predators or 5 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.03 | 0.58 | 0.98 | 0.53 |
| Venomthropes | 6" | Venomthropes ×3, datasheet wargear (no choices), Ambush Predators or 5 others | deploy | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 22.5 | 0.03 | 0.58 | 0.98 | 0.53 |
| Von Ryan's Leapers | 10" | Von Ryan's Leapers ×3, datasheet wargear (no choices), Ambush Predators or 5 others | Infiltrators | Synaptic Nexus (Surging Vitality) (+1 in round 1) | 8.0 | 1.00 | 1.00 | 1.00 | 1.00 |
| Winged Hive Tyrant | 12" | Winged Hive Tyrant ×1, Auto-equip, Vanguard Onslaught | deploy | – | 22.5 | 0.51 | 0.99 | 1.00 | 0.83 |
| Winged Tyranid Prime | 12" | Winged Tyranid Prime ×1, datasheet wargear (no choices), Vanguard Onslaught | deploy | – | 22.5 | 0.51 | 0.99 | 1.00 | 0.83 |
| Zoanthropes | 5" | Zoanthropes ×3, datasheet wargear (no choices), Subterranean Assault | tunnel | – | 6.0 | 0.00 | 0.58 | 0.99 | 0.52 |
Across the forms
- 1106 forms.
landsfrom 0.00 to 1.00, median 0.52; the units' best forms from 0.00 to 1.00. - Ways taken: deploy 891, tunnel 63, Infiltrators 47, Scouts 45, can't charge 30, Deep Strike 20, Aerial Seeding 10.
- 114 merged forms charge differently in different detachments of their list (
byDetachment); each takes the best, so T-596 may want to split them. - The ledger's slider default for every form is 0.6; 55% of forms come out below it.
Caveats
- The enemy doesn't stand still. It moves up, screens with cheap units and hides its best targets; and real deployment sits a few inches back from the front (T-592: 7.3" on average from a random point). Both cut these numbers; the ledger's sliders can still scale them.
- No terrain. Walls and ruins lengthen paths and block Infiltrators' and Deep Strike's spots (T-593).
- Fast units saturate. Anything that reaches 3" by turn 2 is near certain (35 in 36), so the differences between fast units sit almost all in turn 1.
- Merged forms take the best detachment. A form the ledger merged across detachments shows the best charge among them;
byDetachmentgives the rest.