Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for kuqk

Game Mechanics, Utility

Report ItemBlocker?

๐Ÿ›ก๏ธ ItemBlocker

Paper Purpur Spigot GitHub Modrinth Hangar

Clean, detailed, and flexible item restrictions for modern Minecraft servers.
Block items, smithing results, enchantments, potion effects, inventory movement, hopper movement, and more on Minecraft 1.21.x, 26.1.

โœจ What Is ItemBlocker?

ItemBlocker is a plugin for server owners who want strong control over items without turning configuration into chaos.

It is built around a simple idea: keep one clear default section for global restrictions, then add presets for survival, events, minigames, worlds, or special modes when you need more specific rules.

That means you can do things like:

  • block TNT everywhere on the server
  • block Elytra only in one preset
  • block Smithing results like netherite tools
  • block specific enchantments from a chosen level
  • block potion effects instead of blocking every single potion item manually
  • stop restricted items from being moved through inventories or hoppers

๐Ÿง  How ItemBlocker Works

ItemBlocker is split into a few clean layers:

  • ๐ŸŒ default is your always-available global section
  • ๐Ÿ—‚๏ธ presets let you create separate groups of rules
  • ๐Ÿ“ฆ items let you block specific materials and actions
  • โœจ enchantments let you block enchants from a chosen minimum level
  • ๐Ÿงช potions let you block potion effects from a chosen minimum level
  • ๐Ÿ’ฌ reason lets you define the message players should understand

In practice, that means you are not limited to "item yes or no". You can decide:

  • what is blocked
  • where it is blocked
  • how it is blocked
  • why the player sees that restriction

๐ŸŒ Default Section

The default section lives in blocked-items.yml and acts as the global base for the whole server.

Use it when a restriction should always exist unless you intentionally manage something differently with presets.

Inside default, you can configure:

  • ๐Ÿ’ฌ one global reason
  • โœจ blocked enchantments
  • ๐Ÿงช blocked potions
  • ๐Ÿ“ฆ blocked items

This is the best place for things like:

  • admin-only items
  • dangerous survival shortcuts
  • overpowered enchants
  • potion effects you never want players to keep

๐Ÿ—‚๏ธ Presets

Presets live in presets.yml and are the main tool for grouped restrictions.

Each preset can have its own:

  • ๐Ÿ“ description
  • ๐Ÿ’ฌ reason
  • ๐ŸŒ preset worlds
  • โœจ enchantment rules
  • ๐Ÿงช potion rules
  • ๐Ÿ“ฆ item rules

๐Ÿ“Œ Important preset behavior

  • A preset can be active only in selected worlds.
  • An item inside that preset can also have its own worlds filter.
  • If you want the same item to behave differently in different places, use different presets instead of trying to overload one rule.

๐ŸŒ Worlds And Targeting

ItemBlocker lets you decide where rules apply in two places:

  • ๐ŸŒ on the preset itself
  • ๐Ÿ“ฆ on the individual item rule

worlds: all

This means the rule works in every world.

worlds: world,world_nether

This means the rule is only active in those listed worlds.

in:default and in:<preset>

This decides which target you are editing or showing with commands.

Examples:

/ib block TNT in:default
/ib block ELYTRA in:survival
/ib show TNT in:default
/ib show potion strength in:survival

๐Ÿ“ฆ Item Rules

Item rules are the core of the plugin.

Every item rule answers two questions:

  1. Which actions should be blocked?
  2. In which worlds should that rule work?

Each item can have one rule per target, and that rule can contain:

  • โš™๏ธ actions
  • ๐ŸŒ worlds

You can target an item directly by material name or use hand to use the item from the player's main hand.

Examples:

/ib block TNT
/ib block hand actions:use,drop in:survival
/ib edit ELYTRA worlds:world
/ib unblock BEDROCK in:default

โš”๏ธ Item Actions

ItemBlocker supports the following actions:

  • ๐Ÿ› ๏ธ crafting - blocks getting the result of a crafting recipe
  • ๐Ÿ“ฅ pickup - blocks picking the item up from the ground
  • ๐Ÿ“ค drop - blocks throwing the item out of inventory
  • ๐Ÿ–ฑ๏ธ use - blocks normal use of the item
  • ๐Ÿงฑ place - blocks placing blocks and special placeable items
  • ๐Ÿช– armor - blocks equipping wearable items
  • ๐ŸŽ’ inventory - blocks moving restricted items through inventories and containers
  • ๐Ÿ”„ hopper - blocks moving restricted items with hoppers
  • ๐Ÿ”จ smithing - blocks smithing-table results for that item

๐Ÿ› ๏ธ crafting

Use this when players should be able to own an item in some other way, but should not be allowed to craft it.

๐Ÿ“ฅ pickup

Use this when players should not be able to pick an item up from the ground at all.

๐Ÿ“ค drop

Use this when players should keep the item out of circulation and not throw it around.

๐Ÿ–ฑ๏ธ use

Use this when the item should exist, but should not be usable in normal right-click behavior.

๐Ÿงฑ place

Use this when an item should not be placed into the world.

