-
Notifications
You must be signed in to change notification settings - Fork 40
Permissions
OpenInv uses a permission hierarchy where all permission nodes (with the exception of access levels) are granted by parent nodes. For example, if you want to grant openinv.inventory.edit.self
and openinv.inventory.edit.other
, you can grant the parent node openinv.inventory.edit
instead.
Legacy permissions for versions < 5.0.0 can be found here.
openinv
is the parent of all other nodes. This is the generic "I should be able to do everything" node. It grants access level 1.
At least one viewing node is required to use /openinv
.
openinv.inventory.open.self
: Permission to view own inventory.
openinv.inventory.open.other
: Permission to view others' inventories.
openinv.inventory.edit.self
: Permission to edit own inventory. Also grants openinv.inventory.open.self
for convenience.
openinv.inventory.edit.other
: Permission to edit others' inventories. Also grants openinv.inventory.open.other
for convenience.
Note
As these permissions grant viewing nodes, if you negate them, you indirectly negate the viewing nodes. To allow viewing you will need to explicitly grant the viewing nodes.
openinv.inventory.slot.head.any
: Allow putting any item into the head slot.
openinv.inventory.slot.chest.any
: Allow putting any item into the chest slot.
openinv.inventory.slot.legs.any
: Allow putting any item into the legs slot.
openinv.inventory.slot.feet.any
: Allow putting any item into the feet slot.
openinv.inventory.slot.drop
: Allow access to the drop slot, used to drop items as if the player had dropped them. Access to the drop slot also requires permission to edit the viewed inventory.
Warning
If a plugin ignores OpenInv's slot types and attempts to insert things into the wrong slots directly, they may still drop at the player - this is to prevent item deletion. Exercise caution with sorting plugins!
At least one viewing node is required to use /openender
.
openinv.enderchest.open.self
: Permission to view own ender chest.
openinv.enderchest.open.other
: Permission to view others' ender chests.
openinv.enderchest.edit.self
: Permission to edit own ender chest. Also grants openinv.enderchest.open.self
for convenience.
openinv.enderchest.edit.other
: Permission to edit others' ender chests. Also grants openinv.enderchest.open.other
for convenience.
Note
As these permissions grant viewing nodes, if you negate them, you indirectly negate the viewing nodes. To allow viewing you will need to explicitly grant the viewing nodes.
openinv.access.offline
: Access offline players for inventories, ender chests, and searching.
openinv.access.online
: Access online players for inventories, ender chests, and searching.
openinv.access.crossworld
: Access players in other worlds for inventories, ender chests, and searching.
Access levels are a way to control who can access others' inventories. For example, maybe you're building a new game mode and you don't want your regular moderators sneaking peeks of the spicy features you're adding to rewards. Maybe you have a creative world and don't want inventories opened in that world.
Note
At this time, OpenInv does not support permissions for offline players - it's not a feature of Bukkit. If you want access nodes to work accurately, make sure to not grant openinv.access.offline
to restricted users!
Nodes are modelled after vanilla's permission levels. Everyone without a specific node has access level 0. An access level of greater than or equal to the target allows opening inventories. Tie behavior is determined by the configuration setting settings.equal-access
. Valid values are allow
to allow, deny
to block access, and view
for view-only mode. The default is view
to allow equals to check each other.
openinv.access.level.1
: Granted by openinv.access
. Allows accessing players with access up to level 1.
openinv.access.level.2
: Not granted by openinv.access
! Allows accessing players with access up to level 2.
openinv.access.level.3
: Not granted by openinv.access
! Allows accessing players with access up to level 3.
openinv.access.level.4
: Not granted by openinv.access
! Allows accessing players with access up to level 4.
openinv.spectate.click
: Perform normal inventory manipulation while in spectator mode.
openinv.container.any
: Grants access to /anycontainer
.
openinv.container.silent
: Grants access to /silentcontainer
.
openinv.search.inventory
: Grants access to /searchinv
, /searchender
, and /searchenchant
.
openinv.search.enderchest
: Grants access to /searchcontainer
.
OpenInv's nodes are all now lower case. Additionally, parent nodes grant any child nodes (so openinv.inventory.open
grants openinv.inventory.open.self
and openinv.inventory.open.other
) aside from access levels.
Old Node | Equivalent New Nodes |
---|---|
OpenInv.* |
openinv |
OpenInv.openinv |
openinv.inventory.open.other |
OpenInv.openself |
openinv.inventory.open.self |
OpenInv.editinv |
openinv.inventory.edit and openinv.inventory.slot
|
OpenInv.openonline |
openinv.access.online |
OpenInv.openoffline |
openinv.access.offline |
OpenInv.openender |
openinv.enderchest.open.self |
OpenInv.editender |
openinv.enderchest.edit.self and openinv.enderchest.edit.other
|
OpenInv.openenderall |
openinv.enderchest.open.self and openinv.enderchest.open.other
|
OpenInv.exempt |
openinv.access.level.1 (with config setting settings.equal-access: deny ) |
OpenInv.override |
openinv.access.level.2 |
OpenInv.crossworld |
openinv.access.crossworld |
OpenInv.search |
openinv.search.inventory |
OpenInv.searchenchant |
openinv.search.inventory |
OpenInv.anychest |
openinv.container.any |
OpenInv.any.default |
N/A: feature removed - only affects first usage. |
OpenInv.silent |
openinv.container.silent |
OpenInv.silent.default |
N/A: feature removed - only affects first usage. |
OpenInv.spectate |
openinv.spectate.click |