Diceplots → Games → XCOM 2
·
XCOM 2 weapon damage math — exact rationals for every shot
XCOM 2 splits each shot into four explicit outcomes — hit, crit, graze, miss. The displayed hit-chance hides what the variance actually looks like, especially once graze is in the model. Every weapon below links to the per-shot distribution as exact rationals — no Monte Carlo, no tooltip rounding, shareable URLs for every aim/cover combination.
The recurring XCOM shot questions, in one click each
The per-shot math players keep re-asking. Each card links to either the live engine or the worked-out concept pillar.
-
How does the four-way outcome model actually work?
Hit / crit / graze / miss as exact rationals. Why graze matters more than its 15% suggests, and why the displayed hit-chance is a long-run average that hides per-encounter shape.
-
65% Assault Rifle — what's the real distribution?
A standard mag-tier rifle shot at 65% to-hit, 15% crit, no graze. The full PMF, the conditional crit branch, and the per-mission variance picture.
-
35% flank vs 95% Squadsight — which shot wins?
Same Sniper, two extreme aim profiles. The 95% Squadsight shot has a real damage floor; the 35% flank is a long-tail Hail Mary. Mean comparisons miss the variance picture entirely.
-
Half-cover graze — does the 15% really change things?
Graze isn't just "softer miss" — it eats into miss probability, turning a 65% hit / 20% miss into 65% hit / 15% graze / 5% miss. The full damage profile shifts more than the hit-chance suggests.
-
Crit-fishing on Sharpshooter — when does +crit pay?
High-aim Sharpshooter chains rack up +crit bonuses. Once P(crit | hit) crosses ~25%, the conditional crit branch becomes a meaningful chunk of expected damage.
-
High-aim reliable vs low-aim nuke — which build kills more?
Same expected damage, very different per-mission distribution. The reliable-vs-nuke pillar applied to the per-shot level — high-aim wins below the kill threshold, high-variance wins above.
-
XCOM 2 streak protection — how much does it actually shrink miss-streak risk?
The hidden mechanic that boosts hit chance after consecutive misses. Modeled as a state-carrying Markov walk over a 5-shot chain, with the variance-reduction picture worked out alongside Hard West's Luck pool (different state primitive, same family of variance softeners).
The outcome model
In vanilla WotC, every shot rolls against four buckets:
-
Crit — full damage doubled (or +crit-bonus
depending on class). Conditional on a hit:
P(crit) = P(hit) · crit_chance. - Hit — full damage in the weapon's range.
- Graze — half damage (floor). Eats into the miss probability — a 65% hit / 15% graze build has 80% chance of dealing some damage.
-
Miss — zero damage.
P(miss) = 1 - P(hit) - P(graze).
Worked-out math, why graze matters more than its 15% suggests, and why crit-fishing on Sharpshooter has a different shape than crit-fishing on Ranger — see the XCOM 2 outcome model pillar.
Per-shot distributions, by weapon
Each row links to the live per-shot distribution. Damage ranges taken from typical mid-tier (mag) and late-tier (beam) configurations. Click a slug to open the panel with the exact rational mean, full PMF, and kill-probability curve.
| Weapon | Damage range | Default shot | With graze | Notes |
|---|---|---|---|---|
| Assault Rifle (mag) | 5-7 |
1d3+4 @ hit 65 crit 10 |
1d3+4 @ hit 65 crit 10 graze 15 |
Trooper class default, balanced range |
| Heavy Cannon (beam) | 8-10 |
1d3+7 @ hit 65 crit 10 graze 15 |
1d3+7 @ hit 65 crit 10 graze 15 |
Grenadier class, single-target high damage |
| Sniper Rifle (mag) | 8-10 |
1d3+7 @ hit 35 crit 15 |
1d3+7 @ hit 35 crit 15 |
Sharpshooter class, often low-percentage long-range shots |
| Shotgun (mag) | 6-9 |
1d4+5 @ hit 80 crit 30 |
1d4+5 @ hit 50 crit 10 graze 30 |
Ranger class close-range, high crit |
| Pistol (sidearm, mag) | 5-7 |
1d3+4 @ hit 75 crit 50 |
1d3+4 @ hit 75 crit 50 |
Sharpshooter secondary, opportunist build favours crit |
The big aim-arc question — how much does +10 to-hit buy you?
A common Sharpshooter loadout question: is Squadsight's reduced crit chance worth the long-range positioning? Compare the same Sniper damage range at 35% hit (low-percentage flank shot) vs. 95% hit (full Squadsight overwatch chain):
1d3+7 @ hit 35 crit 15
- 0 65.00%
- 1 0.00%
- 2 0.00%
- 3 0.00%
- 4 0.00%
- 5 0.00%
- 6 0.00%
- 7 0.00%
- 8 9.92%
- 9 10.50%
- 10 11.08%
- 11 1.75%
- 12 1.17%
- 13 0.58%
1d3+4 @ hit 95 crit 25
- 0 5.00%
- 1 0.00%
- 2 0.00%
- 3 0.00%
- 4 0.00%
- 5 23.75%
- 6 26.39%
- 7 29.03%
- 8 7.92%
- 9 5.28%
- 10 2.64%
The 95% build has a tighter distribution and a real damage floor; the 35% build is a long-tail Hail Mary with most of its mass at zero. Mean-only comparisons miss the per-mission variance picture entirely.
Run-and-Gun bursts
Two-shot Run-and-Gun rounds convolve two independent shot
distributions. The result skews heavier than the per-shot mean
suggests because the worst case (zero hits) has probability
(1-P(hit))² — small but non-zero, and the
kill-curve at low HP is what determines whether you actually
drop the target.
1d3+4 @ hit 65 crit 10
- 0 35.00%
- 1 0.00%
- 2 0.00%
- 3 0.00%
- 4 0.00%
- 5 19.50%
- 6 20.22%
- 7 20.94%
- 8 2.17%
- 9 1.44%
- 10 0.72%
1d3+4 @ hit 65 crit 10 attacks 2
- 0 12.25%
- 1 0.00%
- 2 0.00%
- 3 0.00%
- 4 0.00%
- 5 13.65%
- 6 14.16%
- 7 14.66%
- 8 1.52%
- 9 1.01%
- 10 4.31%
- 11 7.89%
- 12 12.26%
- 13 9.32%
- 14 5.83%
- 15 1.77%
- 16 0.94%
- 17 0.37%
- 18 0.05%
- 19 0.02%
- 20 0.01%
Streak protection — the hidden RNG-fudging
XCOM 2 silently boosts a shot's effective hit chance after consecutive misses, capping the realistic miss streak well below what a fair coin-flip model would produce. The engine models this as a state-carrying Markov walk: each chain strike's hit chance is modulated by the current miss-streak counter, with the counter advancing on miss / resetting on hit.
Postfix grammar: attacks N streak. Per the Steam
Community / Long War community datamining, the real rule is
linear +15% (Commander) or +10% (lower difficulties)
per consecutive miss, no cap, and the boost only
activates when the base hit chance is ≥50%. The engine ships
both rules: the streak preset uses the Commander +15-per-miss
ladder, and the ≥50% gate is enforced at evaluation time so
low-aim chains see no boost (matching the in-game behaviour).
Worked-out math and the variance-reduction picture vs
unprotected chains live in the
Luck and streak
protection pillar. Companion to
/games/hard-west/ for the Hard
West deterministic dodge-pool variant (different state
primitive, same family of variance softeners).
Bring your own shot
Any percentage shot the engine accepts:
1d3+4 @ hit 65 crit 10 for an assault rifle,
1d4+5 @ hit 50 crit 10 graze 30 for a half-cover
shotgun shot, 1d3+7 @ hit 95 crit 25 for a clean
Sniper Squadsight overwatch. Use the
comparison tool to put two builds side-by-side.
The engine handles brutal/dr postfixes the same way as the d20
attack path — XCOM 2 itself doesn't have those mechanics, but
modded rulesets do.
Full grammar at /syntax.