PlayerRestore
PlayerRestore
Developed primarily to eliminate the corrupted inventory problems on Tekkit servers, PlaterRestore is a plugin that will fix lost inventory problems forever! No more worrying about inventory glitches for players, and Server Admins don't need to worry about if a player is lying or not when they claim they've lost items!
How it works
There are still improvements to be made, but as of right now, here's what it does:
- Whenever a player picks up a block, PlayerRestore writes a personalized text file of the players inventory. It even has their name in the title!
- Afterwards, all you need to do is delete the player's .dat file and their inventory will be restored when they rejoin the server, or type /restoreinv <playername> and it will be restored immediately!
- If a player dies, their inventory file will be cleared, so they can't claim they've lost their items unfairly! (Configurable)
Planned Improvements
- Better file writing system. Either change the event that writes the files, or add a cooldown time to writing files.
- Saving player's armor
- Inventory rollback system (Maybe)
- Chest compatibility: Players claim chests, and they get restored using a command.
- Saving player's experience
- Saving player's location (for after players delete their .dat file)
- Command for checking player's inventory file
Known Bugs
- Let me know of any bugs so that I can add them to this list and start fixing them!
-
View User Profile
-
Send Message
Posted May 5, 2023Non-Bukkit clientside version ( or alternatives ) please !
-
View User Profile
-
Send Message
Posted Sep 17, 2013@KrazyTraynz
any chance on getting an update, and when this will be up? as it is an amazing plugin but we cant use it on this patch, and it truly is heartbreaking.
-
View User Profile
-
Send Message
Posted Jul 25, 2013@TGMGamingzz1
PlayerRestore v0.4 isn't updated to 1.6.2, however I'm almost done with the new update.
-
View User Profile
-
Send Message
Posted Jul 24, 2013erm... help?
24.07 23:46:31 [Server] INFO at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 24.07 23:46:31 [Server] INFO at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 24.07 23:46:31 [Server] INFO at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 24.07 23:46:31 [Server] INFO at com.github.KrazyTraynz.InvRestore.writeFile(InvRestore.java:105) 24.07 23:46:31 [Server] INFO Caused by: java.lang.NoClassDefFoundError: net/minecraft/server/NBTBase 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.ThreadServerApplication.run(SourceFile:582) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.MinecraftServer.run(MinecraftServer.java:419) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.MinecraftServer.s(MinecraftServer.java:486) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.DedicatedServer.t(DedicatedServer.java:226) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.MinecraftServer.t(MinecraftServer.java:590) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.DedicatedServerConnection.b(SourceFile:30) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.ServerConnection.b(SourceFile:37) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.PlayerConnection.e(PlayerConnection.java:118) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.NetworkManager.b(NetworkManager.java:296) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.Packet10Flying.handle(SourceFile:136) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.PlayerConnection.a(PlayerConnection.java:345) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.EntityPlayer.h(EntityPlayer.java:221) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.EntityHuman.l_(EntityHuman.java:157) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.EntityLiving.l_(EntityLiving.java:1254) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.EntityHuman.c(EntityHuman.java:418) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.EntityHuman.r(EntityHuman.java:426) 24.07 23:46:31 [Server] INFO at net.minecraft.server.v1_6_R2.EntityItem.b_(EntityItem.java:227) 24.07 23:46:31 [Server] INFO at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462) 24.07 23:46:31 [Server] INFO at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477) 24.07 23:46:31 [Server] INFO at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) 24.07 23:46:31 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) 24.07 23:46:31 [Server] INFO org.bukkit.event.EventException 24.07 23:46:31 [Server] SEVERE Could not pass event PlayerPickupItemEvent to PlayerRestore v0.4
-
View User Profile
-
Send Message
Posted Jan 31, 2013Very interested in this plugin. The planned improvements look very promising. Hoping for a new update soon :)
Also, quick suggestion. Would you consider adding the ability to save/restore ender chest inventories as well as player inventory?
Thanks.
-
View User Profile
-
Send Message
Posted Oct 21, 2012@Gumybearking
I don't see how it surpassed yours, it only has about 1/10 of the downloads yours has... I'll P.M the source to you in a bit. Keep in mind that the system isn't perfect (yet ;) ).
-
View User Profile
-
Send Message
Posted Oct 21, 2012@KrazyTraynz
Its nothing, I was just a little annoyed. I am glad you came out with this, I had to halt the production of my version until I got more experienced, No need to change anything, and sorry to accuse you. I suppose great minds just think alike. But, seeing how your plugin seems to have surpassed mine, would you mind allowing me to take a look at your source, and see the methods you used? Do not worry if you want to keep the source private
Also, If you do need another player to test/help I would be more than willing (As long as I am not watching anime)
-
View User Profile
-
Send Message
Posted Oct 20, 2012@Freejack01
Thanks for pointing that out, I'll start working on it!
-
View User Profile
-
Send Message
Posted Oct 20, 2012@Gumybearking
Oh god, sorry about that... If you want me to change the name and such I can. But before you accuse me of doing so, I didn't steal any ideas from anyone. I thought of this completely on my own, you just happened to release yours before me, and I happened to choose the same name. I would never steal any ideas from anyone.
-
View User Profile
-
Send Message
Posted Oct 20, 2012It does not backup what the character is wearing. We need that ability too.
-
View User Profile
-
Send Message
Posted Oct 20, 2012You know, you could ask for permissions before stealing my idea, Check out my plugins, Exact same name/purpose but released first
-
View User Profile
-
Send Message
Posted Oct 19, 2012Love it :D
-
View User Profile
-
Send Message
Posted Oct 19, 2012@tubajedimaster
Glad you like it :D
-
View User Profile
-
Send Message
Posted Oct 18, 2012This plugin saved me, and now I'm a believer!
-
View User Profile
-
Send Message
Posted Oct 15, 2012@Mammothskier
Tekkit servers run on CraftBukkit, so yes :)
-
View User Profile
-
Send Message
Posted Oct 15, 2012Will this plugin work for both a Craftbukkit Server and a Tekkit Server?
-
View User Profile
-
Send Message
Posted Oct 14, 2012Well im looking foward for you to add that =) and i'll get it when its added ^_^
-
View User Profile
-
Send Message
Posted Oct 14, 2012@thloh
As of right now, the inventory restoration only works when players join the server for the first time after their .dat file is deleted, which is the only way to fix a corrupted inventory (as far as I know). So yes, it allows you to restore inventories, but time support is not part of the plugin yet... I will probably implement it eventually.
-
View User Profile
-
Send Message
Posted Oct 14, 2012Does this plugin actually allow us to restore their inventory or just a log for us to read @.@? it would be preferably to be able to restore their inventory to a certain time .
example like :
i would like to restore player MyItemIsLost's inventory 15 minutes ago. i can do /invrst 15m to revert his inventory back to what he exactly have 15 minutes ago
btw im running a tekkit server