How Rust calculates bullet spread angle:
In BaseProjectile:
aimCone(float): Base weapon spread angle in degrees.aimConePenalty(float): Accumulated spread while firing.stancePenalty(float): Standing multiplier (typically1.5x).
The game calculates final firing direction by taking camera forward vector and applying a randomized polar angle offset within aimCone radius.
Reading aimCone values in real-time allows drawing an accurate dynamic spread circle on your HUD!