Play Sound
Play a sound effect

# Description

1
'play sound <sound_id> [with [properties]]'
Copied!
The play sound action let's you, as it name says, play sound effects in your game. You can play as many sound effects as you want simultaneously.
To stop the sound, check out the Stop Sound documentation.
Action ID: Sound
Reversible: Yes
Requires User Interaction: No

# Parameters

Name
Type
Description
sound_id
string
The name of the sound you want to play. These assets must be declared beforehand.
properties
string
Optional. A list of comma separated properties with their respective value.

## Properties

The following is a comprehensive list of the properties available for you to modify certain behaviors of this action.
Property Name
Type
Description
string
The fade property let's you add a fade in effect to the sound, it accepts a time in seconds, representing how much time you want it to take until the sound reaches it's maximum volume.
volume
number
The volume property let's you define how high the sound will be played.
loop
none
Make the sound loop. This property does not require any value.

# Assets Declarations

To play a sound, you must first add the file to your assets/sound/ directory and then declare it. To do so, Monogatari has an has a function that will let you declare all kinds of assets for your game.
1
Monogatari.assets ('sound', {
2
'<sound_id>': 'soundFileName'
3
});
Copied!

## Supported Formats

Each browser has it's own format compatibility. MP3 however is the format supported by every browser.
If you wish to use other formats, you can check a compatibility table to discover what browsers will be able to play it.

# Examples

## Play Sound

The following will play the sound, and once the sound ends, it will simply stop.
Script
Sound Assets
1
Monogatari.script ({
2
'Start': [
3
'play sound riverFlow'
4
'end'
5
]
6
});
Copied!
1
Monogatari.assets ('sound', {
2
'riverFlow': 'river_water_flowing.mp3'
3
});
Copied!

## Loop Sound

The following will play the sound, and once the sound ends, it will start over on an infinite loop until it is stopped using the Stop Sound Action.
Script
Sound Assets
1
Monogatari.script ({
2
'Start': [
3
'play sound riverFlow with loop'
4
'end'
5
]
6
});
Copied!
1
Monogatari.assets ('sound', {
2
'riverFlow': 'river_water_flowing.mp3'
3
});
Copied!

The following will play the sound, and will use a fade in effect.
Script
Sound Assets
1
Monogatari.script ({
2
'Start': [
3
'play sound riverFlow with fade 3'
4
'end'
5
]
6
});
Copied!
1
Monogatari.assets ('sound', {
2
'riverFlow': 'river_water_flowing.mp3'
3
});
Copied!

## Custom Volume

The following will set the volume of this sound to 73%.
Script
Sound Assets
1
Monogatari.script ({
2
'Start': [
3
'play sound riverFlow with volume 73'
4
'end'
5
]
6
});
Copied!
1
Monogatari.assets ('sound', {
2
'riverFlow': 'river_water_flowing.mp3'
3
});
Copied!
Please note however, that the user's preferences regarding volumes are always respected, which means that this percentage is taken from the current player preferences, meaning that if the player has set the volume to 50%, the actual volume value for the sound will be the result of:
$50 * 0.73 = 36.5%$

## All Together

Of course, you can combine all of this properties, and remember the order doesn't really matter, you can write the properties on the order that feels more natural to you.
Script
Sound Assets
1
Monogatari.script ({
2
'Start': [
3
'play sound riverFlow with volume 100 loop fade 20'
4
'end'
5
]
6
});
Copied!
1
Monogatari.assets ('sound', {
2
'riverFlow': 'river_water_flowing.mp3'
3
});
Copied!