HomeJavaModsEnderSync [1.8-1.13] | Sync playerData between servers | Inventory, Health, Xp ...
EnderSync [1.8-1.13] | Sync playerData between servers | Inventory, Health, Xp ...
ModsJava

EnderSync [1.8-1.13] | Sync playerData between servers | Inventory, Health, Xp ...

⬇ Download on Spigot
EnderSync [1.8-1.14 ]

IMPORTANT:

!! We are currently working on a stable 5.0.0 release with more features & better performance. Join our discord for updates. !!

If you have used the plugin before version 4.0.0 was released, you won't have the "BungeeBridge" file in your BungeeCord server! The plugin needs this so please follow the "Setup" section below.


Please feel free to write a review, if you like the plugin :)
Also THANK YOU for > 300 downloads!! ;)


The EnderSync plugin makes it super simple to share (player)data across multiple servers. It can sync a variety of data like player health, inventory, enderchest, money and much more (see below). As a developer you also have the ability to use it's simple API to sync custom data like stats, counters for premium / special features, custom "effects" ...

Why would you use it?
It can be super useful in many cases. Mainly CityBuild networks for example, there it could share players inventories between multiple CB servers so that players can build / farm anywhere. On Minigame / PvP networks it could be used to store player game statistics between servers.
Additionally, because it stores everything in a database, one could see & manipulate players inventories, money ... without the player being online on any server.

Spoiler: What can it share?
  • Player Inventory
  • Player Armor
  • Player Enderchest
  • Player health
  • Player Food
  • Player Air
  • Player Location
  • Player GameMode
  • Player PotionEffects
  • Player Flight
  • Player Money (Vault)
  • Player LastSeen timestamp
  • World chat across servers (Global Chat) [Soon]
  • Share chat with Discord, IRC, Teamspeak etc. [Soon]
  • ANY custom data though the API

More languages?
Current languages:
EN, DE, FR (Thanks to Nosios) , CN, BR

Sadly, I am only fluent in German and English. Therefore I can only provide the English & German language files for the plugin. If you want to or have already translated the plugin's messages, please contact me, so that I can publish the language file :)

How does it work?
Whenever a player joins the server, it synchronizes the players data with the data from the database (health, food, inventories ...). When a player leaves the server, it saves the current player data into the database so that it is up to date. (There is also an autoSave feature, which will save the playerData regularly so that it is "live" inside of the database)

For servers on different versions: Try to keep the servers you want to sync on the same version! If not, this can lead to synchronization issues.
NOTE: 1.13 does not rly work with any other version, because they changed internal things. (Syncing 1.13 servers with others might lead to item loss and other issues!)


Isn't this the same plugin as MySQL Player Data Bridge?
Well.. kinda. But it has some major advantages.
First of all, it's 100% free :)
Also it has the ability to sync custom (player)data which the other one does not have.
I also added some other nice features.

Spoiler: Videos / Gifs
Automatic sync when joining the server.
[​IMG]

Inventory sync.
https://imgur.com/a/emM7exg
Spoiler: Tutorials
Video Tutorials:

Coming soon! If you want to make a video about the plugin, please feel free to do so :) If you need any info / help just ask me on my discord.

Text Tutorials:

Setting up EnderSync on a root / vServer:

Todo: add

Setting up EnderSync on a hosting provider:
Please make sure, that you have access to a mysql database. When using a hosting provider, you probably won't have the option to create a new custom named database. If not, just use the database (name) which the hoster gives you.

Todo: add
Spoiler: What do these errors mean?
Could not connect to the MySQL Database! Please make sure the credentials & database name are correct!

This error occurs whenever the database connection can't be established. The following line can tell you more about the specific issue:
  • Access denied for user ... (Wrong username / password / database name)
Spoiler: Known issues
  • None (currently)

INFO: I am releasing lots of updates quite quickly, which fix various errors, so please be sure that you are using the latest version before reporting bugs :) (You can also leave auto updates enabled to stay up to date)

Please write a review if you like this plugin and share any suggestions with me. (Please use my discord for issues / errors)

I am also currently adding all the functionality which MySQL Player Data Bridge has.

Need help? Click here!



