promotional bannermobile promotional banner

Durability Overhaul

Reworks and adds depth to Minecraft's durability system.
Back to Files

Durability Overhaul 2.0.0 (1.20.1 Fabric)

File namedurability_overhaul-2.0.0.jar
Uploaded
Jul 20, 2026
Downloads
12
Size
108.8 KB
Mod Loaders
FabricQuilt
File ID
8470627
Type
R
Release
Supported game versions
  • 1.20.1

Curse Maven Snippet

Fabric

modImplementation "curse.maven:durability-overhaul-972882:8470627"

Quilt

modImplementation "curse.maven:durability-overhaul-972882:8470627"

Learn more about Curse Maven

What's new

Changelog

2.0.0

The first release since 1.11.0, focused on the crashes and compatibility problems that had accumulated in the issue tracker, plus a proper in-game settings screen.

Crashes

  • Anvils no longer crash the world when they take damage. The injector that adds the broken anvil stage set a return value without being marked cancellable, which threw a CancellationException every time an anvil was chipped by use or landed from a fall. (#7, #18)

  • Fixed a crash when the last anvil stage breaks. Vanilla signals "destroy this block" by returning null from AnvilBlock.damage; the mod's replacement passed that null straight to setBlock. The null is now handled, and the broken anvil is properly destroyed rather than surviving forever.

  • Items broken inside a dispenser are no longer destroyed. Flint and steel and shears are the two items vanilla breaks through a dispenser rather than through a player, and that path reacted to the break by deleting the stack outright — the one thing this mod exists to prevent.

  • Broken items no longer accumulate damage forever. Because vanilla writes the damage value before the mod sees it, every further hit on an already-broken item pushed the number higher, which slowly distorted the wear penalty and the cost of repairing it.

Compatibility

  • Removed the last of the aggressive mixins. EnchantmentTableBlock.animateTick was being overwritten with a verbatim copy of the vanilla method, claiming the method against every other mod for no behavioural gain. AnvilMenu.mayPickup is now an injector rather than an overwrite. (#4)
  • Stopped overwriting the enchanting table menu. EnchantmentMenu.slotsChanged was being replaced with a verbatim copy of the vanilla method, which on Forge also deleted the EnchantmentLevelSetEvent hook other enchanting mods rely on. The enchanting change itself was never in that method.
  • Fixed the "Reference map could not be read" warning present in every crash log. Both loaders shipped an empty mixin config that declared a refmap which was never generated.
  • Durability bars belonging to other items are left alone. Bundles, and modded items that show a charge bar, were having their bar overwritten and rendered empty.
  • Broken crossbows no longer replay the reload animation on every right-click.
  • The Forge build no longer reports its version as 1.0.0mods.toml had the version hardcoded instead of using the value the build already supplied.
  • Removed a stray MANIFEST.MF that was being packaged at the root of the jar.

Fixes

  • Mending no longer repairs items. The check ran after vanilla had already performed the repair, so only the experience accounting was reverted. Setting the durability multiplier to 0 now correctly restores vanilla Mending. (#6)
  • Broken tools are actually broken. A missing early return let the wear penalty overwrite the broken-tool mining speed, so a broken diamond pickaxe still mined at close to full speed. (#8)
  • Broken tools no longer destroy the block they fail to mine. The block is now left standing instead of being replaced with air along with all its drops. (#8)
  • Items can be renamed in an anvil again. Undamaged and non-damageable items were rejected before the rename step was ever reached. (#16)
  • Anvil and enchanter repair now consumes the block of iron or amethyst. It was never taken from the inventory, making repairs free and unlimited. (#15)
  • Fixed item stacks becoming permanently unstackable. Several checks read the broken flag with getOrCreateTag(), which attaches empty NBT to any stack it touches; once tagged, a stack could never merge with an untouched copy again, and the damage persisted in the save. (#9)
  • Broken items keep partial repair progress. Previously a repair that did not complete in a single operation produced no result at all, wasting the material.
  • The anvil no longer swallows a second item that contributes nothing. Renaming while a fully worn twin sat in the second slot produced a result anyway, and taking it destroyed that item for free.
  • The anvil repair sound no longer plays twice for the player performing the repair.
  • Added the missing Durable enchantment description, so Enchantment Descriptions shows it. (#10)
  • Added a Simplified Chinese translation. (#13, thanks to Sigmenzzz)

Settings

  • Added an in-game settings screen with every option, reachable from the Config button in Forge's mod list or from a keybind (unbound by default — set it under Controls).
  • New options: durability tooltip toggle, durability bar toggle, anvil damage chance, broken tool mining speed, whether broken tools break blocks, and whether broken ranged weapons jam. (#11)
  • The crafting-grid repair and anvil repair options are now actually consulted; both were previously ignored.

This mod has no additional files