Back in BL2, I made a little thread about how Gun Damage can be calculated, with the intent that the formula I gave could be used for any character. There are a few references to it in the TPS info threads so far, because there hasn’t been one for TPS yet. That changes today.
This thread will follow a generally “top-down” format, where we’ll begin with a condensed equation that looks really simple, but each term will have a number of calculations involved. I find the math is easier to do in stages (as is most math, actually), so this will help people who get panic attacks when they see more than two sets of parentheses.
Anyway. Math bits will be in quotes for easy scrolling, and terms in the Basic Equation will be color-coded and in BIG letters.
I’ve overhauled the formula from BL2 and made adjustments to make it easier to use and understand.
Note that for the purposes of this formula, percentages are expressed in their decimal form. 1% would be 0.01, 10% would be 0.1, 100% would be 1, and so on.
Output = (NormalHit * SpecMult * CriticalHit + SplashDamage) * ElemBonus * TypeMod
That’s the basic breakdown. Looks simple enough, right? Remember the order of operations: Parentheses, Exponents, Multiplication, Division, Addition, Subtraction. Or Please Excuse My Dear Aunt Sally. Moving on now, let’s define each of the terms to the right of the = in order they appear in the formula.
NormalHit = (BaseDamage * (1 + GunDamage) + AmpDamage)
Easy. This term actually shows up again later. Note that Gun Damage, Weapon Damage, and bonuses to specific gun types (like Laser Damage) are generally the same thing, and all sources of these get added together. However, some things that increase Damage, Gun Damage, or Weapon Damage are “SpecMult” or Special Multipliers. Consult your individual Vault Hunter’s Gun Damage resource for more information.
SpecMult = (1 + SpecialMultiplier1) * (1 + SpecialMultiplier2), etc.
Not every Vault Hunter has Special Multipliers, but for those that have more than one, they’re usually multiplied to each-other in this way. For example, Athena’s Tear and Omega-Senshu might give you 35% each against a bleeding enemy below 50% health for 1.35 * 1.35 = 1.8225 for your SpecMult value.
CriticalHit = 2 * (1 + TypeA) * (1 + TypeB) / (1 + TypeC)
This one might be a little confusing. There are actually 3 different kinds of Critical Damage modifiers. There’s no way to tell which one is which by reading the text in-game, so it usually requires testing to make sense of it. Fortunately, Chuck80 has a very handy guide detailing which weapons and skills carry these and how much. Obviously this value only applies when scoring a Critical Hit, and in the case of multi-pellet weapons, only to the pellets that actually score a Critical Hit.
SplashDamage = NormalHit * SplashAmount * (1 + GrenadeDamage)? * SpecMult?
Ah, there’s that NormalHit term again. The reason this is sitting here is because Splash Damage doesn’t usually Crit. Nisha can score Critical Hits with it via Tombstone, so you would simply multiply SplashDamage by CriticalHit in that case.
Note that not all Splash Damage benefits from Grenade Damage bonuses. That’s why I put the question mark there. I’ll have another thread dedicated to Splash Damage in the near future that can further explain this, but for now I’ll say that for the most part, Torgue weapons that shoot the normal gyrojets (Slapper, Ravager, Spitter, etc) do get Grenade Damage bonuses on their splash, but most other weapons could go either way. When I get the thread up there’ll be a nice list for reference.
Also note that not all SpecMult (Special Multipliers) apply to Splash Damage, which is why that term shows up split between NormalHit and SplashDamage. The Splash Damage thread will also cover this.
Also also note that although NormalHit includes Amp Damage, sometimes it might not apply to your Splash damage. This isn’t really a function of the formula as much as it is a problem with the way Splash Damage is generated. Specifically, when the bullet hits the target, not when it leaves the barrel. This also causes issues with Claptraps’ One Last Thing skill.
ElemBonus = (1 + ElementalDamage + [SpecificElement]Damage) * FreezeBonus?
This illustrates that “Elemental Damage” is added to “Shock Damage,” or “Explosive Damage,” for example. This mostly concerns Athena because Maelstrom boosts “Elemental Damage” while she can also get various boosts to specific element damage as well from gear and such. Note that Nisha’s skill Magnificent 6 is normal Gun Damage (from NormalHit) that only applies to Non-Elemental guns. It doesn’t go here.
FreezeBonus is 3 if the damage type you’re dealing is Explosive and the enemy has a Freeze DOT. Otherwise it doesn’t apply.
TypeMod
This is a multiplier that depends on whether you’re hitting Flesh, Armor, or Shield, as well as the specific damage type you’re dealing and the difficulty level you’re playing. Lucky for you, I have a table: