Hello Addon Creators! This addon provides you a comprehensive and robust durability management system for custom tools and armor in Minecraft Bedrock Edition, aiming to replicate vanilla mechanics. Game Version: 1.21.110 or above.
Key features include:
- Accurate Unbreaking Enchantment for Armors and Tools: This addon implements the
Unbreakingenchantment logic, a feature missing for custom armor and tools in Bedrock.- Armors: It calculates the original, pre-reduction damage from an attack. It then uses this value to apply the vanilla-accurate logic of
Unbreakingenchantment to completely negate durability loss for that hit. - Tools: It correctly applies the Unbreaking enchantment logic by giving each use the exact same chance as in vanilla to not consume durability.
- Armors: It calculates the original, pre-reduction damage from an attack. It then uses this value to apply the vanilla-accurate logic of
- Consistent Tool Durability: It ensures tools with the custom component (
equipments_durability:has_durability) lose durability for special actions that are not always captured by default API events. To complete the experience, these interactions are also accompanied by their appropriate sound effects. This includes:- Stripping logs with an axe.
- Tilling dirt/grass into farmland with a hoe.
- Creating path blocks with a shovel.
- The sound of a tool breaking.
How To Use
- Step 1: You custom item must be in format version 1.21.110.

- Step 2: Add the "equipments_durability:has_durability" custom component to your custom tool or armor.

- Step 3: Add the correct tag to your item. If the item is a sword you must add the tag "minecraft:is_sword", if it's a pickaxe add the tag "minecraft:is_pickaxe", etc. Also add the tag "minecraft:is_tool" for tools and "minecraft:is_armor" for armors.

- Step 4: Add the "minecraft:durability" component to your armors and tools.

- Step 5: Add this Addon and your Addon to the world!
Examples:
- Armor:
{
"format_version": "1.21.110",
"minecraft:item": {
"description": {
"identifier": "custom_addon:amethyst_boots",
"menu_category": {
"category": "equipment",
"group": "minecraft:itemGroup.name.boots"
}
},
"components": {
"equipments_durability:has_durability": {},
"minecraft:tags": {
"tags": [
"minecraft:is_armor"
]
},
"minecraft:icon": "custom_addon:amethyst_boots",
"minecraft:max_stack_size": 1,
"minecraft:should_despawn": true,
"minecraft:durability": {
"max_durability": 550
},
"minecraft:display_name": {
"value": "item.custom_addon:amethyst_boots.name"
},
"minecraft:wearable": {
"protection": 5,
"slot": "slot.armor.feet"
},
"minecraft:enchantable": {
"value": 17,
"slot": "armor_feet"
},
"minecraft:repairable": {
"repair_items": [
{
"items": [
"minecraft::amethyst"
],
"repair_amount": "q.max_durability * 0.25"
},
{
"items": [
"custom_addon:amethyst_boots"
],
"repair_amount": "context.other->q.remaining_durability + 0.05 * context.other->q.max_durability"
}
]
}
}
}
}
- Tool:
{
"format_version": "1.21.110",
"minecraft:item": {
"description": {
"identifier": "custom_addon:amethyst_sword",
"menu_category": {
"category": "equipment",
"group": "minecraft:itemGroup.name.sword"
}
},
"components": {
"equipments_durability:has_durability": {},
"minecraft:tags": {
"tags": [
"minecraft:is_sword",
"minecraft:is_tool"
]
},
"minecraft:icon": "sword",
"minecraft:can_destroy_in_creative": false,
"minecraft:hand_equipped": true,
"minecraft:max_stack_size": 1,
"minecraft:should_despawn": true,
"minecraft:damage": {
"value": 10
},
"minecraft:durability": {
"max_durability": 2500
},
"minecraft:display_name": {
"value": "item.custom_addon:amethyst_sword.name"
},
"minecraft:enchantable": {
"slot": "sword",
"value": 13
},
"minecraft:repairable": {
"repair_items": [
{
"items": [
"custom_addon:amethyst_refined"
],
"repair_amount": "q.max_durability * 0.25"
},
{
"items": [
"custom_addon:amethyst_sword"
],
"repair_amount": "context.other->q.remaining_durability + 0.05 * context.other->q.max_durability"
}
]
},
"minecraft:digger": {
"use_efficiency": false,
"destroy_speeds": [
{
"block": "minecraft:mangrove_leaves",
"speed": 1
},
{
"block": "minecraft:cherry_leaves",
"speed": 1
},
{
"block": "minecraft:azalea_leaves_flowered",
"speed": 1
},
{
"block": "minecraft:azalea_leaves",
"speed": 1
},
{
"block": "minecraft:leaves2",
"speed": 1
},
{
"block": "minecraft:leaves",
"speed": 1
},
{
"block": "minecraft:bamboo",
"speed": 15
},
{
"block": "minecraft:web",
"speed": 15
}
]
}
}
}
}

