Server-wide synchronized music with Cobblemon battle music support!
Cobblemon Diamond DJ is a Fabric mod that broadcasts OGG music files to all connected players. Everyone hears the same song at the same time, creating a shared radio experience. When a Cobblemon battle starts, spatial battle music kicks in with smooth crossfade transitions.
Updating from a previous version?
Delete your old config files (config/cobblemon-diamond-dj-server.json and config/cobblemon-diamond-dj-hud.json) and let the mod regenerate them with the latest defaults. New fields are added each update and stale configs can cause unexpected behavior.
First time?
After installing, take a moment to read through config/cobblemon-diamond-dj-server.json -- every option is there and the defaults are sensible, but there's a lot you can customize (battle music, streaming, vote skip, auto-start, and more).
DJ Playlist System
Cobblemon Battle Music
Resource Pack Support
resourcepacks/ folder.ogg file in a resource pack is added to the DJ playlistbattle/ folder go to the battle music library"local" (config folders only), "resourcepack" (packs only), or "both"All Players:
/dj skip - Vote to skip current song/dj nowplaying - Show current song infoOperators:
/dj start - Start playback/dj stop - Stop playback/dj forceskip - Skip without voting/dj reload - Reload song library and resource packs/dj list - List all songs/dj status - Server status/dj clearcache - Clear client cache for all online players/dj clearcacheplayer <player> - Clear client cache for one playerStreaming Mode (Operators):
/dj play <url> - Play a URL immediately/dj queue <url> - Add a URL to the queue/dj addplaylist <url> - Add a playlist URL (YouTube/SoundCloud)/dj clearqueue - Clear the stream queueOption 1: Local Files (default)
.ogg files to: config/cobblemon-diamond-dj/songs/config/cobblemon-diamond-dj/battle//dj start in-gameOption 2: Resource Packs
.zip) in the server's resourcepacks/ folder"musicSource": "resourcepack" in config/cobblemon-diamond-dj-server.json/dj start in-gameOption 3: Both
resourcepacks/"musicSource": "both" in the configOption 4: Streaming
"playbackMode": "streaming" in config/cobblemon-diamond-dj-server.jsonconfig/cobblemon-diamond-dj/streaming_playlist.txtyoutubePoToken, youtubeOAuthRefreshToken) for age-restricted content/dj start or use /dj play <url> for on-demand streamingEdit config/cobblemon-diamond-dj-server.json:
{
"voteThresholdPercent": 50,
"voteTimeoutSeconds": 30,
"voteEnabled": true,
"battleMusicEnabled": true,
"battleMusicRadius": 48,
"battleBleedEnabled": true,
"clearCacheOnDisconnect": true,
"musicSource": "local",
"autoStartEnabled": true,
"playbackMode": "local",
"streamingPlaylistFile": "streaming_playlist.txt",
"battleMusicDisabledInStreaming": false
}
voteThresholdPercent - Percentage of players needed to skipvoteTimeoutSeconds - How long before a vote expiresbattleMusicEnabled - Enable/disable Cobblemon battle musicbattleMusicRadius - How far battle music can be heard (blocks)battleBleedEnabled - Allow battle music to bleed across dimensionsclearCacheOnDisconnect - Clear client cache on disconnectmusicSource - Where to load music from: "local", "resourcepack", or "both"autoStartEnabled - Auto-start the DJ playlist when the server startsplaybackMode - Playback mode: "local" (OGG files) or "streaming" (URLs)streamingPlaylistFile - Filename for URL playlist (one URL per line)battleMusicDisabledInStreaming - Disable battle music when in streaming modeEdit config/cobblemon-diamond-dj-hud.json:
{
"enabled": true,
"preset": "SUPER_MINIMAL",
"anchor": "TOP_LEFT",
"scale": 1.0
}
Presets: SUPER_MINIMAL (default -- progress bar only), MINIMAL, VERBOSE, NONE, CUSTOM
All URLs are validated against a built-in domain whitelist on both server and client for security. Note: don't download this other than from curseforge. i could change my mind but not for now.