Jump to content

functions of gtaiv_vehicleAudioSettings


Recommended Posts

in the game directory, "gtaiv_vehicleAudioSettings.ini" is within pc\audio\config. this file is a simply written line of code that constructs the distinctive sounds of each of the 130+ vehicles within the game. this includes, but not limited to, stuff like horns, door open/close sounds, engine sounds, engine redline pitch, and how LCPD dispatch identifies the make and model.

 

you'd likely be best familiar with the file if you run the Fastman92 Limit Adjuster added vehicle audio function in conjunction with LCPDFR or for modding cars into the game without replacing any of the vanilla ones.

 

doing this because even after 13 years since the game's release, i couldn't find a concrete explanation as to how the file determines its functions of vehicle sounds. some lines are obvious, some are not.

i could ask around, but i want to see how much i can discover to the best of my abilities because i like breaking stuff down, and editing car sounds how i personally see fit; as well as making my own audio settings for add-on cars that didn't come with their own lines and rather piggyback off of a vanilla car.

 

additions and corrections are welcome

 

the main example i will use is the dundreary admiral, being the first result on the file list:

 

Spoiler
[admiral]
structType = 0
field_1 = 41493
flags = 0xAA669 
floatAsInt_A = -7.0
floatAsInt_E = -2.0
engineLowSound = VEHICLES_ENGINE_RESIDENT_V8_LUXURY_1_ENGINE_LOW
engineHighSound = VEHICLES_ENGINE_RESIDENT_V8_LUXURY_1_ENGINE_HIGH
exhaustLowSound = VEHICLES_ENGINE_RESIDENT_V8_LUXURY_1_EXHAUST_LOW
exhaustHighSound = VEHICLES_ENGINE_RESIDENT_V8_LUXURY_1_EXHAUST_HIGH
revsOffSound = VEHICLES_ENGINE_RESIDENT_V8_LUXURY_1_REVS_OFF_2
field_26 = 660.0
field_2A = 200.0
floatAsInt_2E = -4.0
floatAsInt_32 = 0.0
field_36 = 4000.0
field_3A = 1000.0
floatAsInt_3E = -5.0
floatAsInt_42 = 0.5
field_46 = 640.0
field_4A = 200.0
floatAsInt_4E = -2.0
floatAsInt_52 = 2.0
field_56 = 160.0
field_5A = 100.0
floatAsInt_5E = 4.0
floatAsInt_62 = 6.0
floatAsInt_66 = 0.0
field_6A = 50.0
field_6E = 50.0
floatAsInt_72 = -6.0
floatAsInt_76 = -12.0
engineWaveShape = ENGINE_WAVE_SHAPE
floatAsInt_7E = 0.0
exhaustWaveShape = EXHAUST_WAVE_SHAPE
floatAsInt_86 = 0.0
floatAsInt_multiplier1200_8A = -0.666667
floatAsInt_multiplier1200_8E = 1.0
engineIdleLoopSound = VEHICLES_ENGINE_RESIDENT_V8_LUXURY_1_ENG_IDLE_LOOP
exhaustIdleLoopSound = VEHICLES_ENGINE_RESIDENT_V8_LUXURY_1_EX_IDLE_LOOP
floatAsInt_multiplier1200_9A = 0.0
floatAsInt_multiplier1200_9E = 1.0
transmissionSound = VEHICLES_TRANSMISSION_1
floatAsInt_A6 = -8.0
floatAsInt_AA = 4.0
sound_AE = VEHICLES_ENGINE_RESIDENT_NULL_LOOP
floatAsInt_B2 = -4.0
floatAsInt_B6 = 2.0
exhaustPopSound = NULL_SOUND
airIntakeSound = VEHICLES_EXTRAS_AIR_INTAKE_1
floatAsInt_multiplier1200_C2 = 0.166667
floatAsInt_multiplier1200_C6 = 0.833333
dumpValveSound = NULL_SOUND
startSound = VEHICLES_ENGINE_RESIDENT_V8_LUXURY_1_START
hornSound = ADMIRAL_MULTI_HORN
openSound = VEHICLES_EXTRAS_LUXURY_OPEN
closeSound = LUXURY_DOOR_CLOSE_RND
trunkOpenSound = VEHICLES_EXTRAS_LUX_SUV_TRUNK_OPEN
trunkCloseSound = VEHICLES_EXTRAS_LUX_SUV_TRUNK_CLOSE
field_E6 = 0.5
suspensionUpSound = PNEUMATIC_SUSPENSION_UP
suspensionDownSound = PNEUMATIC_SUSPENSION_DOWN
field_F2 = 0.4
field_F6 = 1.0
policeScannerManufacturerSound = POLICE_SCANNER_MANUFACTURER_MAN_DUNDREARY
policeScannerModelSound = POLICE_SCANNER_MODEL_MOD_ADMIRAL
policeScannerVehicleCategorySound = POLICE_SCANNER_VEHICLE_CATEGORY_SEDAN
gearTransmissionSound = VEHICLES_ENGINE_RESIDENT_GEAR_TRANSMISSION
floatAsInt_multiplier1200_10A = 0.333333
floatAsInt_multiplier1200_10E = 2.16667
floatAsInt_multiplier1200_112 = 0.666667
floatAsInt_116 = 0.0
field_11A = 50
floatAsInt_11E = 0.0
floatAsInt_122 = 2.0
floatAsInt_126 = 18.0
jumpLandSound = VEHICLE_JUMP_LAND
field_12E = 0
field_132 = 0
ignitionSound = IGNITION
engineShutDownSound = VEHICLES_ENGINE_RESIDENT_SHUT_DOWN_1
field_13E = 3
field_13F = 1
field_140 = 1
field_141 = 1
indicatorVehicleOn = VEHICLES_EXTRAS_INDICATOR_MODERN_CAR_ON
indicatorVehicleOff = VEHICLES_EXTRAS_INDICATOR_MODERN_CAR_OFF
engineCoolingFan = ENGINE_COOLING_FAN
handbrakeSound_14E = NULL_SOUND
sound_152 = NULL_SOUND
sound_156 = NULL_SOUND
handbrakeSound_15A = VEHICLES_EXTRAS_STANDARD_HANDBRAKE
field_15E = 1
field_15F = 0
field_160 = 4

 

 

