Home›Java›Mods›CustomMusicDisksPack
CustomMusicDisksPack
Overview
CustomMusicDiscsPack is the companion plugin to CustomMusicDiscs. It handles everything related to delivering your custom audio to players — automatically generating a Minecraft-compatible resource pack from your .ogg audio files and hosting it so players can download it when they join your server.

Without CustomMusicDiscsPack, players would not hear any custom audio when using custom music discs in jukeboxes. The two plugins are designed to work exclusively together as a complete custom music disc system. If you have not already installed CustomMusicDiscs, you will need to do so before using this plugin.

Designed specifically for Paper 1.21.11, CustomMusicDiscsPack is lightweight, fast, and requires minimal configuration to get running.

Features
Automatic Resource Pack Generation
Smart Sound Key Generation
Built-In Resource Pack HTTP Server
External Hosting Support
Auto-Apply on Join
⚙️ Commands
Command Description Permission
/generatepack Generates the resource pack from all .ogg files in the music folder custommusicdiscspack.generate
/applypack Manually sends the resource pack to yourself custommusicdiscspack.apply
Permissions
Permission Description Default
custommusicdiscspack.generate Use /generatepack OP
custommusicdiscspack.apply Use /applypack All players
Requirements
Requirement Details
Server Software
Paper 1.21.11
Java Version Java 21 or higher
Required Plugin CustomMusicDiscs
⚠️ CustomMusicDiscs is required. CustomMusicDiscsPack reads audio files from the CustomMusicDiscs music folder and generates sound definitions that match exactly what CustomMusicDiscs expects. The two plugins must be installed together — neither functions fully without the other.

Installation
Step 1: Install Both Plugins
Download and place both JAR files into your server's plugins/ folder:

Step 2: Start the Server
Start your server once to allow both plugins to generate their default configuration files and folders. Then shut the server down.

Step 3: Configure CustomMusicDiscsPack
Open plugins/CustomMusicDiscsPack/config.yml and update the following:

yaml
auto-apply-on-join: true
resource-pack-port: YOUR_PORT
server-ip: "YOUR.SERVER.IP"
Setting explanations:

Step 4: Open a Port (Shared Hosting)
If you are using a shared hosting provider such as Shockbyte, you will need to open a custom port through your hosting control panel for the built-in HTTP server to work. Once opened, use that port number in resource-pack-port.

Using external hosting instead? If you cannot open a custom port, skip this step. After running /generatepack, download plugins/CustomMusicDiscsPack/resourcepack.zip via FTP, upload it to Google Drive or another host, get a direct download link, and add it to server.properties:

properties
resource-pack=YOUR_DIRECT_DOWNLOAD_LINK
resource-pack-sha1=
require-resource-pack=false
Then set auto-apply-on-join: false in config.yml.

Step 5: Add Your Music
Add .ogg audio files to the plugins/CustomMusicDiscs/music/ folder using this naming format:

Artist-SongName-Album.ogg
Examples:

Beethoven-Moonlight Sonata-Piano Sonatas.ogg
MyBand-Our Song-Debut Album.ogg
CHVRCHES-Forever-Love Is Dead.ogg
Step 6: Generate the Resource Pack
Start your server, join the game, and run the following commands in this order:

/generatepack
/loadmusic
/applypack
⚠️ Always run /generatepack before /loadmusic. The track numbers displayed on each disc are read from the sounds.json generated by this command. If you run /loadmusic first, discs will show Track (generate pack to assign) until you regenerate them.

Step 7: Adding New Songs
When you add new .ogg files to the music folder later, simply run the commands again in the same order. No server restart is required.

How It Works
When /generatepack is run, CustomMusicDiscsPack:

  1. Scans plugins/CustomMusicDiscs/music/ for all .ogg files
  2. Creates a valid Minecraft resource pack structure in a temporary folder
  3. Generates sounds.json with a sound definition entry for every track
  4. Converts filenames into valid Minecraft sound keys (lowercase, underscores, no special characters)
  5. Copies all .ogg files into the correct location inside the pack
  6. Saves a copy of sounds.json to the plugin folder so CustomMusicDiscs can read track numbers
  7. Zips everything into resourcepack.zip with files at the root level (as Minecraft requires)
  8. Serves the zip file via the built-in HTTP server so players can download it on join
CustomMusicDiscs then reads the same sound keys when a disc is placed in a jukebox and plays the correct track using player.playSound() with the matching namespace and key.

config.yml Reference
yaml
# Enable or disable automatic resource pack application on player join
auto-apply-on-join: true
# The port used by the built-in HTTP server to host the resource pack
# Must be a port opened through your hosting provider's control panel
resource-pack-port: 22989
# Your server's IP address - do NOT include the port number here
server-ip: "your.server.ip"
Frequently Asked Questions
Q: Do I need to restart the server after adding new songs?
A: No. Add your .ogg files, then run /generatepack and /loadmusic again. No restart needed.

Q: My hosting provider won't let me open a custom port. What do I do?
A: Use external hosting. After running /generatepack, download resourcepack.zip via FTP and upload it to Google Drive, Dropbox, or mc-packs.net. Add the direct download link to server.properties and set auto-apply-on-join: false in config.yml.

Q: The resource pack shows red in the Minecraft resource pack menu. Is something wrong?
A: No. The red indicator is a cosmetic Minecraft quirk related to version compatibility detection, but the pack loads and functions correctly regardless. All audio will play normally.

Q: Can I use this plugin without CustomMusicDiscs?
A: No. CustomMusicDiscsPack reads audio files from the CustomMusicDiscs music folder and is designed exclusively to support it. Both plugins are required.

Q: Can Bedrock players connected via GeyserMC hear the custom music?
A: No. This is a known limitation of GeyserMC's handling of custom sound playback. Java Edition players will hear the music correctly.

Q: What audio format is supported?
A: Only .ogg (Ogg Vorbis) format is supported. This is the format Minecraft uses natively for all of its audio. Most audio conversion tools can export to .ogg format.

Q: How do I convert my music files to .ogg?
A: Free tools such as Audacity or online converters can convert MP3, WAV, FLAC, and other formats to .ogg. Ensure you have the legal right to use and convert the audio before doing so.

Support
If you encounter any issues, please leave a detailed description in the discussion thread including:

Disclaimer
The author of this plugin does not condone or support piracy in any form. All music and audio files added to your server using this plugin must be legally obtained and used in compliance with the rights holder's licensing terms. It is your responsibility as a server owner to ensure that any audio content you use has been properly licensed or is otherwise legally available for your intended use. The plugin author accepts no liability for any copyright infringement resulting from the misuse of this software.

CustomMusicDiscsPack v2.0.0 — Developed by MrManiTech

Commands

Plugin details

Read from the plugin's own plugin.yml.

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

CustomMusicDisksPack is a free Minecraft Java mod. Compatible with Minecraft 1.21. Downloaded 430 times (via Spigot). Download it and open it directly in the game.

Explore more