Minecraft Java Edition Mods – How to Enchant Non-Enchantable Items

minecraft-java-editionmods

I recently came across the map which had an enchanted Blaze Rod and Book. I've searched the forums, and nothing seems to clarify this. How can one enchant an un-enchantable item, e.g. Blaze Rod, Cyan Dye, Paper, etc. Is there a way to do this without mods?

Best Answer

You can enchant an item that is normally not enchantable with a couple of methods. One way is to use an anvil and an enchanted book in creative mode. In creative mode, the game ignores the normal rules of what can and cannot be enchanted.

You can also do it using commands with NBT data embedded within it. The format for the /give command is as follows:

/give [player] [item] [quantity] [data value] [NBT tags]

For this, we're interested in the [NBT tags] part. The format for the enchantment tag is {ench:[{id:x1,lvl:y1},{id:x2,lvl:y2},...]}. So the full command for just giving a player an enchanted item would be as follows:

/give [player] [item] [quantity] [data value (normally 0)] {ench:[{id:x1,lvl:y1},{id:x2,lvl:y2},...]}

Check out this post on the Minecraft Forums for more details about using NBT data in commands.

For example, if I wanted to give myself (or the player) a stick with Sharpness V and Silk Touch I, I'd use the following command:

/give @p stick 1 0 {ench:[{id:16,lvl:5},{id:33,lvl:1}]}

You can do this for any item, any enchantment, and any value of level.

Also, a note: using the /enchant command does not work. The /enchant command respects all normal enchantment rules, regardless of the gamemode of the player. Even though you can make an Efficiency V stick with an anvil in creative mode, you cannot do it using the /enchant command.