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
- Read-only permissions for OpenInv and OpenEnder! Just don't give the editinv and editender permissions nodes!
- Administrators can modify any user's inventory or ender chest contents as they wish, in real time.
- Access from anywhere! No distance or obstacle limitations.
- Permissions support.
- Player inventories and ender chests of any player can be opened. Even for offline players!
- Using the openinv or openender command without any arguments opens the last accessed player's inventory/ender chest.
- Search all online players for a certain item in their inventory or ender chest.
- Protect players from openinv with exempt permission, and bypass protection with override permission.
- Cross-world openinv protection.
- Self-opening protection.
- Open containers that are blocked by solid blocks or ocelots with the 'AnyContainer' feature.
- Silent opening of containers with no sound or opening animation.
- Drop items as the other player (by putting it in the unused slots in the bottom right)
Installation
To install OpenInv, simply copy the plugin to your plugins folder and restart/reload your server.
Commands
Command | Aliases | Description |
---|---|---|
/openinv <player> | oi, inv, open | Opens a specified player's inventory. |
/openender <player> | oe | Opens a specified player's ender chest |
/searchinv <item> [minAmount] | si | Lists all players that have a certain item in their inventory. |
/searchender <item> [minAmount] | se | Lists all players that have a certain item in their ender chest. |
/searchenchant <[enchantment] [MinLevel]> | searchenchants | Lists all online players with a specific enchantment. |
/anycontainer | ac, anychest | Toggles AnyContainer mode (blocked container bypass) |
/silentcontainer | sc, silent, silentchest |
Toggles SilentContainer mode (open containers silently) |
Permissions (CaSe SeNsItIvE)
Permission Node | Description |
---|---|
OpenInv.openinv | Gives permission to use OpenInv. |
OpenInv.openself | Allows opening the inventory of the command user. |
OpenInv.editinv | Allows editing of inventories. |
OpenInv.openender | Allows opening of ender chests. |
OpenInv.openenderall | Allows opening of ender chests of everybody. Without this permission, someone can only open his own ender chest. |
OpenInv.editender | Allows editing of ender chests. |
OpenInv.search | Gives permission to use searchinv and searchender command. |
OpenInv.searchenchant | Required to use /searchenchant. |
OpenInv.crossworld | Allows cross-world use of 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.any.default | Causes AnyContainer to be enabled by default. |
OpenInv.silent | Gives permission to open chests in total silence, without animation. |
OpenInv.silent.default | Causes SilentContainer to be enabled by default. |
Other
Source Code hosted on GitHub
Original Bukkit forum thread: http://forums.bukkit.org/threads/15379
Experiencing error with PaperMC version 1.21-9-master@4ea696f (2024-06-19T04:26:57Z) (Implementing API version 1.21-R0.1-SNAPSHOT)
In reply to keith_keitherz:
Please make sure that Paper is configured to remap plugins.
Just a heads up for people trying to use OI on 1.21: Spigot changed InventoryView from an abstract class to an interface in https://hub.spigotmc.org/stash/projects/SPIGOT/repos/craftbukkit/commits/eae9f760c9849290b9e6ffc08fc93193df206a3d, so if you're using a more recent build, 4.4.6 will break. 4.4.7 has been released to account for this.
Hi, using this plugin causes the player's hotbar to duplicate into their inventory.
In reply to nuttapillar97:
Cannot reproduce. Please provide reproduction steps and software installed.
In reply to Jikoo:
Server is pufferfish 1.20.4
I have chestsort 1.14.1 plugin.
If I remember, I'll test with the sorting function turned off
In reply to nuttapillar97:
That is likely the issue, people have reported nebulous issues with sorting plugins before. Your sorting plugin should ignore top inventories with InventoryType.PLAYER.
In reply to Jikoo:
So do you think the sorting plugin is trying to sort the hotbar, and that's the issue?
In reply to nuttapillar97:
It is likely trying to sort the whole inventory, which is a really bad idea in general. The drop slots at the end of the inventory will always accept items, for example.
OI uses nonstandard slot numbers because of what it's doing - the hotbar is slots 0-8 on a normal player inventory. In the copy OI opens, those are slots 27-35 so they appear beneath the rest of the inventory content as one would expect.
In reply to Jikoo:
Thank you, that makes sense, and seems to be what's happening. Hopefully I remember to test properly when I get a chance.
Hi, I used this plugin a lot in my 1.20.4 Paper minecraft server and I loved it. But, I don't know, yesterday, I just take some ressources to my player and to regive another items and it duplicated quite a few items and at one point even quadrupled them. And the leggings, so the armor was on the chestplate, the chestplate on the leggings, the boots on the helmet and the helmet on the boots. (It happens to my player and to me in the same time when I was in the /openinv moving items), it duplicates my netherite sword, pickaxe, etc (but not everything) Do you know why it happens ? Ty a lot !
In reply to hazenar:
Usually things like that are due to an external influence like an inventory sorting plugin. If you can provide steps to reproduce with just OI installed or identify a conflicting plugin I can look into it further, but with this little info there's not much I can do to help.
Hello, I'm playing on 1.20.1 and was wondering if I want to open someone's inv can it ask him for permission and he can deny it
In reply to dimetro25:
Nope, OI is more of an administrative plugin than a user sharing plugin. Someone could definitely add that using OI's API, but OI does not have that capability.
In reply to Jikoo:
Do you happen to know any other plugin that can do that?
In reply to dimetro25:
Nope, sorry. I don't keep track of other inventory editing plugins as a sort of moral point because I don't want to accidentally copy design or code.
Hey, is there a permission node for /searchcontainer? I've been considering giving it to my players so staff don't have to help so much trying to find lost items. Thanks!
In reply to siuanswan:
Yes, OpenInv.searchcontainer. Note that /searchcontainer will load chunks if necessary, so you should definitely consider reducing the max search radius.
My opinion: you may want to just consider adding a policy about lost items, "if you forgot to protect your items and they walked off, that's your fault." Staff intervention for "idk where I left this lol" sounds pretty draining and awful.
If your staff do regularly have to deal with theft and not just misplacement, I strongly recommend a logging plugin (like Prism or CoreProtect) so you know how and why an item came to be where it is. OI really doesn't give you any context, and I've seen wrongful accusations made off of its incomplete picture.
Please update to 1.20.4.
Today one of the members of my server told me ( i borrowed my picaxe to my friend but he's offline now and i need it ) and i couldn't help him because openinv isn't updated yet :( thank you for the great plugin though
In reply to meekness0:
I haven't had time to test a build (hopefully things will cool off after the holidays) so I have not pulled in the 1.20.4 update. You're welcome to grab the build and report your results, though I would not recommend production use until you've tested.