This also covers special placement-style items, not only plain blocks. That makes it useful for things like:

  • boats
  • rafts
  • minecarts
  • item frames

๐Ÿช– armor

Use this when wearable items should not be equipped.

ItemBlocker also enforces armor restrictions when needed, so blocked armor is not only stopped on click but can also be removed from equipped slots when players join or change worlds.

๐ŸŽ’ inventory

Use this when restricted items should not be moved through GUI inventories and containers.

This helps with:

  • chest movement
  • shift-click transfers
  • drag operations
  • number-key swaps
  • offhand swaps into inventory UIs
  • double-click collection behavior

๐Ÿ”„ hopper

Use this when you want to stop automation from moving the item.

That makes hopper-based bypasses much harder.

๐Ÿ”จ Smithing Restrictions

smithing is a normal item action in ItemBlocker, not a separate weird subsystem.

That means you can block smithing results the same way you block any other action:

/ib block NETHERITE_SWORD actions:smithing
/ib block DIAMOND_CHESTPLATE actions:smithing in:survival

What this is good for

  • โ›๏ธ blocking netherite upgrades
  • ๐Ÿ›ก๏ธ blocking armor trim results
  • ๐Ÿงฐ blocking specific final smithing products without blocking the entire base item

Why it is useful

You may want players to:

  • own a diamond chestplate
  • move it normally
  • use it normally
  • but still not create the smithing-table result

That is exactly what actions:smithing is for.

โœจ Enchantment Restrictions

Enchantment rules let you block enchants by minimum level.

Example:

/ib block enchantment sharpness level:2
/ib block enchantment mending level:1 in:survival

How enchantment rules work

  • โœจ sharpness: 2 means Sharpness II and higher are blocked
  • โœจ mending: 1 means any Mending is blocked
  • โœจ rules can live in default or inside a preset

What ItemBlocker checks

Enchantment restrictions are used in two important ways:

  • ๐Ÿช„ they can block enchanting-table offers and enchanting results
  • ๐Ÿ“ฆ they can also block items that already contain a blocked enchantment

That second part is especially useful, because it means the plugin does not only stop future enchanting. It also reacts when players try to use or move items that already carry blocked enchants.

Stored enchantments are also checked, so enchanted books are covered too.

Good examples

  • block mending on a hardcore preset
  • allow sharpness 1 but block sharpness 2+
  • disable infinity only in survival worlds

๐Ÿงช Potion Effect Restrictions

Potion rules work similarly to enchantment rules: they use a minimum level.

Example:

/ib block potion strength level:2
/ib block potion speed level:2 in:survival

How potion rules work

  • ๐Ÿงช strength: 2 means Strength II and higher are blocked
  • ๐Ÿงช speed: 2 means Speed II and higher are blocked
  • ๐Ÿงช rules can be global or preset-based

What ItemBlocker actually blocks

Potion rules target the effect itself.

That means ItemBlocker can stop:

  • potion effects being applied to a player
  • blocked effects remaining active when a player joins
  • blocked effects remaining active when a player changes worlds

Important note

Potion-effect restrictions are not the same thing as item restrictions.

If you block strength: 2, the plugin blocks the Strength II effect itself. If you also want to block the potion item from being used, picked up, or moved, you should combine that with normal item rules.

๐Ÿ’ฌ Reasons, Source Info, And Player Feedback

Each target can define a reason, and that reason is used in the block message shown to players.

This makes the plugin feel much cleaner in real use, because players do not only see "blocked". They can also understand why.

Examples:

  • "&cThis item is blocked globally by the server team."
  • "&cThis item is disabled on survival worlds."

ItemBlocker can also show the source of the restriction, so players or staff can understand whether the block came from:

  • default
  • a specific preset

There is also a message cooldown in config.yml, which helps avoid chat spam when players keep trying the same blocked action.

๐Ÿงฐ Command Flow

The modern command flow is built around a small set of clear commands:

  • ๐ŸŸข /ib block - create a rule or merge into an existing one
  • ๐ŸŸก /ib edit - change only the parts you provide
  • ๐Ÿ”ด /ib unblock - remove a rule
  • ๐Ÿ” /ib show - inspect one item, preset, enchantment, or potion rule
  • ๐Ÿ“‹ /ib list - list configured items, presets, enchantments, potions, or a target
  • ๐Ÿ—‚๏ธ /ib preset - manage presets
  • ๐Ÿ”„ /ib reload - reload plugin files

Aliases:

  • /ib
  • /blocker

๐Ÿ“Œ Default command behavior

  • If you create a new item rule and do not provide actions:, it defaults to all.
  • If you create a new item rule and do not provide worlds:, it defaults to all.
  • If you do not provide in:, the target is default.
  • block merges into an existing rule instead of blindly replacing it.
  • edit requires the rule to already exist and only replaces the fields you pass.
  • Enchantment and potion rules default to level 1 if you do not provide a higher level.

๐Ÿงช Command Examples

๐Ÿ“ฆ Item examples