and a breakdown as to how each line executes each audio function of the car:

 

Spoiler

[admiral] = the model of the car. this must match the font case of the model AND texture for proper implementation, like how the former and latter have to match.
structType = structure type. this is the only explanation offered in the file. 0 for land vehicles, 4 for helicopters, 7 for boats.

field_1 = unknown, but this is unique to each vanilla car.
flags = somewhat like a vehicles.ide flag. almost seemingly sorts by the specific class of the car.
floatAsInt_A = determines amplitude of engine in comparison with the exhaust. no value greater than 0. functions as the beginning of a range with Int_E.

floatAsInt_E = determines amplitude of exhaust in comparison with the engine. no value greater than 0. functions as the beginning of a range with Int_A.
engineLowSound = engine sound when running in lower RPM
engineHighSound = engine sound when running in higher RPM
exhaustLowSound = engine sound from exhaust when running in lower RPM
exhaustHighSound = engine sound from exhaust when running in higher RPM
revsOffSound = engine sound when letting off the throttle after throttle input.
field_26 =
field_2A =
floatAsInt_2E =
floatAsInt_32 =
field_36 =
field_3A =
floatAsInt_3E =
floatAsInt_42 =
field_46 =
field_4A =
floatAsInt_4E =
floatAsInt_52 =
field_56 =
field_5A =
floatAsInt_5E =
floatAsInt_62 =
floatAsInt_66 =
field_6A =
field_6E =
floatAsInt_72 =
floatAsInt_76 =
engineWaveShape = ENGINE_WAVE_SHAPE
floatAsInt_7E =
exhaustWaveShape = EXHAUST_WAVE_SHAPE
floatAsInt_86 =
floatAsInt_multiplier1200_8A = determines the range of the engine sound at low revs. functions as the beginning of a range with 8E.
floatAsInt_multiplier1200_8E = determines the range & peak (redline) of the engine sound at high revs. functions as the ending of a range with 8A.
engineIdleLoopSound = engine sound when idling.
exhaustIdleLoopSound = engine sound from exhaust when idling.
floatAsInt_multiplier1200_9A =
floatAsInt_multiplier1200_9E =
transmissionSound = transmission shifting sound when in third person
floatAsInt_A6 =
floatAsInt_AA =
sound_AE = VEHICLES_ENGINE_RESIDENT_NULL_LOOP
floatAsInt_B2 =
floatAsInt_B6 =
exhaustPopSound = popping sound emitting from exhaust when revving high in high powered vehicles (banshee, infernus, sultan RS, and even the sanchez)
airIntakeSound = sound of the air intake/turbo when engine output is at high RPMs
floatAsInt_multiplier1200_C2 = range of the intake/turbo sound at low RPMs. works in correlation with C6.
floatAsInt_multiplier1200_C6 = range & peak of the turbo sound at high RPMs works in correlation with C2.
dumpValveSound = determines whether or not the vehicle emits a dump valve sound when letting off the throttle
startSound = engine sound when starting (the minor rev after the starter succeeds and stops)
hornSound = determines the type of horn the vehicle is equipped with
openSound = determines the opening sound of the cabin doors
closeSound = determines the closing sound of the cabin doors
trunkOpenSound = determines the opening sound of the trunk (boot)
trunkCloseSound = determines the closing sound of the trunk (boot)
field_E6 =
suspensionUpSound = determines the sound of the suspension when it expands
suspensionDownSound = determines the sound of the suspension when it compresses
field_F2 =
field_F6 =
policeScannerManufacturerSound = police dispatch identifying the marque of the vehicle
policeScannerModelSound = police dispatch identifying the model of the vehicle
policeScannerVehicleCategorySound = police dispatch identifying the vehicle type or class
gearTransmissionSound = determines the sound of the transmission shifting as if you were inside the car
floatAsInt_multiplier1200_10A =
floatAsInt_multiplier1200_10E =
floatAsInt_multiplier1200_112 =
floatAsInt_116 =
field_11A =
floatAsInt_11E =
floatAsInt_122 =
floatAsInt_126 =
jumpLandSound = the sound code when the vehicle makes a jump and lands on its wheels
field_12E = 0
field_132 = 0
ignitionSound = the starter sound. null for battery/hybrid vehicles.
engineShutDownSound = sound code for when the engine is being disabled
field_13E = behaves as an engine sound dampener/filter. a positive value seems to make the engine more muffled in latency and volume. at 0 the audio is raw and loud
field_13F = similar to above
field_140 = determines the vehicle radio type
field_141 = determines the default radio station/station group
indicatorVehicleOn = sound for the interior turn indicator relay when activated
indicatorVehicleOff = sound for the interior turn indicator relay when deactivated
engineCoolingFan = determines whether or not the vehicle has an audible radiator fan
handbrakeSound_14E = an extra line for the handbrake sound. only the brute pony van has a line entry: "VEHICLES_EXTRAS_TRUCK_HANDBRAKE", whereas 15A is blank instead.
sound_152 =
sound_156 =
handbrakeSound_15A = determines the sound of the handbrake/type of handbrake the vehicle has
field_15E =
field_15F =
field_160 =

 

Edited by Fleenz
discovered a few more lines
Link to comment
https://gtaforums.com/topic/976903-functions-of-gtaiv_vehicleaudiosettings/
Share on other sites

I recommend you to compare the values between different vehicles and try to think what they could mean.

Additionally you may copy values from one vehicle to another, run the game again and test the vehicle. Try to find the difference.

Edited by fastman92

thank you! i have been doing something like that of the sort. i've got an idea what fields 2-6 for the engine and exhaust entries are, but i'm not too sure how to describe them yet.

 

i'm actually enjoying this creative process in figuring out how dynamic i can make these sounds. i'm also considering sharing some audio loader entries for modded vehicles that may use them. all in due time

For the research it would be best if the FLA allowed to reload the vehicle audio settings on the fly, with some button press. There is no such possibility currently.

Edited by fastman92
  • Like 2

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • 0 User Currently Viewing
    0 members, 0 Anonymous, 0 Guests

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.