Tags
Creators
Details
Licensed ARR
Published 7 months ago
Updated 2 months ago
All versions
26.5.5.1-ALPHA
Alpha
PlayerDataSync 26.5.5.1-ALPHA2 months ago 464
Uploaded by
Compatibility
Minecraft: Java Edition
26.2
26.1.x
1.21.x
1.20.x
Platforms
Bukkit
Fabric
Folia
Forge
Paper
Purpur
Spigot
Velocity
Supported environments
Dedicated servers only
Changes
[26.5.5.1-ALPHA] - 2026-05-20
Added
- Fabric:
fabric-api(0.92.2+1.20.1) so lifecycle and server-play networking APIs resolve at compile time;fabric.mod.jsondeclares afabric-apidependency. - Velocity: Gradle task
generatePluginBuildInfoemitsPluginBuildInfo.VERSIONso the@Pluginversion always matches the Gradle project version. - Modrinth / Fabric: Guide
pds-docs/modrinth-upload.md(Paper vs Fabric JAR); Gradle taskcheckFabricModMetadataassertsfabric.mod.jsonexists in the remapped Fabric JAR; Fabric archive base nameplayerdatasync-fabricso it is not confused with the Paper plugin artifact. - Unified distribution JAR: The Paper
PlayerDataSyncReloaded-*.jar(also copied tobuild/libs/) embedsbundled/playerdatasync-velocity.jar,bundled/playerdatasync-fabric.jar, andbundled/playerdatasync-forge.jarplusbundled/README.txt— one download; extract sibling JARs for Velocity/Fabric/Forge (classes are not merged to avoid mapping clashes).
Changed
- Gradle / bytecode targets:
apiandcommonuse Java 17 (Fabric/Forge);pluginand Velocity use Java 21 so Paper 1.21.x can remap the shaded plugin (ASM does not accept class file 69). Nested:versions:*modules are set to 21 inversions/build.gradle.kts(they are not rootsubprojects, so they previously picked up the toolchain default and emitted 69). - Velocity:
velocity-apiupdated to 3.5.0-SNAPSHOT; Velocity→backend plugin messages use UTF-8 (StandardCharsets.UTF_8);ServerConnectedEventlog line usesevent.getServer().getServerInfo()(Velocity 3 API). - Shadow plugin: Replaced
com.github.johnrengelman.shadow8.1.1 withcom.gradleup.shadow8.3.10 soshadowJarcan process modern class files when relocating (e.g. bundled jars). - Forge:
META-INF/mods.tomlversion is expanded from Gradle (mod_version); Forgebuild.gradle.ktsno longer overrides rootversion/group. - Fabric:
build.gradle.ktsno longer overrides rootversion/group(single version fromgradle.properties). - Gradle runtime: Configuration cache disabled in
gradle.properties(ForgeGradle, Fabric Loom, and Shadow-related flows are not reliable with CC enabled); parallel and build caching remain enabled. - CI: Workflow runs
./gradlew :plugin:buildand uploads the unifiedbuild/libs/PlayerDataSyncReloaded-*.jar(includesbundled/platform JARs).
Fixed
- Bukkit version handlers:
v1_20_R1andv26_1_R1VersionHandlerImplnow extendBukkitBaseVersionHandlerand implementcapture/applywithPDSPlayer(restores compatibility after removal ofBaseVersionHandler). - Fabric
PlayerDataSyncFabric:ServerPlayNetworkingglobal receiver is registered inSERVER_STARTINGafter storage/SyncManagersetup; SLF4J error logging for storage init; guards whensyncManageris not ready yet. - Forge
PlayerDataSyncForge: storage init failures use Log4j instead ofprintStackTrace; packet and login handlers guardsyncManager == null. - Multi-platform build: Resolved Gradle dependency variant mismatches (Fabric vs
api/commonJVM level).v26_1_R1:compileClasspathrequests JVM 25 so Paper 26paper-apiresolves while sources still compile with--release 21.
Notes
- One JAR download:
build/libs/PlayerDataSyncReloaded-*.jarcontains Paper +bundled/Velocity/Fabric/Forge JARs; Modrinth still needs the extracted platform files per loader (seepds-docs/modrinth-upload.md). - Modrinth: Use
bundled/playerdatasync-fabric.jar(extracted from the distribution JAR) for the Fabric loader file — not the outer archive root (that is the Paper plugin withplugin.ymlonly). - Paper 1.21.x: The main plugin classes are built as Java 21 bytecode so the server’s PluginRemapper can read them. Run the server on Java 21+ as required by Paper 1.21. Deploy the JAR whose name matches
gradle.propertiesversion(e.g.PlayerDataSyncReloaded-26.5.5.1-ALPHA.jar); delete any older file such asPlayerDataSyncReloaded-26.5.5-SNAPSHOT.jarfromplugins/so Paper does not remap a stale build. The shaded jar excludesMETA-INF/versions/**so multi-release dependency layers (class file 69) are not shipped to the remapper.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:xIV08o16:zGxoScq9"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:xIV08o16:zGxoScq9"
}

