• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

unmerged(14603)

Captain
Feb 10, 2003
464
0
Visit site
To avoid hijacking the Carrier Mod thread I've moved the disussion about combat damage to this thread.

A summary of the points I've made follows.

The Math Guy has suggested that combat damage can be estimated using the formula Loss%/day = Attack value - .1 * Defense value. I don't know if he suggests that for all ranges of values. However when I used the formula to predict the effect of changes I had made to certain units I got unexpected results.

To better understand the changes I had made to those units I ran a series of tests. Effectivity was held constant for both sides at 100% during daylight (14 hours) and at 60% during night (10 hours). The only change to effectivity that occurred was the 1%/day dig in bonus each side gets starting on day 2. All units started at 100% strength.

What I found was that the following formula did a pretty good job (it slightly overestimated the actual results) of predicting land assault combat losses for the attacking unit:

Hits/day = Attack Value - Min((2/3 * Attack Value), (Defense Value - (Attack Value/3)))

For the defending unit there seemed to be a blocking bonus of 20-33% (I can't be precise) so that:

Hits/day = .75 * (same formula as above)

The formula does not do as well in predicting org loss. It is about as accurate as when predicting strength loss as long as hits are above approximately 15 per day. When the hits fall below 15 the formula increasingly overstates org loss (by hits = 5 the formula is predicting 5 times too much loss versus the test results) so I don't use the formula to predict org losses.

Obviously, I believe that Paradox is using a far more complex formula than the one above. However the formula does seem to work for predicting strength losses for all ranges of attack and defense values including multiple unit combats.

The most important observations from my tests are that GD seems to stop affecting combat losses when it approaches/exceeds the opponents attack value and that each side gets a minimum of hits = 1/3 * attack value (excluding the defending unit blocking bonus) no matter how high the defense versus attack ratio is.

When creating new units it would be very important to know whether the Math Guy's suggested formula, mine or some other is the best predictor. For example, the Math Guy's formula suggests that if you raise defense high enough (10 * attack) you should be able to block all shots while my formula suggests that at least 1/3 of the shots will get through no matter what the defense value is. Unlike having a minimum of 1 hit or some such "exception" rule, using 1/3 of attack value allows for a significant number of minimum hits when you raise overall attack values. Such a rule might explain the surprising strength of large weak-unit stacks over small strong-unit stacks.
 

unmerged(14603)

Captain
Feb 10, 2003
464
0
Visit site
FrEDa:

When translating hits in land assault combat into strength damage I am using the following average % per hit:

Armor/Mech cause hard opponent damage = 2%
Armor/Mech cause soft opponent damage = 1.5%
Other units cause hard opponent damage = 2%
Other units cause soft opponent damage = 2%

This may help you in testing the formula.

Edited: last % corrected to 2% not 1% as originally shown.
 
Last edited:

unmerged(13914)

Lt. General
Jan 20, 2003
1.224
0
www.ekaros.ca
mikel wrote:
When creating new units it would be very important to know whether the Math Guy's suggested formula, mine or some other is the best predictor. For example, the Math Guy's formula suggests that if you raise defense high enough (10 * attack) you should be able to block all shots while my formula suggests that at least 1/3 of the shots will get through no matter what the defense value is. Unlike having a minimum of 1 hit or some such "exception" rule, using 1/3 of attack value allows for a significant number of hits.

I can't spend much time on this tonight, it is WAY past my bedtime. But just to be clear, this isn't quite what I said. I may have said that you can block all shots with a high enough defense value, but I warned that that was putting it really simply. The actual mechanism is described in the manual and I've spelled it out a few places. Each point of defense value has a 1/10th chance of stopping one attack.

To compute the exact probabilities involved becomes VERY complicated, and that's why I sometimes give the simpler formulas. For example, let's say I have 50 defense and I'm being fired on by 1 attack point. You can compute the exact chance of being hit as:

0.90 ^ 50 = 0.005154

That's about 1 chance in 200. Simple. And it makes it clear that no amount of defense completely guarantees safety. However, if I have 50 defense and I'm being fired on by 2 attack points, the possible range of outcomes is huge, and unless you want to do a lot of work, some approximations become necessary.

The first defense shot could stop the first attack, in which case the odds of the second attack getting through would be:

0.90 ^ 49 = 0.005726

Or the first defense shot could miss, the second defense shot could stop the first attack, and the remaining 48 defense shots would be directed at the second attack. And so on. As FrEDa observed, it's a binomial distribution.

I'm quite confident that this is the way it works, and FrEDa, I think it offers some interesting design advantages, such as the fact that it's very elastic -- it will protect almost but not quite perfectly against a single attack, but it will also protect surprisingly well against a mass attack. Give Paradox credit, it's a clever idea.

Anyway, much too late here on the West Coast. More later when I've had some sleep.
 

FrEDa

Deus Vult
98 Badges
Oct 9, 2000
943
0
  • Europa Universalis III Complete
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • For the Motherland
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
  • Heir to the Throne
  • Europa Universalis III Complete
  • The Kings Crusade
  • Hearts of Iron II: Armageddon
  • Europa Universalis IV: Res Publica
  • Victoria: Revolutions
  • Europa Universalis: Rome
  • Semper Fi
  • Sengoku
  • 500k Club
  • Europa Universalis IV: Pre-order
  • Stellaris: Galaxy Edition
  • Crusader Kings II
  • Divine Wind
  • Europa Universalis III Complete
  • Europa Universalis III: Chronicles
  • Europa Universalis III
  • Diplomacy
  • Deus Vult
  • Arsenal of Democracy
  • Europa Universalis IV: Art of War
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Conclave
  • Europa Universalis: Rome Collectors Edition
  • Crusader Kings II: Way of Life
  • Pillars of Eternity
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Rome: Vae Victis
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Leviathans Story Pack
  • Europa Universalis III: Collection
  • Crusader Kings II: Reapers Due
  • 200k Club
  • Victoria 2
  • Hearts of Iron IV: Together for Victory
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Victoria 3 Sign Up
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: Cadet
Yes I agree MathGuy it's a very interesting way to depict combat.

Also, I think you're on the spot with the 'defense pool' scheme. I hadn't thought about it but it makes perfect sense. What I mean is that the defender gets for example 50 shots at trying to defend BUT the number of attempts to block the next shot is lowered by how many attempt it took to block all the previous (as you described).

By using this scheme, a very strong unit could hold it's end against few weaker enemies, but would probably loose to a huge stack.

In other words, the D value gives x numbers of tries to stop each attack, not each shot (5 enemies = 5 attacks).

That scheme makes calculations more complex, and I didn't use that when calculating the results in the previous thread (in addition I used 'attack pooling' as well.

How sure are you they are using that sort of algorithms, or did I get you wrong MathGuy?

Hmm, what happens if a shot goes through though, hmmm.. since none was blocked I suspect the old D attempts would remain. That would work nicely..

Another option is that the game uses 'attack pooling', thus ensuring that if the number of hits excedes the D value some hits will get in. In such a case :

6 units of SA 10 fighting a unit of D 50 would get at least 10 hits.

That wouldn't account for the scenario Mikel was talking about (with a D of 900) unless there's a cap on the D value we don't know about.

Argh, why don't I have access to MathLab now that I can do something usefull with it.. lol..

I'll try a PM to Johan and see if he can/will give us some insight..

/F
 

unmerged(14603)

Captain
Feb 10, 2003
464
0
Visit site
Math Guy I was hoping you would jump on this thread! We need your help.

To make radical changes to unit values (such as implementing your idea that HA be significantly changed to increase armor losses relative to non-armor) it is important that we can at least reasonably predict how much damage will be inflicted based on certain combinations of SA, HA, & GD.

My experiments (which I have repeated a large amount of times) seem to indicate that even with very large GD, significant strength damage can occur. It's not that damage does not go to zero that I find important, but that minimum damage is quite noticeable for all ranges. Also the amount of minimum damage seems to be proportional to the SAorHA of the shooting unit (the higher th SAorHA the higher the damage no matter how high the GD after GD = SAorHA).

Take for example an Inf SA = 30 shooting at an Inf GD = 30. Strength damage averages around 10% on the first day. If I raise the GD any further (up to 990) strength damage continues to average 10% on the first day. If I lower GD to 15 then strength damage goes to 25%. At GD = 21% damage = 23 %, etc.

If I change SA to 90 and GD to 90, damage averages around 30% and stays there no matter how high I raise GD. At GD = 60, damage = 70%, at GD = 15 damage = 85%, at GD = 21 damage = 83%, etc.

The pattern is quite noticable and seems to be reasonably predictable using the simple formula I mentioned earlier when estimating damage on the attacking unit(s). For defending unit(s) there appears to be a 20-30% blocking bonus.

If my formula is even a reasonable predictor, our abilty to raise armor damage versus non-armor damage is somewhat constrained because GD has no further impact once GD = SAorHA. Also using generally higher SAorHA will significantly increase the overall level of damage no matter what we do to GD. Soapy Frog may have experienced this effect in the results of his experiments posted in the Reinforcing thread.

The formula also seems a good predictor of the strength of large weak-unit stacks versus small strong-unit stacks. It works well in multiple unit combat 2 v 1, 3 v 1 etc. by assuming the SAorHA numbers are additive. For example, 2 Infs with SA = 30 can be considered the equivalent of 1 inf of SA = 60 when determining the amount of shots in a 2 vesus 1 combat.

This is an extremely important issue when constructing units. The HOI combat system is very sensitive to large stacks (no matter how weak the individual units) inflicting significant damage on smaller stacks. I have been able to manipulate attack and defense values to mitigate this effect using my simple formula as a guide (avoiding an endless series of tests to find the right combination).

My hope is that we can arrive at a simple formula than allows us to develop units without the need for endless testing to find the right combination of attributes. I've suggested a candidate. If it is not adequate then let's develop one that is.
 

unmerged(13914)

Lt. General
Jan 20, 2003
1.224
0
www.ekaros.ca
Originally posted by FrEDa
Yes I agree MathGuy it's a very interesting way to depict combat.

Also, I think you're on the spot with the 'defense pool' scheme. I hadn't thought about it but it makes perfect sense. What I mean is that the defender gets for example 50 shots at trying to defend BUT the number of attempts to block the next shot is lowered by how many attempt it took to block all the previous (as you described).

By using this scheme, a very strong unit could hold it's end against few weaker enemies, but would probably loose to a huge stack.

In other words, the D value gives x numbers of tries to stop each attack, not each shot (5 enemies = 5 attacks).

That scheme makes calculations more complex, and I didn't use that when calculating the results in the previous thread (in addition I used 'attack pooling' as well.

How sure are you they are using that sort of algorithms, or did I get you wrong MathGuy?

Hmm, what happens if a shot goes through though, hmmm.. since none was blocked I suspect the old D attempts would remain. That would work nicely..

Another option is that the game uses 'attack pooling', thus ensuring that if the number of hits excedes the D value some hits will get in. In such a case :

6 units of SA 10 fighting a unit of D 50 would get at least 10 hits.

That wouldn't account for the scenario Mikel was talking about (with a D of 900) unless there's a cap on the D value we don't know about.

Argh, why don't I have access to MathLab now that I can do something usefull with it.. lol..

I'll try a PM to Johan and see if he can/will give us some insight..

/F

Johan showed me pseudo code that worked exactly the way I described. Hence my high degree of confidence that it does work that way, and that no special limits or hidden complications are involved. However, it was only the code for provincial AA fire, not the code for ground combat or air combat or sea combat. So I can't guarantee it works that way everywhere. On the other hand Paradox does seem to be pretty consistent for the most part.

Gotta run, more soon.
 

FrEDa

Deus Vult
98 Badges
Oct 9, 2000
943
0
  • Europa Universalis III Complete
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • For the Motherland
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
  • Heir to the Throne
  • Europa Universalis III Complete
  • The Kings Crusade
  • Hearts of Iron II: Armageddon
  • Europa Universalis IV: Res Publica
  • Victoria: Revolutions
  • Europa Universalis: Rome
  • Semper Fi
  • Sengoku
  • 500k Club
  • Europa Universalis IV: Pre-order
  • Stellaris: Galaxy Edition
  • Crusader Kings II
  • Divine Wind
  • Europa Universalis III Complete
  • Europa Universalis III: Chronicles
  • Europa Universalis III
  • Diplomacy
  • Deus Vult
  • Arsenal of Democracy
  • Europa Universalis IV: Art of War
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Conclave
  • Europa Universalis: Rome Collectors Edition
  • Crusader Kings II: Way of Life
  • Pillars of Eternity
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Rome: Vae Victis
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Leviathans Story Pack
  • Europa Universalis III: Collection
  • Crusader Kings II: Reapers Due
  • 200k Club
  • Victoria 2
  • Hearts of Iron IV: Together for Victory
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Victoria 3 Sign Up
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: Cadet
Originally posted by Math Guy
Johan showed me pseudo code that worked exactly the way I described. Hence my high degree of confidence that it does work that way, and that no special limits or hidden complications are involved. However, it was only the code for provincial AA fire, not the code for ground combat or air combat or sea combat. So I can't guarantee it works that way everywhere. On the other hand Paradox does seem to be pretty consistent for the most part.

Gotta run, more soon.

Yes, I remember you saying that. Good, then we can assume it works in a similar way in land/sea/air battles as well.

But it does indeed complicate things as the probability for a hit changes with each block, and making the whole distribution depending on 'order' as well. We may have to use numerical analysis in order to solve this..

/F
 

unmerged(14603)

Captain
Feb 10, 2003
464
0
Visit site
I constructed a number of new units (infantry and armor) and used my simple formula to predict outcomes. I then tested the units in 1 v 1 and 4 inf v 1 arm combat under the same conditions I have described earlier. The numbers come out reasonably close. Some examples are:

1 Arm SA = 72 GD = 90 vs 1 Inf HA = 15 GD = 60
Damage 1 day: Arm 9.3% formula=10%, Inf 54.7% formula=54%

1 Arm vs 4 Inf same stats
Damage 1 day: Arm 37.1% expected 40%, Inf 13.9% exptd 14%
Note: inf damage is average for the 4 units.

As you can see the formula is pretty close.

So far I have only been using the formula to predict the damage done to the attacking unit. However this time I also analyzed the defensive units more closely. What I found was no difference - the same amount of damage occurred no matter which unit was on offense or defense. My preliminary conclusion is there is no defensive bonus.
 

FrEDa

Deus Vult
98 Badges
Oct 9, 2000
943
0
  • Europa Universalis III Complete
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • For the Motherland
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
  • Heir to the Throne
  • Europa Universalis III Complete
  • The Kings Crusade
  • Hearts of Iron II: Armageddon
  • Europa Universalis IV: Res Publica
  • Victoria: Revolutions
  • Europa Universalis: Rome
  • Semper Fi
  • Sengoku
  • 500k Club
  • Europa Universalis IV: Pre-order
  • Stellaris: Galaxy Edition
  • Crusader Kings II
  • Divine Wind
  • Europa Universalis III Complete
  • Europa Universalis III: Chronicles
  • Europa Universalis III
  • Diplomacy
  • Deus Vult
  • Arsenal of Democracy
  • Europa Universalis IV: Art of War
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Conclave
  • Europa Universalis: Rome Collectors Edition
  • Crusader Kings II: Way of Life
  • Pillars of Eternity
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Rome: Vae Victis
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Leviathans Story Pack
  • Europa Universalis III: Collection
  • Crusader Kings II: Reapers Due
  • 200k Club
  • Victoria 2
  • Hearts of Iron IV: Together for Victory
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Victoria 3 Sign Up
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: Cadet
Hmmm, by % I assume you mean %-units? Not that it matters since strength is 100 anyway.. but..

Interesting, I think I'm gonna try and make a little program to simulate the HoI combat style we think we know, and use the 'defense pooling' MathGuy found when examening AA attacking.

It will simulate say 100,000 1-round attacks and present data on the damage taken by the opposing unit.

Hopefully the result with the same input as you tested will give a similar outcome.

/F
 

unmerged(14603)

Captain
Feb 10, 2003
464
0
Visit site
Originally posted by FrEDa
Hmmm, by % I assume you mean %-units? Not that it matters since strength is 100 anyway.. but..
/F

Yes you are right. When I wrote 9.3% damage I meant that Strength fell from 100 to 90.7

It is important to note that I am only referring to strength damage. The formula does not work with organization damage.
 

unmerged(14603)

Captain
Feb 10, 2003
464
0
Visit site
I did some additional tests to see where the simple formula fits best and where it does not. Same conditions as always.

1 Inf SA = 45 GD = 45 versus identical unit
Stength damage in 1 day: actual = 27.5 formula = 30.0

1 Inf SA = 45 GD = 30 versus identical unit
Stength damage in 1 day: actual = 64.2 formula = 60.0

1 Inf SA = 45 GD = 15 versus identical unit
Stength damage in 1 day: actual = 97.8 formula = 90.0

The formula seems to underestimate damage when GD is high versus SA then overestimates it as GD declines versus SA.

Also, as would be expected, the formula does not work when Attack Value >= 3 * GD (it wouldn't make sense to have negative blocks).
 

FrEDa

Deus Vult
98 Badges
Oct 9, 2000
943
0
  • Europa Universalis III Complete
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • For the Motherland
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
  • Heir to the Throne
  • Europa Universalis III Complete
  • The Kings Crusade
  • Hearts of Iron II: Armageddon
  • Europa Universalis IV: Res Publica
  • Victoria: Revolutions
  • Europa Universalis: Rome
  • Semper Fi
  • Sengoku
  • 500k Club
  • Europa Universalis IV: Pre-order
  • Stellaris: Galaxy Edition
  • Crusader Kings II
  • Divine Wind
  • Europa Universalis III Complete
  • Europa Universalis III: Chronicles
  • Europa Universalis III
  • Diplomacy
  • Deus Vult
  • Arsenal of Democracy
  • Europa Universalis IV: Art of War
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Conclave
  • Europa Universalis: Rome Collectors Edition
  • Crusader Kings II: Way of Life
  • Pillars of Eternity
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Rome: Vae Victis
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Leviathans Story Pack
  • Europa Universalis III: Collection
  • Crusader Kings II: Reapers Due
  • 200k Club
  • Victoria 2
  • Hearts of Iron IV: Together for Victory
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Victoria 3 Sign Up
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: Cadet
MathGuy,

I found another thread where you stated that 'losses' in D carried over between different attacks, in other words the same D value is used (and used up) through out a whole round of combat.

Are you sure of this, or did I get you wrong? At first I thought you said that the D attempts to block gets 'refreshed' between attacks (so 20 D against 1st attacking unit and 20 D against 2nd attacking unit).

It would make some sense but would weaken a strong unit against a horde, meaning that when the number of attacks >= the D value you are garanteed y hits.

/F
 

unmerged(13914)

Lt. General
Jan 20, 2003
1.224
0
www.ekaros.ca
Yes, the defense values get used up, and in a single combat round you can get swamped by attacks so there's no chance of holding them back. That's what happens with AA and surface_defense, per the pseudo code, and I'm 99 % sure it happens the same way in regular land, sea and air combat.
 

FrEDa

Deus Vult
98 Badges
Oct 9, 2000
943
0
  • Europa Universalis III Complete
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • For the Motherland
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
  • Heir to the Throne
  • Europa Universalis III Complete
  • The Kings Crusade
  • Hearts of Iron II: Armageddon
  • Europa Universalis IV: Res Publica
  • Victoria: Revolutions
  • Europa Universalis: Rome
  • Semper Fi
  • Sengoku
  • 500k Club
  • Europa Universalis IV: Pre-order
  • Stellaris: Galaxy Edition
  • Crusader Kings II
  • Divine Wind
  • Europa Universalis III Complete
  • Europa Universalis III: Chronicles
  • Europa Universalis III
  • Diplomacy
  • Deus Vult
  • Arsenal of Democracy
  • Europa Universalis IV: Art of War
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Conclave
  • Europa Universalis: Rome Collectors Edition
  • Crusader Kings II: Way of Life
  • Pillars of Eternity
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Rome: Vae Victis
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Leviathans Story Pack
  • Europa Universalis III: Collection
  • Crusader Kings II: Reapers Due
  • 200k Club
  • Victoria 2
  • Hearts of Iron IV: Together for Victory
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Victoria 3 Sign Up
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: Cadet
Originally posted by Math Guy
Yes, the defense values get used up, and in a single combat round you can get swamped by attacks so there's no chance of holding them back. That's what happens with AA and surface_defense, per the pseudo code, and I'm 99 % sure it happens the same way in regular land, sea and air combat.

Ok, good. Then we can at least assume that there is a cap on the D value since otherwise Mikhels D 900 unit would have ruled the day.

Either that or you're garanteed a minimum amount of hits IF you can manage to score a successful attack.

/F
 

unmerged(13914)

Lt. General
Jan 20, 2003
1.224
0
www.ekaros.ca
Another test

I started thinking about mikel's result using units with 900 defense points. I couldn't understand how those results could happen, because I was sure I had seen units with high defense values (in the 100s) get much improved protection.

I tried an experiment with land unit AA. I had a group of 3 tac bombers and 3 fighters. The tac bombers I gave surface_defense values of 200, the fighters I left with just 6. Then I flew the group into Sevastopol, defended by 30 Soviet infantry divisions with 6 AA points each, plus 3 Soviet cavalry divisions with 1 AA point each. The Soviets were at effectivity 115 %, which should have left their firepower unchanged. The Germans were at effectivity 110 % and that might have given a slight bump to the units with 200 surface defense, to more like 220, IF the leadership bonus applies to surface defense.

After repeating the mission 7 times I had these averages:

fighters lost 23.9 % each
bombers lost 4.0 % each

Now if you look at my stickied thread about AA values you'll see that each point of land AA has about a 15 % chance of hitting, and when it hits, it does 1 % damage to the target. You'll also see that I estimated that the surface_defense rating of aircraft stops 10 % of one hit.

In theory, with 183 AA points firing each hour for five hours (the length of a tactical bombing run), you should see 27.45 hits per hour or 137 % damage total, spread among the six attacking units, if the attacking units have no defenses whatever. That's 22.9 % damage each.

For the three with very weak defenses, the agreement between theory and practice is very good -- 22.9 versus 23.9.

For the three with strong defenses, my method of simply dividing by 10 yields 22.9 % - 200/10 = 2.9 %. This agrees very well with the observed result of 4.0 %, especially as I've said before the effective level of protection tends to be a little less than expected from simply dividing by 10.

But there's something odd here I can't explain so easily. Another way to look at it is that each of the three bombers should have taken 4.6 raw hits per hour, before allowing for defense points, and 0.8 hits per hour after. When you divide 200 defense points by 4.6 hits per hour, each hit must get through 43 defense points. The odds of this happening are 0.9^43 = 0.01 or 1 %. Yet given how often hits did get through, the odds should be 0.8/4.6 = 17.4 %.

It means that large defense ratings ARE much more "leaky" than you might expect from a simplistic estimate of their capabilities. To compute the exact probabilities will require numerical methods, as FrEDa observed.

A small portion of this can be explained by the fact that as the bombers do get hit, their strength declines and they have fewer defenses, so more hits get through in the later hours of the mission. But that doesn't really explain such a large variation.

I think another portion can be explained by the random tendency for some aircraft to attract more fire than others. The fighters varied in the amount of damage they got by quite a bit -- as high as 33 % and as low as 16 %. We can guess that the bombers varied by the same amount, and when a single round of combat resulted in much higher numbers of hits on a single bomber, the bomber's defenses would be more easily swamped.

It's hard to visualize that this could result in the very large variation we see here. But binomial distributions of order 200 are quite impressive-looking equations and they have some very nonintuitive properties. For example, just to find the probability that you will stop exactly 19 hits using 200 defense points you need to compute:

0.9^181 x 0.1^19 x 1.86 x 10^25 / K,

where K is the sum of all the binomial coefficients from the entire 201-term equation.

In short, I can see that my crude method of estimating isn't entirely convincing, but I'm not sure that mikel's odd results involving a unit with 900 defense points prove that there's any kind of "ceiling" on how many defense points may be used in a round of combat. I think more subtle probability issues may be involved instead.
 

unmerged(14603)

Captain
Feb 10, 2003
464
0
Visit site
Re: Another test

Originally posted by Math Guy
In short, I can see that my crude method of estimating isn't entirely convincing, but I'm not sure that mikel's odd results involving a unit with 900 defense points prove that there's any kind of "ceiling" on how many defense points may be used in a round of combat. I think more subtle probability issues may be involved instead.

I'm glad to see better minds than mine are working on the problem.

However, I would not consider my results "odd" because I have seen them repeated over and over again once GD >= Attack Value.

All my tests use the same conditions. Land assault combat. Effectivity at 100% during daylight (14 hours) and 60% at night (10 hours). Dig-in bonuses of 1% per day kick in for both sides after day 1.

Here is a sample of results.

1 Inf SA = 30 GD = 15 versus identical unit
Strength loss after 1 day: Attacker = 55.2 Defender = 55.2
Range of daily values: 53 - 56

1 Inf SA = 30 GD = 30 versus identical unit
Strength loss after 1 day: Attacker = 19.2 Defender = 19.0
Range of daily values: 16 - 22

1 Inf SA = 30 GD = 45 versus identical unit
Strength loss after 1 day: Attacker = 18.6 Defender = 17.0
Range of daily values: 15 - 21

1 Inf SA = 30 GD = 60 versus identical unit
Strength loss after 1 day: Attacker = 17.4 Defender = 17.2
Range of daily values: 15 - 20

1 Inf SA = 30 GD = 120 versus identical unit
Strength loss after 1 day: Attacker = 18.0 Defender = 17.8
Range of daily values: 13 - 20

1 Inf SA = 30 GD = 600 versus identical unit
Strength loss after 1 day: Attacker = 18.4 Defender = 18.4
Range of daily values: 17 - 20

1 Inf SA = 30 GD = 900 versus identical unit
Strength loss after 1 day: Attacker = 17.4 Defender = 17.8
Range of daily values: 16 - 19

The data clearly shows little/no change in observable loss once GD >= SA. Any further reduction in damage (if there is any) caused by increasing GD after it reaches SA is smaller than the random variation. I've shown the ranges to indicate that the daily variation is not particularly wide.

I get the same kind of results when I change the SA (up or down). Conclusion 1: after GD = attack value any further increase in GD has no meaningful effect on combat results.

Now I will add another set of results to demonstrate the 2nd point I'm trying to make.

1 Inf SA = 60 GD = 45 versus identical unit
Strength loss after 1 day: Attacker = 73.8 Defender = 75.2
Range of daily values: 73 - 78

1 Inf SA = 60 GD = 60 versus identical unit
Strength loss after 1 day: Attacker = 37.8 Defender = 38.0
Range of daily values: 35 - 40

1 Inf SA = 60 GD = 120 versus identical unit
Strength loss after 1 day: Attacker = 36.8 Defender = 36.6
Range of daily values: 32 - 40

1 Inf SA = 60 GD = 600 versus identical unit
Strength loss after 1 day: Attacker = 37.0 Defender = 38.2
Range of daily values: 35 - 40

1 Inf SA = 60 GD = 900 versus identical unit
Strength loss after 1 day: Attacker = 37.4 Defender = 38.2
Range of daily values: 35 - 40

Again the effect of no change after GD = SA can be seen. However a 2nd pattern can also be seen if you compare it to the SA = 30 results. Minimum loss rose from about 18 to about 38. When I test other SA values against the same set of GD's the pattern holds --- minimum damage is proportional to SA and is not insignificant. When SA doubles damage approximately doubles etc. Conclusion 2: There is a minimum strength loss that is proportional to the attack value and can have a meaningful impact on combat results.

My rule of thumb comes to: daily strength loss in land assault combat with effectivities as I stated before can be estimated by using the following formula: Loss = Attack Value - Min(2/3 * Defense Value, Defense Value - (Attack Value/3)). As a mathematical aid to constructing units the formula fits reasonably well but underestimates damage when GD < attack value and overestimates it when GD >= attack value.

It is important to note that I have not tested AA, naval, or air-air combat, land blitz, or land feint.
 

unmerged(14603)

Captain
Feb 10, 2003
464
0
Visit site
Math Guy:

In my previous ramblings I forgot to mention another observation. Unlike what you experienced in testing AA, damage does not start to perversely increase after GD reaches a certain level. This leads me to believe we are not dealing with the kind of formula that AA is using.
 
Last edited:

unmerged(13914)

Lt. General
Jan 20, 2003
1.224
0
www.ekaros.ca
Really nice job

Mikel, your last post really laid it out very well. It's hard to argue that there isn't a limit of some kind, given the thorough test data you've presented.

I also tried modding some ground units up to 1,000 defense and I observed results similar to what you were talking about, so I think at this point I have to agree, land combat does seem to be different from AA fire by land units.

I'm really trying very hard to finish the bombing tests I began several weeks ago, so I can't contribute much here at the moment. But it seems like you've made a lot of progress, and that's great. Onward and upward!
 

FrEDa

Deus Vult
98 Badges
Oct 9, 2000
943
0
  • Europa Universalis III Complete
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • For the Motherland
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
  • Heir to the Throne
  • Europa Universalis III Complete
  • The Kings Crusade
  • Hearts of Iron II: Armageddon
  • Europa Universalis IV: Res Publica
  • Victoria: Revolutions
  • Europa Universalis: Rome
  • Semper Fi
  • Sengoku
  • 500k Club
  • Europa Universalis IV: Pre-order
  • Stellaris: Galaxy Edition
  • Crusader Kings II
  • Divine Wind
  • Europa Universalis III Complete
  • Europa Universalis III: Chronicles
  • Europa Universalis III
  • Diplomacy
  • Deus Vult
  • Arsenal of Democracy
  • Europa Universalis IV: Art of War
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Conclave
  • Europa Universalis: Rome Collectors Edition
  • Crusader Kings II: Way of Life
  • Pillars of Eternity
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Rome: Vae Victis
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Leviathans Story Pack
  • Europa Universalis III: Collection
  • Crusader Kings II: Reapers Due
  • 200k Club
  • Victoria 2
  • Hearts of Iron IV: Together for Victory
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Victoria 3 Sign Up
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: Cadet
Great, now we need to find how this phenomenon translate into computations of battle results per round.

One thing I find strange though, if HoI has this scheme WHEN does it fire? It must be some kind of last check. It clearly depends on the A value. Perhaps something like :

if (good_hits < minHits(aA, dD)) {
good_hits = minHits(aA, dD)
}

before calculating the actual damage to org, or possibly a similar check after calculating damage.

Point is, on a round/turn basis, it should only come into effect if the attacking unit is unlucky in scoring hits, which will be the case if dD is higher than aA.

BUT, at the same time that would be a coup d'etat against the whole system.
Two units with A=3, D=10 fighting shouldn't be effected the same way as two A=50, D=80 units (imho).

Your formula predicts for a 15/15 matchup :

24loss = 15 - min(2/3*15, 15-1/3*15) = 15 - min(10, 10) = 5

Considering the observations I made from the 10 round data you provided..

a STR loss of 5 is equivalent to 5/0.025 = 200 str reductions

But if we look at the data, the defending unit in that example has lost 207 str units (> 5 str) in only 10 rounds.

So, while the formula obviously can help us predict results, I would hypothesise that it calculates the *minimum* str loss for units that the game engine allows. Meaning that if a unit is lucky, there will be no need for the game engine to tweak the battle results.

Now, this implies that the round-by-round damage for say a 15/60 unit fight will be very constant, unless as I hypothesised above, the engine makes the check before determining the actual damage of the successful hits (i.e. 1,2,3 etc). If the Determine Damage phase is after the check it won't come out as constant, but we could still find something useful by observing low values.

Hmmm, I have to admit though, that the 207 str-unit loss from your data could be the result of lucky damage rolls. We need more data :)

Here's an interesting thing though, the last 10th round in your 15/15 example shows a loss of only 3 0.025 units. If my assumption about the multiple is correct that would mean it's equivalent to a single hit.

that would mean minhits(15,15) = 1 (or 3), but that would give a 24h value of 24 or 72, not 200.

Considering STR for the two units is still fairly high, the modified A and D values cannot be responsible for this.

Even more strange, the attacking unit in your example avoids getting hit at all in round 5.

We really need more sets of data on STR values for units during combat.

All this has gotten me confused again, UNLESS the minHits only gets calculated IF there are any hits at all. Meaning IF a unit scored a hit, it garantees it does min x damage.

Ah, enough of this.. I'll load my test savegame and get some more data.

/F