
About
Armor Set bonusess adds highly configurable armor sets to the game. When armor is equipped in a specific combination you will gain specific bonuses. This mod is perfect for modpack creators looking to further improve loadouts and gameplay.
The configuration options allow you to create any sort of armor set bonus, with any armor you want? Want to mix and match? Go for it! Want to have a bonus that gives 20 hearts? Sure why not (but you'll have to configure it)!
This mod works by reading JSON config files from the config/armor sets directory. When you first launch the mod, the directory will be created with some default sets.
Ingame, you can identify if a piece of equipment is a part of an armor set by looking at its tooltip.
Features
- Default generated armor sets on first load
- Any amount of armor sets can be created, with any combination (you don't have to specify ALL armor slots)
- Multiple set support, a piece of armor can be a part of more than one set
- "mixAndMatch" armor pieces, you can have a set be completed by multiple items (more below)
- Full and partial set bonuses
- Tooltips! With shift key interaction
- Real-time tooltip update, indicating what armor in the set is currently worn
- Potion effect support
- Attributes support
- Mod support for: potions, attributes and items
- Interaction support with other mobs (attack and interact)
- Self interaction, apply effects and also apply immunities to effects
- Dedicated Curios (Forge only) and Trinkets (Fabric only) Support
- LivingEntity support, any living mob can have the bonuses if they have the requirements
- Custom tooltips
- Conditions, bonuses can be activated based on specified conditions, such as "in water"
Wiki
You can access the wiki here. It contains a full JSON specification for the latest version of Armor Set Bonuses.
Warning: If you are not using the latest version of this mod, some features may not be available to you.
Help!
Before asking for help, please consult the wiki.
If you still need further help, you can open an issue here or ask on the discord.
Modpacks
You can use this mod in your modpack.
My Mods
If you like this mod, check out my other mods!

All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
|
R
20.14.0
|
1d ago | 1 | |||
|
R
20.14.0
|
1d ago | 1 | |||
|
R
19.14.0
|
1d ago | 1 | |||
|
R
19.14.0
|
1d ago | 1 | |||
|
R
18.14.0
|
1d ago | 1 | |||
|
R
18.14.0
|
1d ago | 1 | |||
|
R
16.14.0
|
1d ago | 1 | |||
|
R
16.14.0
|
1d ago | 1 | |||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 |
Fixed inBiome condition not inverting
Fixed onBlock condition not applying when the player is on a block that is not full size
Fixed hideBonusDescription not applying to partial set bonuses
Fixed issue when there is only one enchantment and shouldHave = false
Added new conditions:
- onFire - is the entity on fire?
- isRiding - is the entity riding another entity?
- yLevelRange - is the entity between y1,y2? ("extra": "y1,y2")
- healthRange - is the entity's health between x,y? ("extra": "x,y")
- armorRange - is the entity's armor between x,y? ("extra": "x,y")
Updated existing conditions:
- inBiome - now supports tags (eg: #forge:is_forest, #c:forest)
Added "percentageChance" feature, when applying any bonus you can set it to apply with chance. This number should be between 0 (exclusive) and 100 (exclusive).
Added "tagData" field to SetPiece objects. You can now define a tag that the equipped item must have in order for the effect to apply. This can be in "or" or "and" mode. The tag must be an escaped JSON.
Example tagData:
"boots": {
"itemKey": "minecraft:leather_boots",
"mustBeEmpty": false,
"tagData": {
"orMode": false,
"tags": [
"{\"Reforge\":\"quality_equipment.quality.crumbling\"}",
"{\"test\":\"data\"}"
]
}
}
Fixed inBiome condition not inverting
Fixed onBlock condition not applying when the player is on a block that is not full size
Fixed hideBonusDescription not applying to partial set bonuses
Fixed issue when there is only one enchantment and shouldHave = false
Added new conditions:
- onFire - is the entity on fire?
- isRiding - is the entity riding another entity?
- yLevelRange - is the entity between y1,y2? ("extra": "y1,y2")
- healthRange - is the entity's health between x,y? ("extra": "x,y")
- armorRange - is the entity's armor between x,y? ("extra": "x,y")
Updated existing conditions:
- inBiome - now supports tags (eg: #forge:is_forest, #c:forest)
Added "percentageChance" feature, when applying any bonus you can set it to apply with chance. This number should be between 0 (exclusive) and 100 (exclusive).
Added "tagData" field to SetPiece objects. You can now define a tag that the equipped item must have in order for the effect to apply. This can be in "or" or "and" mode. The tag must be an escaped JSON.
Example tagData:
"boots": {
"itemKey": "minecraft:leather_boots",
"mustBeEmpty": false,
"tagData": {
"orMode": false,
"tags": [
"{\"Reforge\":\"quality_equipment.quality.crumbling\"}",
"{\"test\":\"data\"}"
]
}
}
Fixed inBiome condition not inverting
Fixed onBlock condition not applying when the player is on a block that is not full size
Fixed hideBonusDescription not applying to partial set bonuses
Fixed issue when there is only one enchantment and shouldHave = false
Added new conditions:
- onFire - is the entity on fire?
- isRiding - is the entity riding another entity?
- yLevelRange - is the entity between y1,y2? ("extra": "y1,y2")
- healthRange - is the entity's health between x,y? ("extra": "x,y")
- armorRange - is the entity's armor between x,y? ("extra": "x,y")
Updated existing conditions:
- inBiome - now supports tags (eg: #forge:is_forest, #c:forest)
Added "percentageChance" feature, when applying any bonus you can set it to apply with chance. This number should be between 0 (exclusive) and 100 (exclusive).
Added "tagData" field to SetPiece objects. You can now define a tag that the equipped item must have in order for the effect to apply. This can be in "or" or "and" mode. The tag must be an escaped JSON.
Example tagData:
"boots": {
"itemKey": "minecraft:leather_boots",
"mustBeEmpty": false,
"tagData": {
"orMode": false,
"tags": [
"{\"Reforge\":\"quality_equipment.quality.crumbling\"}",
"{\"test\":\"data\"}"
]
}
}
Fixed inBiome condition not inverting
Fixed onBlock condition not applying when the player is on a block that is not full size
Fixed hideBonusDescription not applying to partial set bonuses
Fixed issue when there is only one enchantment and shouldHave = false
Added new conditions:
- onFire - is the entity on fire?
- isRiding - is the entity riding another entity?
- yLevelRange - is the entity between y1,y2? ("extra": "y1,y2")
- healthRange - is the entity's health between x,y? ("extra": "x,y")
- armorRange - is the entity's armor between x,y? ("extra": "x,y")
Updated existing conditions:
- inBiome - now supports tags (eg: #forge:is_forest, #c:forest)
Added "percentageChance" feature, when applying any bonus you can set it to apply with chance. This number should be between 0 (exclusive) and 100 (exclusive).
Added "tagData" field to SetPiece objects. You can now define a tag that the equipped item must have in order for the effect to apply. This can be in "or" or "and" mode. The tag must be an escaped JSON.
Example tagData:
"boots": {
"itemKey": "minecraft:leather_boots",
"mustBeEmpty": false,
"tagData": {
"orMode": false,
"tags": [
"{\"Reforge\":\"quality_equipment.quality.crumbling\"}",
"{\"test\":\"data\"}"
]
}
}
Fixed inBiome condition not inverting
Fixed onBlock condition not applying when the player is on a block that is not full size
Fixed hideBonusDescription not applying to partial set bonuses
Fixed issue when there is only one enchantment and shouldHave = false
Added new conditions:
- onFire - is the entity on fire?
- isRiding - is the entity riding another entity?
- yLevelRange - is the entity between y1,y2? ("extra": "y1,y2")
- healthRange - is the entity's health between x,y? ("extra": "x,y")
- armorRange - is the entity's armor between x,y? ("extra": "x,y")
Updated existing conditions:
- inBiome - now supports tags (eg: #forge:is_forest, #c:forest)
Added "percentageChance" feature, when applying any bonus you can set it to apply with chance. This number should be between 0 (exclusive) and 100 (exclusive).
Added "tagData" field to SetPiece objects. You can now define a tag that the equipped item must have in order for the effect to apply. This can be in "or" or "and" mode. The tag must be an escaped JSON.
Example tagData:
"boots": {
"itemKey": "minecraft:leather_boots",
"mustBeEmpty": false,
"tagData": {
"orMode": false,
"tags": [
"{\"Reforge\":\"quality_equipment.quality.crumbling\"}",
"{\"test\":\"data\"}"
]
}
}
Fixed inBiome condition not inverting
Fixed onBlock condition not applying when the player is on a block that is not full size
Fixed hideBonusDescription not applying to partial set bonuses
Fixed issue when there is only one enchantment and shouldHave = false
Added new conditions:
- onFire - is the entity on fire?
- isRiding - is the entity riding another entity?
- yLevelRange - is the entity between y1,y2? ("extra": "y1,y2")
- healthRange - is the entity's health between x,y? ("extra": "x,y")
- armorRange - is the entity's armor between x,y? ("extra": "x,y")
Updated existing conditions:
- inBiome - now supports tags (eg: #forge:is_forest, #c:forest)
Added "percentageChance" feature, when applying any bonus you can set it to apply with chance. This number should be between 0 (exclusive) and 100 (exclusive).
Added "tagData" field to SetPiece objects. You can now define a tag that the equipped item must have in order for the effect to apply. This can be in "or" or "and" mode. The tag must be an escaped JSON.
Example tagData:
"boots": {
"itemKey": "minecraft:leather_boots",
"mustBeEmpty": false,
"tagData": {
"orMode": false,
"tags": [
"{\"Reforge\":\"quality_equipment.quality.crumbling\"}",
"{\"test\":\"data\"}"
]
}
}
Fixed inBiome condition not inverting
Fixed onBlock condition not applying when the player is on a block that is not full size
Fixed hideBonusDescription not applying to partial set bonuses
Fixed issue when there is only one enchantment and shouldHave = false
Added new conditions:
- onFire - is the entity on fire?
- isRiding - is the entity riding another entity?
- yLevelRange - is the entity between y1,y2? ("extra": "y1,y2")
- healthRange - is the entity's health between x,y? ("extra": "x,y")
- armorRange - is the entity's armor between x,y? ("extra": "x,y")
Updated existing conditions:
- inBiome - now supports tags (eg: #forge:is_forest, #c:forest)
Added "percentageChance" feature, when applying any bonus you can set it to apply with chance. This number should be between 0 (exclusive) and 100 (exclusive).
Added "tagData" field to SetPiece objects. You can now define a tag that the equipped item must have in order for the effect to apply. This can be in "or" or "and" mode. The tag must be an escaped JSON.
Example tagData:
"boots": {
"itemKey": "minecraft:leather_boots",
"mustBeEmpty": false,
"tagData": {
"orMode": false,
"tags": [
"{\"Reforge\":\"quality_equipment.quality.crumbling\"}",
"{\"test\":\"data\"}"
]
}
}
Fixed inBiome condition not inverting
Fixed onBlock condition not applying when the player is on a block that is not full size
Fixed hideBonusDescription not applying to partial set bonuses
Fixed issue when there is only one enchantment and shouldHave = false
Added new conditions:
- onFire - is the entity on fire?
- isRiding - is the entity riding another entity?
- yLevelRange - is the entity between y1,y2? ("extra": "y1,y2")
- healthRange - is the entity's health between x,y? ("extra": "x,y")
- armorRange - is the entity's armor between x,y? ("extra": "x,y")
Updated existing conditions:
- inBiome - now supports tags (eg: #forge:is_forest, #c:forest)
Added "percentageChance" feature, when applying any bonus you can set it to apply with chance. This number should be between 0 (exclusive) and 100 (exclusive).
Added "tagData" field to SetPiece objects. You can now define a tag that the equipped item must have in order for the effect to apply. This can be in "or" or "and" mode. The tag must be an escaped JSON.
Example tagData:
"boots": {
"itemKey": "minecraft:leather_boots",
"mustBeEmpty": false,
"tagData": {
"orMode": false,
"tags": [
"{\"Reforge\":\"quality_equipment.quality.crumbling\"}",
"{\"test\":\"data\"}"
]
}
}
Fixed description going funky when a bonus has a custom description applied
Fixed description going funky when a bonus has a custom description applied
Fixed description going funky when a bonus has a custom description applied
Fixed description going funky when a bonus has a custom description applied
Fixed description going funky when a bonus has a custom description applied
Fixed description going funky when a bonus has a custom description applied
Fixed description going funky when a bonus has a custom description applied
Fixed description going funky when a bonus has a custom description applied
Added "inverted" option to conditions. If set to true, the bonus will apply when the condition is NOT met
Added "indimension" condition. Works the same as "inbiome" except it is for dimensions.
Improved tooltip display - if description field is declared but empty, it will not add anything to the tooltip
Fixed moon phase condition check
Fixed moon phase condition tooltip text
Fixed time condition check
Reworked internal code for better backwards-compatibility
Reworked translation code to make it more efficient
Backported V13 to LTS versions.
- Please note that the inBiome condition **is not available in 1.16.5**
Added "inverted" option to conditions. If set to true, the bonus will apply when the condition is NOT met
Added "indimension" condition. Works the same as "inbiome" except it is for dimensions.
Improved tooltip display - if description field is declared but empty, it will not add anything to the tooltip
Fixed moon phase condition check
Fixed moon phase condition tooltip text
Fixed time condition check
Reworked internal code for better backwards-compatibility
Reworked translation code to make it more efficient
Backported V13 to LTS versions.
- Please note that the inBiome condition **is not available in 1.16.5**
Added "inverted" option to conditions. If set to true, the bonus will apply when the condition is NOT met
Added "indimension" condition. Works the same as "inbiome" except it is for dimensions.
Improved tooltip display - if description field is declared but empty, it will not add anything to the tooltip
Fixed moon phase condition check
Fixed moon phase condition tooltip text
Fixed time condition check
Reworked internal code for better backwards-compatibility
Reworked translation code to make it more efficient
Backported V13 to LTS versions.
- Please note that the inBiome condition **is not available in 1.16.5**
Added "inverted" option to conditions. If set to true, the bonus will apply when the condition is NOT met
Added "indimension" condition. Works the same as "inbiome" except it is for dimensions.
Improved tooltip display - if description field is declared but empty, it will not add anything to the tooltip
Fixed moon phase condition check
Fixed moon phase condition tooltip text
Fixed time condition check
Reworked internal code for better backwards-compatibility
Reworked translation code to make it more efficient
Backported V13 to LTS versions.
- Please note that the inBiome condition **is not available in 1.16.5**
Added "inverted" option to conditions. If set to true, the bonus will apply when the condition is NOT met
Added "indimension" condition. Works the same as "inbiome" except it is for dimensions.
Improved tooltip display - if description field is declared but empty, it will not add anything to the tooltip
Fixed moon phase condition check
Fixed moon phase condition tooltip text
Fixed time condition check
Reworked internal code for better backwards-compatibility
Reworked translation code to make it more efficient
Backported V13 to LTS versions.
- Please note that the inBiome condition **is not available in 1.16.5**
Added "inverted" option to conditions. If set to true, the bonus will apply when the condition is NOT met
Added "indimension" condition. Works the same as "inbiome" except it is for dimensions.
Improved tooltip display - if description field is declared but empty, it will not add anything to the tooltip
Fixed moon phase condition check
Fixed moon phase condition tooltip text
Fixed time condition check
Reworked internal code for better backwards-compatibility
Reworked translation code to make it more efficient
Backported V13 to LTS versions.
- Please note that the inBiome condition **is not available in 1.16.5**
Added "inverted" option to conditions. If set to true, the bonus will apply when the condition is NOT met
Added "indimension" condition. Works the same as "inbiome" except it is for dimensions.
Improved tooltip display - if description field is declared but empty, it will not add anything to the tooltip
Fixed moon phase condition check
Fixed moon phase condition tooltip text
Fixed time condition check
Reworked internal code for better backwards-compatibility
Reworked translation code to make it more efficient
Backported V13 to LTS versions.
- Please note that the inBiome condition **is not available in 1.16.5**
Added "inverted" option to conditions. If set to true, the bonus will apply when the condition is NOT met
Added "indimension" condition. Works the same as "inbiome" except it is for dimensions.
Improved tooltip display - if description field is declared but empty, it will not add anything to the tooltip
Fixed moon phase condition check
Fixed moon phase condition tooltip text
Fixed time condition check
Reworked internal code for better backwards-compatibility
Reworked translation code to make it more efficient
Backported V13 to LTS versions.
- Please note that the inBiome condition **is not available in 1.16.5**
Fixed custom descriptions hiding the conditions tooltip text
Added "tooltipDescription" property for conditions, allows you to specifically override the conditions text with your own string/translation key.
Added new conditions (see wiki for uses):
- Time Range
- Moon Phase
Fixed custom descriptions hiding the conditions tooltip text
Added "tooltipDescription" property for conditions, allows you to specifically override the conditions text with your own string/translation key.
Added new conditions (see wiki for uses):
- Time Range
- Moon Phase
- In specific biome
Added check for enchantments (see wiki on how to use)
Changed all tooltips to use translation files. You can now translate!
- Bonus descriptions and custom tooltips also support translation keys. See the wiki on how to use.
- Take a look at this feature, even if you use english it allows you to change some of the tooltip text
Fixed armor set detection
Fixed amount of loaded/error sets reporting
Fabric only - changed how tooltips are added, should improve mod compatibility.
Improved error reporting - config issues now also appear ingame
- In specific biome
Added check for enchantments (see wiki on how to use)
Changed all tooltips to use translation files. You can now translate!
- Bonus descriptions and custom tooltips also support translation keys. See the wiki on how to use.
- Take a look at this feature, even if you use english it allows you to change some of the tooltip text
Fixed armor set detection
Fixed amount of loaded/error sets reporting
Fabric only - changed how tooltips are added, should improve mod compatibility.
Improved error reporting - config issues now also appear ingame
Fixed armor set detection
Fixed amount of loaded/error sets reporting
Fixed armor set detection
Fixed amount of loaded/error sets reporting




