How to Add Custom Tools and Armor in Minecraft 26.3 (Fabric)
The Culture Vat makes Sporesteel Ingots. Now we put them to use: a full set of Sporesteel tools and armor, a step between iron and diamond. In the next episode this gear comes alive and starts repairing itself.
What you need: the Sporesteel project from episode 3, Minecraft 26.3, Fabric Loader 0.20.1, Fabric API 0.165.2+26.3 and Java 25.
The tool material
One ToolMaterial sets durability, speed, damage and repair item for every Sporesteel tool, and an item tag lists the ingot as the repair ingredient.
Registering the tools
Pickaxe, axe, shovel, hoe and sword, each registered with the material.
The armor material
Armor works the same way with an ArmorMaterial, plus an equipment asset so the game knows which texture to draw on the player.
Registering the armor
Helmet, chestplate, leggings and boots.
Recipes
Classic crafting shapes, with Sporesteel Ingots in place of iron.
Recap
You added a tool material, an armor material and nine pieces of gear with recipes. Next episode the gear becomes living metal that repairs itself.
Frequently asked questions
How do you add a custom tool material in Fabric?
Create a ToolMaterial with the durability, mining speed, attack bonus, enchantability, the tag of blocks it cannot mine and the tag of items that repair it, then use it for each pickaxe, axe, shovel, hoe and sword.
How do you add custom armor in Minecraft 26.3?
Define an ArmorMaterial with durability, defense per piece, enchantability, equip sound, toughness, knockback resistance, repair tag and an equipment asset key, then register a helmet, chestplate, leggings and boots that use it, plus the equipment model JSON and layer textures.
Why is my armor invisible when I wear it?
The equipment model is missing or points at the wrong texture. Add assets/<modid>/equipment/<name>.json and the humanoid and humanoid_leggings layer textures under textures/entity/equipment.
How do you add crafting recipes for modded items?
Add shaped recipe JSON files in data/<modid>/recipe, or generate them with Fabric's data generation API.