Attributes prefixed with **
or *
will act as multipliers, **
multiplies the attribute for the wielding entity (attributes gained from the item plus attributes gained from other sources such as armor or potions), stacks multiplicatively, *
multiplies the attribute for the module (module, improvements and tweaks), stacks additively. This is the multiply_base and multiply behaviour for attributes in vanilla minecraft (read more here), but tetra captures all modifiers with the multiply_base operation to multiply add modifiers internally before passing them on to the wielding entity.
Tetra passes on all attributes for handheld items (swords, double headed, single headed and shields) to the wielding entity when the item is held in the mainhand or the offhand, except for generic.attack_damage
which is only passed from the mainhand item.
{
"key": "basic_blade/iron",
"attributes": {
"generic.attack_damage": 5,
"generic.attack_speed": -0.2
}
}
The improvement in this example would increase the damage of the module it's added to by 10% and reduce the attack speed of the wielder by 20%.
{
"key": "blade/jagged",
"level": 1,
"attributes": {
"*generic.attack_damage": 0.1,
"**generic.attack_speed": -0.2
}
}