RGItemGuard
Advanced item and enchantment control for WorldGuard regions
VANILLA • ITEMSADDER • ORAXEN • ADVANCEDENCHANTMENTS
What is RGItemGuard?
RGItemGuard lets you control which items players may carry when entering or remaining inside WorldGuard regions.
It is not limited to vanilla materials. It can identify custom items, enchanted books, applied enchantments, PersistentDataContainer keys, and CustomModelData. Rules support quantities, inventory slots, allowlists, blocklists, and nested logical conditions.
Ideal for spawns, mines, dungeons, arenas, events, prisons, PvP areas, and RPG servers.
Main features
- Block vanilla materials by region.
- Optional ItemsAdder and Oraxen support using real custom item IDs.
- Detect applied vanilla enchantments and enchantments stored in books.
- Optional, capability-based AdvancedEnchantments integration.
- Rules based on CustomModelData and PersistentDataContainer keys.
- Filter storage, main hand, offhand, armor, or the entire inventory.
- Quantity limits through
max_amount. - Inspect bundles and shulker boxes, including nested containers.
- Blocklist and allowlist modes per zone.
- Recursive
any,all, andnotconditions. - Composable actions: deny, warn, teleport, run commands, stay silent, or confiscate.
- Global safeguard against accidental confiscation.
- Persistent, paginated vault for confiscated items.
- Administrative restoration with dedicated permission and explicit confirmation.
- Administrative GUI for zones, worlds, regions, items, cooldowns, and actions.
- Configuration validation through a command or the GUI.
- Create exact rules directly from the item in your hand.
- Overlapping-region priorities and a custom WorldGuard flag.
- Optional PlaceholderAPI region counters.
- Adventure-based messages and interfaces.
- Legacy color code and hexadecimal color support.
Advanced rules
ItemsAdder custom item:
YAML:
rules:
- type: custom_item
provider: itemsadder
value: "weapons:ruby_sword"
Oraxen custom item:
YAML:
rules:
- type: custom_item
provider: oraxen
value: "ruby_sword"
Book containing Sharpness V or higher:
YAML:
rules:
- type: enchantment
value: "minecraft:sharpness"
minimum_level: 5
source: stored
AdvancedEnchantments custom enchantment:
YAML:
rules:
- type: custom_enchantment
provider: advancedenchantments
value: "telepathy"
minimum_level: 3
Combined logical rule:
YAML:
rules:
- all:
- type: material
value: DIAMOND_SWORD
- any:
- type: enchantment
value: minecraft:sharpness
minimum_level: 5
- not:
type: pdc
value: myserver:allowed
max_amount: 0
slots: [storage, main_hand, offhand, armor]
inspect_containers: true
Zone actions
Actions can be freely combined:
YAML:
actions:
- deny
- teleport
- commands
deny: prevents entry or cancels the teleport.warn: allows the player to remain and displays a warning.teleport: sends the player to the configured location.commands: runs configured console commands.silent: hides messages from the player.confiscate: moves matching items into a persistent vault.
Safety:
confiscate is disabled by default. It requires settings.allow_destructive_actions: true in addition to adding the action to a zone.WorldGuard integration
Associate a WorldGuard region with an existing RGItemGuard zone:
Code:
/rg flag <region> rgitemguard-zone <zone>
Example:
Code:
/rg flag spawn rgitemguard-zone spawn_zone
When regions overlap, RGItemGuard uses the explicit zone priority or the highest applicable WorldGuard region priority.
Commands
| Command | Description |
|---|---|
/rgig gui | Opens the administrative panel. |
/rgig reload | Reloads configuration, language, and caches. |
/rgig validate | Detects invalid materials, worlds, regions, rules, and actions. |
/rgig inspect | Inspects the item held in the main hand. |
/rgig integrations | Displays integrations that are currently operational. |
/rgig rule add-hand <zone> | Creates a rule from the held item. |
/rgig info | Displays restrictions for the current location. |
/rgig check <player> | Checks a player's inventory. |
/rgig confiscated <player> [page] | Opens the player's paginated vault. |
/rgig confiscated <player> restore confirm | Returns all recorded confiscated items. |
Permissions
| Permission | Description |
|---|---|
rgitemguard.admin | Access to administration and protected commands. |
rgitemguard.bypass | Bypasses all zone restrictions. |
rgitemguard.confiscated.view | Allows viewing confiscated-item vaults. |
rgitemguard.confiscated.restore | Allows restoring confiscated items. |
Dependencies
- Required: WorldGuard.
- Required by WorldGuard: WorldEdit.
- Optional: PlaceholderAPI, ItemsAdder, Oraxen, and AdvancedEnchantments.
Optional integrations are detected automatically. RGItemGuard can start without them.
Installation
- Install WorldEdit and WorldGuard on your Paper server.
- Place
RGItemGuard.jarinside thepluginsdirectory. - Restart the server.
- Configure zones in
plugins/RGItemGuard/config.ymlor use/rgig gui. - Run
/rgig validatebefore opening the server to players.
PlaceholderAPI
Code:
%rgitemguard_region_count_<region>%
Example:
Code:
%rgitemguard_region_count_spawn%
Designed to prevent bypasses
RGItemGuard revalidates players during movement, teleports, world changes, respawns, joins, item pickups, inventory changes, hand swaps, equipment changes, and vehicle movement.
Rules are cached and automatically rebuilt whenever the configuration is reloaded.
Protect your regions without limiting yourself to vanilla items.
RGItemGuard — region-based inventory control for modern Minecraft servers.
