Channel Icon

Crazy Ozz

Official Channel Website

Command Block

Minecraft Java Effect Armor Generator

Assemble a full armor set (helmet, chestplate, leggings, and boots) for Minecraft Java Edition 1.20.5+, choose a different status effect for each piece, and automatically generate the /give command for each item, plus the detection command block that applies the effect while the piece is equipped — the effect disappears on its own as soon as the player removes the armor.

Version:
Helmet
Item & Effect
Material:
Effect:
Level (1-10):
Duration (seconds):
Show particles:
Name & Lore
Name:
Lore:
Enchantment glint:
Enchantments
Protection:
Blast Protection:
Fire Protection:
Projectile Protection:
Thorns:
Unbreaking:
Mending:
Curse of Binding:
Curse of Vanishing:
Respiration:
Aqua Affinity:
Chestplate
Item & Effect
Material:
Effect:
Level (1-10):
Duration (seconds):
Show particles:
Name & Lore
Name:
Lore:
Enchantment glint:
Enchantments
Protection:
Blast Protection:
Fire Protection:
Projectile Protection:
Thorns:
Unbreaking:
Mending:
Curse of Binding:
Curse of Vanishing:
Leggings
Item & Effect
Material:
Effect:
Level (1-10):
Duration (seconds):
Show particles:
Name & Lore
Name:
Lore:
Enchantment glint:
Enchantments
Protection:
Blast Protection:
Fire Protection:
Projectile Protection:
Thorns:
Unbreaking:
Mending:
Curse of Binding:
Curse of Vanishing:
Swift Sneak:
Boots
Item & Effect
Material:
Effect:
Level (1-10):
Duration (seconds):
Show particles:
Name & Lore
Name:
Lore:
Enchantment glint:
Enchantments
Protection:
Blast Protection:
Fire Protection:
Projectile Protection:
Thorns:
Unbreaking:
Mending:
Curse of Binding:
Curse of Vanishing:
Depth Strider:
Frost Walker:
Soul Speed:

Generated Commands

How to set up the system in-game:
  1. Click Show more on each piece to configure material, effect, level, particles, name, lore, and enchantments — everything stays hidden until expanded.
  2. Choose the correct version in the selector above before copying the commands — the syntax for name, lore, and detection changes between 1.20.5 to 1.21.4 and 1.21.5+ / 26+.
  3. Give the armor piece to the player using the generated /give command.
  4. For each enabled piece, create one Repeat, Always Active command block, powered by a redstone block (or /setblock with always_active).
  5. Paste the apply effect command into it. The Duration (seconds) field for each piece defines this value: with 1 second (default), the effect is renewed every tick while the piece is equipped and disappears almost instantly when removed. Higher values make the effect last longer after the armor is removed.
  6. Repeat for each piece in the set that you enabled in the generator.

Want to create a cheap, lag-free Minecraft server?

I recommend Sparked Host: affordable plans, great performance, an easy panel, and fast support.

🚀 Create server on Sparked Host

How Effect Armor Works in Minecraft

Unlike standard /give commands, Minecraft doesn't have a native way to grant a status effect to an item just by equipping it. This generator solves this by tagging each piece with a unique custom_data tag and creating a detection command based on it.

In 1.21.5+ and 26+, detection uses the equipment component of the entity selector (nbt={equipment:{head:{...}}}), checking the item directly in each armor slot. In 1.20.5 to 1.21.4, the equipment component didn't exist in that format yet, so detection is handled by inventory slot (Inventory:[{Slot:103b,...}] for the helmet, for instance).

Instead of using an infinite duration and requiring a second command to remove the effect, the generator uses duration 1: since the command block runs every tick, the effect is constantly renewed while equipped and simply expires on its own as soon as the player takes off the item.

Frequently Asked Questions

Do I need to repeat the command block for every player?

No. The command targets @a, so it checks all players in the server or world at once.

Can I use the same effect on multiple pieces?

Yes, each piece has its own unique detection tag, so they function independently even with the same effect.

Why is there a version selector?

Because the formats for custom_name/item_name, lore, and the detection methods changed between Java Edition versions. Choosing the wrong version will cause the command to fail silently or text formatting to break.

Does it work on any Java Edition version?

This system relies on the custom_data component, available starting in 1.20.5. Use the generator's version selector to select the correct syntax for 1.20.5–1.21.4 or 1.21.5+/26+.