Arma 3 Scripting

Command in Sounds

createSoundSource

Also available as Markdown and JSON, or read the original wiki page.

Description

Creates a sound source of the given type (type is the name of the subclass of CfgVehicles which is pointing to the sound defined in CfgSFX). The actual sound object created is of type "#dynamicsound" and could be detected with allMissionObjects. If the markers array contains several marker names, the position of a random one is used, otherwise, the given position is used. The sound source is placed inside a circle with this position as its center and placement as its radius. Some of the vanilla classes pre-configured in Arma 3:

Since Arma 3 v1.70 it is possible to define sounds for use with createSoundSource in Description.ext. As mentioned earlier, the sounds needed for this command should be defined inside CfgVehicles class, which itself references CfgSFX class. If given class searched in main config and is not found, the search will continue in description.ext - see #Example 3.

Note

A sound created by createSoundSource will always be looping.

Note

Arma 3: In earlier Arma 3 versions, the sound created was greatly attenuated if the player was in first person view inside a vehicle at the moment of execution.

Syntax

createSoundSource [type, position, markers, placement]

Parameters:

Returns: Object

Examples

Example 1

_soundSource = createSoundSource ["LittleDog", position player, [], 0];

Example 2

0 spawn 
{
    _alarm = createSoundSource ["Sound_Alarm", position player, [], 0]; // starts alarm
    sleep 10;
    deleteVehicle _alarm; // stops alarm
};

Example 3

Arma 3 v1.70 Here is an example of suitable mission config definition:

// description.ext
class CfgSFX
{
    class MyOwl
    {
        sound0[] = { "@A3\Sounds_F\environment\animals\birds\owl1", db-10, 1.0, 1000, 0.2, 0, 15, 30 };    // path to addon sound
        sound1[] = { "@A3\Sounds_F\environment\animals\birds\owl2", db-10, 1.0, 1000, 0.2, 0, 15, 30 };    // path to addon sound
        sound2[] = { "@A3\Sounds_F\environment\animals\birds\owl3", db-10, 1.0, 1000, 0.2, 0, 15, 30 };    // path to addon sound
        sounds[] = { "sound0", "sound1", "sound2" };
        empty[] = { "", 0, 0, 0, 0, 0, 0, 0 };
    };
};

class CfgVehicles
{
    class MyOwlSound // class name to be used with createSoundSource
    {
        sound = "MyOwl"; // reference to CfgSFX class
    };
};
private _owl = createSoundSource ["MyOwlSound", position player, [], 0];

Multiplayer

When a CfgSFX sound definition contains more than 1 sound, there is no guarantee that the sound played will be the same on every PC in Multiplayer.

See also

createSoundSourceLocal · playSound · playSound3D · sideRadio · say · say2D · say3D · playMusic · playSoundUI