Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Tags
Creators
Details
Infused Power
Adds attributes to all armor, weapons and tools
Empower your items with Arcane Energy, forge your own build,
and prove it against the powerful invaders of the Rift.
ℹ️ This mod is in early beta and can still have bugs. Back up worlds you care about before adding it.
🎲Classed Gear |
✦Empower & Reforge |
⚔️The Rift |
💍Accessories Too |
⭐50+ Attributes |
📖No Knowledge Needed |
What Is This?
Infused Power adds attributes to all armor, weapons and tools. Become a Battlemage, a Paladin, a lethal Assassin or an unbreakable Juggernaut. Every class is built from a curated pool of 50+ attributes.

Set bonuses: wearing matching armor classes together grants bonuses
Unique drops: rare unique armor classes can be found in chests
Material matters: early-game materials roll better stats, so early gear can stay useful
| Material | Bonus to rolled values |
|---|---|
| Leather | +30% |
| Gold | +20% |
| Iron | +10% |
⚔️ A taste of the arsenal
| Category | Examples |
|---|---|
| Combat | Crit, Crit Damage, Super Crit, Backstab, Execution, Armor Pen, Combo, Fury |
| On-Hit | Bleed, Poison, Wither, Ignite, Freeze, Spellsurge |
| Defense | Dodge, Barrier, Block, Magic Resist, Thorn Armor, Frost / Flame / Decay / Venom Armor |
| Ranged | Explosive Arrow, Lightning Arrow, Gravity Arrow, Arrow Pierce |
| Utility | Lifesteal, Life on Hit, Heal on Kill, XP on Kill, Pack Leader, Dig Speed |
The Forge
Where ordinary gear becomes greater.
Infusion TableFeed gems or essence to gather Arcane Energy, then infuse your item to strengthen its attributes and raise its level. |
|
|
|
Arcane AnvilThe reforge bench. Reroll a single stat with a Lucky Gem, reroll everything with a Chaos Orb, strip a flaw with a Nullifying Gem, wipe an item clean with a Void Orb, or reach a new level of power with a Constellation Core. |
Arcane CauldronDissolve the gear you don't want into essences and shards, then craft them into the materials that improve your own gear. Note : You need a heat source (such as fire) below your Arcane Cauldron to activate it. |
|
💎 What powers the Infusion Table
Use gems, gem blocks, or the mod's essences to build Arcane Energy. Better materials give more:
| Gem | Power |
|---|---|
| Lapis Lazuli | 40 |
| Amethyst Shard | 50 |
| Emerald | 100 |
| Diamond | 600 |
With Tech Reborn or Aether installed: Red & Yellow Garnet (200), Ruby (300), Peridot & Sapphire (325), Zanite (450).
Gem blocks give 9x their gem's power, so a Block of Diamond is worth 5,400.
Leveling up an item costs 1,500, then 6,000, 22,000, and finally 40,000 Arcane Energy (the last tier needs a Constellation Core).
📜 Two more stations
Arcane Furnace, an early-game alternative to the Cauldron that slowly smelts class items into essences using ordinary fuel.

Armory Crate, a 91-slot vault that only holds class items, built for hoarding your collection.

The Rift Altar
A trial for every stage of the journey.
Open the Rift from your earliest levels and keep coming back as you grow. Scout a level before you commit: the altar shows its boss, theme, and wave count once you have reached it, while deeper levels stay a mystery until you arrive. Chase your best clear time and see how far you can push.
Survive timed waves of mobs and mini-bosses, then face the boss waiting at the end. The earlier levels are easier, but the deeper levels are a true endgame challenge. Clearing higher level rifts gives you greater rewards.

| Era | Levels | The challenge | Reward key |
|---|---|---|---|
| Pure | 1 to 64 | The opening trials | Rift Key |
| Greater | 65 to 121 | Armed foes and relentless reinforcements | Twisted Rift Key |
| Perfect | 122+ | Amplified enemy stats and mid-fight wave bosses | Cursed Rift Key |
⚡ Inside a Rift: Beams & Bonus Chests
⚡ Rift Beams: while you fight, glowing beacon-beam power-ups rise from the arena floor to help you during the battle. Run through one to claim a temporary combat boon:
| Beam | Boon |
|---|---|
| Wrath (red) | Double damage |
| Vitality (green) | Instant heal + regeneration |
| Swiftness (yellow) | Movement + attack speed |
| Immunity (blue) | Brief invulnerability |
| Feast (gold) | Restores hunger + saturation |

