Marktplatz / Minecraft Plugins / PlayerDataSync
PlayerDataSync keeps player data synchronized across every server in your Minecraft network.
Whether players move between Survival, Lobby, Creative, SkyBlock, Minigames or anything else, their progress follows them automatically.
No manual file transfers. No duplicated inventories. No lost progress.
Player data lives in one shared database. With Redis enabled, changes propagate between servers the moment they happen — your network behaves like a single world.
Every entry is an individual toggle, so you decide exactly what travels with your players.
| Category | Included |
|---|---|
| Items | Inventory, Ender Chest, selected hotbar slot |
| Progression | Experience, levels, advancements, statistics |
| Vitals | Health, absorption, hunger, saturation, exhaustion, air, fire ticks, freeze ticks, arrows in body |
| State | Game mode, flight, walk & fly speed, fall distance, player time, player weather |
| Advanced | Attributes, Persistent Data Container, Vault economy balance |
| Optional | Location (disabled by default — see below) |
Location sync teleports players to their stored position on join. It ships disabled (sync.location: false), because it only makes sense when the destination server has a world of the same name. If that world is missing, the restore is skipped with a log warning instead of dropping the player somewhere wrong.
Running player data across multiple servers without proper synchronization leads to:
PlayerDataSync removes those failure modes by synchronizing automatically whenever data changes.
| Component | Supported |
|---|---|
| Minecraft | 1.20 – 26.2 |
| Server software | Paper, Spigot, Fabric, Velocity (proxy bridge) |
| Java | 21+ — Minecraft 26.x servers require Java 25 |
| Database | MySQL, MariaDB, PostgreSQL, MongoDB |
The download is the Paper/Spigot plugin. The Fabric and Velocity builds are bundled inside it under bundled/ — extract whichever you need.
Please note:
Full documentation: 👉 https://pds.devvoxel.de/config
plugins/PlayerDataSyncReloaded/config.ymlconfig/playerdatasync.properties, created on first startstorage:
type: "mariadb" # mysql, mariadb, postgres, mongodb
host: "localhost"
port: 3306
database: "minecraft"
username: "root"
password: ""
redis:
enabled: true # strongly recommended for multi-server setups
host: "localhost"
port: 6379
sync:
inventory: true
ender_chest: true
economy: true # requires Vault + an economy plugin
location: false # teleports players on joinEveryday operation is fully automatic — players never touch a command. For administrators, everything lives under /playerdatasync (aliases /pds, /pdasync) behind the playerdatasync.admin permission.
| Command | Description |
|---|---|
/pds status | Sync statistics, error counters, excluded worlds |
/pds save <player> | Force-save a player |
/pds saveall | Force-save everyone online |
/pds load <player> | Reload a player from storage |
/pds list | List stored profiles |
/pds backup | Create a backup |
/pds export / /pds import | Move profiles in and out |
/pds migrate | Migrate between storage backends |
/pds toggle | Toggle syncing at runtime |
| `/pds debug on\ | off` |
/pds reload | Reload the configuration |
Suitable for small communities and large networks alike.
Developed with ❤️ by DerGamer09
If PlayerDataSync helps your network, consider leaving a review on SpigotMC, Modrinth, Hangar or BuiltByBit. Your feedback shapes what gets built next.