Overview

This file controls settings for all sounds in the game

The order of each sound defined in this file will convey what ID value it has. This existing order should not be changed.

Any column field name starting with “*” is considered a comment field and is not used by the game

Data Fields

Sound – Defines the unique name ID for the sound, which is how other files can reference the sound

Redirect – Points the sound so the index of another sound in the data file. If this field is not empty, the game will use the redirected sound instead of this sound. This can be used when playing the game in the new graphics mode.

Channel – Declares which channel the sound is initialized in. This can affect how different volume or sound settings handle this sound.

FileName – Defines the file path and name of the sound file to play

IsLocal – Boolean Field. If equals 1, then this sound is considered a localized sound and will change based on the game’s localization setting. If equals 0, then ignore this.

IsMusic – Boolean Field. If equals 1, then the sound is flagged as a music sound, which affects how music related settings handle this sound. If equals 0, then ignore this.

IsAmbientScene – Boolean Field. If equals 1, then the sound is flagged as an ambient scene sound, which affects how the game handles the sound when the player transitions between areas. If equals 0, then ignore this.

IsAmbientEvent – Boolean Field. If equals 1, then the sound is flagged as an ambient event sound, which affects how the game treats the sound when the player transitions between areas. If equals 0, then ignore this.

IsUI – Boolean Field. If equals 1, then the sound is flagged as a UI sound, which affects how UI related settings handle this sound. If equals 0, then ignore this.

Volume Min – Controls the minimum volume of the sound. Uses a range of 0 to 255.

Volume Max – Controls the maximum volume of the sound. If both “Volume Min” and “Volume Max” fields differ in value, then the sound will randomly select a volume value in between these values when it is played. Uses a range of 0 to 255.

Pitch Min – Controls the minimum pitch percentage of the sound.

Pitch Max – Controls the maximum pitch percentage of the sound. If both “Pitch Min” and “Pitch Max” fields differ in value, then the sound will randomly select a pitch value in between these values when it is played.

Group Size – Defines a sound Group by declaring a size value. When the sound has this value greater than 0, then this sound is declared as the group’s base sound. Any link to use a sound should use the base sound, to signify that the game should use this group of sounds. This field’s value controls the number of sounds indexed after base sound that should be added to the group. For example, if the sound has a “Group Size” value equal to 5, then this sound is declared as the group’s base sound, and the next 4 sounds indexed after this base sound will be added to the group.

Group Weight – Controls the chance to pick the sound when it is part of a group with other sounds. If all sounds in the group do not have a “Group Weight” value, then the group sounds will play in historical order. This value controls a weighted random chance, meaning that all related sounds have their weights added together for a total chance and each sound’s weight value is rolled against that total value to determine if the sound is successfully picked. The higher this value, the more likely the sound will be picked. This is only used when the sound is part of a group (See “Group Size”).

Loop – Boolean Field. If equals 1, then the sound will replay itself after it finishes playing. If equals 0, then the sound will only play once.

Fade In – Controls how long to gradually increase the sound’s volume starting from 0 when the sound starts playing. Measured in audio game ticks, where 1 game frame is 40 audio ticks, and the game runs at 25 frames per second.

Fade Out – Controls how long to gradually decrease the sound’s volume to 0 when the sound stops playing. Measured in audio game ticks, where 1 game frame is 40 audio ticks, and the game runs at 25 frames per second.

Defer Inst – Boolean Field. If equals 1, then when a duplicate instance of this sound plays the game will stop that request. If equals 0, then ignore this.

Stop Inst – Boolean Field. If equals 1, then when a duplicate instance of this sound plays the previous instance of the sound will stop and the new instance of the sound will play. If equals 0, then ignore this.

Duration – Controls the length of time to play the sound. When the sound has been playing for this length of time, then the sound will stop. If this equals 0, then ignore this functionality.

Compound – Controls the game tick time limit for when a sound can join in playing based on the previous sound played in the Group. If equals 0, then the sound will not be compounded.

 

Falloff – Defines the range of falloff for hearing the sound, based on distance. Uses a code to determine the range value presets.

CodeDescription
0Short – falloff range is 60 to 400 pixels
1Medium – falloff range is 60 to 700 pixels
2Large – falloff range is 200 to 1000 pixels
3Ambient – falloff range is 400 to 1500 pixels
4Voice – falloff range is 2000 pixels (no falloff)

LFEMix – Controls the percentage (out of 100) of the sound’s Low-Frequency Effects channel.

3dSpread – Controls the 3D spread angle of the sound. This only works if the sound is considered a 3D sound (See “Is2D”).

Priority – Controls which if the sound should play before other sounds when too many sounds are playing at once. This value is compared to the priority value of other sounds, and the sound that has the higher priority will play first. Sounds belonging to the player will get an increased priority value of 80.

Stream – Boolean Field. If equals 1, then the sound will be file streamed into the game when called to play. If equals 0, then the entire sound will be loaded into the game before playing.

Is2D – Boolean Field. If equals 1, then the sound is considered a 2D sound and will not have 3D spread settings. If equals 0, then the sound is considered a 3D sound and will use the 3D spread settings.

Tracking – Boolean Field. If equals 1, then the sound will track a unit and will update its position to follow that unit. If equals 0, then the sound will not move and will be stationary.

Solo – Boolean Field. If equals 1, then reduce the volume of other sounds while this sound is playing. If equals 0, then ignore this.

Music Vol – Boolean Field. If equals 1, then the sound’s volume will be affected by the music volume in the game options menu. If equals 0, then ignore this.

Block 1 (to Block 3) – Defines an offset time value in the sound. If this sound is used in a Sound Environment (See SoundEnviron.txt) then these fields control when to periodically update the current song sound to an offset. If this sound is not used in a Sound Environment and if only“Block 1” is used and the “Loop” field is enabled, then use this block value as the time in the sound when to start looping. If this equals -1, then the field is ignored.

HDOptOut – Boolean Field. If equals 1, then the sound will not play in the new graphics mode. If equals 0, then the sound will play in the new graphics mode.

Delay – Adds a delay to the starting tick of the sound when the sound starts playing. Measured in audio game ticks, where 1 game frame is 40 audio ticks, and the game runs at 25 frames per second.