For the hardcore number crunchers, the following are formulas used by the game to determine the end values of certain properties.
Damage Taken
IncomingDamage * (1 / (1 + SumOfDamageResistance / 100))
This formula does not take into account an extra difficulty-setting multiplier. When TotalDamageResistance is 100, damage is halved. Additional damage resistance beyond 100 has diminishing returns.
Stat Reduction
Formula used for stats involving “Reduction” percentages. Example for “regeneration delay reduction”:
DelayTime * (1 / (1 + ReductionPercentage))
Example: If default shield-regeneration delay time is 8 seconds, a “shield-regeneration delay reduction +15%” turns it into ~6.95 seconds. 8 * (1 / (1 + 15%)) = ~6.95
Bonuses
Regarding multiple bonuses to a stat, all bonuses are added together before being multiplied by the stat’s base value. For instance, the formula for damage bonuses is:
BaseDamage * (1 + SumOfDamageBonuses)