Hey Collins,
I remembered what you said in game and checked for ya, looks like I found ya.
Your looping issue is being caused by something called a cue point.
Battlefield 2 uses cue points to determine where to loop the audio for gunfire so that it is properly synced with the weapons scripts or coding based on it's rate of fire.
As you can see here in Cool Edit Pro v2.1 I have highlighted in red the cue points added for the BAR_fast_3p.wav sound. A cue point is inserted at 0:00.10 to ensure proper looping.
How is this determined?
The cue point's position is determined by the cycle rate of the weapon. In this case, the BAR is 600rpm giving us a cycle rate of 0.10. That means, ever 0.10 seconds, the weapon fires. The weapon's cycle rate is determined by the following formula:
60 (seconds in a minute) / 600 (rounds-per-minute) = 0.10 (cycle rate)
The Thompson in FH2 has a rate of fire of 625rpm, so we'd go 60 / 625 = 0.096
This formula can be used for all automatic weapons in FH2, including Flak Guns & AA cannons, but not necessarily. The best way to find out is using an audio editor that can see these cue points so you can look at the original sound files (found in objects_weapons_client.zip) to find out. Single shot rifles, pistols, etc. do not use cue points.
Adding a cue point is generally easy and in some cases is just a matter of right-clicking in the wav form at the proper time, or, selecting/highlighting a portion of the wave-form and using loop tools. Cue points can also be called a 'loop' so look for loop or cue tools in your audio editor. Your first point is always 0:00.00 and your last point is the cycle rate of the weapon.
I believe Goldwave ( a free program online
www.goldwave.com) has the cue point feature. Cool Edit Pro was eventually bought by Adobe and is now called Adobe Audition, which may still contain the cue-point features.
Good luck, glad you like the sounds and enjoy audio editing ^_^