BS CustomJukebox

Fully-featured Paper 1.21+ jukebox plugin with custom music discs, disc fragments, GUI support, and WorldGuard/GriefPrevention integration.

458

BS CustomJukebox

CustomJukebox

CustomJukebox is a fully-featured Minecraft Paper plugin for 1.21+ that adds advanced jukebox functionality, fully implemented in Java. It lets you create and manage custom music discs, fragments, and a jukebox GUI without replacing any vanilla discs.

---

✨ Features

🎵 Custom Music Discs

- Create JSON-based configuration without overriding vanilla discs - Use JSON-based configuration via resource packs (`.ogg` format) - Fully JSON-based configuration: title, author, lore, CustomModelData - JSON-based configuration: discs automatically stop after their configured play time - JSON-based configuration via `disc.json` for easy management

🧩 Fragment System

- Shapeless crafting: collect fragments to craft complete discs - Shapeless crafting: - Skeleton kills Creeper → fragment drop - Player kills Creeper → configurable chance (e.g. 5%) - Shapeless crafting: - Fragments can appear in dungeons, bastions, end cities, and more - Shapeless crafting: - 9 fragments = 1 complete disc (fully configurable)

🎨 GUI & Interaction

- Simple interaction: - Right-click an empty jukebox to open a disc selection GUI (if enabled) - Simple interaction: - `/cjb gui` for admin access to all discs - Simple interaction: - Hold a disc in your hand and right-click a jukebox to start playback

🦜 Parrot Dance System

- Parrots Configurable radius with custom music - Configurable radius (default: 3 blocks)

🌍 Plugin Integrations

- GriefPrevention: - Region-based jukebox usage depending on `USE` flag - GriefPrevention: - Claim-based jukebox permissions (requires container trust) - Full, working integrations – not just placeholders

---

📦 Requirements

- Optional Plugins: Paper 1.21+ (or compatible Paper/Spigot fork) - Optional Plugins: 21+ - Optional Plugins: - [WorldGuard] – region-based jukebox permissions - [GriefPrevention] – claim-based jukebox permissions

---

🚀 Installation

1. Download the latest `CustomJukebox-x.x.x.jar`. 2. Place the JAR into your server’s `plugins/` folder. 3. Start the server. The plugin will generate: - `config.json` - `disc.json` - `languages/` folder 4. Configure `config.json` and `disc.json` to fit your needs. 5. Set up and host your resource pack (see below). 6. Run `/cjb reload` or restart the server to apply changes.

---

⚙️ Configuration

All main settings are handled in `config.json`. Example:

```json { "settings": { "enabled": true, "language": "en", "enable-gui": true, "debug": false }, "discs": { "creeper-drops": true, "creeper-drop-chance": 0.05, "dungeon-loot": true, "trail-ruins-loot": true, "max-loot-discs": 2, "loot-chance": 0.15, "enable-crafting": true, "fragments-per-disc": 9 }, "parrots": { "enable-dancing": true, "dance-radius": 3 }, "integrations": { "worldguard": true, "griefprevention": true } }

ADS