
Material Json
Makes tool & armour materials changeable through datapacks.
About this Mod
🚨 1.20.5: Please note that due to changes in Minecraft's code, support for the latest version will take a while
Material Json
Ever wanted to change the durability of all Iron Tools? What about changing the protection amounts of Diamond Armor? Or the mining speed of Netherite? Well, with Material Json you can! Simple editing through Minecraft's datapack structure and .json files, allow you to do anything!
✅ Features
- Synced from server to client, instantly change anything on datapack reload!
- Support for mods that add new Weapons, Armor & Tools.
- Configuration allows for changing of any material for any Weapon, Armor or Tool.
⛏️ Tool Material Configuration
Tool materials can be configured in a datapack under <namespace>:materials/tool/<path>.json. Please note that datapacks can choose to override a single field from a datapack below it, by only specifying that field.
The .json file contains the following fields:
durability: integer- Specifies the durability.
Must be a 32-bit integer number at least1.
- Specifies the durability.
mining_speed: float- Specifies the mining speed.
Must be a single-precision floating-point number at least0.0.
- Specifies the mining speed.
attack_damage: float- Specifies the attack damage. Please note that individual items (e.g. swords) might add a bonus or malus to this.
Must be a single-precision floating-point number.
- Specifies the attack damage. Please note that individual items (e.g. swords) might add a bonus or malus to this.
mining_level: integer- Specifies the mining level.
Must be a 32-bit integer number at least-1.
- Specifies the mining level.
enchantability: integer- Specifies the enchantability.
Must be a 32-bit integer number at least.
- Specifies the enchantability.
ingredient: resource_or_tag- Specifies the ingredient used for repairing.
Must be a single item ID or a hash-prefixed item tag.
- Specifies the ingredient used for repairing.
👑 Armour Material Configuration
Tool materials can be configured in a datapack under <namespace>:materials/tool/<path>.json. Please note that datapacks can choose to override a single field from a datapack below it, by only specifying that field.
The .json file contains the following fields:
durability:helmet|chestplate|leggings|boots: integer- Specifies the durability of the piece.
Must be a 32-bit integer number at least1.
- Specifies the durability of the piece.
protection:helmet|chestplate|leggings|boots: integer- Specifies the protection of the piece.
Must be a 32-bit integer number at least0.
- Specifies the protection of the piece.
enchantability: integer- Specifies the enchantability.
Must be a 32-bit integer number at least.
- Specifies the enchantability.
equip_sound: resource_location- Specifies the sound when the armor is equipped.
Must be a sound event as defined in sounds.json.
- Specifies the sound when the armor is equipped.
ingredient: resource_or_tag- Specifies the ingredient used for repairing.
Must be a single item ID or a hash-prefixed item tag.
- Specifies the ingredient used for repairing.
toughness: float- Specifies the armor toughness.
Must be a single-precision floating-point number.
- Specifies the armor toughness.
knockback_resistance: float- Specifies the knockback resistance.
Must be a single-precision floating-point number.
- Specifies the knockback resistance.
Available Versions
How to Install Material Json on Your Server
Order Server
Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).
Set fabric Loader
In the panel under "Egg", select the fabric loader and matching Minecraft version (1.20.4).
Install Mod
Open the mod browser in the dashboard and search for "Material Json". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.
Compatibility
Mod Loaders
Minecraft Versions
1.20.4, 1.20.3, 1.20.2 (+2 more)
Server-side
✓ RequiredRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
Material Json server crashes on startup – what to do?
Most common cause: wrong fabric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.20.4). You can switch loaders with one click in the panel.
Is Material Json compatible with fabric?
Material Json officially supports fabric for Minecraft 1.20.4, 1.20.3, 1.20.2. The Mado dashboard automatically detects incompatible loader combinations.
Server lagging with Material Json – how to optimize performance?
Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Material Json consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.
Similar Mods
Rent Modded Server
Install Material Json with just one click on your server.