Features
Dependencies
Setup
Note: You need to install the bukkit plugin on all servers you want to keep data in sync, and configure them to use the same database. Additionally, you need to put the "BungeeBridge" file into your BungeeCord plugin folder (Otherwise the plugin won't work!).


Configuration
Note: The "{success}" is a placeholder which will get replaced with an ✔ / ... / ✘ , depending on the status of the action. If you don't want it, just remove it.
Spoiler: Main Config
Code (YAML):

meta
:
  file-version
: 1
plugin
:
  # Whether to display debug information
  debug
: false
  # The version of the plugin & config.
  version
: '$ {project.version }'
  # The language file to use.
  # Languages included (state v4.0.0): en, de, fr
  lang
: "en"
  # The prefix the plugin uses.
  # This string replaces the "{prefix}" placeholder.
  # If you don't want to use it remove the "{prefix}" placeholder from the messages below.
  # The "{success}" placeholder can be left out as well. It will get replaced with an informative icon.
  chatPrefix
: '§l§7» §l§3Ender§l§fSync {success }§l§7*'


# The database configuration.
database
:
  host
: 127.0.0.1
  port
: 3306
  user
: 'enderSyncUser'
  password
: 'totallySecurePassword'

  # The database name. !! You need to create the database manually !!
  databaseName
: 'endersync'
 
Spoiler: Features
Code (YAML):

meta
:
  file-version
: 1

# Describes / Configures all features.
features
:

  # When enabled, kicks the player if the sync fails for whatever reason.
  kickOnFailedSync
:
    enabled
: false
  sounds
:
    enabled
: true

  # Clean / Delete inactive users after a specific amount of time.
  cleanupInactive
:
    # Whether to run the cleanup task (runs every 10 minutes).
    enabled
: false
    # The time in days for an account to be deleted.
    deleteAccountAfterXDays
: 60

  # The auto save feature will save the data in a specific interval.
  # "interval" is in minutes.
  # TODO: Remove entirely? => Impelment plugin channel through bungeecord or sth
  autoSaveData
:
    enabled
: true
    interval
: 2

  # When enabled cleans the player files of all worlds when the server is shutting down.
  # ! PLEASE TEST IT ON A TEST SERVER !
  # ! Only tested under Linux & Some plugins need these data files! If you encounter any errors try disabling this !
  cleanupUnnecessaryFiles
:
    enabled
: false

  # All sync functionality (on join or with /sync)
  sync
:
    inventory
:
      enabled
: true

      # When enabled, sync the players inventory even when he is in creative mode.
      # Can be disabled to stop mixing of survival & creative inventories.
      syncWhenInCreative
: true
    enderchest
:
      enabled
: true
    armor
:
      enabled
: true
    gameMode
:
      enabled
: true
    experience
:
      enabled
: true
    potionEffects
:
      enabled
: true
    health
:
      enabled
: true
    food
:
      enabled
: true
    air
:
      enabled
: true

    # Location sync can be enabled to mirror servers.
    # !! Note that, if you want the player to be teleported into the
    # correct world, set "world" to true and make sure all the worlds have the
    # same name !!
    # ! For bedSpawn sync to work, the worlds also need to have the same name !
    location
:
      enabled
: false
      world
: false
      bedSpawn
: false
    flight
:
      enabled
: true
    vault
:
      enabled
: true
    lastSeen
:
      enabled
: true

  # All save functionality (on quit or with /save)
  save
:
    inventory
:
      enabled
: true

      # When enabled, saves the players inventory even when he is in creative mode.
      # Can be disabled to stop items from creative being shared between servers by a player.
      saveWhenInCreative
: true
    enderchest
:
      enabled
: true
    armor
:
      enabled
: true
    gameMode
:
      enabled
: true
    experience
:
      enabled
: true
    potionEffects
:
      enabled
: true
    health
:
      enabled
: true
    food
:
      enabled
: true
    air
:
      enabled
: true

    # Location save can be enabled to mirror servers.
    # !! Note that, if you want the player to be teleported into the
    # correct world, set "world" to true and make sure all the worlds have the
    # same name !!
    # ! For bedSpawn save to work, the worlds also need to have the same name !
    location
:
      enabled
: false
      world
: false
      bedSpawn
: false
    flight
:
      enabled
: true
    vault
:
      enabled
: true
    lastSeen
:
      enabled
: true
 


Commands & Permissions

Note: You can use /endersync or /es, these will do the same.
/endersync or /es Display basic information.
/es help Display help information.
/es reload Reloads the config file.
/es delete <name> Deletes a player's data from the database.
/es saveAndKick Saves all players data and kicks everyone.

/es inv <name> Lets you view & manipulate a players inv's (even when they are offline).
/es end <name> Lets you view & manipulate a players enderchest (even when they are offline).
/es ecoBal <name> Lets you view a players money (Needs vault).
/es ecoSet <name> Lets you set a players money (Needs vault).


/sync [name] Manually syncs you or another player. (!Players should not be able to use this command!)
/save [name] Manually saves you or another player.


--

endersync.* Grant access to all commands.
endersync.admin.reload Allows to use the /es reload command.

endersync.admin.delete Allows to use the /es delete command.
endersync.admin.saveAndKick Allows to use the /es saveAndKick command.
endersync.admin.inv Allows to use the /es inv command.
endersync.admin.end Allows to use the /es end command.
endersync.admin.ecoBal Allows to use the /es ecoBal command.
endersync.[B]admin.[/B]ecoSet Allows to use the /es ecoSet command.
endersync.admin.sync.self Allow to use /sync for yourself.
endersync.admin.sync.other Allow to use /sync for others players.
endersync.admin.save.self Allow to use /save for yourself.
endersync.admin.save.other Allow to use /save for others players.



API

Start:
(Click Here)
API Documentation: (Click Here)
Tutorials & Examples: (Click Here)

The docs still need some tweaking. If you want to publish a tutorial / example, please PM me :)


Future Features / Todo
Additional Info

Please consider writing a review about this plugin.
If you have any issues or suggestions, please send them to me on my Discord / or open an Issue here.
Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

EnderSync [1.8-1.13] | Sync playerData between servers | Inventory, Health, Xp ... is a free Minecraft Java mod. Compatible with Minecraft 1.8, 1.9, 1.10, 1.11 and newer. Downloaded 4,363 times (via Spigot). Download it and open it directly in the game.

Explore more