On my lunchbreak, I figured out the cooldown options, which clarified the unknown field before the x,y,z coords and the odd behavior of the fields between Range and xmiIndex.
Here's the updated field list for .emt files:
Code:
;?,SoundFile (wav=sound, mp3/xmi=music for volume sliders),Unknown (0=OK 1=OK),WhenActive (0=always 1=day 2=night),Volume (1.0 = 100%),FadeInMS,FadeOutMS,LoopType (0 = Constant, 1 = Delayed Repeat),X,Y,Z,WavFullVolRadius,WavMaxAudibleDist,1 = RandomizeLocation,Range,MinRepeatDelay,MaxRepeatDelay,xmiIndex,Echo (50 = Max),IsEnvSound (for option toggle)
LoopType affects sounds (.wav files) only, separating constant sound effects (campfire, waterfall) from delayed repeating sound effects (bats screeching, water dripping, rocks rumbling). Music (.mp3 and .xmi) is unaffected. It always loops immediately after finishing.
If LoopType=0, both MinRepeatDelay and MaxRepeatDelay need to be 0, or the client doesn't know what to do with the conflicting information.
If LoopType>0, the client will wait a random amount of time between MinRepeatDelay and MaxRepeatDelay milliseconds before repeating the sound effect. If both are the same, it'll be a constant cooldown between each activation.
Note also that the delays must include the actual playtime of the music/sound. If you play a 5-second sound effect that should pause for 25 seconds after playing before it activates again, you'd set the Min/Max delay fields to 30000. 5 seconds to play, 25 second wait, 5 seconds to play again, etc.