/ib block TNT
/ib block hand actions:use,drop in:survival
/ib block DIAMOND_CHESTPLATE actions:smithing
/ib edit TNT worlds:world_nether
/ib edit ELYTRA actions:use,inventory in:survival
/ib unblock COMMAND_BLOCK in:event
/ib show TNT
/ib show TNT in:default
/ib list items
/ib list items in:survival

โœจ Enchantment examples

/ib block enchantment sharpness level:2
/ib block enchantment mending level:1 in:survival
/ib unblock enchantment mending in:survival
/ib show enchantment sharpness
/ib show enchantment infinity in:survival
/ib list enchantments
/ib list enchantments in:survival

๐Ÿงช Potion examples

/ib block potion strength level:2
/ib block potion speed level:2 in:survival
/ib unblock potion strength in:default
/ib show potion speed
/ib show potion speed in:survival
/ib list potions
/ib list potions in:survival

๐Ÿ—‚๏ธ Preset examples

/ib preset list
/ib preset create survival
/ib preset show survival
/ib preset edit survival description Main survival restrictions
/ib preset edit survival reason &cThis item is disabled on survival worlds.
/ib preset edit survival worlds world,world_nether
/ib preset delete event

โš™๏ธ Configuration Files

ItemBlocker uses three main files:

  • config.yml
  • blocked-items.yml
  • presets.yml

โš™๏ธ config.yml

This file controls general plugin behavior.

What you can set here:

  • ๐ŸŒ plugin language
  • ๐Ÿ’ฌ message cooldown
  • ๐Ÿ” whether bypass permissions are enabled
  • ๐Ÿ”‘ the global bypass permission node
  • ๐Ÿงฉ whether per-action bypass permissions are enabled
  • ๐Ÿท๏ธ the permission prefix for per-action bypasses

Supported built-in languages:

  • en
  • pl
  • de
  • es
  • fr
  • it

๐ŸŒ blocked-items.yml

This file contains the global default section.

What you can set here:

  • ๐Ÿ’ฌ default reason
  • โœจ global enchantment thresholds
  • ๐Ÿงช global potion thresholds
  • ๐Ÿ“ฆ global item rules

Example:

default:
  reason: "&cThis item is blocked globally by the server team."

  enchantments:
    sharpness: 2
    mending: 1

  potions:
    strength: 2

  items:
    TNT:
      actions: all
      worlds: all

    BEDROCK:
      actions: all
      worlds: all

    NETHERITE_SWORD:
      actions:
        - smithing
      worlds: all

๐Ÿ—‚๏ธ presets.yml

This file contains grouped restrictions.

What you can set here for each preset:

  • ๐Ÿ“ description
  • ๐Ÿ’ฌ reason
  • ๐ŸŒ preset worlds
  • โœจ enchantment thresholds
  • ๐Ÿงช potion thresholds
  • ๐Ÿ“ฆ item rules

Example:

presets:
  survival:
    description: "Main survival restrictions."
    reason: "&cThis item is disabled on survival worlds."
    worlds:
      - world
      - world_nether

    enchantments:
      infinity: 1

    potions:
      speed: 2

    items:
      COMMAND_BLOCK:
        actions: all
        worlds: all

      ELYTRA:
        actions:
          - use
          - inventory
        worlds: all

      NETHERITE_PICKAXE:
        actions:
          - smithing
        worlds: all

๐Ÿ” Permissions

ItemBlocker includes both management permissions and bypass permissions.

๐Ÿงฐ Management permissions

itemblocker.*
itemblocker.use
itemblocker.add
itemblocker.remove
itemblocker.edit
itemblocker.list
itemblocker.reload
itemblocker.info
itemblocker.preset
itemblocker.enchantment
itemblocker.potion

๐Ÿšช Global bypass

itemblocker.bypass

This bypasses every ItemBlocker restriction.

๐Ÿงฉ Per-action bypass permissions

itemblocker.bypass.crafting
itemblocker.bypass.pickup
itemblocker.bypass.drop
itemblocker.bypass.use
itemblocker.bypass.place
itemblocker.bypass.armor
itemblocker.bypass.inventory
itemblocker.bypass.hopper
itemblocker.bypass.smithing
itemblocker.bypass.enchantment
itemblocker.bypass.potion

This is useful when you want staff or special ranks to ignore only selected checks instead of the whole plugin.

๐Ÿš€ Quick Start

  1. Put the jar into plugins/.
  2. Start the server once.
  3. Open config.yml and choose your language and bypass setup.
  4. Add global restrictions in blocked-items.yml.
  5. Create grouped restrictions in presets.yml if needed.
  6. Run /ib reload.
  7. Test your blocked items, enchantments, potion effects, and presets in game.

๐Ÿ“ฅ Download

โœ… Compatibility

  • โ˜• Java 21+
  • ๐Ÿงฉ Folia, Paper, Purpur, and Spigot
  • ๐ŸŽฎ Minecraft 1.21.x 26.1

๐Ÿ“œ License

GPL-3.0

Information

CategoryDeveloper Tools
Published onJanuary 3, 2026
LicenseGPL
Downloads49
Stars1
Watchers0
Supports Folia

Pinned Versions

Members

Avatar for kuqk

kuqk

Owner