OpenInv
Open anyone's inventory or ender chest and modify it in real time! Works with offline players!
Description
This plugin allows you to open any player's inventory or ender chest and interact with it in real time. You can also do it for offline players! This includes access to the armor slots as well as being able to drop items as if you were the player by moving them into the unused slots to the bottom right. Additionally, you can open any chest that is blocked with blocks above it with AnyContainer and open containers silently (no sound or opening animation) with SilentContainer.
Features
- OpenInv: Open anyone's inventory, even if they're offline.
- Read-only mode! Don't grant edit permission.
- Cross-world support! Allow access only from the same world.
- No duplicate slots! Only armor is accessible when opening self (if allowed at all)!
- Drop items as the player! Place items in the dropper slot in the bottom right. Can be disabled via permission!
- Allow any item in armor slots! Configurable via permission.
- OpenEnder: Open anyone's ender chest, even if they're offline.
- Allow access only to own ender chest! Don't grant permission to open others.
- Read-only mode! Don't grant edit permission.
- Cross-world support! Allow access only from the same world.
- SilentContainer: Open containers without displaying an animation or making sound.
- AnyContainer: Open containers, even if blocked by ocelots or blocks.
Installation
To install OpenInv, simply copy the plugin to your plugins folder and restart/reload your server.
Commands
Please see the wiki.
Permissions
Please see the wiki. For assistance upgrading to 5.0.0, check out the migration section.
Other
Source Code hosted on GitHub
Original Bukkit forum thread: http://forums.bukkit.org/threads/15379
Is there a file for 1.20.1 the 1.20 one is out of date for my server
In reply to lil_koala_____:
The 1.20 version should work fine on 1.20 - the diff was minimal, and the NMS revision was not changed. https://hub.spigotmc.org/stash/projects/SPIGOT/repos/craftbukkit/commits/9c5d600d1395e9783a8369dc4227be2b05010107
If you're seeing errors, please link a paste of them along with the outputs of /version and /version OpenInv
cant i use the latest version of this plugin for 1.16.5?
In reply to gabbilabbi14:
No. 1.16.5 is pretty outdated and was last supported in 4.1.8. See version tags in the file listing: https://dev.bukkit.org/projects/openinv/files?sort=-game-version
Hi, I have a question that I didn't know where else to ask.
How are you supposed to use the API? All the methods I'd like to use are in a interface... I can't figure a way to use, for example, the IOpenInv#getSpecialInventory(Player player, boolean online) method, or, again, IOpenInv#openInventory()...
Could you help me out please? I can't understand if I'm missing something or I made a basic mistake. I see you're pretty active so I would appreciate a response.
In reply to examplename47:
You can cast the plugin you obtain from the PluginManager.
Unless you're specifically trying to open OI's views in another way, you may want to avoid OI's ISpecialInventories and just access the loaded player yourself because the slot ordering is different.
1.19.4 - doesn't work.
Shows the message "This chest is already in use" when opening the chest or /invsee command...
please fix it.
In reply to hugkko:
That's not a vanilla message. You have some form of plugin conflict you will need to resolve.
In reply to gabbilabbi14:
I probably should just set up a form reply to this kind of issue.
OI requires Spigot internals. I highly recommend you run a Forge mod for things like this instead; OI does not have support for concepts like dynamic additional inventory slots (e.g. Baubles or whatever the modern equivalent is). These combo servers have also been notoriously unreliable because mods have a tendency to accomplish their goals in various inconsistent ways that result in missed cases for Bukkit events.
If you want to see this fixed, you can ask the Magma team to add a Commodore entry to rewrite the method to their renamed method when loading plugins.
In reply to Jikoo_K: what mod do you recommend for this? Since i need to monitor my players ender chests and inventory when they are offline incase they try to prevent me from finding out if they are cheating or not
In reply to gabbilabbi14:
Not a clue, I don't interact with the Forge side of the Minecraft scene. I had a friend who used a mod that doubled as a player NBT editor for it, but I never used it myself. It's possible that he was just using a raw NBT editor to "view" items, but he definitely appeared to be able to make live edits including obtaining items from others' inventories in a similar fashion to how OpenInv works. There's also no guarantee that the mod still exists.
/edit: Got an answer back from him, apparently there's a baked in FTB utility for it these days. The particular mod he used to use for live NBT edits died in 1.7.10, so now he uses NBTExplorer if there's something he can't access via the FTB inventory opening functionality.
I will say that if your goal is to actively monitor player inventory activity, you are much better off using a logging plugin (or, ideally, mod if such a mod exists) to search for suspicious activity. Checking inventories manually is generally not a good way to identify cheating because there's no context for how an item was obtained.
i am currently running a 1.0.0 minecraft server and when trying to add the plugin i got this log
[SEVERE] Could not load 'plugins/OpenInv.jar' in folder 'plugins':
java.lang.NoClassDefFoundError: net/minecraft/server/PlayerInventory
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:495)
at java.base/java.lang.Class.forName(Class.java:474)
at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java: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>(ServerConfigurationManager.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.PlayerInventory
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:36)
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:24)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
I am completely new to servers and dont know what is happening if i could get some help that would be wonderful.
Thank you in advance
In reply to fl1mm3r:
Frankly, if you're new to servers, do yourself a favor and run a modern server. Trying to run a secure legacy server, particularly with so old and unpopular a version, is a nightmare. /e: I should clarify - 1.0.0 was not a divisive version for the community, it did not have a major reason for players to not update past it. As a result, no one maintains anything for it that I'm aware of.
Any rate, you're trying to run a server version from before CB used versioned packages. You'll need to locate the correct build from years and years ago in the files for whatever ancient CB build you're using. I'm assuming based on the error that either you downloaded the wrong file or your server's internals do not match the expected format for a CB 1.0.0 server. If you downloaded the wrong file and do not have a CB build number, it's trial and error to find the file that actually matches your server. If the issue is that you're running some third party server, you may need to build your own version of OI against it.
I do note that your stack trace indicates you're running Java 11+, so even if you do find the correct build you may still need to build your own version of OI to account for the reflection changes in Java 9. Alternately, run your ancient server on ancient Java, namely Java 8.
Waystone datapack broke when i add This Plugin.
In reply to qqq:
Please respond to the request for information in https://github.com/Jikoo/OpenInv/issues/137.
Man, I'm really sorry so many people can't read.
No bug report or stack trace here. Great plugin!
Hello! When I try to do the /openinv command, it doesn't work. /openender command does work, but the command for opening inv doesn't.
This is what the console says:
In reply to shinging__Gem:
Use 4.2.0 for 1.19 or 4.2.2 for 1.19.1/1.19.3.
In reply to Jikoo_K:
Wait so what version works for 1.19.2