Help regarding weapon fire sounds

Hello guys,

I would need a start of a discussion here concerning my headache with creating realistic weapon fire sound mechanics in UE4.

I’m a sound designer in a team creating a realistic military shooter called “Squad”.

What I want for the future is to create a similar fire system like BF4 (Frostbite2).

What we have right now is more or less one type of sound playing for both single fire and auto fire with “random nodes”.

Every fire sound contains every detail in it, meaning; 1. Initial pop, 2. mechanical sounds and 3. The tails/echo.

The biggest concern is auto fireing sounds. They play depending on the user’s FPS (frames per second) experience. So if the FPS is low the fireing sound lags and it really sounds terrible.

What BF4 has is a system where many sound catergories per weapon selects all sounds, but creates a loop sound out of it when holding down the trigger. That also includes reflections of the surrounding depending on where you are in the map/level. (Urban, forests, plain fields, valleys). And it doesnt get affected by the user’s FPS.

How can we create a similar system with UE4? Is FMOD plugin gonna be of help in this matter? Cause I don’t want complete loop sounds for auto fire. Like a prerecorded sound with 30 shots looping. Reason behind this is that I don’t want to hear it loop or to sound repetetive.

The fire sound system I have atm looks like this in the editor:

Stereo sounds for 1st person view AK74 BP:

Mono sounds for 3p view also with mid and far fire sounds BP:

And in the AK74 weapon BP we just have coded in 1st and 3p sound selection:

What do you guys think we can do to have a better fire system like BF4 has?

I’ve worked on a modification called Project Reality for the BF2 engine (Refractor2) where for fire sounds (both single and auto) you place out “markers” that creates a loop sound when fireing in auto and you can have 3 fps and still experience the same flow as if you would have 120fps ingame.
The wav files looks like this:

Discuss and help much appreciated. :slight_smile:

I am a sound programmer and although I am yet to work with audio in UE4, I find that most game engines will use a clock that has nano second precision, this is not good enough for audio. What I normally do to overcome this is to write a custom audio timing engine using the audio samples as a clock, the result being sample precision timing. But yeah FMOD or JUCE should resolve this (I expect they are doing the same thing).