[26.5-Release] - 2026-04-27
Added
- API Extensibility: Added
map toCode:extraDatafor third-party plugin data synchronization.Code:PlayerData- Save Cancellation:
now implementsCode:PlayerDataSaveEvent, allowing plugins to prevent data from being saved under specific conditions.Code:Cancellable- Granular Sync Controls: Added new configuration options to disable syncing for Potion Effects, Food, GameMode, Advancements, and Statistics.
- Improved Version Detection: Better handling for Minecraft 1.21.1 and future sub-versions.
Changed
- Banner Update: Refreshed the startup banner with new colors and "Expansion Update" subtitle.
- Performance: Minor internal optimizations for event handling.
Fixed
- Potential edge case where data might save during an invalid state.
PlayerDataSync-26.3.4-SNAPSHOT - 2026-03-11
Fixed & Improved
- Legacy Minecraft Support (1.8-1.16): Resolved multiple critical issues for older server versions.
- Java 8 Compatibility: Fixed
NoSuchMethodError: String.isBlank()by replacing it with Java 8 compatible alternatives inMessageManager.
- FastStats Isolation: Isolated Java 17-dependent metrics library to prevent
UnsupportedClassVersionErroron Java 8 environments.
- JDBC Driver Fixes:
- Implemented explicit driver registration to solve "No suitable driver found" errors in shaded environments (PaperSpigot 1.8.8).
- Fixed
AbstractMethodError: Connection.isValid()by adding safety wrappers for legacy JDBC drivers (SQLite).- Configuration Robustness:
- Fixed an issue where
config.ymlwas being stripped of content and comments on older Bukkit versions by reducing unnecessary saves.- Implemented explicit UTF-8 loading for configuration files to prevent character encoding issues on Windows servers.
- Enhanced configuration migration and initialization to correctly merge defaults without overwriting existing user settings.
- Stability and Performance:
- Fixed a race condition where default configurations were not being saved to disk before being reloaded during the first startup.
- Consolidated maintenance mode and version checking logs for better readability.
[PlayerDataSync-26.3.3-SNAPSHOT] - 2026-03-10
New Features
- Maintenance Mode: Pause all data syncing with
. Useful for database migrations or emergency fixes.Code:/sync maintenance <on|off>- Management GUI: Use
for a visual way to toggle sync options and manage the plugin.Code:/sync menu- Performance Profiler: Use
to track average and maximum save/load times for better performance monitoring.Code:/sync profile
Fixed
- Java Compatibility: Downgraded default Java target to Java 8 to ensure full compatibility with Minecraft 1.8.8 through 1.16.5 (Purpur) and resolved "Unsupported class file major version 65" errors.
- Build Configuration: Removed conflicting
profile to prevent accidental Java 21 builds.Code:activeByDefault
Update Checker
- Hardcoded API Key: Added a hardcoded API key (
) for streamlined server-to-API authentication.Code:CSP-PDS-...- Improved Caching: Implemented a 1-hour cache for update metadata to reduce unnecessary API requests.
- Manual Check Command: Added
command to manually trigger an update check (bypasses cache).Code:/sync checkupdate- Silent Reloading: Added simplified version check handling that can be called asynchronously without blocking the main thread.
Update Checker
- API Migration: Fully migrated to CraftingStudio Pro API v1 using modern
.Code:HttpClient- API Key Support: Added hardcoded API key support directly in
for streamlined authentication.Code:UpdateChecker.java- Improved Reliability: Replaced legacy
with asynchronous requests and better error handling.Code:HttpURLConnection- Enhanced URLs: Updated download and plugin info links to the new category-based structure.
[PlayerDataSync-26.2-RELEASE] — 2026-02-20
🛠 XP Sync Fixes
- Fixed an edge-case where spent XP (e.g., after enchanting) could be restored on relog due to stale total XP capture.
- Added immediate autosave hooks for XP/level changes and enchanting to persist XP updates right away.
- Added new config toggle autosave.on_xp_change (default: true) for instant XP persistence.
🗃 Database & Compatibility
- Kept automatic schema update behavior on startup and runtime upgrade attempts for safe database migrations.
- Prepared compatibility messaging/docs for upcoming 26.1/26.2 cycle.
1.3.0-RELEASE - 2026-02-13
Reworked Update Checker
- Complete rewrite of version check flow with robust semantic comparison for tags like "-RELEASE"/"-BETA"
- Uses configurable request timeout (update_checker.timeout) for reliable network behavior
- Smarter latest-version detection avoids false positive update notifications
XP Synchronization Improvements
- Optimized XP apply flow with bounded correction attempts for more stable cross-version results
- Improved mismatch handling to prevent repeated over/under-correction on join/load
- More precise debug and warning logs for diagnosing XP sync edge-cases
Economy Sync Optimization
- Optimized balance transfer with normalized precision for smooth and reliable Vault synchronization
- Added post-transfer verification and auto re-adjustment attempts to reduce desyncs
- Improved fallback logic when provider-specific setBalance implementations are inconsistent
