Compatibility
Minecraft: Java Edition
Platforms
Tags
Creators
Details
peyajCustomDisc
Custom music disc plugin for Paper servers. Upload any audio file, get a playable disc.
Are you a filipino and want to host your Minecraft server in the Philippines? Visit https://mcziehost.fun

Features
- Web Dashboard — Upload and manage discs from a browser
- Auto Conversion — Accepts MP3, WAV, FLAC, M4A, MP4, WMA, AAC, WebM → OGG
- Resource Pack Generation — Java & Bedrock packs built automatically
- Jukebox Integration — Full hologram display with Now Playing info
- Loop Mode — Shift-Right-Click any jukebox to toggle looping
- Region Music — Assign discs to WorldGuard regions (auto-loops)
- In-Game Catalog — Browse and collect discs via GUI
- Geyser Support — Bedrock players hear the custom disc with holograms
Requirements
| Dependency | Version |
|---|---|
| Paper | 1.21.X - 26.2 (latest) |
| Java | 21+ |
| FFmpeg | Required for non-OGG uploads (already bundled in the plugin) |
| WorldGuard | Optional — enables region music |
| Geyser-Spigot | Optional — Bedrock hologram & custom disc support |
Commands
| Command | Description |
|---|---|
/disc add <id> <url> <name> <author> [style] |
Download, convert, and add a custom disc (use underscores for spaces) |
/disc delete <id> |
Delete a custom disc (removes registry & deletes files) |
/disc give <player> <id> |
Give a custom disc |
/disc list |
List all discs |
/disc play <id> |
Play a disc (portable) |
/disc stop |
Stop all disc music |
/disc catalog |
Open the disc catalog GUI |
/disc region set <region> <disc> |
Assign music to a WorldGuard region |
/disc region remove <region> |
Remove region music |
/disc region list |
List region mappings |
/disc web |
Generate a one-time admin login link |
Adding Discs
The recommended way to add discs is through the Web Dashboard (/disc web). It lets you upload audio files, design a custom disc texture, and preview everything before saving. Supported upload formats: MP3, WAV, FLAC, M4A, MP4, WMA, AAC, WebM. The plugin converts them to OGG automatically.
You can also add discs directly in-game if you have a direct download link to the audio file:
/disc add rushe https://mywebsite.com/audio/rushe.mp3 Rush_E Sheet_Music_Boss relic
Use underscores (_) for spaces in the track name and author. The last argument is the disc style texture (optional).
Permissions
| Permission | Description |
|---|---|
pjcustomdisc.admin |
Access to all commands |
jukeboxweb.admin |
Access to web dashboard & give command |
Configuration
[!IMPORTANT] Setup the configuration FIRST before creating or adding custom discs!
- Configure
web-portto an open/allocated port on your server host (this is the internal port the web server binds to).- Configure
public-urlto point to your server's public IP/Domain and port. The plugin uses this URL to compile the resource pack download URL sent to players. If you add songs before setting this up, players will be sent resource pack downloads pointing tolocalhost, which will fail.
[!WARNING] Do NOT use your Minecraft server port (default
25565) forweb-port! The web interface and download server run as a separate service on your host. You must assign/allocate a completely separate port forweb-port(e.g.8080,25566, etc.). Using the Minecraft port will cause aBindException(Address already in use) and the plugin will fail to enable.
[!WARNING] Geyser Users & Bedrock Textures If you have
auto-reload-geyser: true, the plugin will run/geyser reloadevery time you add/delete a disc. However, Geyser has a limitation where it cannot hot-reload new resource pack textures while the server is running. If you create a brand new disc, Bedrock players might see it as "Paper" until you do a full server/restart. (If you are just replacing audio for an existing disc, a restart is not required).
# config.yml
web-port: 8080
public-url: "http://your-server-ip:8080"
haproxy-support: false
# Region music (managed via commands)
region-music:
spawn: "my_disc_id"
# Jukebox settings
jukebox:
volume: 1.0
pitch: 1.0
sound-category: "RECORDS"
range: 64.0
enable-particles: true


