Took a crack at the armor penetration mechanics; this is what I discovered

Got bored this past afternoon and decided to find the math involved for projectile penetration through armor as I couldn't find any recent sources showing the raw equations. Here's what I found in EFT.InventoryLogic.ArmorComponent.SetPenetrationStatus:

The graph shows percent probability of penetration on the vertical axis and a variable (ammo penetration value by default) on the horizontal. The d value is the armor durability percentage, the a value is the armor's "protection value," which I believe is ten times the armor class, and the p value is the ammo pen, which you can pull off of this fantastic wiki page. You can change the "modifier" function at the bottom (m) to 100 - x if you want the chance to block the projectile.

Interestingly, the probability is defined piecewise, depending on how far an indicator function (h in the graph) is above the ammo's penetration value.

What surprised me most was how much durability affected the chance to pen. Try setting p to a constant (e.g. 45, which usually wouldn't pen level 6 at all), and let d = x: The chance increases dramatically as the armor falls below half.

Obviously, there's a lot more to the system — ricochet chance, fragmentation chance, armor damage, blunt damage, etc. I'm excited to look into these soon. Oh, and if anyone has the armor class resistance values (I think from a file called global.json), that data would be greatly appreciated.


leave a comment

Your email address will not be published. Required fields are marked *