InventorySQL
German developer |
---|
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 :)
@ThisIsAreku
Ok I will work on that. By the way you mentioned earlier that you have an online shop script, can I also have a copy of that too? Thanks :)
@dscm
You have to edit the format a little. In the Inventory column, replace [0(1:0)x54];[1(4:0)x32];... by [+(1:0)x54];[+(4:0)x32];... for the Pendings column
Hi, I tried adding them on the Pending column, but when I checked my self, it said that there are no modifications and no pending, and my inventory was reset to blank
@senne97
This is very simple but not easy to programm in PHP. Basically you only need to read the inventory from the database. Then you have to convert the data besause it looks like [0(1:0)x54],[1(4:0)x32]. I suggest using an array for that.
Little tip: I made a list for an online shop based von InventorySQL and Websens because a table that looks like the inventory ingame is very hard. I made a script thsat was about 200 lines long, but it's too buggy.
If you want, I can send you an example.
@Gregory228
I would use the vanilla /give command for that :D Otherwise you can write it in the database (pendings column) and do a /invsql reload <PlayerName>
@dscm
First, I would import the sql file to a database table (don't name it invsql!). Then search for the inventories that got lost and copy the "inventory" colum. Paste it in the active invsql table to pendings.
At the end, check all users. This may take a while, depending on the amount of users online :)
Hello, how do I restore the inventory of my players from the backup?
My server recently crashed due to some issues which caused their inventories to be wiped out. I wish to give it back to them but I don't know how to restore those items from the sql backup. Please I need your reply, thanks!
I can not give something to someone user in database, when he enters a command /ichk into the database all will be everything is in its inventory
how do you display it on a website ???
@ley0
Les deux bugs sont corrigés dans la version 0.8.6
@UbuntuFreak
@thodiral
Fixed in v 0.8.6
@ley0
En effet, je n'avais pas remarqué que les data pouvaient avoir autant de chiffres. Je vais revoir le code
Hello, Comme @UbuntuFreak et @thodiral, j'ai le même problème au niveau des enchantements, lorsque j'ajoute un seul enchantement par objet cela fonctionne, mais si j'ajoute plusieurs enchantement par objet du type: [+(278:0|34=3,32=5)x1], sa ne fonctionne pas. j'attend la mise à jour avec impatience.
j'ai un autre problème lorsque je veux ajouter des potions à un joueur, en effet par exemple quand j'ajoute la potion: Healing Potion [+(373:8197)x1], elle ne s'ajoute pas. J'ai alors regarder le format de donnée plus profondement et je me suis aperçu que le data byte ne pouvez avoir au maximum seulement 2 chiffres. Est-il possible de l'augmenter à 5 chiffres?
Lien vers les (item id:data byte) que j'utilise : http://www.minecraftinfo.com/IDList.htm
Merci.
Known caveats offline-mode plugins are uncompatible ...
ahh, man ... does this mean the other plugins need to make something like this compatable for your plugin to work or is it something you might be able to fix on your side?
-Ams
@UbuntuFreak
@thodiral
Hi. Yes, enchantments aren't working well.. I'll try to make it work, but I will be very busy these next few weeks
Is it possible to add enchanted items to a player? My pending: [+(285:10|19=3)x1].
My console throws this error: 20:20:16 [SCHWERWIEGEND] [InventorySQL] Message: exception in playerlogic - check players 20:20:16 [SCHWERWIEGEND] [InventorySQL] java.lang.IllegalArgumentException: Specified enchantment cannot be applied to this itemstack : Specified enchantment cannot be applied to this itemstack
hi, does it handle per world inventories?
Hello.
When I add a "pending" to a player, for example, to remove a diamond pickaxe, it works.
When I add a pending to a player, for example, to remove a diamond pickaxe with an enchantment, it works.
Although, when I add a pending to a player, for example, to remove a diamond pickaxe with multiple enchantments, it does not remove the item from the player.
[-(278:0|34=3,32=5)x1]
That's the pending I am using.
No errors in the console, only says (0 items added, 0 items removed, 0 items pending).
i need help installing this. What else do i have to do besides dragging the jar file into my plugins? I got an error saying cannot find the database. What does that mean? Am i suppose to create something? where? anyone help please?
@EzpadaZ
Remove your config file, download the latest version (0.8.5) and restart your server. v0.8.4 has an error when creating config
I GOT THIS ERROR:
-------- an unexpected error has occured-please send line below to the devInventorySQL version 0.8.4 Bukkit version git-Bukkit-1.2.5-R1.3-b2175jnks (MC: 1.2.5) Message: Listener init java.lang.NullPointerException : null alexoft.InventorySQL.InventorySQLPlayerListener.<init>(InventorySQLPlayerListener.java:55) alexoft.InventorySQL.Main.onEnable(Main.java:119) org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:215) org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:336) org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381) org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:256) org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:238) net.minecraft.server.MinecraftServer.t(MinecraftServer.java:371) net.minecraft.server.MinecraftServer.a(MinecraftServer.java:358) net.minecraft.server.MinecraftServer.init(MinecraftServer.java:187) net.minecraft.server.MinecraftServer.run(MinecraftServer.java:422) net.minecraft.server.ThreadServerApplication.run(SourceFile:492)---------Please help :c
I think this plugin interfears with BanHammer Plugin