Yes OFP doesn't support damage changes due to range, but the idea behind the script is the script is to add this feature to the game. Thus as the round goes farther away from the firing point it's speed decreases and the damage is reduced. So depending on the round and the weapon will effect the starting point of the damage reduction and lose of armour peneration. Hopefully the ballistics effects will add a few extra features.
I've considered adding in something like this to the ECP, but haven't done it yet for a few reasons. First off, you can't change the damage a bullet does via scripting. Its speed has no effect on its damage. The only possible workaround I can see would be to delete the old bullet, and create a new, weaker bullet, every 100 meters of travel or something. It might work, but it seems crude and likely to act funny with lots of bullets flying around...
Making bullets slow down due to drag would be possible though, but there are still problems. First off, the AI wouldn't know how to compensate when they are aiming, so their shots would fall consistently short at long ranges. Secondly, such a script could cause massive drain on the CPU. You would need a constant loop for every bullet fired, that would reduce that bullet's velocity by a certain amount every loop cycle. Actually "catching" each bullet fired to start the loop would require a nearestobject call, which is an expensive function. Multiply that by however many bullets are in the air at any given time, and you could have serious lag.
Now, with that said, I haven't actually tried it, so I may be overestimating how much lag it would really cause. And there may be ways to config the AI so they compensate for the bullet drop. Or you could just make it run for the player's bullets, which would cut down greatly on the lag, and would eliminate the problem with the AI.
As a side note, a system could also be scripted to allow you to adjust your sights for elevation, so you don't have to use "kentucky windage" to get your shots on target.
It shouldn't be to hard to do as I'm sure there an ammo count in the engine of the game.
True, there is a way to see how many bullets are in the magazine the player currently has loaded (the "ammo" command). However, there is no way to SET how many bullets are in a given magazine. You can only add full magazines to a unit, or remove an entire magazine from the unit. There is also no way to see how many bullets are in other magazines a unit is carrying that are not loaded into the weapon; nor is there a way to "pick" which m16/whatever magazine you remove from that unit (you always get the one loaded in the weapon, I believe), as far as I know.
About the SAW... my SNCOIC, who is the batallion armorer for my Reserve unit, told me that the SAW and the M16 use different bullets. Both 5.56 of course, but with different amounts of powder. This came up because one of our other sites had a SAW blow up on the range, because they were using M16 mags. That is why, in the USMC at least, you are only authorized to do that in combat, NOT in training. It would make sense to me, at least, because the the SAW bolt is heavier than the m16's.