Simulated Ballistics
TL;DR
Simulated Ballistics replaces player and human enemy firearm hitscan with simulated projectiles. Bullets now have travel time, drop, delayed impacts, per-weapon velocity scaling, and optional tracer visuals.
Requires Mod Configuration Menu.
This mod affects player firearms and regular human enemy firearms. BTR/vehicle guns and helicopter rockets remain vanilla.
Features
- Converts player weapon shots from instant hitscan to moving projectiles.
- Converts human enemy firearm shots to moving projectiles.
- Adds bullet travel time, gravity/drop, delayed decals, delayed blood/damage, and segment raycast collision to avoid tunneling.
- Uses per-weapon velocity scaling based on real-world analog velocities.
- Keeps vanilla firing flow for ammo, recoil, casings, fire audio, tail audio, and enemy fire cadence.
- Replaces the vanilla player muzzle flash light with a short warm custom muzzle light.
- Adds optional textured tracer visuals with motion-stretched streaks to reduce dotted rapid-fire artifacts.
- Tracer size scales by projectile diameter, so smaller calibers are subtler and larger rounds are easier to see.
- Enemy tracers can visually originate near the weapon muzzle while projectile physics still follows the AI fire ray.
- Includes a compact debug overlay for live projectile counters and tuning checks.
MCM Options
Requires Mod Configuration Menu.
Settings are stored at:
user://MCM/SimulatedBallistics/config.ini
Available options:
- Player Tracers Enabled: default
On - Enemy Tracers Enabled: default
Off - Tracer Base Scale:
50-200%, default100% - Tracer Alpha:
0-100%, default50% - Debug Overlay: default
Off
Turning tracers off only hides the visual tracer. Projectile travel, damage, decals, blood, and hit effects still run.
Compatibility
Simulated Ballistics modifies player weapon and human AI firearm behavior.
Potential conflict areas:
- Mods that replace or heavily modify
res://Scripts/WeaponRig.gd - Mods that replace or heavily modify
res://Scripts/AI.gd - Mods that change firearm raycast, damage, muzzle, or projectile behavior
The mod uses a runtime player WeaponRig replacement and a loader AI.gd extension for human enemies. It should not affect UI, inventory, movement, footsteps, food/water, traders, maps, or save behavior.
Known limits:
- Human enemy firearms are supported, but the enemies actually fire bullets from above their heads. I did my best to mitigate this through fading and interpolating between the muzzle and head. That is why enemy tracers are off by default.
- BTR/vehicle weapons remain vanilla.
- Helicopter rockets remain vanilla.
- This does not add penetration, ricochet, caliber-specific damage changes, or realistic external ballistics beyond simplified velocity/drop simulation.
Installation
Install Mod Configuration Menu, then place:
SimulatedBallistics.vmz
in:
Road to Vostok/Mods
Enable it in the mod loader and restart the game. Use the MCM sliders/toggles to tune tracer visibility and enable the debug overlay if you want to verify projectile behavior in real time.

