Audio and Visual Effectors | Index



fx_ambientsound
Plays any sound as a true ambientsound. Wait's for trigger if it has a targetname.

Key Value Pairs:
noise Path to the sound (MUST be a looped WAV!)
volume Sound volume
distance Sound attenuation (NOTE: built-in ambient sounds are all ATTN_STATIC)
targetname Sounds can be triggered on (but not stopped once started!)



fx_sound
Plays any sound with an optional (different) shutoff sound. Can trigger on/off, repeat, play n times, randomize, all sorts of fun stuff...

Key Value Pairs:
noise Path to the sound - example: "misc/mysound.wav"
noise1 Path to the shutoff sound. Use "misc/null.wav" to abruptly mute "noise" when toggled off. If "noise1" is empty, "noise" is allowed to finish when paused (or continue if it's a looped WAV).
distance Sound attenuation (defaults to ATTN_NORM).
volume Sound volume.
count Number of times to play the sound each time it's triggered (-1 is infinite loop).
pausetime Delay in seconds before playing the next loop (omit or set to 0 if "count" is 1)
cnt Random seed for repeats, this number is multiplied by random() and added to pausetime (0 is no random).
targetname Can be triggered

Spawnflags:
1 : START_ON Start right away even if triggered

Notes:
Although you can use looping WAV files with fx_sound, you shouldn't rely on them looping for ever. Quake will stop playing a sound when it can no longer hear it (well, "see it" is more accurate). If an fx_sound is playing a looped WAV in this case, it will simply stop playing it. If you want a sound to loop, it's best to use a non-looping WAV and set it's paustime to the length of the sound. This won't stop Quake from muting the sound when it's nolonger in range, but at least it will start up again when it comes back into range (although it starts at the next loop time, so long sounds may still act weird).
If you need a triggered looping sound (that can't be turned off once started) use fx_ambientsound.
For some reason, Quake refuses to play sounds immediately, so there is a one second delay from worldspawn to when the sound actually starts.



fx_drip
Single, continuous drip. Can toggle on/off with multiple triggers.

Key Value Pairs:
wait A seed for the frequency of the drips, 0 is pretty quick
targetname Can be triggered

Spawnflags:
1 : START_ON Start right away even if triggered
2 : SILENT Don't make sound.

Notes:
Use SILENT when using several drip enties and use an fx_sound triggered at the same time to provide the sound. If you have too many drip noises playing, they can override more important sounds in the same area (like plat/door sounds).
These are much simpler to set up, but func_emitter* entities can easily mimic drips, and should be used in place of fx_drip for busy effects (like rain).



fx_spark
Throws sparks randomly 360º around the origin in the horizontal axis. Can toggle on/off with multiple triggers.

Key Value Pairs:
wait A seed for the frequency of the sparks, 0 is pretty quick
targetname Can be triggered

Spawnflags:
1 : START_ON Start right away even if triggered
2 : SILENT Don't make sound.

Notes:
Like fx_drip, these are much simpler to set up than func_emitter* entities but the latter can give much more control over direction, spread, and frequency.