File Details
CustomJukebox-2.0.0.jar
- R
- Jan 6, 2026
- 202.83 KB
- 57
- 1.21.11+11
File Name
CustomJukebox-2.0.0.jar
Supported Versions
- 1.21.11
- 1.21.10
- 1.21.9
- 1.21.8
- 1.21.7
- 1.21.6
- 1.21.5
- 1.21.4
- 1.21.3
- 1.21.2
- 1.21.1
- 1.21
[2.0.0] - 2026-01-06
Added
- Folia Support: Full compatibility with Folia (region-threaded) servers
- Added
folia-supported: trueflag in plugin.yml - New
SchedulerUtilclass for cross-platform scheduler abstraction - Automatic detection of Folia vs Paper/Spigot at runtime
- Uses reflection to call Folia API without compile-time dependency
- Region scheduler for location-based tasks
- Entity scheduler for player/entity-specific tasks
- Async scheduler for background operations
- All 26 scheduler calls migrated to use SchedulerUtil
- Added
Fixed
Folia Scheduler Bug: Fixed UnsupportedOperationException when running on Folia servers
- Corrected all reflection API calls to use proper Folia methods
runLater()now usesBukkit.getRegionScheduler().runDelayed()run()now usesBukkit.getRegionScheduler().run()runAsync()now usesBukkit.getAsyncScheduler().runNow()runAsyncLater()now usesBukkit.getAsyncScheduler().runDelayed()
Sound Key Validation: Removed strict validation that rejected valid sound keys
- Now accepts both
namespace:keyformat (e.g.,customjukebox:epic_journey) - AND legacy
music_disc.nameformat (e.g.,music_disc.traeumer) - Validation errors for 18 discs resolved
- Now accepts both
ConfigManager NullPointerException: Fixed initialization crash
- Removed
isDebug()check increateBackup()method during initialization - Plugin now starts without errors
- Removed
PlaybackManager NullPointerException: Fixed task storage crash on Folia
- Added null checks before storing tasks in ConcurrentHashMap
- Folia tasks return null (expected behavior) - now handled gracefully
- Fixed in both
scheduleAutoStop()andscheduleLoopTask()methods
Technical
- New
SchedulerUtilclass with Folia detection viaio.papermc.paper.threadedregions.RegionizedServer - Uses Java reflection to avoid compile-time Folia dependency
- Fallback to Paper scheduler if reflection fails
- All scheduler methods return nullable
BukkitTask(null on Folia) - Enhanced error logging for scheduler failures
- Full backwards compatibility with Paper/Spigot servers
Migration Notes
- Plugin now works on both Folia AND Paper/Spigot servers
- No configuration changes required
- Automatic server type detection
- Zero performance impact on Paper/Spigot servers

