I'm trying to add and check enchants on an item using NMS. For the longest time I was doing this with Item.addEnchantment() and Item.getItemMeta().hasEnchantment() but I was told that this is not the proper way and that professionals use NMS. So now here I am trying to learn NMS Enchanting. I think I am adding an enchant properly but I can't seem to get the list to check it afterwards. Here is what I have for adding the enchant: Code (Text): final ItemStack item = player.getInventory().getItemInMainHand(); final net.minecraft.server.v1_12_R1.ItemStack nmsStack = CraftItemStack.asNMSCopy(item); final NBTTagCompound compound = (nmsStack.hasTag()) ? nmsStack.getTag() : new NBTTagCompound(); final NBTTagList ench = new NBTTagList(); final NBTTagCompound enchant = new NBTTagCompound(); enchant.set("id", new NBTTagInt(118)); enchant.set("lvl", new NBTTagInt(1)); ench.add(enchant); compound.set("ench", ench); nmsStack.setTag(compound); player.getInventory().setItemInMainHand(CraftItemStack.asBukkitCopy(nmsStack)); and here is what I have for checking if it exists on the item: Code (Text): final ItemStack item = player.getInventory().getItemInMainHand(); final net.minecraft.server.v1_12_R1.ItemStack nmsStack = CraftItemStack.asNMSCopy(item); final NBTTagCompound compound = nmsStack.getTag(); final NBTTagList ench = compound.getList("ench", 0); player.sendMessage("" + ench.get(0).get("id")); player.sendMessage just prints null instead of 118 like I would expect so something is clearly wrong. I tried looking through the nms but it is all obfuscated with methods named as single letters and variables named var1, var2, etc so I really don't know what I'm doing here. Also I don't even know if this is the correct approach that the guy, who told me I was doing enchants wrong, was referring to. He just said when I asked what was wrong with my code that I should "Add a lore and NBT to represent the enchantment instead of using mc enchantment id" If I am going about this wrong could someone please provide an nms example of how to properly add check and use nms enchants? Thanks.