Inventory Sync - This plugin synchronizes the player inventory with a database


#21

Thank you for your reply.
I’ve been really struggling trying to find a good system for a multi-world server, something like Multiverse bukkit plugin that I used to use with MCPC+ and Cauldron.
As far as I can find, the only options are a Sponge plugin: Project Inventories, or a Forge mod: Mystcraft.

Maybe you could get in touch with Project Inventories creator and work together on a really solid system…? Currently it is very buggy and cannot be used on a production server due to inventory wipes, database corruptions, and other bugs (a very bad one reported here, but the author has been busy lately [which I can completely understand] and not around to respond). The sister plugins from that creator (Worlds and Portals) seem to be currently working for most users.

I’d really prefer not to use Mystcraft on my server, as it adds way too much that I do not want, when all I really want is to have multiple worlds with individual inventories and xp.

Anyway, just found your plugin on my search for something that works for my server needs. Looks like a really solid one. Thanks for making it!


#22

I am looking for a way to switch inventories based upon a players chosen race. I saw you had a planned feature for inventory swapping. Are there any updates on that?


#23

I haven’t been working on the plugin lately. When I get back to it I will add this stuff.


#24

Maybe I have the dumb but I’m not figuring out how to use this.

Goal, bungee cord and two servers on the same machine. (Old map nostalgia).
I’m not understanding how to make the thing keep inventory between worlds.

/server world1
/server world2
(examples of switcharoo)

Each one has a different inventory, and assuming the jar goes in plugins, I get no configs to tweak… (not loading? Doing it wrong?) even tried making an sql database (vps) after looking inside the archive, got nowhere.

Any advice? I wouldn’t mind.

Thanks, sir.


#25

Hi

To install this plugin you need to put the plugin jar in the mods or mods/plugins dir of your Sponge servers. Then the config dir will appear in the config dir.

I hope that helps.


#29

A new version has been released for Inventory Sync, it is available for download here.


Version 0.6.18

