Shotgun spread
Deadline 0.25.2 spread math, defaulting to the stock R870 00 buck setup.
Ammo presets
12g 00 buck, 9× 00_buck_piece.
Hit region
Flat frontal silhouette, so each pellet counts once against one part.
Higher pulls pellets toward center, lower toward the edge.
Game formula
input = use_buck_deviation ? buck_barrel_deviation : barrel_deviation
max = tan(input / 100) * spread_multiplier
dir = Vector2(rand(-1, 1), rand(-1, 1)).Unit
vec = dir * max * (rand(0, 1) ^ spread_factor)
final = (barrelCFrame * CFrame.Angles(vec.X, vec.Y, 0)).LookVector
Hit probability
F(r) = (r / max) ^ (1 / spread_factor)
theta = atan(t) + k*pi/2, t ~ U(-1, 1)
P(part) = E_theta[F(r_out) - F(r_in)]
P(hit) = sum P(part) over region
E[hits] = n * P(hit)
P(1+ hit) = 1 - (1 - P(hit)) ^ n
Integrated exactly, not sampled. Verified against a 4,000,000 pellet Monte Carlo run.
Impact pattern
Max radius
Avg radius
Max angle
Avg angle
hit
miss
aim center
max cone
hit region
character parts
Hit chance per pellet
Expected hits
Chance of 1+ hit
This seed