Material Json

Material Json

Mod

Makes tool & armour materials changeable through datapacks.

Client and server AdventureCursedEquipmentGame MechanicsLibraryManagementOptimizationUtility

113 downloads
5 followers
Created2 months ago
Updated2 months ago

Follow Save
Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.

🚨 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 least 1.
  • mining_speed: float
    • Specifies the mining speed.
      Must be a single-precision floating-point number at least 0.0.
  • 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.
  • mining_level: integer
    • Specifies the mining level.
      Must be a 32-bit integer number at least -1.
  • enchantability: integer
    • Specifies the enchantability.
      Must be a 32-bit integer number at least.
  • ingredient: resource_or_tag
    • Specifies the ingredient used for repairing.
      Must be a single item ID or a hash-prefixed item tag.

👑 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 least 1.
  • protection:
    • helmet|chestplate|leggings|boots: integer
      • Specifies the protection of the piece.
        Must be a 32-bit integer number at least 0.
  • enchantability: integer
    • Specifies the enchantability.
      Must be a 32-bit integer number at least.
  • equip_sound: resource_location
    • Specifies the sound when the armor is equipped.
      Must be a sound event as defined in sounds.json.
  • ingredient: resource_or_tag
    • Specifies the ingredient used for repairing.
      Must be a single item ID or a hash-prefixed item tag.
  • toughness: float
    • Specifies the armor toughness.
      Must be a single-precision floating-point number.
  • knockback_resistance: float
    • Specifies the knockback resistance.
      Must be a single-precision floating-point number.

Project members

boyonk

Member


Technical information

License
ARR
Client side
required
Server side
required
Project ID