[ Tutorial ] - How to increase/decrease the volume of vehicle engines (without editing the '.awc' audio files)
For this you are going to need a copy of:
- Codewalker - Get a new version from the Codewalker Discord as the one on this site (v.29) is 2.5 yrs out of date & will not allow you to export '.rel' files to XML.
- A Text Editor of choice (Notepad will do, but there are many advantages to using something a little more advanced like Notepad++)
DLC Vehicle Sounds:
I'll outline the process for the files containing the info for the main body of non-dlc GTA V vehicle engine sounds. For the DLC vehicles, all you have to do is follow the same process, but instead use the DLC counterpart files. They are all named similarly & easy to find in any DLC using OpenIV's Ctrl+F3 search box (see 'Finding DLC '.rel' Files:' at bottom of post).
This method will also raise the volume of the 'STREAMED_VEHICLES_GRANULAR_NPC.rpf' audio files. ie the ones you hear as npc's drive past you.
If pushing the volume up really high, at some point you'll probably want to manually edit the 'STREAMED_VEHICLES_GRANULAR_NPC.rpf' '.awc' engine files & decrease their volume to compensate. Smaller edits up to about +1000 will probably be fine, but results may vary between different engine sounds &/or your sound setup etc.
I pushed the MasterVolume values up as high as 9999 & the engine sounds were damn loud (be careful doing that).
Export 'game.dat151.rel' & 'sounds.dat54.rel' files to '.xml' Using Codewalker's RPF Explorer:
- Start up Codewalker & select '[<<]' (top right) > '[Tools...]' > 'RPF Explorer...'
- Wait for the 'RPF Explorer' to load fully (will say 'File cache loaded' bottom left) & then navigate to:
Note: ...\mods\update\ update.rpf \x64\audio\config (Not '...\mods\x64\audio\audio_rel.rpf\config')
- Right-click on the 'game.dat151.rel' file & select 'Export XML... Ctrl+S' & select a folder location to export it to.
Search the 'game.dat151.rel.xml' file for a Vehicle Name & find that Vehicle's 'MasterVolume' value:
- Open the 'game.dat151.rel.xml' file with a Text Editor.
- Hit 'Ctrl+F' & use the search box to search for a vehicle name.
- Once you've found the vehicle, it should look something like this:
<Item type="Vehicle" ntOffset="369587"> <Name>rocoto</Name> <!-- vehicle name here --> <Unk00 value="0x90005A68" /> <Engine>hash_77F193EC</Engine> <EngineGranular>hash_9A96C7AD</EngineGranular> <Horns>hash_134DA50D</Horns> <DoorOpen>hash_1D48FFC4</DoorOpen>
- From there navigate down one or two sections (it varies), & three lines under the 'VehicleEngineGranular' line, you will find a '<MasterVolume value=' line, like this:
<Item type="VehicleEngineGranular" ntOffset="369608"> <Name>hash_9A96C7AD</Name> <Unk00 value="0xAAAAA905" /> <MasterVolume value="0" /> <!-- This is the volume line here --> <EngineAccel>hash_4173DD5C</EngineAccel> <ExhaustAccel>hash_A5C6E3AA</ExhaustAccel> <Unk04 value="0" /> <Unk05 value="0" /> <Unk06 value="0" /> <Unk07 value="0" />
Raise the '<MasterVolume value=' value to increase the volume of the engine & lower it to decrease the volume (it can be negative if required).
After you make your edit/s, save the file & reimport it back into the game where you got it using Codewalker's RPF Explorer.
To get 'Import XML... Ctrl+Ins' to appear, hit the '[ Edit mode]' button (top, middle, right) & confirm entering edit mode by hitting '[Yes]'.
Then right-click within the folder > 'Import XML... Ctrl+Ins' & select your edited '.rel.xml' files
File icons in the RPF Explorer for the files you are importing will turn dark for a moment until the import is complete.
Finding DLC '.rel' Files:
DLC 'game.dat151.rel' files are prefixed with their dlc name. Like 'dlcjanuary2016_game.dat151.rel' & 'dlcsmuggler__game.dat151.rel' for example.
Alternatively, searching for just 'game.dat151.rel' will show all of those files & their locations in the game, allowing you to select the one/s you want.
@a63nt-5m1th Can confirm using \mods\update\ update.rpf \x64\audio\config and using a value of <MasterVolume value="500" /> works very well without any sound distortion. I'm going through all my .rel now to increase volume. Although I still prefer editing the awc files to get better sounds, this works amazing for NPC traffic and a general sound increase. You can hear cars drive past you now.
Defo that directory?
@a63nt-5m1th whoops, wrong copy and paste. You are correct in the directories. I changed it. I'm curious about changing engine sounds of cars. I found out one of the reasons I was having no engine sounds. The car was using the Electric Engine line, and not the granular line. Car sounds great now when changing the hash, i'm gonna try to swap the engine sounds in the rel.
The car was using the Electric Engine line, and not the granular line
i'm gonna try to swap the engine sounds in the rel.
By my understanding, there should be a few different ways to do that.
Either, by using the:
<Wave1> <ContainerName>streamed_vehicles_granular/muscle_car_2_us_v8</ContainerName> <FileName>engine_accel</FileName> </Wave1> <Wave2> <ContainerName>streamed_vehicles_granular/muscle_car_2_us_v8</ContainerName> <FileName>exhaust_accel</FileName> </Wave2> <Wave3> <ContainerName>streamed_vehicles_granular/muscle_car_2_us_v8</ContainerName> <FileName>engine_decel</FileName> </Wave3> <Wave4> <ContainerName>streamed_vehicles_granular/muscle_car_2_us_v8</ContainerName> <FileName>exhaust_decel</FileName> </Wave4> <Wave5> <ContainerName>streamed_vehicles_granular/muscle_car_2_us_v8</ContainerName> <FileName>engine_idle</FileName> </Wave5> <Wave6> <ContainerName>streamed_vehicles_granular/muscle_car_2_us_v8</ContainerName> <FileName>exhaust_idle</FileName> </Wave6>
'ContainerName' directory lines in 'sounds.dat54.rel.xml' to point to a different '.awc'.
by changing the:
hash values in 'game.dat151.rel.xml' to point to a different '<Item type="GranularSound">' section in 'sounds.dat54.rel.xml'.
Using the 'Engine/ExhaustAccel' hashes there in 'game.dat151.rel.xml', it's possible to mix & match different vehicle's engine & exhaust sounds together on the one vehicle.
That's not possible mixing & matching the 'ContainerName' lines in 'sounds.dat54.rel.xml' as it causes the vehicle to have a silent engine in-game.
I'm basically just throwing out the things I've discovered, more for the next person who comes along to read it, it may or may not be relevant to what you are doing , I'm sure you've got it covered
Extra General Info:
I've been playing around with the '<Unk##' values & swapping the odd 'hash_########' value here & there.
They do make changes to how the engine sounds, but it's all pretty subtle (bar the odd time I got a muscle car with a gokart engine lol).
R*'s naming conventions seem to be a little off in places too. Not always the most logical choice of names for connected files etc.
In some vehicles at least, the:
<EngineLow>hash_F045343B</EngineLow> <EngineHigh>hash_682D2137</EngineHigh> <ExhaustLow>hash_E3C6AD67</ExhaustLow> <ExhaustHigh>hash_93833621</ExhaustHigh>
hashes seem to use a different numbered '.awc' than the one used for the granular 'EngineAccel/ExhaustAccel'.
The Vigero seems to use 'muscle_car_3.awc' (in 'STREAMED_VEHICLES.rpf') for it's 'EngineLow/High' & it's 'ExhaustLow/High' audio, while it obviously uses the 'muscle_car_2_us_v8.awc' (in 'STREAMED_VEHICLES_GRANULAR.rpf') for it's granular engine & exhaust sound ('muscle_car_2_' for both would have been a more logical choice etc).
Just something to be aware of. It's only numbering I guess, but I could see it catching someone out. Don't make no presumptions where R* is concerned etc.
@a63nt-5m1th I'm gonna try to convert the electric sound to the engine sound using the 151 approach. All this is just a gold mine of information, very well done.
Using your methods I was able to trace the Ruffian to two different files, one was the 1000_racebike.awc for the High/Low engine, and the other was v_twin_1.awc for the Engine Accel and Deaccel. I have the engine sounds modded, never tried messing with the High/Low.
@a63nt-5m1th I put together an OIV package that increases the master volume to %500
Will work on an update to change the engine sounds of certain vehicles.