When modding anything in WARFRAME, the order in which bonuses are applied follows a pattern. With the exception of mods that provide elemental damage bonuses, the order in which mods are installed does not matter; the resultant stats will always be the same regardless of the mod configuration.[1] The same goes for temporary or conditional buffs and debuffs from abilities, mods, Arcane Enhancements, and enemies.
- Last updated: Tue, 07 Jan 2025 12:48:00 +0000 (UTC) by User:116.87.149.198
Semantics[]
Percent Bonuses vs. Multipliers[]
In most cases in WARFRAME, percent bonuses to stats (not to be confused with flat percentage points) can also be represented as stat multipliers using the following conversion:
- Converting percent bonuses to multipliers.
For simplicity, calculations in this article (and throughout the wiki) will represent percent bonuses as decimals and will use 1 + Net Percent Bonus as a decimal expression instead.
Complementary Percentages[]
Many stat modifiers in WARFRAME are expressed in terms of percentages, but there may be more than one way to describe the same stat modifier.
For example, Damage Vulnerability can be expressed in terms of Damage Reduction. If an enemy is 25% more vulnerable to taking Impact damage (e.g. +25% Impact damage bonus), one can also say that the enemy:
- Is 25% less resistance to taking Impact damage (e.g. -25% Impact damage reduction)
- Is 125% vulnerable (100% + 25%) to Impact damage (notice "more" is omitted)
- Has -25% resistance to incoming Impact damage (negative resistance is equivalent to vulnerability)
- Has a 0.75x multiplier (100% - 25%) to incoming Impact damage
Overview[]
Operation On Base Stat | Bonus Stacking Behavior | Internal Name ( OperationType ) |
Typical Context | Example(s) |
---|---|---|---|---|
Addition | Additive Stacking | ADD |
Flat value or percentage point bonuses:
|
Entropy Burst's status chance bonus
Final Status Chance = Base Status Chance + 20
Laetum's Elemental Excess perk (-10 critical chance percentage points) Final Critical Chance = Base Critical Chance + -10
|
Multiplication | Additive Stacking | STACKING_MULTIPLY |
Most common bonus, applies to almost all percentage-based bonuses:
|
Serration's and Heavy Caliber's damage bonus
Final Damage = Base Damage * (1 + 1.65 + 1.65) |
Multiplication | Multiplicative Stacking | MULTIPLY |
|
Antitoxin's and Toxin Resistance's damage resistance to Toxin
Damage Taken = Initial Toxin Damage * ( 0.55 * 0.85) Affinity bonuses Total Affinity = Initial Affinity * 2 * 1.3 * 1.25 |
Override | N/A | SET |
Very rare bonus type used to set a stat at a particular value, ignoring all negative or positive modifiers |
|
- Note that there are known instances where a particular stat can have flat value and percentage-based bonuses. For example, Stinging Truth provides a flat increase to Magazine Capacity for the Viper while Slip Magazine provides a +30% Magazine Capacity bonus at max rank. In these scenarios, typically percentage-based bonuses are applied to the base stat first then flat value increases. For example:
Final Magazine Capacity = 14 * (1 + 0.3) + 40
Additive Stacking[]
Percent Bonuses[]
- Generic formula for additive stacking percent bonuses.
All sources that add a percent bonus of the same type will typically have their bonuses added together. This commonly referred to as additive stacking (internally represented as STACKING_MULTIPLY
operation type). For example, if a primary weapon has Serration (+165% damage) and Heavy Caliber (+165% damage) installed, it will receive a total of +330% bonus base damage or 4.3x the base damage.
This is true of all percent bonuses, not just damage. For example, combining Speed Trigger (+60% fire rate) and Shred (+30% fire rate, +1.2 punch-through) will give a total of +90% bonus fire rate.
Flat Value and Percentage Point Bonuses[]
- Generic formula for additive stacking flat value and percentage point bonuses.
Sources that grant flat value or percentage point increases are typically applied after all other bonuses are applied (internally represented as ADD
operation type). For example, say a melee weapon with 20% critical chance and True Steel equipped has 0.2 × (1 + 1.2) = 44% critical chance. Since a max ranked Arcane Avenger grants a flat 45% critical chance when triggered, the melee weapon will have 0.44 + 0.45 = 89% critical chance as a result.
Note that flat bonuses are additive with each other. Using the previous example, if the player's Adarza Kavat's Cat's Eye buff triggers (adding a flat 60% critical chance), then the resultant critical chance will be 0.44 + 0.45 + 0.6 = 149%.
- Exceptions
- Piercing Navigator - applied before other bonuses are applied, effectively increasing the base stat
- Ballistic Battery - applied after base damage bonuses but before other bonuses/multipliers
- Volt's passive - applied after base damage and elemental bonuses but before critical damage multiplier and Sniper Rifle combo counter
- Energy Channel - applied after the critical damage multiplier
Multiplicative Stacking[]
- Generic formula for multiplicative stacking bonuses.
Sources that affect the same fundamental stat but have different conditions for granting its bonuses will typically have their bonuses multiplied together (but not always such as Chroma's Vex Armor additively stacking with base damage mods). This is commonly referred to as multiplicative stacking. For example, a primary weapon with Serration (+165% damage) and Bane of Grineer (+30% damage to Grineer) would result in a [(1 + 1.65) × (1 + 0.3) - 1] = 244.5% bonus in base damage against Grineer enemies. Note that multiplicative stacking effects grant greater bonuses than additive stacking. For example, if Serration and Bane of Grineer were to additively stack, it would only grant 1.65 + 0.3 = 195% bonus base damage.
Examples of sources of damage bonuses/multipliers that will multiplicatively stack with each other:
- Serration (2.65x base damage in all situations)
- Cryo Rounds (1.9x Cold elemental damage on top of base damage)
- Viral procs (up to 4.25x damage on health)
- Bane of Infested (1.3x damage against Infested)
- Lasting Purity (1.6x damage on aiming)
- Primed Chamber (2x damage on first shot)
- Eclipse (3x damage)
- Headshots (2x damage on headshot)
- Damage Reduction from Armor
Exponential Stacking[]
In rare instances, some bonuses are applied to itself multiplicatively and is multiplicative with all other bonuses. This is often referred to as exponential stacking. For example, Arca Titron has a unique mechanic where each successive kill adds a charge that multiplies the next slam radial damage bonus by 2 using the following equation:
- Total Radial Damage = Base Radial Damage × 2n (where n is the number of charges)
Opportunity Cost In Modding[]
Additive Stacking[]
Players may refer to additive stacking having "diminishing returns" (despite being linear increases; a more accurate term would be "opportunity cost"), meaning that at higher percent bonuses, the additional value gained per additional percent bonuses is less, relatively speaking. For instance, if one were to equip a secondary that dealt 100 base damage:
- Adding a maxed rank Hornet Strike (+220%), it would deal 320 base damage, a 2.2 / 1 = 220% relative increase in base damage.
- Adding a maxed rank Magnum Force (+165%), it will deal 485 base damage, a 1.65 / (1 + 2.2) = 51.5625% relative increase in base damage over just equipping Hornet Strike.
- Adding a maxed rank Augur Pact (+90%), it will deal 575 base damage, a 0.9 / (1 + 2.2 + 1.65) = 18.5567% relative increase in base damage over just equipping Hornet Strike and Magnum Force.
- Adding an unmodded Rank 3 Vex Armor at max buff (+275%), it will deal 850 base damage, a 2.75 / (1 + 2.2 + 1.65 + 0.9) = 47.8261% relative increase in base damage over just equipping Hornet Strike, Magnum Force, and Augur Pact.
- Notice that despite the larger base damage bonus of +275%, Vex Armor only provided a smaller relative increase in base damage.
- Adding a maxed rank Anemic Agility (-15%), it will deal 835 base damage, a -0.15 / (1 + 2.2 + 1.65 + 0.9 + 2.75) = −1.7647% relative increase (or 1.7647% relative decrease) in base damage over just equipping Hornet Strike, Magnum Force, Augur Pact, and with Vex Armor active.
- Notice that base damage bonus penalties are also relatively low at higher base damage bonuses.
Because of this, sometimes it is better to not equip mods that provide relatively lower additive bonuses due to opportunity cost. That mod slot is better reserved for bonuses that multiplicatively stack with other bonuses.
Armor[]
Although most Armor bonuses are percentage based (thus having "diminishing returns" strictly speaking on relative armor point increases) and that the relative increase of Damage Reduction percentage is smaller at higher armor values (e.g. the difference between 100 and 200 armor is 15% while the difference between 400 and 500 is 5.3571%), the actual number of effective health points (EHP) gained per additional point of armor does not have diminishing returns and remains constant (linear change). Every 300 armor points added will provide an additional 100% nominal health to EHP. This means that at higher armor values, the difference between EHP and nominal health is greater as seen in the above graph.
- Nominal health refers to listed health points as displayed in-game; in other words, it is the total health after mods and buffs are applied
- Simplified EHP calculation to demonstrate how damage reduction from armor can be expressed as a multiplier to nominal health. Every 300 armor points gained will increase the health multiplier by 1.
Multiplicative Stacking[]
Note that multiplicative stacking does not have "diminishing returns". For example, for a secondary that deals 100 base damage:
- Adding a maxed rank Hornet Strike (+220%), it would deal 320 base damage, a 220% relative increase in base damage or 3.2x base damage.
- Adding a maxed rank Bane of Infested (+30%), it will deal 416 base damage (against Infested enemies), a 30% relative increase in base damage over just equipping Hornet Strike or 1.3x the previous damage.
- On a headshot (2x), it will deal 832 base damage, a 100% relative increase in base damage over just equipping Hornet Strike and Bane of Infested or 2x the previous damage.
- Adding a Rank 3 Eclipse at max buff (3x), it will deal 2,496 base damage, a 200% relative increase in base damage over just equipping Hornet Strike, Bane of Infested, and on a headshot or 3x the previous damage.
Like multiplicative stacking, exponential stacking also has no "diminishing returns" since the next stat bonus always give the same relative additional value gained per additional percent bonuses as the previous bonus. For instance, the Arca Titron has a unique passive where kills increases the damage of the next Slam Radial Attack by 100%, stacks multiplicatively with itself up to 10 times. With an unmodded Arca Titron with a base radial damage of Electricity 360:
- At one charge, the total radial damage will be Electricity 720, a 2 / 1 = 2x increase in base radial damage.
- At two charges, the total radial damage will be Electricity 1440, a (2 * 2) / (1 * 2) = 2x increase in base radial damage over one charge.
- At three charges, the total radial damage will be Electricity 2880, a (2 * 2 * 2) / (1 * 2 * 2) = 2x increase in base radial damage over two charges.
- And so on.
Order of Operations[]
To summarize, the order in which bonuses for the same fundamental stat applies as follows:
- Bonuses that additively stack with each other
- For example, Serration and Heavy Caliber will additively stack separately from Bane of Orokin and Rhino's Roar despite affecting the same damage stat.
- Bonuses that multiplicatively stack with each other and the previous additive bonuses
- For example, bonus from Serration and Heavy Caliber will multiplicatively stack with the bonus from Bane of Orokin and Rhino's Roar
- Bonuses that grant a flat number or percentage points, additively stacking with each other
- Example equation demonstrating the above order.
- Expressing above equation as a product of summations since multiplicatively stacking bonuses can have additively stacking components.
Weapons[]
Types of Damage Bonuses[]
Mods primarily increase damage in one of four different ways:
- Some mods increase the base damage of the weapon. This is usually written as simply "+X% damage". For example, Hornet Strike and Serration.
- Some mods increase physical damage types: Slash, Impact, and Puncture. For example, Fanged Fusillade or Piercing Caliber.
- Some mods increase primary elemental damage types: Heat, Electricity, Cold, and Toxin. For example, Pathogen Rounds or Hellfire.
- Some mods increase damage against enemies of a certain faction (i.e. faction damage bonuses). For example, Bane of Corpus or Bane of Infested
The Damage Application Order[]
- When calculating damage, first base damage bonuses are added together and applied. For example, the Karak has a base damage of 29. Equipping a max rank Serration (+165% base damage) adds 1.65 × 29 = 47.85 additional damage for a total of 76.85 damage (the arsenal will round this number to 76.9). The added damage will be of the same damage type distribution the weapon innately deals.
- Then, all elemental and physical damage bonuses are calculated based on the modified base damage. For example, adding a Hellfire (+90% Heat damage) to a Karak that already has Serration equipped will add 90% of 76.85 for a total of 69.165 Heat damage. This damage is added to the base, and the Karak now deals a total of 146.015 damage if you add together all damage types.
- After that, faction damage bonuses are applied to all damage types. Note that faction damage bonuses will not be accounted for in the arsenal stats. A Karak equipped with Serration, Hellfire, and Bane of Corpus (+30% damage against Corpus) will deal an extra 0.3 × 76.85 = 23.055 physical damage and an extra 0.3 × 69.165 = 20.7495 Heat damage for a total of 189.8195 damage of all types.
Once damage is calculated, it may be affected by Critical Hit mechanics or modified based on the opponent's armor or sources of damage reduction. For detailed calculations of how various damage types affect different types of enemies, see the Damage page.
Multishot[]
For weapons that fire multiple projectiles like shotguns or Cernos Prime, the damage calculated is the damage dealt by each projectile. In other words, if the weapon only fires one projectile at a time, all of the damage is the base damage per projectile.
If the weapon has multishot from a mod like Split Chamber, it will have a percent chance to fire additional projectiles per shot, each of which will deal the full modded damage as if one projectile was shot. The arsenal will display multishot bonuses as percent increases in total damage when in fact this is not true in reality. The total damage stat shown in the arsenal actually reflects the average damage dealt per shot in this case. For example, a Karak with only Split Chamber equipped will see a 29 × 0.9 = 26.1 increase in damage for an average of 55.1 damage per shot.
For weapons that only fire a single projectile, Split Chamber's 90% multishot will cause each shot to randomly have a 90% chance to fire two projectiles instead of one. Since Cernos Prime already fires 3 arrows per shot, adding Split Chamber will make it fire 3 × 0.9 = 2.7 additional arrows, so each shot will fire at least 5 arrows, and 70% of shots will fire 6.
On continuous beam weapons like the Glaxion, multishot adds a chance to increase damage on a tick. For example, adding Split Chamber to a Glaxion will give a 90% chance for a damage tick to double as if two projectiles were shot.
Calculating Physical Damage[]
Physical damage mods apply only to base damage of the same type. For example, at max rank Fanged Fusillade increases Slash damage by +120%. The Karak does 29 damage split into 13 Impact, 8.7 Puncture, and 7.3 Slash. A Karak equipped a max rank Fanged Fusillade will gain 7.3 × 1.2 = 8.76 additional Slash damage for a total of 16.06 Slash and 37.76 total damage.
If a physical damage mod is added to a weapon that does no physical damage of the corresponding type, the mod will have no effect. For example, the Amprex does entirely Electricity damage when unmodded, so Fanged Fusillade will provide no Slash damage bonuses.
Calculating Elemental Damage[]
Elemental damage mods apply to all damage done by a weapon. For example, a max rank Hellfire adds 90% Heat damage to a rifle. If a Karak was equipped with a max rank Hellfire, it would gain 29 × 0.9 = 26.1 Heat damage.
Each two different elemental mods will be added up into a secondary element, with has different damage type modifiers against certain enemy health, shields, and armor classes. For combined elements, the slots are ordered from left to right, top row then bottom row, with any inherent elemental damage (from the weapon) added last.
For example, if both Hellfire (+ Heat damage) and Cryo Rounds (+ Cold damage) are equipped on an Amprex, they will combine to add Blast damage to the weapon's base Electricity damage. If only Hellfire is used, it will combine with the Amprex's base Electricity damage to make Radiation damage instead.
If multiple mods of the same element are added, only the first is used when making combinations. For example, if Hellfire, Cryo Rounds, and Thermite Rounds are added to an Amprex, no matter what the order is the weapon will deal Blast and Electricity damage since the Heat element has already combined with Cold, so the second Heat mod simply increases the amount of Blast damage dealt.
Combining Physical and Elemental Damage[]
Both physical and elemental damage are combined in the same step and are based only on the weapon's base damage and any mods that effect base damage.
In terms of raw damage, this makes a +90% elemental damage bonus superior to +90% physical damage bonus unless the weapon deals all of its damage as a single physical damage type. In reality, the total effect varies based on the health, shields, abd armor classes of enemy being damaged due to damage type vulnerabilities and resistances.
Damage Calculations[]
Patch History[]
Update 34.0 (2023-10-18)
- Base vs Final Stats in Modding - Health / Energy / Shield / Armor Stat Overhaul
If you’ve spent any time invested in the deeper nuances of Modding, you may be familiar with “Warframe Math” - math that upon first glance doesn’t really make sense, but once you learn the inner workings of the game, it all comes together. While we can appreciate the value that complex systems offer to a certain subsect of players, there are other aspects of the game that should have clear and understandable outcomes. Namely: Shield, Health, Energy, and Armor Modding.
Pop quiz: what is 300 + 440%? If you answered 740, you may just be an Excalibur player.
Vitality (+440% Heath), Redirection (+440% Shields), Flow (+150% Energy), and Steel Fiber (+110% Armor) come with large modifier values that don’t seem to match their outcome in-game. This is because these Mods apply their multiplier to the base stats of the Warframe - i.e., the stats you have at Rank 0. In the Excalibur example, a Rank 30 Excalibur’s Health stat of 300 earns an additional 440 Health from max rank Vitality (+440% Heath) since it applies to his base rank Health stat of 100, resulting in 740 total health.
In this update, we have removed this obfuscation by having Health, Shield, Energy, and Armor Mods apply to the stats of Warframes at their current rank. Continuing our Excalibur example, instead of Vitality always applying to Excalibur’s base rank 100 Health, it would apply to his Health stat based on his rank - namely, the stat you can actually see in your Arsenal. If your Excalibur were Rank 30, his Health stat would be 300, which means Vitality’s multiplier would be calculated off of 300.
With previous Health and Mod values, additional adjustments are needed to make this revision work while maintaining game balance. By only changing where the multiplier applies, a Rank 30 Excalibur would receive an extra 1,320 Health from max rank Vitality, resulting in a total health stat of 1,600. This outcome is a significant buff, which is not the intention of this system change.
To remedy this, we approached this problem in two ways:
1 - We reduced the overall multiplier for Health, Shield, Energy, and Armor Mods.
Since these now affect Max Rank Warframe stats, these Mods need to scale differently to maintain the status quo. Additionally, we wanted these new values to be as clear and understandable to all players as possible! Here are a few examples of these value changes:
- Vitality: Reduced from +440% to +100% Health
- Redirection: Reduced from +440% to +100% Shield Capacity
- Steel Fiber: Reduced from +110% to +100% Armor
- Flow: Reduced from +150% to +100% Energy Max
Note: These are not all of the Mods affected by this change. We share the comprehensive list further down in this section of the update notes.
Doing some quick math, this means that a Rank 30 Excalibur (300 Health) with a reworked Vitality Mod (+100% Health, applied to the final Health stat) would receive 300 extra Health, for a total of 600. That, in contrast, is a nerf, which we also don’t want to do.
So, our next step:
2 - We adjusted Warframe Health, Shield, Energy, and Armor values to keep the end result of the revised Mods as close to the original values as possible.
With this change, Excalibur’s Rank 30 Health stat is 370. With +100% Health from a max Vitality Mod, his resulting Health stat would be 740, which matches what it was originally.
While this path to the same result may seem a little complicated, the outcome matches our intention: we want players to be able to look at their Health, Shield, and Armor Mods, and be able to understand how they affect the stats they see in their Arsenal.
In addition to everything above, we also increased the base stat values for Warframes so that these revised Mods offer similar value for lower-ranked Frames. To do so, we reduced the amount of Health/Shield/Energy that Warframes earn per rank in half, and transferred the sum of that value to their base stats.
For Armor, this is the one stat that does not increase with your Warframe’s level (with some exceptions). Armor values across the board have been slightly increased to compensate for the Mod changes.
Not to beat a dead Kaithe, but Mods will now be applying to the Max Rank stat instead of the Base Rank. You may look at these numbers and think “nerf” or “buff” depending, but the outcome is that total Modded values are the same, if not a little higher in some cases.
- ↑ GreatBaldung (2016, May 11). Apparently moving mods around has a negative effect on stats. Reddit. Archived from the original on 2022-09-19. In rare instances, the UI may have rounding differences that are not reflective of gameplay performance when swapping positions of two mods. Image: https://imgur.com/a/ivHA1#XxsMw8F.