I have been thinking the same thing. But fear not I might have an answer
You see when simulating bullet whiz you would want to calculate the closest distance between the bullet direction and the player’s head
And upon further research I came across the formula for the dot product. People mainly use the Dot Product for checking if an npc has a thing in it’s “field of view.” However that uses the behaviors of two normalized vectors, if the “directional” vector is normalized and the positional vector is not normalized then they have a little quirky quirk, take a look
gasp its exactly what we need to calculate the distance!
Anyway I spared you the mathy stuff to calculate it, and wrote a simple little api! And I even wrote in using OOP to allow for easy plugins for modules like FastCast
(usage and docs are inside of the module)
EDIT: due to the fact that bullet whiz should ONLY be calculated on the client, the module has api core to the client only! Also if you want camera shake you can calculate that from the distance value returned with Check, I only hardcoded in the sfx.
Edit2: the code im using to display the bullets whizzing by are as follows, it replaces the Object every .25 seconds, normally you would want to make it only create one bullet object for every bullet, so the whizz sfx will only play one time when the bullet goes past

