
BS CustomJukebox
Fully-featured Paper 1.21.x, 26.x jukebox plugin with custom music discs, disc fragments, GUI support, and WorldGuard/GriefPrevention integration.
Оцените первым
1.3K
6
Список изменений
[3.4.0] - 2026-08-16
Added
/cjb skip— skips the track you are currently hearing. Resolves the source the same way the progress bar does: an ambient zone you are standing in takes precedence over a jukebox you are merely in range of. In asyncedzone the whole zone advances; in anindividualzone only your own cursor moves on. There is deliberately no "previous track": a resource-pack sound can only be started from its beginning, so going back would just be skipping forward through the rest of the playlist.- Progress bar — a boss bar showing the current track and how far into it you are, for jukeboxes, zones and radio alike. The elapsed time is the plugin's own bookkeeping (the server never learns the client's real playhead), which is exact for anyone present when the track started. Configurable via
playback.show-progress-barandplayback.progress-update-ticks. This finally uses the timing methodsJukeboxPlaybackhas carried unused since 1.x. - Shuffle and repeat modes for playlists:
/cjb playlist play <id> [shuffle] [loop|repeat-one|off], order-independent. Shuffling reshuffles on every lap (and avoids repeating a track across the wrap) so a looping playlist is not one fixed sequence forever. - Shuffle for ambient zones:
/cjb zone shuffle <id> <true|false>, plus a toggle in the zone editor GUI. - Server radio — a new zone type that reaches every player in every world:
/cjb zone global <id>. It reuses the whole zone machinery, so a radio station has the same playlist, loop, shuffle, playback mode and volume options, and a local zone with a higherprioritystill overrides it for players standing inside that zone. - Personal music settings (
/cjb music, permissioncustomjukebox.music, default true):on/off/toggleto opt out of plugin music entirely,volume <0-4|reset>for a personal volume, andstatusto see your settings plus what is currently playing. Both persist across sessions in a newplayers.json. A personal volume replaces the server volume rather than scaling it, so it stays predictable when an admin changes the global value; a server-wide/cjb mutestill wins. Turning music off silences the current track immediately rather than at its end. - Favourites (
/cjb favorite, permissioncustomjukebox.favorite, default true):add/remove/toggle/list/clear, andplay [shuffle] [loop|repeat-one] [global|world|<radius>]to play them as an ad-hoc playlist. Discs can also be favourited by shift-clicking them in the disc menu, which shows a ★ for entries already on the list.
Fixed
/cjb music onstayed silent until the next track. A jukebox/playlist listener set is only filled when a track starts, and turning music off removed the player from it - nothing put them back mid-track. Re-enabling now re-attaches immediately: zones re-evaluate in the same tick instead of at the next scan, and any playback within earshot starts for that player. The track necessarily restarts from its beginning for them (the sound engine cannot seek), which the plugin now says out loud instead of leaving it to be discovered./cjb skipreported "nothing playing" when something clearly was. It resolved the playback strictly by listener membership, so a player who had just re-enabled their music - or who walked up after the track started - was told there was nothing to skip. Skip now resolves by earshot, preferring what the player actually hears and falling back to what is playing in range.- Both were found within minutes of the first real in-game test, and both traced back to the same root: listener sets are only populated at track boundaries.
Changed
/cjb playlist playand/cjb favorite playaccept a playback range:[global|world|<radius>], the same vocabulary/cjb playalready used. The queue stored a range all along and passed it to every following track - only the command never exposed it, so playlists were locked tonormal. For permanently server-wide music a radio zone (/cjb zone global) remains the better tool; a global-range playlist is a one-off from your position.allis no longer a repeat-mode alias. It means "server-wide range" in/cjb play, and now that the play commands accept both kinds of flag it would have meant two different things depending on the command.loop,trueandyesstill select repeat-all.
Notes
- Volume changes — personal or server-wide — apply from the next track. A sound already handed to the client cannot be adjusted, only restarted.
players.jsononly stores players who actually changed something; entries that are all-default are dropped on save.
Файлы
CustomJukebox-3.4.0.jar(336.33 KiB)
ОсновнойМетаданные
Канал релиза
Release
Номер версии
3.4.0
Загрузчики
FoliaPaperPurpurSpigot
Версии игры
1.21.4–26.2
Загрузок
36
Дата публикации
20.08.2026
