A modern, cross-server player data synchronisation system
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Go to file
William 9018ad02e1
settings: Fix wrong comment
1 year ago
.github Add workflow files, test reporting, maven publishing, docs, bump version 2 years ago
.scripts MPDBConverter over jitpack 2 years ago
bukkit Tweak database connection confirmation messages 1 year ago
common settings: Fix wrong comment 1 year ago
docs docs: Improve troubleshooting information for Redis/MySQL on Pterodactyl (#158) 1 year ago
gradle/wrapper gradle: Update to Gradle 8.0.2, bump shadow to 8.1.0 2 years ago
images Update README and banner 2 years ago
plugin Merge API module into bukkit for simplicity 2 years ago
.gitignore Refactor package to net.william278; update dependencies & stop shading internal modules 2 years ago
HEADER license: Relicense under Apache-2.0 1 year ago
LICENSE license: Relicense under Apache-2.0 1 year ago
README.md [ci skip] Update README footer 1 year ago
build.gradle v2.2.6: Crafting inventory safety, Maria v11 support (#153) 1 year ago
gradle.properties 2.2.8: Explicitly specify MariaDB Driver class name 1 year ago
gradlew gradle: Update to Gradle 8.0.2, bump shadow to 8.1.0 2 years ago
gradlew.bat gradle: Update to Gradle 8.0.2, bump shadow to 8.1.0 2 years ago
jitpack.yml MPDBConverter over jitpack 2 years ago
settings.gradle Merge API module into bukkit for simplicity 2 years ago

README.md

HuskSync
Spigot Setup Docs Issues


HuskSync is a modern, cross-server player data synchronisation system that enables the comprehensive synchronisation of your user's data across multiple proxied servers. It does this by making use of Redis and MySQL to optimally cache data while players change servers.

Features

Seamless synchronisation — Utilises optimised Redis caching when players change server to sync player data super quickly for a seamless experience.

Complete player synchronisation — Sync inventories, Ender Chests, health, hunger, effects, advancements, statistics, locked maps & more—no data left behind!

Backup, restore & rotate — Something gone wrong? Restore players back to a previous data state. Rotate and manage data snapshots in-game!

Import existing data — Import your MySQLPlayerDataBridge data—or from your existing world data! No server reset needed!

Works great with Plan — Stay in touch with your community through HuskSync analytics on your Plan web panel.

Extensible API & open-source — Need more? Extend the plugin with the Developer API. Or, submit a pull request through our code bounty system!

Ready? It's syncing time!

Setup

Requires a MySQL (v8.0+) database, a Redis (v5.0+) server and any number of Spigot-based 1.16.5+ Minecraft servers, running Java 16+.

  1. Place the plugin jar file in the /plugins/ directory of each Spigot server. You do not need to install HuskSync as a proxy plugin.
  2. Start, then stop every server to let HuskSync generate the config file.
  3. Navigate to the HuskSync config file on each server (~/plugins/HuskSync/config.yml) and fill in both the MySQL and Redis database credentials.
  4. Start every server again and synchronization will begin.

Development

To build HuskSync, simply run the following in the root of the repository:

./gradlew clean build

License

HuskSync is licensed under the Apache 2.0 license.

Contributions to the project are welcome—feel free to open a pull request with new features, improvements and/or fixes!

Support

Due to its complexity, official support for HuskSync is provided through a paid model. This means that support is only available to users who have purchased a license to the plugin from Spigot, Polymart, or Craftaro and have provided proof of purchase. Please join our Discord server if you have done so and need help!

Translations

Translations of the plugin locales are welcome to help make the plugin more accessible. Please submit a pull request with your translations as a .yml file.

  • Docs — Read the plugin documentation!
  • Spigot — View the Spigot resource page (Also: Polymart, Craftaro)
  • Issues — File a bug report or feature request
  • Discord — Get help, ask questions (Purchase required)
  • bStats — View plugin metrics

© William278, 2023. Licensed under the Apache-2.0 License.