InventorySQL
![]() ![]() |
|
|---|
I n v e n t o r y S Q L
I n v e n t o r y S Q L
Player inventory saved into a Database
Features
Copy users' inventory in a configurable database, allowing it to be displayed on a website and use it for Server-to-Server Inventories
InventorySQL is designed to be as customizable as possible and Server Owners and Developers can choose how they'd like to save their data. Future versions will feature an automatic conversion tool.
Disclaimer
Metrics
This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's version
- The OS version/name and architecture
- The core count for the CPU
- The number of players online
- The Metrics version Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true or turning enable-metrics to false in InventorySQLs Configuration.
Autoupdater
This Plugin uses Updater. It will automatically search for Updates. If you'd like to disable this feature you can turn it off in the Configuration by setting auto-update to false.
For Serverowners
- Addons
- Installation
- Configuration
- Localisation
- Frequently Asked Questions (FAQ)
- For Developers (API)
- Special Thanks
Permissions
InventorySQL.*: description: legacy-styled Permission for anything children: InventorySQL.reload: true InventorySQL.save.*: true InventorySQL.reload: description: Allows you to reload Language or Configuration default: op InventorySQL.save.*: description: legacy-styled Permission for anything related to saving children: InventorySQL.save.other: true InventorySQL.save.self: true InventorySQL.save.other: description: Allows you to save other players default: op InventorySQL.save.self: description: Allows you to save yourself default: true
InventorySQL.switch.self -> switching for yourself (No default yet) InventorySQL.switch.other -> switching for others (No default yet)
Commands
<Optional> [Required]
- /invSQL reload config : reloads config
- /invSQL reload language : reloads language file
- /invSQL save <player> : saves yourself or the given player
- /switch [server] <player> : moves yourself or the given player to the given Server
Links
License
Version 3.0 is now under the zlib/libpng License, Versions before 3.0 are still licensed under Apache License 2.0
Contact
You can find me in IRC: #invsql on irc.esper.net Please do not ask me for any Messenger just because you would like to be in my list.
If you like InventorySQL, please consider donating to the project via paypal, using the link on the top-right of the BukkitDev page :)



