[FUN][ADMN] OpenInv 2.2.4 - Open anyone's inventory as a chest Real-Time! [1.4.5-1.7.10]

Discussion in 'Archived: Plugin Releases' started by lishid, Apr 30, 2011.

  1. Offline

    lishid

    OpenInv - Open anyone's inventory as a chest! in real time! Works with offline players! Open EnderChests of any player via command!

    Source Code hosted on GitHub

    Link to BukkitDev: http://dev.bukkit.org/server-mods/openinv/

    Description:
    Open a player's inventory as a chest and interact with it in real time.
    Access to the inventory and armor slots.
    Open any chest that has blocks on top (blocked chests) with AnyChest.
    Open a chest silently (without chest animation nor sound) with SilentChest.
    Open any player's EnderChest from a command.
    Drop item as another player (by putting it in the 5 unused slots in openinv)!

    How to use:
    Install: Copy to your plugins folder, and restart/reload your server.

    Use:
    Use command "/openinv <player>" to open a player's inventory
    Use command "/toggleopeninv" to toggle Item openinv:
    Code:
    Hit a player with an item of your choice (STICK by default), and you will open the player's inventory (no damage)
    Right click the air with the item opens the last opened inventory (toggle must be ON)
    Use command "/anychest" to toggle anychest (blocked chest bypass)
    Use command "/silentchest" to toggle silent chest
    Use command "/openender <Player>" to open a player's enderchest
    Use command "/searchinv <Item> [MinimalAmount]" list all players having a certain item in their inventory.

    Code:
    To use a sign for quick access (this uses the normal Openinv.openinv permissions, override and exempt applies), You need:
    "[openinv]" (without quotes) on the 1st line
    and the player's name on the other lines.


    Permissions nodes (CaSe SeNsItIvE):
    "OpenInv.openinv" gives permission to use OpenInv
    "OpenInv.openself" Allows opening the inventory of the command user
    "OpenInv.editinv" - Allows editing of inventory

    "OpenInv.openender" - Allows opening of EnderChests
    "OpenInv.openenderall" - Allows opening of EnderChests of everybody. Without this permission, someone can only open his own enderchest.
    "OpenInv.editender" - Allows editing of enderchest

    "OpenInv.search" gives permission to use searchinv
    "OpenInv.crossworld" allows cross-world openinv.
    "OpenInv.exempt" makes the player's inventory protected (unable to be opened)
    "OpenInv.override" gives permission to open anyone's inventory, even protected ones
    "OpenInv.anychest" gives permission to open chests that are blocked by a block on top.
    "OpenInv.silent" gives permission to open chests in total silence, without animation.
    (without quotes)



    Features:
    • Read-only permissions for OpenInv and OpenEnder! Just don't give the editinv and editender permissions nodes!
    • Administrators can modify any user's inventory contents as they wish, in real time.
    • Access it anywhere! No distance or obstacle limitations.
    • Permissions support.
    • Use the command without argument opens the last accessed person's inventory.
    • Use sticks or any (configurable) item and toggles for quick access.
    • Search all online players for a certain item in their inventory.
    • Protect players from openinv with exempt permission, and bypass protection with override permission.
    • Use a sign to perform openinv for convenience.
    • Cross-world openinv protection.
    • Offline player openinv supported.
    • Open chests that are blocked because they have a solid block on top. (AnyChest)
    • Silent opening of chest, no sound and opening animation.
    • EnderChests can be opened, even for offline players!
    • NEW: Drop item as another player (by putting it in the 5 unused slots in openinv)
    • Self-opening protection.
    Image:
    OpenInv.png
    Test.png

    Video tutorial:



    Credits:
    Thanks to WMisiedjan for the source of iSee, located here: http://forums.bukkit.org/threads/6676/
    Thanks to Dark_Balor from AdminCmd for helping with the bugs in Offline Openinv.
    Thanks to the many supporters who've tested this plugin.

    Download:


    Download OpenInv (2.2.4) CB1.4.5 up to CB1.7.10

    Legacy versions:
    See http://dev.bukkit.org/server-mods/openinv/

    Source Code

    Todo:
    • None ATM
    Bugs:
    • None ATM
    Statistics:
    Openinv will connect to http://mcstats.org/ to collect anonymous data (only version information).

    Changelog:

    Version 2.2.4[CB 1.7.10]
    • Fixed getting inventory from other plugin's custom inventory crashing

    Code:
    Version 2.2.2[CB 1.7.10]
    Finally fixed offline players
     
    Version 2.1.8[CB 1.7.10]
    Updated to MC1.7.10
    Removed metrics as the service is no longer available
     
    Version 2.1.7[CB 1.7.8]
    Fixed Offline player NoSuchMethodError
     
    Version 2.1.6[CB 1.7.8]
    Fixed ClassNotFoundError.
     
    Version 2.1.5[CB 1.7.8]
    Updated to CB1.7.8
     
    Version 2.1.4[CB 1.7.5]
    Updated to CB1.7.5
     
    Version 2.1.3[CB 1.7.4]
    Fixed silent chest not working with sneak+build.
    Removed /enderchest as alias for compatibility with Essentials. Use /openender or /oe instead.
     
    Version 2.1.2[CB 1.7.2]
    Changed updater to be compliant with new Bukkit rules.
     
    Version 2.1.1[CB 1.7.2]
    Changed updater to be compliant with new Bukkit rules.
     
    Version 2.1.0[CB 1.7.2]
    Update to CB1.7.2.
     
    Version 2.0.9[CB 1.6.4]
    Update to CB1.6.4.
     
    Version 2.0.8[CB 1.6.2]
    Added * nodes for permissions.
     
    Version 2.0.7[CB 1.6.2]
    Added OpenInv.openenderall permission node.
     
    Version 2.0.6[CB 1.6.2]
    Updated to CB1.6.2.
     
    Version 2.0.5[CB 1.6.1]
    Fixed editinv not locking shift-click and click-drag.
     
    Version 2.0.4[CB 1.6.1]
    Added config options for notifications for SilentChest and AnyChest.
     
    Version 2.0.3[CB 1.6.1]
    Updated to CB1.6.1.
     
    Version 2.0.2[CB 1.5.2]
    Updated to CB1.5.2.
     
    Version 2.0.1[CB 1.5.1]
    Fixed player loading crash caused by CraftBukkit internal change.
     
    Version 2.0.0[CB 1.5.1]
    Fixed trapped chest problem.
     
    Version 1.9.9 [CB 1.5.1]
    Updated to 1.5.1.
     
    Version 1.9.8 [CB 1.5]
    Updated to 1.5.
     
    Version 1.9.7 [CB 1.4.7]
    Fixed offline inventory not saved when server restarts.
     
    Version 1.9.6 [CB 1.4.7]
    Updated to 1.4.7.
     
    Version 1.9.5 [CB 1.4.6]
    Added new feature: Put item in any of the 5 unused slots and the item will be dropped by the targeted player.
     
    Version 1.9.4 [CB 1.4.6]
    Updated for MC1.4.6.
     
    Version 1.9.3 [CB 1.4.5]
    Fixed an issue about copying code from my other plugin without proper renaming.
     
    Version 1.9.2 [CB 1.4.5]
    Massive rewrite to support new CB naming system.
    Added auto-updater.
     
    Version 1.8.8 [CB 1.3.2/CB 1.4.2]
    Added permissions "OpenInv.openself".
     
    Version 1.8.7 [CB 1.3.1-R1]
    Added /openender <player>
    permissions, added "OpenInv.editinv", "OpenInv.openender", "OpenInv.editender".
     
    Version 1.8.6 [CB 1.3.1]
    Updated to 1.3.1. Not only works with 1.3.1.
     
     
    Version 1.8.5 [CB 1.2.5-R4]
    Fixed all problems related to Offline OpenInv (including inventory not updating AND/OR inventory being emptied on some occasions).
    Updated Metrics module to R5.
     
    Version 1.8.4 [CB 1.2.4-R0.1]
    Updated to MC 1.2.4.
     
    Version 1.8.3 [1.1-R6/CB 1.2.3-R0.1]
    Fixed perms not working.
     
    Version 1.8.2 [1.1-R6/CB 1.2.3-R0.1]
    New permissions system (removed support for old perms).
     
    Version 1.8.1 [1.1-R6/CB 1.2.3-R0.1]
    Updated to 1.1-R6.
     
    Version 1.7.5 [1.1-R3]
    Fixed Metrics add-on error on startup.
     
    Version 1.7.4 [1.1-R3]
    Fixed offline openinv being case sensitive.
     
    Version 1.7.3 [1.1-R3]
    New CB events.
     
    Version 1.7.2 [1.0.0-R1/1.1-R1]
    CraftBukkit refactoring. Fix the Exception caused by that.
     
    Version 1.7.1 [1.0.0-R1/1.1-R1]
    Statistics.
    Official CB1.1-R1 support.
    Still backward compatible (with 1.0.1-R1).
     
    Version 1.6.6 [1.0.1-R1]
    Help menu (/openinv ?).
    Code re-organizing.
    AnyChest now toggle-able.
     
    Version 1.6.5 [1.0.1-R1]
    Fix for silentchest + spout error.
     
    Version 1.6.4 [1.0.1-R1]
    Silent chest opening, no animation, no sound, use /silentchest to toggle on/off.
     
    Version 1.6.3 [1.0.1-R1]
    Switched toolbar from top to bottom.
    Added armor slots.
     
    Version 1.6.2 [1.0.1-R1]
    Added a fix for Offline Openinv.
     
    Version 1.6.1 [1550]
    Fixed inventory update bug that everyone was having!
    Updated for Minecraft 1.0.
     
    Version 1.5.2 [1185]
    Offline openinv bugfix.
     
    Version 1.5.1 [1185]
    OFFLINE OPENINV IMPLEMENTED.
     
    Version 1.4.6 [1118-1160]
    Fix conflict of anychest with other plugin.
     
    Version 1.4.5 [1118-1160]
    Fix for previous update not closing chests.
     
    Version 1.4.4 [1118-1160]
    Now allows opening of chests that are blocked by solid blocks on top!
    Use "OpenInv.anychest" for permission node.
     
    Version 1.4.3 [1118-1160]
    Toggle should now be saved between server restarts.
    Added configuration file.
    Configure the item to use instead of a stick be default.
     
    Version 1.4.2 [1118-1160]
    Fixed a character limit problem.
     
    Version 1.4.1 [1118-1160]
    Updated for 1.8.
     
    Version 1.3.3 [953+]
    Cross world openinv disabled! Use permissions node 'OpenInv.crossworld' to allow cross-world openinv.
     
    Version 1.3.2-test [818+]
    Try fixing compatibility problem.
     
    Version 1.3.1 [818+]
    Fixed for 818.
    Only works for 1.6+ (CraftBukkit RB 818).
     
    Version 1.2.3 [803-]
    Sign quick access: use second line for "[openinv]" (without quotes) and third line for target name.
    Use this for 1.5 versions.
     
    Version 1.2.2
    PERMISSIONS NODES CHANGE: please read permissions section.
    new "OpenInv.exempt" and "OpenInv.override" feature.
     
    Version 1.2.1
    MAJOR BUGFIX: inventory not updated correctly, especially after a death/respawn.
     
    Version 1.1.1
    New feature: /searchive Item Amount.
     
    Version 1.1.0
    New feature: sticks + toggle openinv (explainations on top).
     
    Version 1.0.3
    Fixed history not saved correctly.
    Fixed inventory access to respawned players.
     
    Version 1.0.2
    use the command without argument opens the last accessed person's inventory .
     
    Version 1.0.1
    Initial Release.
    
    Support the developer: [​IMG]
     
  2. Offline

    lishid

    Thanks!
     
  3. Offline

    Nolig

    @lishid No problem, this plugin is so simple and so epic.
     
  4. Offline

    tincopper2

    There has been so many of these, I wish there was a save/load feature of players inventories, and /giveinv, giving your inventory to that player, I use essentials, so I already have this feature, but if you could add this /giveinv, I will totally download!
    HERE IT IS LOL
    REFERENCE TO PAGE 16 MARKER
     
  5. thx for update
     
  6. Offline

    lishid

    Interesting idea... I might consider this in the future.
     
  7. Offline

    DarkusOfArk

    This Is Great For Customizing Some One's Inv. I Could See A Possible Legit Trade System Out Of This.
     
  8. Offline

    lishid

    There is already one available though.
     
  9. Offline

    indigomontoya

    The signs dont work for me. They give an an internal error when I click them. Nothing shows in console.
     
  10. Offline

    lishid

    Re-download from the perma-link.
     
  11. Offline

    Chadavder101

    Nothing will work for me.

    2011-12-04 08:36:03 [SEVERE] Could not load 'plugins\OpenInv.jar' in folder 'plugins':
    java.lang.NoClassDefFoundError: net/minecraft/server/PlayerInventory
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:168)
    at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:199)
    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:122)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:118)
    at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:89)
    at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:51)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:132)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    Caused by: java.lang.ClassNotFoundException: net.minecraft.server.PlayerInventory
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:36)
    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:24)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 11 more
     
  12. Offline

    lishid

    You're using a version for MC1.0.0 on an old MC BETA 1.8.1
     
  13. Offline

    Chadavder101

    which one do i need to use for my 1.7.3 server (Yeah, i know its old)(the 1.7.3 download was what i was using)

    BTW:
    the error post was copied during the server starting up.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 14, 2016
  14. Offline

    lishid

  15. I can't see any information about requirement of Spout to use offline openinv... Why? Shouldn't it be written in first post?

    EDIT: Could you post more information? I've got Spout on server, personally I've got spoutcraft. If I want to open offline player inventory, does he need spoutcraft too? Or does he need to join server at least 1 time after installing Spout? I need to check one guy's inventory and I can still see just empty slots. : /
     
  16. Offline

    lishid

    It should not have anything to do with spout... If you see empty slots, either you typed his name wrong or his inventory is really empty.
     
  17. Offline

    Sigh

    cant make this work for me XD

    ok used the 1.8 one seems to have worked
    this Plugin looks really Kewl great job

    bla tested it now chr gets inv. wiped nothing saves no more any idea
    and other chr has stuff but respawns on there last logout point?

    only thing i was able to do to fix this was to delet the players .dat brought players back to normal but no items lol
    just heads up back up player .dat

    Still a great Plug in tho to bad just not working right for me ^^
     
  18. Offline

    lishid

    Are you using the correct version for your bukkit version?
     
  19. Offline

    Sigh

    Well i tryed it on this version Openinv 1.6.1 MC 1.0 but that doesnt do nothing for me so i went down to the 1.8+ ill try 1.0 agian.
    na no go the sserver is 1.8 i guess its crashing with another plugin then hmm will try taking off do without(s) plugins
    ok tryed 1.8 agian today and i was like ok taking out this plug in it seems to have worked.
    Well idk seem to only work with new players on the server, so then when i tried it on with another chr that i had to test that was alrdy on the server it worked BUT when login-out and closing the client and reloading MC entering the server it wipes it out and sends that chr to spwan point with no ability to save agian. You can say chr player.dat gets currupted or somthing?
     
  20. Offline

    lishid

    Nobody else reported this before, so...
     
  21. Offline

    Sigh


    its cool just to let you know just works on Bran New People on the server for me and the old people get corrupted when looked in there inv. just incase if something pops up thanx for the replys
     
  22. Offline

    Austin

    Seems to be a problem with it and spout.

    Show Spoiler
    16:41:43 [INFO] [bPermissions - debug] Setup player:Kingtom188 took 7ms
    16:41:43 [INFO] Kingtom188 [/2.219.25.176:3156] logged in with entity id 5445 at ([world] -1446.4071623033055, 64.0, -1489.6015586011151)
    16:41:43 [INFO] [VANISH] Kingtom188 disappeared.
    16:41:45 [WARNING] Failed to handle packet: java.lang.NullPointerException
    java.lang.NullPointerException
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:638)
    at net.minecraft.server.Packet15Place.a(SourceFile:39)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
    at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:550)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:521)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:419)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)


    this happened twice right after using /open inv on two other players

    It kicks the player out, giving them an "internal server error"

    Update:
    I have replicated the problem, and have found the error occurs on closing his/her's inventory. (when the person looking at an inventory, closes his menu)

    I have still not a clue why this happens to some and not others.

    Show Spoiler
    Code:
    01:02:48 [WARNING] Failed to handle packet: java.lang.NullPointerException
    java.lang.NullPointerException
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:638)
            at net.minecraft.server.Packet15Place.a(SourceFile:39)
            at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
            at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:550)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
            at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:521)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:419)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
    
     
  23. Offline

    lishid

    The error seems to point to the server receiving "Packet15Place", basically when a player right click on another block.

    Not sure what was null though, likely to be either player.activeContainer or player.inventory...

    What version of spout?
     
  24. Offline

    Teraku

    This plugin seems to completely wipe a player's data sometimes when used on offline players.
     
  25. Offline

    Lemon200

    I'm having a strange problem with this plugin. I have dropped the .jar file to my plugins folder but when i start my server, plugin doesn't start. It doesn't show in list if i type /plugins and it doesn't create any config files to plugin folder. Thanks for your help.
     
  26. Offline

    lishid

    Maybe corrupt download? Try downloading again...

    What versions? Spout or not?
    I'll have a look anyways.
     
  27. Offline

    Lemon200

    I tried downloading again, same problem. I got many errors which show up to consolem i pasted them belove.

    20:42:03 [SEVERE] Could not load 'plugins\OpenInv.jar' in folder 'plugins':
    java.lang.NoClassDefFoundError: net/minecraft/server/PlayerInventory
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j
    ava:170)
    at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.
    java:215)
    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager
    .java:136)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:141)
    at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:117)
    at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigur
    ationManager.java:52)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:141)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:388)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
    Caused by: java.lang.ClassNotFoundException: net.minecraft.server.PlayerInventor
    y
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.
    java:36)
    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.
    java:24)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 11 more
     
  28. Offline

    lishid

    Version mismatch. You're using a version of OpenInv that's not for the version of bukkit/MC (you're using Minecraft beta 1.8.1 I presume)
     
  29. Offline

    Lemon200

    I'm using 1.0 server and 1.0 OpenInv. I tried downloading 1.0 of OpenInv again but same problem.
     
  30. Offline

    lishid

    "PlayerInventory" is introduced with Minecraft 1.0, before that, it was called "InventoryPlayer".
    I updated my plugin since 1.6.0 to work with the new name "PlayerInventory".
    I'm pretty sure you're using an old version of bukkit that has the old class name.
     
  31. Offline

    Chadavder101

    V 1.3.3 doesn't seem to work with Craftbukkit version git-Bukkit-0.0.0-904-g9277096-b953jnks (MC: 1.7.2)
     

Share This Page