+ Added GradleCommon (helper project. Only used for compiling)
* Using new versioning System (due to GradleCommon)
* Using SpongeAPI 7.1.0 (instead of 7.1.0-SNAPSHOT)
* Using better config code.
* Fixed Connection Leaks (Fixes #17)
* Improved database performance.

Full Changelog

Version 0.6.17

* Fixed synchronizing crashing when unknow item is being synchronized (Fixes #18)

Version 0.6.14

* Prevented a very rare race condition

Version 0.6.9

+ Added bStats metrics
* Internal restructuring

Version 0.6.0

+ Added individual permissions to allow fine tuning (Closes #17)

Version 0.5.51

* Made plugin work with API version 5.x.x again
* Fixed console spam on error during synchronization (Fixes #16)
* Improved and made game mode synchronizing work again (Fixes #15)
* Improved debugging
* Synchronizing selected slot as well to make transition even smoother!

Version 0.5.42

+ Added URL to plugin info
* Improved event prevention (More events and they don’t get prevented if the module is disabled)
* Added warning when previous server took too long

Version 0.5.37

* Synchronizing experience is now using a different method (Fixes #4)
* No longer using deprecated class

Version 0.5.32

+ Added Manifest to jar
* Updated to API 7.0.0
* Removed Synchronizing Achievements because it’s working by default (Fixes #10 and #11)
* Synchronizing PotionEffects (Not working because of a bug in Sponge. See: #12)

Version 0.5.19-beta

+ Added hidden debug setting
* Now Synchronizing Achievements (Fixes #9)
* Not perfect as achievements get announced

Version 0.5.14

+ Added health to synchronization
+ Added hunger to synchronization
* Internal improvements

Version 0.5.10

* Files are now additionally signed with PGP (For real this time!)

Version 0.5.7

* Files are now additionally signed with PGP (Not working! See next release)

Version 0.5.4

+ Added config option for individual parts to synchronize

Version 0.5.0-beta

* Fixed #6: Serialize inventories to NBT
* Data in database is now way more portable
* Fixed #7: Only one instance of the plugin can work with a H2 database

Version 0.4.6-beta

* Fixed #5: Database connection sometimes times out and should be reconnected (Really this time)
* Internal improvements

Version 0.4.2-beta

* Fixed #5: Database connection sometimes times out and should be reconnected (Not really fixed)

Version 0.4.0-beta

* Gamemode and Experience are now synced too (experience is bugged atm)
* Waiting for other server to finish instead of waiting a fixed amount of time. Makes it more secure!

Version 0.3.18-beta

* Fixed #3: Special chars in the MySQL password do not work

Version 0.3.16-beta

* Fixed #2: When switching servers by bungeecord, the inventory gets loaded from the database before the new data is written
* No item pickup while waiting for synchronization
* Storing inventories to database when server stops
* Internal improvements

Version 0.3.8-beta

* Synchronizing from database now working
* Fixed reloading bug
* Fixed several bugs with statements

Version 0.3.0-alpha

+ Added config
+ Added reload functionality
* Fixed serialization for enchantments

Version 0.2.0-alpha

+ Added inventory serialization and deserialization (Not working 100%)
+ Added README
* Compressing serialized data to safe space
- Removed MySQL driver (sponge alerady has it implemented)

Version 0.1.0-alpha

+ Added MySQL driver
+ Added Lombok to project
+ Added basic functionality
+ Added MySQL connection handler/wrapper
* Fixed signing

Version 0.0.13-alpha

* Set up project
* First semi working plugin version!

Version 0.0.0-alpha

* Initial commit


#30

NBT tags…so would it work with Pixelmon entities?

Would it also work on just simple teleportation to a location on the same map?

Getting the player’s Pixelmon team (uses NBT tags to get stuff like name, stats, moves, etc) stores them to the database, replace their team with a placeholder Pixelmon entity (Pixelmon’s code does not allow them to be without a Pokemon once they acquire one) when they teleport to a certain area, give them a new team (I could write something that does this, so no worries there), but gives them their original team when they leave?


#31

This plugin only synchronizes the inventory (including the ender chest) and some other small things, but not NBT of the player.
Teleporting across the map is not the same as changing the server (over bungeecord for example). So this plugin will have no impact on that and there shouldn’t be any issues with that @ryan96t.


#32

A small note here too, is that Pixelmon doesn’t store the party and computer data to the playerdata.dat directly, it uses it’s own file storage method that happens to be NBT formatted.


#33

That’s not even remotely supported at this moment.

I’m currently working on Baubles support, so it might be possible to add support for other APIs too.


#34

A new version has been released for Inventory Sync, it is available for download here.


The migration of the old data has not been throughly tested. Backup your data before updating and please report any issues with migrating old data as soon as possible!

Version 0.6.19-DEV

+ Added Baubles support.
+ Implemented module system to allow mods to easily add support themselves.
+ Added automatic conversion from old format to new format.
* Fixed issue with players not properly saving on server shutdown (Fixes #32)

Full Changelog

Version 0.6.18

+ Added GradleCommon (helper project. Only used for compiling)
* Using new versioning System (due to GradleCommon)
* Using SpongeAPI 7.1.0 (instead of 7.1.0-SNAPSHOT)
* Using better config code.
* Fixed Connection Leaks (Fixes #28)
* Improved database performance.

Version 0.6.17

* Fixed synchronizing crashing when unknow item is being synchronized (Fixes #18)

Version 0.6.14

* Prevented a very rare race condition

Version 0.6.9

+ Added bStats metrics
* Internal restructuring

Version 0.6.0

+ Added individual permissions to allow fine tuning (Closes #17)

Version 0.5.51

* Made plugin work with API version 5.x.x again
* Fixed console spam on error during synchronization (Fixes #16)
* Improved and made game mode synchronizing work again (Fixes #15)
* Improved debugging
* Synchronizing selected slot as well to make transition even smoother!

Version 0.5.42

+ Added URL to plugin info
* Improved event prevention (More events and they don’t get prevented if the module is disabled)
* Added warning when previous server took too long

Version 0.5.37

* Synchronizing experience is now using a different method (Fixes #4)
* No longer using deprecated class

Version 0.5.32

+ Added Manifest to jar
* Updated to API 7.0.0
* Removed Synchronizing Achievements because it’s working by default (Fixes #10 and #11)
* Synchronizing PotionEffects (Not working because of a bug in Sponge. See: #12)

Version 0.5.19-beta

+ Added hidden debug setting
* Now Synchronizing Achievements (Fixes #9)
* Not perfect as achievements get announced

Version 0.5.14

+ Added health to synchronization
+ Added hunger to synchronization
* Internal improvements

Version 0.5.10

* Files are now additionally signed with PGP (For real this time!)

Version 0.5.7

* Files are now additionally signed with PGP (Not working! See next release)

Version 0.5.4

+ Added config option for individual parts to synchronize

Version 0.5.0-beta

* Fixed #6: Serialize inventories to NBT
* Data in database is now way more portable
* Fixed #7: Only one instance of the plugin can work with a H2 database

Version 0.4.6-beta

* Fixed #5: Database connection sometimes times out and should be reconnected (Really this time)
* Internal improvements

Version 0.4.2-beta

* Fixed #5: Database connection sometimes times out and should be reconnected (Not really fixed)

Version 0.4.0-beta

* Gamemode and Experience are now synced too (experience is bugged atm)
* Waiting for other server to finish instead of waiting a fixed amount of time. Makes it more secure!

Version 0.3.18-beta

* Fixed #3: Special chars in the MySQL password do not work

Version 0.3.16-beta

* Fixed #2: When switching servers by bungeecord, the inventory gets loaded from the database before the new data is written
* No item pickup while waiting for synchronization
* Storing inventories to database when server stops
* Internal improvements

Version 0.3.8-beta

* Synchronizing from database now working
* Fixed reloading bug
* Fixed several bugs with statements

Version 0.3.0-alpha

+ Added config
+ Added reload functionality
* Fixed serialization for enchantments

Version 0.2.0-alpha

+ Added inventory serialization and deserialization (Not working 100%)
+ Added README
* Compressing serialized data to safe space
- Removed MySQL driver (sponge alerady has it implemented)

Version 0.1.0-alpha

+ Added MySQL driver
+ Added Lombok to project
+ Added basic functionality
+ Added MySQL connection handler/wrapper
* Fixed signing

Version 0.0.13-alpha

* Set up project
* First semi working plugin version!

Version 0.0.0-alpha

* Initial commit


#35

A new version has been released for Inventory Sync, it is available for download here.


Version 0.6.19-DEV

+ Added Baubles support.
+ Implemented module system to allow mods to easily add support themselves.
+ Added automatic conversion from old format to new format.
* Fixed issue with players not properly saving on server shutdown (Fixes #32)

Changes since last beta:

+ Added debugging for modules. And general better debugging
* Fixed config names for modules.
* Fixed using wrong permissions.
* Loads of internal improvements.

Full Changelog

Version 0.6.18

+ Added GradleCommon (helper project. Only used for compiling)
* Using new versioning System (due to GradleCommon)
* Using SpongeAPI 7.1.0 (instead of 7.1.0-SNAPSHOT)
* Using better config code.
* Fixed Connection Leaks (Fixes #28)
* Improved database performance.

Version 0.6.17

* Fixed synchronizing crashing when unknow item is being synchronized (Fixes #18)

Version 0.6.14

* Prevented a very rare race condition

Version 0.6.9

+ Added bStats metrics
* Internal restructuring

Version 0.6.0

+ Added individual permissions to allow fine tuning (Closes #17)

Version 0.5.51

* Made plugin work with API version 5.x.x again
* Fixed console spam on error during synchronization (Fixes #16)
* Improved and made game mode synchronizing work again (Fixes #15)
* Improved debugging
* Synchronizing selected slot as well to make transition even smoother!

Version 0.5.42

+ Added URL to plugin info
* Improved event prevention (More events and they don’t get prevented if the module is disabled)
* Added warning when previous server took too long

Version 0.5.37

* Synchronizing experience is now using a different method (Fixes #4)
* No longer using deprecated class

Version 0.5.32

+ Added Manifest to jar
* Updated to API 7.0.0
* Removed Synchronizing Achievements because it’s working by default (Fixes #10 and #11)
* Synchronizing PotionEffects (Not working because of a bug in Sponge. See: #12)

Version 0.5.19-beta

+ Added hidden debug setting
* Now Synchronizing Achievements (Fixes #9)
* Not perfect as achievements get announced

Version 0.5.14

+ Added health to synchronization
+ Added hunger to synchronization
* Internal improvements

Version 0.5.10

* Files are now additionally signed with PGP (For real this time!)

Version 0.5.7

* Files are now additionally signed with PGP (Not working! See next release)

Version 0.5.4

+ Added config option for individual parts to synchronize

Version 0.5.0-beta

* Fixed #6: Serialize inventories to NBT
* Data in database is now way more portable
* Fixed #7: Only one instance of the plugin can work with a H2 database

Version 0.4.6-beta

* Fixed #5: Database connection sometimes times out and should be reconnected (Really this time)
* Internal improvements

Version 0.4.2-beta

* Fixed #5: Database connection sometimes times out and should be reconnected (Not really fixed)

Version 0.4.0-beta

* Gamemode and Experience are now synced too (experience is bugged atm)
* Waiting for other server to finish instead of waiting a fixed amount of time. Makes it more secure!

Version 0.3.18-beta

* Fixed #3: Special chars in the MySQL password do not work

Version 0.3.16-beta

* Fixed #2: When switching servers by bungeecord, the inventory gets loaded from the database before the new data is written
* No item pickup while waiting for synchronization
* Storing inventories to database when server stops
* Internal improvements

Version 0.3.8-beta

* Synchronizing from database now working
* Fixed reloading bug
* Fixed several bugs with statements

Version 0.3.0-alpha

+ Added config
+ Added reload functionality
* Fixed serialization for enchantments

Version 0.2.0-alpha

+ Added inventory serialization and deserialization (Not working 100%)
+ Added README
* Compressing serialized data to safe space
- Removed MySQL driver (sponge alerady has it implemented)

Version 0.1.0-alpha

+ Added MySQL driver
+ Added Lombok to project
+ Added basic functionality
+ Added MySQL connection handler/wrapper
* Fixed signing

Version 0.0.13-alpha

* Set up project
* First semi working plugin version!

Version 0.0.0-alpha

* Initial commit


#36

Can I move this plug-in to the MCBBS forum in China?

I will show the original author and the original page.
If you like, I will send you the link of the web page after the successful removal.

I will not provide other download addresses.