Where can I find the current QOTM? - Charriu

Create an account  

 
Civ6 Combat Formula

I wrote up what my data says is a pretty good combat formula on the CivFanatics forum:  https://forums.civfanatics.com/threads/h...la.606147/

Damage = 30 * e^(StrengthDifference/25) * randomFactor

randomFactor seems to be +/- (0-25)%, or 0.75 to 1.25

+10 Strength means 150% damage and resistance.

Every strength point multiplies your damage dealt (and divides damage received) by ~1.041

An Army (3 units, +17 strength) deals 2x damage and receives 0.5x damage in return.  This means that an Army should be able to kill at least 3 equivalent units in a fight.  Possibly even 4.  Definitely cost effective!!!  Corps too.
Reply

Also explains why even small boosts to the apostles makes them so hard to deal with.
Blog | EitB | PF2 | PBEM 37 | PBEM 45G | RBDG1
Reply

Nice!

To save people like me confusion and the need to read your civfanatics post, what you wrote as "strength" in your formula is the difference between the strengths of the two units.
Reply

Yes. I realize in retrospect it's confusing, because you might want to plug in the 90 strength of a tank. I got so caught up in the numbers that it was just so obvious to me that Strength-Difference was the only meaningful term to talk about, and so why not just abbreviate that to strength, eh?

Formula in OP ammended to say StrengthDifference.
Reply

Huh. Yeah that's an intuitive formula....
Reply

This is incredibly useful. Kudos. bow bow bow
Reply

Another guy on the civfanatics forum found some values in GlobalParameters.xml and so the most likely formula is stated as:

randomBetween(24, 36) * e^(0.04*StrengthDifference)
Reply

Great work.  Restated, using the variables from the xml:

Damage = [ COMBAT_BASE_DAMAGE + Rand(0,COMBAT_MAX_EXTRA_DAMAGE) ] * exp( COMBAT_POWER_SCALING * StrengthDifference)

Damage = [24 + rand(0,12)] * exp(0.04 * StrengthDifference)

Damage cannot be less than COMBAT_MINIMUM_DAMAGE, which defaults to 1



Of course, this is exactly the same as the formula you came up with initially for the default xml parameters.
Reply

It's amazing how many ways there are to state the same thing, but the way you wrote it is probably how it's computed by the program itself.
Reply

This might be worth adding to the general civopedia thread for reference? IDK what qualifies, but I certainly have this in my notes.
Reply



Forum Jump: