Skip to content

Datapack Behaviours

Dqu1J edited this page Apr 29, 2022 · 4 revisions

You'll need to know at least Some json to do this

Since 4.0.0, modpack developers can customize even more aspects of Additional Additions with behaviours. Behaviours currently can customize tool and armor stats.

What are behaviours? Those are json files that you'll need to write. Where do they go? In a datapack.


Structure of an example datapack that modifies the stats of gilded netherite chestplate

How to

All behaviours go in data/additionaladditions/behaviour folder of your datapack.

Materials: What and how you can customize

Those behaviours go in a subfolder named with the material name of the armor/tool material you want to customize.
For example, if you want to modify the stats of gilded netherite, create a folder called gilded_netherite inside the behaviour folder.
For example, if you want to modify the stats of rose gold, create a folder called rose_gold inside the behaviour folder.

Here are some properties:

Property Name Applies to Description Value type
durability Everything Changes the item's durability Integer
defense Armor Changes the armor item's defense/protection Integer
toughness Armor Changes the armor item's toughness Float
knockback_resistance Armor Changes the armor item's knockback resistance Float
attack_damage Tools/Sword Changes the item's attack damage Float
attack_speed Tools/Sword Changes the item's attack speed Float
mining_speed Tools Changes the item's mining speed Float

Those properties go into the json behaviour file you created.
Speaking of files, you'll also need names of them! Right, here they are

Behaviour/File Name Applies To Type (above table)
helmet Helmets Armor
chestplate Chestplates Armor
leggings Leggings Armor
boots Boots Armor
sword Swords Sword
axe Axes Tools
pickaxe Pickaxes Tools
shovel Shovels Tools
hoe Hoes Tools

In short:

  1. In the behaviour folder, create a subfolder named with the material name you want to customize
  2. Pick behaviour file name of the item you want to customize from the second table, and create it with the .json extension
  3. Add some properties you want to customize from the first table, you'll need to know at least some json to do this!
  4. Datapack should be ready!