Thanks for the formulas. I (mostly) figured this one out
I'm pretty happy with the results I'm getting, they're quite accurate out to all reasonable ranges and much further as well.
Example:
7.62x51mm M24
Range-----In-game v-----Calculated v
000--------900-------------900.0
300--------678-------------678.6
800--------423-------------423.9
1000-------350-------------351.1
1400-------242-------------241.0
1753-------174-------------172.9
So as you can see, pretty close. Just for kicks I tried it in-game at 1753 meters and got 174 m/s; the calculated result for 1753 meters is 172.9 m/s. I'm calculating new acceleration due to drag at 10 meter intervals; if I switch it to, say, 8, it's more accurate at long range but less so at shorter ranges.
It works well with low-velocity bullets too, but is not as accurate. Maybe the rainbow trajectory has something to do with this:
Bizon PP19 9x18mm
Range--------In-Game V---------Calculated V
400-------------115----------------112.9
Switching the interval to 5m results in a 113.6 m/s result, and switching the interval to 5m results in a 114.7 m/s result, or ~115 m/s.
Perhaps BIS uses a time-based interval...
Of course slight differences are to be expected (hitting higher or lower on target, slightly different distance) and the in-game velocities are rounded off to the nearest m/s.