-
View User Profile
-
Send Message
Posted Nov 6, 2013@manfie
"/switch" does not work. I created a test server just now with the latest recommended craftbukkit.jar and the only plugin running on the test server is inventorysql. When I try to run the command I get this: http://pastebin.com/0HYxLk3G
When you reply, also include your donation email address I cant find it anywhere.
-
View User Profile
-
Send Message
Posted Nov 6, 2013@pilotdan85
InventorySQL
-
View User Profile
-
Send Message
Posted Nov 6, 2013@manfie
/switch is not working on my server. When I try to use /switch its causing java errors. What plugin provides this command? I can't find any documentation on it.
-
View User Profile
-
Send Message
Posted Nov 6, 2013@pilotdan85
If you change your server it is encouraged to the /switch command :p InventorySQL then manages to saves and transfer the Player natively. :)
@thernztrom
Using 'quit' should work in most cases actually. Use the /switch command and it'll send you after it has saved :P
-
View User Profile
-
Send Message
Posted Nov 5, 2013@manfie
I did a ton more testing with a friend tonight. We found out the plugin is working perfectly. My problem with my server is that bungee is switching servers too fast. The server I am trying to go to gets done loading before I leave the server I am leaving. Bungee needs to add a slightly longer delay.
-
View User Profile
-
Send Message
Posted Nov 5, 2013Thanks for making such an awesome plugin! Sent some coffee money over.. :) I've just recently started using your plugin, what update-events would you say is enough to use? Using several BungeeCord linked servers, is using "quit" only enough? Will their inventories be synked as they switch servers?
-
View User Profile
-
Send Message
Posted Nov 5, 2013@manfie
I was troubleshooting my problem further. Re-reading the bungeecord setup guide. They say my server ip under server.properties should be 127.0.0.1 but, i could not connect to the server with it set to that, so i changed it to 192.168.1.12 and it seemed to fix all my problems. but why wont 127.0.0.1 work, and could that cause issues with bungee thinking i disconnected opposed to switching worlds? If I set it to 127.0.0.1 i get a java error that says "Could not connect to default server, please try again later: java.net.ConnectException" I googled that error and people say its something to do with spigot and bungee versions. Then I decided to get rid of the ip alltogether, and I get even different results with your plugin. With no ip under server.properties wen changing servers, i drop items in lobby server then switch to tempmap2 and they come back, then i switch back to lobby and they are the same as what i had before I left the lobby. So... then I decided to update to the latest spigot and latest bungee. That didnt change anything with my java error. People are saying I need to use spigot build to 934. So I downgraded to 934. Even with spigot build 934 and my server ip under server.properties set as bungee says it should be (127.0.0.1) I get the same java error.
-
View User Profile
-
Send Message
Posted Nov 5, 2013@manfie
I turned my debug to 1000 and tested. I started in "tempmap2" went in to a nether portal and came back out. Then I used /server lobby to get to my lobby server. Then I switched back to tempmap2 server with /server tempmap2. I switched back and forth a couple times. Here are copies of the log files on both servers over that period of time:
http://pastebin.com/06hCte1c http://pastebin.com/S01SB98Y
I'm using bungeecord with spigot to go between servers
-
View User Profile
-
Send Message
Posted Nov 5, 2013@pilotdan85
I can't test currently because i can't play minecraft for now. Could you try to set debug to 1000 and investigate in the EventRegistration? Actually the corresponding PlayerChangedWorldEvent should be fired and registered by InvSQL. What are you using to change worlds?
-
View User Profile
-
Send Message
Posted Nov 5, 2013@manfie
Log out works, sleeping in a bed works, dieing works, and respawning works. (that's what I mean by I tested them individually). But If I change the update event to "changeworld" then change to a different server it does not trigger an sql update.
It's not that changing worlds "interferes" It simply does not trigger an sql update. Which In turn, leads to the potential duplication bug I mentioned. (drop items - change world - log out - log it - go back to server where u dropped items - pick up items) Item duplication would not be possible if changing worlds worked correctly and it triggered the sql update.
For another example: If I drop or use Items in one world, then change servers, I still have all the same items I dropped in the previous world. (Because changing servers didn't update sql) However, If I drop or use items in one world, then do anything you list as an update trigger, other than changing worlds, (sleep, die, log off) All of my inventories are successfully synced amongst all servers.
I have very little plugins installed on my server at the moment (I'm currently updating to 1.7.4 and changing over to a hub server type setup) When I first tested this plugin I had no other plugins on the server at all and it performed exactly the same.
I just did some further testing and It does save inventories when moving between worlds on the same server. But if I go to a world on another server, it doesnt.
I host all 6 servers on a single machine at my house. (its a dell rackmount server machine)
-
View User Profile
-
Send Message
Posted Nov 5, 2013@pilotdan85
If you logout your normal inventory will be saved and this is working on my local servers. Changing the world is nothing which would interfere, unless you use plugins which sync inventory multi-world etc.
Could you go into further details please?
-
View User Profile
-
Send Message
Posted Nov 5, 2013@pilotdan85
Ps I will donate if you can tell me how to fix this
-
View User Profile
-
Send Message
Posted Nov 5, 2013I'm having an issue with inventories not being synced between servers when changing worlds. I tested with all the update events, then only one. All update events seem to work except for changeworld, which is a big one. Without it people can dupe items by dropping all their items, change worlds, leaving the game, rejoin and go back to where they dropped the items.
I'm running a 1.6.4 spigot server with bungeecord over 6 servers. My sql database management software is bitnami wampstack.
-
View User Profile
-
Send Message
Posted Oct 30, 2013@eake
It's on the list.
-
View User Profile
-
Send Message
Posted Oct 30, 2013Hi guys. Is it possible to add "pendings" like in old version?
-
View User Profile
-
Send Message
Posted Oct 29, 2013@Miracleserver2013
Innodb is supported by default. I was'nt even aware of any hoster without InnoDB
-
View User Profile
-
Send Message
Posted Oct 29, 2013@manfie
Can give example support innodb mysql server??
-
View User Profile
-
Send Message
Posted Oct 29, 2013@Miracleserver2013
first of all: please talk english. then: Get a MySQL Server with InnoDB Support. I can not and i will not help you. Blame your hoster.
-
View User Profile
-
Send Message
Posted Oct 29, 2013@manfie
mysql not support? have what can support?
-
View User Profile
-
Send Message
Posted Oct 29, 2013@Miracleserver2013
Your MySQL Server does not support the needed Storage Engine. You need a Storage Engine supporting InnoDB