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 Oct 29, 2013@manfie
18:34:39 [INFO] [InvSQL] Enabling InventorySQL v3.3.5 18:34:39 java.sql.SQLException: The 'InnoDB' feature is disabled; you need MySQL built with 'InnoDB' to have it working 18:34:39 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) 18:34:39 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3593) 18:34:39 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3525) 18:34:39 at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986) 18:34:39 at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140) 18:34:39 at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2620) 18:34:39 at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2570) 18:34:39 at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:779) 18:34:39 at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:622) 18:34:39 at tk.manf.InventorySQL.database.handler.MySQLDatabaseHandler.init(MySQLDatabaseHandler.java:70) 18:34:40 at tk.manf.InventorySQL.manager.DatabaseManager.reload(DatabaseManager.java:63) 18:34:40 at tk.manf.InventorySQL.manager.DependenciesManager.checkDatabaseHandler(DependenciesManager.java:79) 18:34:40 at tk.manf.InventorySQL.manager.DependenciesManager.initialise(DependenciesManager.java:54) 18:34:40 at tk.manf.InventorySQL.InventorySQLPlugin.onEnable(InventorySQLPlugin.java:54) 18:34:40 at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) 18:34:40 at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:457) 18:34:40 at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:382) 18:34:40 at org.bukkit.craftbukkit.v1_6_R3.CraftServer.loadPlugin(CraftServer.java:286) 18:34:40 at org.bukkit.craftbukkit.v1_6_R3.CraftServer.enablePlugins(CraftServer.java:268) 18:34:40 at net.minecraft.server.v1_6_R3.MinecraftServer.l(MinecraftServer.java:321) 18:34:40 at net.minecraft.server.v1_6_R3.MinecraftServer.f(MinecraftServer.java:298) 18:34:40 at net.minecraft.server.v1_6_R3.MinecraftServer.a(MinecraftServer.java:258) 18:34:40 at net.minecraft.server.v1_6_R3.DedicatedServer.init(DedicatedServer.java:165) 18:34:40 at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:399) 18:34:40 at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 18:34:40 [INFO] [InvSQL][DEBUG] [Developer Message from manf] Sorry, but the loaded class is deprecated 18:34:46 [INFO] [InvSQL][DEBUG] [Developer Message from manf] Thanks for supporting us and using Metrics :)
i want how to do
-
View User Profile
-
Send Message
Posted Oct 28, 2013@Miracleserver2013
You have a database and you have user credentials. There is nothing i can do!
@dudule223
I do not support deprecated classes anymore, sorry.
-
View User Profile
-
Send Message
Posted Oct 28, 2013@dudule223
Obviously a failure while serializing. Since JSON is very buggy, manfie planned to replace it in future updates. You can however change the serializing method to the recommended one: Serializer
-
View User Profile
-
Send Message
Posted Oct 28, 2013My error. Here
-
View User Profile
-
Send Message
Posted Oct 28, 2013@manfie
i create the database Miracle but can not read username and password
-
View User Profile
-
Send Message
Posted Oct 28, 2013@Miracleserver2013
I do not understand, what you are trying to say, sorry. You need to create the Database by yourself. InventorySQL will only create tables.
-
View User Profile
-
Send Message
Posted Oct 28, 2013@manfie
can save player Hold block Weapon ? in the mysql To make changes can straightway updata in minecraft server?
error
19:10:55 [INFO] [InvSQL] Enabling InventorySQL v3.3.5 19:10:55 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'mydb'
-
View User Profile
-
Send Message
Posted Oct 27, 2013@Miracleserver2013
This plugin syncs player inventory (including armor and enderchests). Nothing else.
-
View User Profile
-
Send Message
Posted Oct 27, 2013this plugins can Synchronous update server?
for example
abc health had 100 in mysql update user abc health set 500 Can instantly change the server data?
-
View User Profile
-
Send Message
Posted Oct 26, 2013@glOOmyART
That's what i'm here for ;) I'm glad this worked for you.
Any Donation is appreciated :)
-
View User Profile
-
Send Message
Posted Oct 26, 2013@manfie
wuoah... thank you very very much!!! it works now perfectly!!
you saved my weekend!! i was on the verge of going nuts over this :P
donation is on the way (well as soon as i charged my paypal account) ;)
-
View User Profile
-
Send Message
Posted Oct 26, 2013@glOOmyART Yes that should work ;)
Or use latin1_swedish_ci. I will think of an automatic change in the next releases tho..
-
View User Profile
-
Send Message
Posted Oct 26, 2013@manfie
thx for the reply..
hm, i always use utf8_bin ;) should i change it to latin1_general_ci??
i'm trying several weeks now, and always hope for the next update to work :p
-
View User Profile
-
Send Message
Posted Oct 26, 2013@glOOmyART
What collation is the database? Case-Insensitivity should work, as "Simple comparison operations (>=, >, =, <, <=, sorting, and grouping) are based on each character's “sort value.” Characters with the same sort value are treated as the same character. For example, if “e” and “é” have the same sort value in a given collation, they compare as equal." (Source)
-
View User Profile
-
Send Message
Posted Oct 26, 2013hi, no matter what i do, i can't get this to work...
and i noticed several strange things...
1. it creates 2 users when i join.. one is all lowercase like player, the other is my actual stylized username plAYer
2. it saves my inventory when i join server and leaves a note in the chat
3. from the log it seems that it loads the inventory from the lowercase name and then save its to the stylized name so there's no way my inventory will be loaded upon join or synced in anyway
-
View User Profile
-
Send Message
Posted Oct 24, 2013@Erwandir
This depends on your configuration: GZipCompressor just gzips it. NoCompressor does nothing at all.
The deprecated and quiete buggy JSONSerializer serialises with json. BukkitSerializer uses internal BukkitAPI to serialise stuff. (BukkitObjectOutputStream)
-
View User Profile
-
Send Message
Posted Oct 24, 2013Okay, and how do I reverse this process ? ^^
Maybe you've got a guide around here ?
-
View User Profile
-
Send Message
Posted Oct 24, 2013@Erwandir
You need to work with the Items in your database. First the Items are serialised, then compressed. You need to reverse this process in order to get your results.
Enderchests, Playerinventory and Armorinventory is saved in the database, so this is indeed stored.
-
View User Profile
-
Send Message
Posted Oct 24, 2013Hello,
how can I read the .bin file which is stored in my database ? And are you going to set each item in the database ? So I can easily find items with ID xx showing me all the players having it etc ...
-
View User Profile
-
Send Message
Posted Oct 24, 2013@NetherVillage
Create a ticket and provide more information..
Edit: Nevermind. I have found out, that i used content of player inventory twice... Thank god Bukkit did'nt change the ender inventory.. Will be fixed in 2nd preFinal release