> ## Documentation Index
> Fetch the complete documentation index at: https://docs.elementlabs.net/llms.txt
> Use this file to discover all available pages before exploring further.

# Sound

> Control the sounds the map plays and which actions make them.

## Purpose

`configs/sound.jsonc` controls the sounds the map plays while it is open: which actions make a
sound, and which sound each one uses.

The game's own audio is silenced separately, while the map is open. See [Visual
treatment](/products/map/configuration/visual).

## Options

### Master switch

| Key       | Default | Meaning                                                                    |
| --------- | ------- | -------------------------------------------------------------------------- |
| `enabled` | `true`  | Whether the map plays any sound at all. `false` silences everything below. |

### Which actions make a sound

Each of these is a switch. It has an effect only while `enabled` is `true`.

| Key        | Default | Sounds when                                                                                                      |
| ---------- | ------- | ---------------------------------------------------------------------------------------------------------------- |
| `pan`      | `true`  | The camera is being dragged. The sound plays while the drag continues and follows how fast the camera is moving. |
| `zoom`     | `true`  | The camera is zooming.                                                                                           |
| `select`   | `true`  | A marker is selected.                                                                                            |
| `toggle`   | `true`  | The map opens or closes, or a tab is chosen.                                                                     |
| `waypoint` | `true`  | A destination is set.                                                                                            |
| `poi`      | `true`  | A point of interest is placed or removed.                                                                        |

### Which sound each action uses

| Key               | Default                           | Applies to                               |
| ----------------- | --------------------------------- | ---------------------------------------- |
| `soundset`        | `"HUD_FRONTEND_DEFAULT_SOUNDSET"` | The set every sound below is taken from. |
| `sounds.pan`      | `"MAP_MOVEMENT_MOUSE"`            | Dragging the camera                      |
| `sounds.zoom`     | `"MAP_ZOOM"`                      | Zooming                                  |
| `sounds.select`   | `"SELECT"`                        | Selecting a marker                       |
| `sounds.toggle`   | `"TOGGLE_ON"`                     | Opening, closing, choosing a tab         |
| `sounds.waypoint` | `"WAYPOINT_SET"`                  | Setting a destination                    |
| `sounds.poi`      | `"WAYPOINT_SET"`                  | Placing or removing a point of interest  |

Sound names come from the game's own sets, and the name must exist in the set named by `soundset`.
A name that is not in the set plays nothing; there is no error.

### Drag sound intensity

The dragging sound rises with how fast the camera is moving. These two values set the scale.

| Key                  | Default | Meaning                                                           |
| -------------------- | ------- | ----------------------------------------------------------------- |
| `rate.maxPixelsSqrd` | `25.0`  | The amount of on-screen movement that counts as the fastest drag. |
| `rate.maxValue`      | `5.0`   | The intensity the sound reaches at that speed.                    |

Below the first value the sound scales in proportion; at or above it, the sound stays at
`rate.maxValue`.

## Example

Keeping only the sounds that confirm an action, and silencing the continuous ones:

```jsonc theme={null}
{
  "namespace": "sound",
  "configVersion": 1,
  "scope": "client",
  "values": {
    "pan": false,
    "zoom": false
  }
}
```

Silencing the map entirely:

```jsonc theme={null}
{
  "namespace": "sound",
  "configVersion": 1,
  "scope": "client",
  "values": {
    "enabled": false
  }
}
```

Using a different set:

```jsonc theme={null}
{
  "namespace": "sound",
  "configVersion": 1,
  "scope": "client",
  "values": {
    "soundset": "HUD_FRONTEND_MP_SOUNDSET",
    "sounds": {
      "select": "SELECT"
    }
  }
}
```

`sounds` is merged key by key, so the example above keeps every other sound name as shipped.

## Applying changes

```text theme={null}
restart element_map
```

## Safety

| Key                                 | Stay within                           | Why                                                                                                                            |
| ----------------------------------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `soundset` and every `sounds` value | Names that exist together in the game | A name missing from the chosen set plays nothing at all. Change the set and the names together, and check each action in game. |
| `rate.maxValue`                     | Roughly `1` to `10`                   | Higher makes the dragging sound reach full intensity for even small movements.                                                 |
| `rate.maxPixelsSqrd`                | Above `0`                             | At `0` the dragging sound is at full intensity from the first pixel of movement.                                               |

The continuous sounds, dragging and zooming, are the ones players notice most in a long session.
If you are unsure, turn those two off and leave the rest.

## Related

* [Configuration](/products/map/configuration/index)
* [Visual treatment](/products/map/configuration/visual): silencing the game's own audio
* [How players use the map](/products/map/using-the-map)
