Hey folks,

when I was trying to fix some bugs regarding defensive stats for coriolis I needed to understand how resistance stacking in Elite: Dangerous works. I got my knowledge from some posts in the forums, from edshipyard and verified them against some ingame stats. As I wasn't able to find a complete guide on how resistance stacking works in3.1.3, I thought I might as well write on myself. So here is how resistance stacking works.

The Basics

Damage Multipliers

Throughout this post I won't refer to resistances as resistances but as damage multipliers because that's how you can most easily do calculations with them. A resistance of 30% means, that you will receive 30% less damage of said damage source thus applyingdamage multiplierof 0.7 to any incoming damage.

Damage Multiplier Stacking

Damage multipliers in Elite: Dangerous are stacked multiplicatively.That means, that if you have three modules that give 10% resistance (damage multiplier of 0.9) you will end up with a resistance 0.9*0.9*0.9=0.729.

Diminishing Returns

There are two ways regarding diminishing returns on resistances. The first has simply to do with how mathematics work. Let's say you have a base resistance thermal resistance of 0% on your shields (damage multiplier of 1) and 3 shield boosters that give you 10% thermal resistance (damage multiplier of 0.9) each. Without any further diminishing returns taking effect this would result in an overall damage multiplier of 0.9*0.9*0.9=0.729. In the end, this means thatstacking damage multipliers will get ineffective over time because you will only lower an already low value by a fraction of it which will get smaller and smaller.

In the image below, you can see how stacking 0.8 damage multiplier modules will have diminishing returns, as the overall resistance (y-axis) will shrink slower and slower the more modules are in effect (x-axis).

However, Frontier have further diminishing returns implemented.Whenever a certain damage multiplier threshold is reached, any resistance below this threshold will be halfed. More formally, this that damage multipliers in the intervall [0, cap] are mapped to [0.5*cap, cap]. This results in the following graph.

Here the resistance cap is set at 0.7. The x-axis displays the "real" damage multiplier which you get by subsequently multiplying all of your damage multipliers and the y-axis is the effective damage multiplier after diminishing returns have been applied.

Applying the Knowledge

So the question remains, how does one determine the diminishing thresholds? This is rather simple.

Diminishing returns for armour start at a damage multiplier of 0.7, which means that one can never get a higher resistance rating than 65% which in itself is unobtainable.

Diminishing returns for shields start at a 0.7 * shield resistance. This means that if you want to have high resistances, pushing your shield's resistance is more effective than doing the same thing using shield boosters. This also means that shield boosters up to a total damage multiplier of 0.7 won't have diminishing returns.