> For the complete documentation index, see [llms.txt](https://documentation.rcore.cz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.rcore.cz/paid-resources/xdiskjockey/config/add_mixer.md).

# Add new mixer

All existing mixers can be found in the directory: `xdiskjockey/config.lua` and new one can be added there aswell

```lua
-- DJ mixer list
Config.MixerList = {
	["must be unique name!"] = {
		mixer = {
			{
				-- position of the marker
				pos = vector3(120.72, -1281.12, 29.48),

				-- distance it will render the marker
				distance = 5,

				-- you can remove this part completely if you do not want the player 
				-- to teleport in front of the mixer
				-- if there is some kind of object, you can teleport the player
				-- in front of it and play any animation you put in
				-- it helps to have better immersion in the game 
				teleportPlayer = {
					-- position where you want to teleport the player (in front of the object)
					pos = vector3(120.58, -1281.12, 29.48),

					-- heading of the player
					heading = 119.98,

					-- animation we will play for the player.
					animDict = Config.AnimDictMixerIdle,
					animClip = Config.AnimClipMixerIdle,
				},
			},

			-- you can have shared DJ mixers like this
			-- this DJ mixer will share all the same speakers + saved playlist and such
			-- NOTE! this step isn't mandatory is not required to do at all you 
			-- can skip this or delete this part below
			{
				pos = vector3(0, 0, 0),
				distance = 5,

				teleportPlayer = {
					pos = vector3(1, 1, 0),
					heading = 119.98,

					animDict = Config.AnimDictMixerIdle,
					animClip = Config.AnimClipMixerIdle,
				},
			},
		},
		speaker = {
			-- position + distance playing of the speaker
			{
				pos = vector3(117.47, -1290.58, 29.17),
				distance = 20.0,
			},

			-- you can define more than one speaker like this
			{
				pos = vector3(0, 0, 0),
				distance = 20.0,
			},
		},
		-- max value is 1.0
		-- 1.0 = 100% volume
		defaultVolume = 0.5,

		--jobs = {"police","other job"} -- if left nil everyone will be able to open it

		-- if this is set to true it will not try to disable music around you from in-game world
		skipEmitterForThis = false,
	},
}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://documentation.rcore.cz/paid-resources/xdiskjockey/config/add_mixer.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