📦 Rift Bonus Chests: When you fight, you may have a chance to gain a bonus chests for extra loot. They come in five styles, each with its own glowing aura and its own leaning toward different rewards. Grab them between waves before the next one hits.

Compatibility
Right at home with your other mods.
| Mod | Integration |
|---|---|
| Accessories (optional) | Rings, amulets, gloves, capes and charms receive their own classes. Add the Accessories Compatibility Layer to extend this to Curios and Trinkets items too |
| JEI (optional) | In-game recipe viewing for the Infusion Table, Arcane Furnace, Arcane Cauldron and Arcane Anvil |
| EMI (optional, 1.21.1 only) | In-game recipe viewing for the Infusion Table, Arcane Furnace, Arcane Cauldron and Arcane Anvil |
| Aether, Oritech, SimplySwords | Plays well alongside, with unique classes themed for their gear |
And More to Discover
Essences, shards, gems, orbs, keys, guides and more await.

Make It Yours
Infused Power is built to be reshaped, and you do not need to know any code. Edit a plain-text file, save, and restart the game (or your server) to apply your changes. Open the guide below to begin.
📂 Open the customization guide
The first time you run the mod it creates this folder:
.minecraft/config/infusedpower/
(On a launcher with separate instances, look inside that instance's config folder.)
| Inside | What it controls |
|---|---|
classes/ |
What each class is: its name, color, rarity, where it drops, and the stats it can roll |
class_mappings/ |
Which classes an item can roll, plus per-item tuning |
class_mappings/BlacklistedFromClasses.txt |
Items that should never get a class |
🔑 Good to know: back up a file before editing it; after saving, restart the game (or your server) to apply changes; and remember that edits only affect items you obtain after the change, gear you already own keeps the stats it rolled.
Pick a goal below and expand it. Each one has a Show example you can click for the exact code.
🚫 Stop an item from ever getting a class
Open class_mappings/BlacklistedFromClasses.txt and add the item's ID on its own line. Save and restart, and that item will never roll a class.
Show example
minecraft:netherite_hoe
🎯 Make a class drop only from chests (or only from mobs, or only by crafting)
Open the class file in classes/ and add a sources line. The class will then appear only from the sources you list.
| Source | When the class can appear |
|---|---|
loot_chest |
Found in generated or structure chests |
loot_entity |
Dropped by a defeated mob |
loot_equipment |
A mob's worn gear that drops |
craft |
Crafted by the player |
inventory |
Any other way it enters your inventory (trades, pickup, creative, given) |
List several to allow more than one. Leave the line out entirely to allow all sources (the default). This is exactly how rare unique classes are kept chest-only.
Show example
"sources": ["loot_chest"]
Allowing two sources:
"sources": ["loot_chest", "loot_entity"]
🎲 Change which classes an item can roll (and how rare each is)
Open the matching file in class_mappings/ (for example minecraft_swords.json) and edit the classes list. Each entry's weight sets how likely it is (higher means more common). Add or remove lines to taste, then restart.
Show example
"classes": {
"berserker": { "weight": 100 },
"assassin": { "weight": 100 },
"paladin": { "weight": 50 },
"lichborn": { "weight": 10 }
}
🔢 Make a class globally rarer or more common, or turn it off
Open the class file in classes/. rollWeight sets its base chance everywhere (higher means more common), and enabled set to false switches the class off completely without deleting the file.
Show example
"rollWeight": 100,
"enabled": true
💪 Make an item roll stronger stats (material bonus)
In the item's class_mappings/ file, add a multiplier applied to every rolled value. 1.3 gives 30% stronger rolls, 0.8 makes them weaker. This is how leather, gold, and iron get their material bonuses.
Show example
"attribute_multiplier": 1.3
🚷 Ban or retune specific stats on an item
In the item's class_mappings/ file, exclude_attributes lists stats that will never roll on this item, and attribute_overrides changes a stat's min, max, or weight just for this item.
Show example
"exclude_attributes": ["infusedpower:generic.lifesteal"],
"attribute_overrides": {
"infusedpower:generic.critical_rate": { "min": 0.05, "max": 0.20, "weight": 30 }
}
➕ Add support for an item from another mod
You can target items two ways, and you often do not need an exact item ID:
- By tag (easiest). The mod reads item tags automatically, so if a modded item already belongs to a tag, one mapping covers every item that shares it.
- By item ID. Use this only when you want to single out one specific item.
Good to know:
- You rarely need item IDs, most modded gear already carries a tag (its own, or a shared one), and tags are tracked automatically.
- If an item is covered by both a tag mapping and an item mapping, the item mapping wins, because it is the more specific match.
- Vanilla-style gear (anything that behaves like a sword, axe, armor piece, and so on) and any accessory from the Accessories API are detected automatically, so they roll classes even without a mapping.
Show example
By tag, covering a whole group at once:
{
"tag": "farmersdelight:tools/knives",
"classes": {
"assassin": { "weight": 100 },
"rogue": { "weight": 100 }
}
}
By item ID, for one specific item:
{
"item": "supermod:ruby_sword",
"classes": { "warrior": { "weight": 100 } }
}
✨ Build a brand-new class
In classes/, copy an existing file (for example berserker.json), rename it, and edit it. Then add your new class id to any class_mappings/ file so items can roll it (see the guide above), then restart.
Show example
{
"id": "frostknight",
"displayName": "Frost Knight",
"namePrefix": "Frost Knight",
"color": "#55FFFF",
"rollWeight": 80,
"setBonus": true,
"weaponPool": [
{ "attribute": "infusedpower:generic.freeze_on_hit", "min": 0.05, "max": 0.15, "weight": 10 },
{ "attribute": "infusedpower:generic.critical_damage", "min": 0.05, "max": 0.20, "weight": 10 }
],
"armorPool": [
{ "attribute": "minecraft:generic.max_health", "min": 0.5, "max": 2.0, "weight": 10 }
],
"staticArmorModifiers": [
{ "attribute": "infusedpower:generic.freeze_attacker", "value": 0.05, "setBonusEligible": true }
]
}
🔣 Understanding values, weights and pools (read this before editing classes)
What the min and max numbers mean
The number you write is not always a percentage. How it shows in-game depends on the stat:
| Stat type | You write | The player sees | Example |
|---|---|---|---|
| Percentage stats (most of them) | a decimal | the value times 100, with % |
0.05 becomes +5%, 0.15 becomes +15% |
| Attack Damage, Attack Speed, Move Speed | a decimal | a percent of the item's base | 0.04 becomes +4% |
| Health, Armor, Armor Toughness, Thorns, XP, Arrow Pierce | the raw amount | the number as-is | 2.0 Health becomes +2 (2 health is 1 heart) |
| Dodge, Block, Armor Pen | a decimal | the value times 100, no % |
0.06 becomes +6 |
| Life on Hit, Heal on Hurt, Bleed, Pack Leader | the raw amount | the number with decimals | 0.5 becomes +0.50 |
The easy way: do not guess at numbers. Open a class that already uses the stat you want (for example
berserker.jsonhas Lifesteal and Crit Damage), copy itsminandmax, then nudge them. The in-game Attribute Guide explains what every stat does, and the Every attribute ID list further below gives the exact IDs to type.
operation (you can usually ignore this)
Leave it out and the mod picks the right behavior automatically: Attack Damage, Attack Speed, and Movement Speed scale off the item's base value, while everything else adds a flat amount. Only set operation if you specifically want to change that.
Two kinds of weight (rarity)
Weight can appear in two places, doing two different jobs:
rollWeightin a class file is that class's default rarity everywhere (higher means more common).weightinside a mapping overridesrollWeightfor that one item or group. If you list a class with no weight (like["warrior"]), it simply uses the class's ownrollWeight.
Weapon pool vs armor pool
A class rolls from weaponPool or armorPool depending on the item:
- Weapon pool: swords, axes, maces, bows, crossbows, tridents, knives, and tools (pickaxe, shovel, hoe, fishing rod).
- Armor pool: helmets, chestplates, leggings, boots, shields, and every accessory (rings, amulets, capes, and so on).
If you want a class to work on both armor and weapons, fill in both pools.
Names: namePrefix, nameSuffix, and namingMode
A class can define a prefix, a suffix, or both. The mapping's namingMode decides which actually appear:
"prefix"uses only the prefix, likeBerserker Iron Sword"suffix"uses only the suffix, likeIron Sword of the Guardian"both"(the default) allows both
Set bonuses
A set bonus needs two things to be true: the class has "setBonus": true, and the specific guaranteed stats are marked "setBonusEligible": true. Then each matching piece you wear past the first adds 20% to those stats: 2 pieces give x1.2, 3 pieces give x1.4, and so on with no cap. The tooltip shows the count, like Paladin Set: 2.
📖 Full field reference
Class file (classes/*.json)
| Field | Purpose |
|---|---|
id |
Unique internal name (used in mappings) |
displayName |
Name shown to players |
color |
Tooltip color, either hex ("#55FFFF") or a name ("aqua", "gold", "red", and so on) |
namePrefix / nameSuffix |
Text placed before or after the item name |
enabled |
true or false, switch the class on or off |
rollWeight |
Base rarity (higher means more common) |
sources |
Where it can appear (see the sources guide) |
validItems |
Restrict to specific item IDs only |
setBonus |
true means wearing 2 or more pieces boosts its set stats |
affixCountWeights |
How many stats it rolls, like [0,65,30,5] for mostly 2 to 3 |
negativeAffixChance / maxNegativeAffixes |
Chance (0 to 1) and max number of downsides |
weaponPool / armorPool |
Possible stats, entries of { attribute, min, max, weight } |
negativeWeaponPool / negativeArmorPool |
Possible downsides |
staticWeaponModifiers / staticArmorModifiers |
Guaranteed stats, { attribute, value, setBonusEligible } |
Mapping file (class_mappings/*.json)
| Field | Purpose |
|---|---|
tag |
Apply to a whole item group (like "minecraft:swords") |
item |
Apply to one specific item (overrides any tag) |
classes |
Which classes can roll, plus their weights |
namingMode |
"prefix", "suffix", or "both" (default) |
exclude_attributes |
Stats that cannot roll on this item |
attribute_overrides |
Change a stat's min, max, or weight for this item |
attribute_multiplier |
Scale all rolled values (like 1.3) |
Attribute IDs look like
infusedpower:generic.lifesteal(this mod's stats) orminecraft:generic.attack_damage(vanilla stats). The in-game Attribute Guide explains what each one does; for the exact IDs to type, see Every attribute ID below.
📋 Every attribute ID (copy-paste ready)
Every stat from this mod is written as infusedpower:generic.NAME, using one of the names below. Vanilla stats use minecraft:generic.NAME instead.
Combat and damage
critical_rate critical_damage super_crit double_hit combo_damage fury lifesteal backstab_damage execution_damage low_hp_damage armor_penetration magic_resist
On-hit effects
poison_on_hit wither_on_hit slowness_on_hit weakness_on_hit freeze_on_hit fire_on_hit disorient_on_hit bleed_on_hit spellsurge
Damage vs creature type
undead_damage arthropod_damage aquatic_damage illager_damage airborne_damage
Defense
dodge barrier block_chance poison_immunity cleanse_on_hurt
When you are hurt
regen_on_hurt resist_on_hurt speed_on_hurt heal_on_hurt percent_heal_on_hurt
Reactive armor (hurts attackers)
thorns freeze_attacker fire_attacker wither_attacker poison_attacker
Healing and utility
life_on_hit life_on_execute bonus_xp bonus_xp_mining_ore bonus_durability pack_leader dig_speed
Ranged
draw_speed accuracy arrow_velocity arrow_damage explosive_arrow lightning_arrow gravity_arrow pierce
Movement and water
swim_speed water_gravity
Common vanilla stats (use the minecraft:generic. prefix)
attack_damage attack_speed max_health armor armor_toughness movement_speed knockback_resistance attack_knockback luck max_absorption
🧩 Every parameter in one place
Complete reference files using every field at once. You only ever use the fields you need. A couple of notes: for affix counts you normally pick either minPositiveAffixes/maxPositiveAffixes or affixCountWeights (not both), and operation on a stat is optional (defaults are sensible).
Show a class file with every field
{
"id": "example_class",
"displayName": "Example Class",
"namePrefix": "Example",
"nameSuffix": "of Power",
"color": "#55FFFF",
"enabled": true,
"rollWeight": 100,
"sources": ["loot_chest", "loot_entity", "loot_equipment", "craft", "inventory"],
"validItems": ["minecraft:diamond_sword", "minecraft:netherite_sword"],
"setBonus": true,
"minPositiveAffixes": 1,
"maxPositiveAffixes": 3,
"affixCountWeights": [0, 65, 30, 5],
"negativeAffixChance": 0.25,
"maxNegativeAffixes": 2,
"weaponPool": [
{ "attribute": "minecraft:generic.attack_damage", "min": 0.04, "max": 0.12, "weight": 10, "operation": "add_multiplied_base" },
{ "attribute": "infusedpower:generic.lifesteal", "min": 0.02, "max": 0.09, "weight": 10 }
],
"armorPool": [
{ "attribute": "minecraft:generic.max_health", "min": 0.5, "max": 2.0, "weight": 10 }
],
"negativeWeaponPool": [
{ "attribute": "minecraft:generic.attack_speed", "min": -0.06, "max": -0.02, "weight": 10 }
],
"negativeArmorPool": [
{ "attribute": "minecraft:generic.armor", "min": -0.6, "max": -0.2, "weight": 10 }
],
"staticWeaponModifiers": [
{ "attribute": "infusedpower:generic.fury", "value": 0.0135, "setBonusEligible": true }
],
"staticArmorModifiers": [
{ "attribute": "infusedpower:generic.fury", "min": 0.005, "max": 0.01, "operation": "add_value", "setBonusEligible": true }
]
}
How the trickier fields behave:
affixCountWeightssets how many positive stats roll. Each slot is a count: the 1st number is the weight for 1 stat, the 2nd for 2 stats, the 3rd for 3, and so on.[0, 65, 30, 5]means never 1 (0%), usually 2 (65%), sometimes 3 (30%), rarely 4 (5%). Weights are relative to their total, so here, where they add up to 100, each is also a percentage. The final count can never exceed the number of stats actually in the pool.- Pick one affix-count method. If you set
minPositiveAffixesandmaxPositiveAffixes, those win andaffixCountWeightsis ignored. Set neither and the mod's default spread is used. The example lists all three only for reference, you would normally keep just one. validItemsis a whitelist gate, not an override. Leave it out (or empty) and the class rolls on anything that maps to it. Fill it in and the class can land only on those exact items, even if a mapping lists the class elsewhere.sourcesworks the same way: leave it out to allow every source, or list only the ones you want.negativeAffixChanceandmaxNegativeAffixesonly matter when the class has a negative pool. The mod tries to add a downside alongside each positive stat:negativeAffixChance(0 to 1) is the chance each time, andmaxNegativeAffixescaps the total, and it never adds more negatives than positives.setBonusonly does anything if somestatic...Modifiersare marked"setBonusEligible": true.
Show a mapping file with every field
{
"tag": "minecraft:swords",
"item": "minecraft:diamond_sword",
"namingMode": "both",
"classes": {
"berserker": { "weight": 100 },
"lichborn": { "weight": 10 }
},
"exclude_attributes": ["infusedpower:generic.draw_speed"],
"attribute_overrides": {
"infusedpower:generic.critical_rate": { "min": 0.05, "max": 0.20, "weight": 30 }
},
"attribute_multiplier": 1.3
}
A mapping uses either
tagoritem. Both are shown here for reference, but if you include both, theitemmatch takes priority.
📦 For modpack makers
Tune everything to taste, then ship your edited config/infusedpower/ folder with your pack. Players get your classes, mappings, item support, and balance automatically, with no extra setup on their end.
Minecraft 1.21.1 & 1.21.11 · Fabric, Fabric API, Java 21
English, Français, Español, Deutsch, Português (BR)
Early beta, your feedback shapes the mod. Modpacks welcome, see the license for details.





