Difference between revisions of "AI War:Why Do Enemy Waves Get So Large?"

From Arcen Wiki
Jump to navigation Jump to search
m (→‎'''Why Do The Enemy Waves Get So Large So Fast?''': clean up, replaced: AI War - → AI War: (2))
 
(30 intermediate revisions by 6 users not shown)
Line 3: Line 3:
 
'''Q:''' With AI players of difficulty 8 and up, it seems like they get really huge incoming waves way faster than before. Is there anything I can do to prevent this?  
 
'''Q:''' With AI players of difficulty 8 and up, it seems like they get really huge incoming waves way faster than before. Is there anything I can do to prevent this?  
  
'''A:''' Yes, there is definitely something you can do to prevent this -- keep the [[AI War - AI_Progress|AI Progress level]] as absolutely low as you can. This might mean skipping planets you would normally take, stealing knowledge from AI planets in more cases, not doing as many [[AI War - Gate Raids|gate-raids]] as you otherwise would, doing a lot more deep-raids into enemy territory, and other advanced strategies. That's part of the challenge of these highest difficulties: the decisions about which planets to take, and when, are a lot more momentous. This effect is even more pronounced on difficulty 10.
+
'''A:''' Yes, there is definitely something you can do to prevent this -- keep the [[AI War:AI_Progress|AI Progress level]] as absolutely low as you can. This might mean skipping planets you would normally take, stealing knowledge from AI planets in more cases, not doing as many [[AI War:Gate Raids|gate-raids]] as you otherwise would, doing a lot more deep-raids into enemy territory, and other advanced strategies. That's part of the challenge of these highest difficulties: the decisions about which planets to take, and when, are a lot more momentous. This effect is even more pronounced on difficulty 10.
  
For a more detailed explanation, here's how the wave sizes are calculated (in version 4.040 and later):
+
For a more detailed explanation, here's how the wave sizes are calculated (in version 4.043 and later):
  
 
=== How Wave Sizes Are Calculated ===
 
=== How Wave Sizes Are Calculated ===
Line 17: Line 17:
 
====Step 1:====
 
====Step 1:====
  
Find the intersection of your current difficulty level and AI Progress off the chart below.  This is an abbreviated chart, of course: the non-integer AI Difficulties are ignored here, and only a few example AI Progress amounts are shown.  If you want the exact number for your specific case, the formula for this step is as follows: ( AIProgress * AIDifficulty ) / ( 11 - AIDifficulty )
+
Find the intersection of your current difficulty level and AI Progress off the chart below.  This is an abbreviated chart, of course: the non-integer AI Difficulties are ignored here, and only a few example AI Progress amounts are shown.  If you want the exact number for your specific case, the formula for this step is as follows:
 +
* For Difficulties less than 8: ( (AIProgress + modifier) * AIDifficulty ) / ( 13 - AIDifficulty )
 +
* For Difficulties 8 and above (on version 5.036 and later) : ( ( ( ( AIProgress + modifier) * 0.8 ) ^ 1.1 ) * AIDifficulty ) / ( 13 - AI Difficulty )
  
 
{| {{table}}
 
{| {{table}}
Line 34: Line 36:
 
| style="background:#f0f0f0;"|AI Difficulty||||||||||||||||||||
 
| style="background:#f0f0f0;"|AI Difficulty||||||||||||||||||||
 
|-
 
|-
| style="background:#f0f0f0;"|1||0.1||1||2||5||10||20||30||50||100||400
+
| style="background:#f0f0f0;"|1||0.08||0.83||1.67||4.17||8.33||16.67||25.00||41.67||83.33||333.33
 
|-
 
|-
| style="background:#f0f0f0;"|2||0.22||2.22||4.44||11.11||22.22||44.44||66.67||111.11||222.22||888.89
+
| style="background:#f0f0f0;"|2||0.18||1.82||3.64||9.09||18.18||36.36||54.55||90.91||181.82||727.27
 
|-
 
|-
| style="background:#f0f0f0;"|3||0.38||3.75||7.5||18.75||37.5||75||112.5||187.5||375||1500
+
| style="background:#f0f0f0;"|3||0.30||3.00||6.00||15.00||30.00||60.00||90.00||150.00||300.00||1200.00
 
|-
 
|-
| style="background:#f0f0f0;"|4||0.57||5.71||11.43||28.57||57.14||114.29||171.43||285.71||571.43||2285.71
+
| style="background:#f0f0f0;"|4||0.44||4.44||8.89||22.22||44.44||88.89||133.33||222.22||444.44||1777.78
 
|-
 
|-
| style="background:#f0f0f0;"|5||0.83||8.33||16.67||41.67||83.33||166.67||250||416.67||833.33||3333.33
+
| style="background:#f0f0f0;"|5||0.63||6.25||12.50||31.25||62.50||125.00||187.50||312.50||625.00||2500.00
 
|-
 
|-
| style="background:#f0f0f0;"|6||1.2||12||24||60||120||240||360||600||1200||4800
+
| style="background:#f0f0f0;"|6||0.86||8.57||17.14||42.86||85.71||171.43||257.14||428.57||857.14||3428.57
 
|-
 
|-
| style="background:#f0f0f0;"|7||1.75||17.5||35||87.5||175||350||525||875||1750||7000
+
| style="background:#f0f0f0;"|7||1.17||11.67||23.33||58.33||116.67||233.33||350.00||583.33||1166.67||4666.67
 
|-
 
|-
| style="background:#f0f0f0;"|8||2.67||26.67||53.33||133.33||266.67||533.33||800||1333.33||2666.67||10666.67
+
| style="background:#f0f0f0;"|8||1.25||15.76||33.78||92.55||198.39||425.26||664.28||1165.16||2497.58||11475.85
 
|-
 
|-
| style="background:#f0f0f0;"|9||4.5||45||90||225||450||900||1350||2250||4500||18000
+
| style="background:#f0f0f0;"|9||1.76||22.16||47.50||130.15||278.99||598.02||934.15||1638.51||3512.22||16137.92
 
|-
 
|-
| style="background:#f0f0f0;"|10||10||100||200||500||1000||2000||3000||5000||10000||40000
+
| style="background:#f0f0f0;"|10||2.61||32.83||70.37||192.82||413.31||885.95||1383.92||2427.42||5203.29||23908.03
 
|-
 
|-
 
|  
 
|  
Line 59: Line 61:
 
====Step 2:====
 
====Step 2:====
  
Randomized between 1.0 and 0.3, so has a chance of getting smaller.
+
Multiply size by a random number between 0.8 and 1.1.
  
 
====Step 3:====
 
====Step 3:====
  
Given the chart below, if smaller than the floor, then set to the appropriate floor.
+
(As of 5.021) If the current base size is less than 34 * AI-handicap-multiplier, set it to that minimum.  So on the normal non-handicap of 100% it's 34, and on 300% it's 102.
 +
* The effect of this is that early AIP increases won't actually increase wave size until AIP hits a certain point, unless you're playing on diff 10 where the result from step 1 is already very close to the minimum (in the absence of AI handicaps).
 +
 
 +
====Step 4:====
 +
 
 +
Now apply the multiplier based on the AI Type.  These range from 0.25 to 2.0, with only the Mad Bomber being as high as 2.0.  Most of the “aggressive” types are 1.5 or 1.25.
 +
 
 +
As of version 5.081, the current multipliers are in the table below.  The reinforcement multiplier is included for reference as the wave size and reinforcement size are generally balanced with respect to each other. If an AI Type is not listed, both multipliers are 1.
  
 
{| {{table}}
 
{| {{table}}
| align="center" style="background:#f0f0f0;"|'''AI Difficulty'''
+
| align="center" style="background:#f0f0f0;"|'''AIType'''
| align="center" style="background:#f0f0f0;"|'''Minimum Wave Size'''
+
| align="center" style="background:#f0f0f0;"|'''WaveMultiplier'''
|-
+
| align="center" style="background:#f0f0f0;"|'''ReinforcementMultiplier'''
| style="background:#f0f0f0;"|1||20
 
|-
 
| style="background:#f0f0f0;"|2||40
 
 
|-
 
|-
| style="background:#f0f0f0;"|3||60
+
| MadBomber||2||0.7||
 
|-
 
|-
| style="background:#f0f0f0;"|4||80
+
| NeinzulYoungster||1.5||0.8||
 
|-
 
|-
| style="background:#f0f0f0;"|5||100
+
| ViciousRaider||1.5||0.8||
 
|-
 
|-
| style="background:#f0f0f0;"|6||120
+
| ExtremeRaider||1.5||0.8||
 
|-
 
|-
| style="background:#f0f0f0;"|7||140
+
| TechnologistRaider||1.5||0.8||
 
|-
 
|-
| style="background:#f0f0f0;"|8||160
+
| Attritioner||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|9||180
+
| ZenithDescendent||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|10||200
+
| Spireling||1.25||0.9||
 
|-
 
|-
|  
+
| StarfleetCommander||1.25||0.9||
|}
 
====Step 4:====
 
 
 
Now apply the “wave size” variable, which is generally based on how long it has been since the last wave.  This typically ranges from anywhere from 0.1 to 3 or even a bit more. For the first wave of the game, it's always 1.  In the case of counterattack waves, the wave size is temporarily doubled from whatever it would have been.
 
 
 
====Step 5:====
 
 
 
Given the chart below, if smaller than the floor, then set to the appropriate floor.
 
 
 
{| {{table}}
 
| align="center" style="background:#f0f0f0;"|'''AI Difficulty'''
 
| align="center" style="background:#f0f0f0;"|'''Minimum Wave Size'''
 
 
|-
 
|-
| style="background:#f0f0f0;"|1||10
+
| Experimentalist||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|2||20
+
| GravDriller||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|3||30
+
| TheTank||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|4||40
+
| FeedingParasite||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|5||50
+
| Thief||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|6||60
+
| TechnologistParasite||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|7||70
+
| Bully||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|8||80
+
| Assassin||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|9||90
+
| SpeedRacer||1.25||0.9||
 
|-
 
|-
| style="background:#f0f0f0;"|10||100
+
| TheCore||0.5||0.5||
 
|-
 
|-
 
|  
 
|  
 
|}
 
|}
  
====Step 6:====
+
====Step 5:====
  
Now apply the multiplier based on the AI TypeThese range from 0.25 to 2.0, with only the Mad Bomber being as high as 2.0Most of the “aggressive” types are 1.5 or 1.25.
+
Now apply the “wave size” variable, which is generally based on how long it has been since the last waveThis typically ranges from anywhere from 0.1 to 3 or even a bit more.  For the first wave of the game, it's always 1.  In the case of counterattack waves and raid engine waves, this is simply 2.0.
 +
* In version 5.036 and later, on difficulty 7 or higher, the fewer the number of planets that can be hit with a wave the more the AI will tend to pick longer times between waves (and thus larger individual waves, but roughly the same total number of ships over time)The idea being that if you have fewer planets to defend from waves you will have defended each of them more, and the AI doesn't bother sending small quick waves against them.
  
====Step 7:====
+
====Step 6:====
  
 
Now apply the multipliers from the actual ship types themselves.  Ships with a larger ship cap have bigger waves, those with smaller ones have smaller waves.  So there are always 2.8x as many laser gatlings, for instance, compared to the norm.
 
Now apply the multipliers from the actual ship types themselves.  Ships with a larger ship cap have bigger waves, those with smaller ones have smaller waves.  So there are always 2.8x as many laser gatlings, for instance, compared to the norm.
Line 136: Line 131:
 
Note that for waves with multiple ship types (as with the Schizophrenic AI), each individual type of is multiplied by its multiplier, with a floor of 1 per ship type.
 
Note that for waves with multiple ship types (as with the Schizophrenic AI), each individual type of is multiplied by its multiplier, with a floor of 1 per ship type.
  
====Step 8:====
+
====Step 7:====
  
Now wave sizes are reduced based on what mark level they are.  These reductions happen per each individual type of ship, as happens in step 7 with the wave multipliers -- again with a floor of 1 per ship type.
+
Now wave sizes are reduced based on what mark level they are.  These reductions happen per each individual type of ship, as happens in step 6 with the wave multipliers -- again with a floor of 1 per ship type.
  
 
{| {{table}}
 
{| {{table}}
Line 144: Line 139:
 
| align="center" style="background:#f0f0f0;"|'''Multiplier'''
 
| align="center" style="background:#f0f0f0;"|'''Multiplier'''
 
|-
 
|-
| 1||1
+
| 1||1.5
 
|-
 
|-
 
| 2||0.9
 
| 2||0.9
 
|-
 
|-
| 3||0.8
+
| 3||0.7
 
|-
 
|-
| 4||0.7
+
| 4||0.6
 
|-
 
|-
| 5||0.6
+
| 5||0.5
 
|-
 
|-
 
|  
 
|  
 
|}
 
|}
 +
 +
====Step 8:====
 +
 +
Now the count of each type in the wave is multiplied based on difficulty:
 +
 +
{| {{table}}
 +
| align="center" style="background:#f0f0f0;"|'''Difficulty'''
 +
| align="center" style="background:#f0f0f0;"|'''Multiplier'''
 +
|-
 +
| Difficulty = 1-3||1
 +
|-
 +
| Difficulty = 4   ||1.5
 +
|-
 +
| Difficulty = 5   ||1.75
 +
|-
 +
| Difficulty = 6   ||2
 +
|-
 +
| Difficulty = 7   ||2.25
 +
|-
 +
| Difficulty = 7.3-9   ||2.5
 +
|-
 +
| Difficulty = 9.3   ||2.75
 +
|-
 +
| Difficulty = 9.6   ||3
 +
|-
 +
| Difficulty = 9.8+   ||3.8
 +
|-
 +
| Difficulty = 10   ||4.5
 +
|-
 +
|
 +
|}
 +
 +
(note: the 9.3+ range used to be 2.5, was changed in version 5.023)
 +
 +
====Step 9:====
 +
 +
For waves with only one non-starship type, if the number is less than the effective ship cap for that type it is increased to that effective ship cap.  So on low caps a wave of just mkI fighters (plus a starship) will have at least 49 mkI fighters.
 +
 +
  
 
And now you have your number -- that's it!  Tables created with [http://excel2wiki.net/ excel2wiki]
 
And now you have your number -- that's it!  Tables created with [http://excel2wiki.net/ excel2wiki]
  
[[AI War:Fleet Command]]
+
[[AI War:AI War]]

Latest revision as of 13:12, 1 February 2015

Why Do The Enemy Waves Get So Large So Fast?

Q: With AI players of difficulty 8 and up, it seems like they get really huge incoming waves way faster than before. Is there anything I can do to prevent this?

A: Yes, there is definitely something you can do to prevent this -- keep the AI Progress level as absolutely low as you can. This might mean skipping planets you would normally take, stealing knowledge from AI planets in more cases, not doing as many gate-raids as you otherwise would, doing a lot more deep-raids into enemy territory, and other advanced strategies. That's part of the challenge of these highest difficulties: the decisions about which planets to take, and when, are a lot more momentous. This effect is even more pronounced on difficulty 10.

For a more detailed explanation, here's how the wave sizes are calculated (in version 4.043 and later):

How Wave Sizes Are Calculated

Note that all of the above is for calculating just a single Wave's size. In single player, each AI separately launches a wave against you, often simultaneously. In multiplayer or multi-home-planet starts, each AI gets one wave per player. So with four players, you'll see waves in batches of four or eight, depending on whether one or both AIs are sending waves at you simultaneously, for instance.

Each individual wave is shown as a line item on the alerts window in the upper left of the screen, and the calculations for each line item is what's being covered here.

Also, please note that this formula is completely new as of version 4.040 or so. Prior to that, a different, less-interesting, more-forgiving-for-high-AI-Progress formula was used.

Step 1:

Find the intersection of your current difficulty level and AI Progress off the chart below. This is an abbreviated chart, of course: the non-integer AI Difficulties are ignored here, and only a few example AI Progress amounts are shown. If you want the exact number for your specific case, the formula for this step is as follows:

  • For Difficulties less than 8: ( (AIProgress + modifier) * AIDifficulty ) / ( 13 - AIDifficulty )
  • For Difficulties 8 and above (on version 5.036 and later) : ( ( ( ( AIProgress + modifier) * 0.8 ) ^ 1.1 ) * AIDifficulty ) / ( 13 - AI Difficulty )
AI Progress 1 10 20 50 100 200 300 500 1000 4000
AI Difficulty
1 0.08 0.83 1.67 4.17 8.33 16.67 25.00 41.67 83.33 333.33
2 0.18 1.82 3.64 9.09 18.18 36.36 54.55 90.91 181.82 727.27
3 0.30 3.00 6.00 15.00 30.00 60.00 90.00 150.00 300.00 1200.00
4 0.44 4.44 8.89 22.22 44.44 88.89 133.33 222.22 444.44 1777.78
5 0.63 6.25 12.50 31.25 62.50 125.00 187.50 312.50 625.00 2500.00
6 0.86 8.57 17.14 42.86 85.71 171.43 257.14 428.57 857.14 3428.57
7 1.17 11.67 23.33 58.33 116.67 233.33 350.00 583.33 1166.67 4666.67
8 1.25 15.76 33.78 92.55 198.39 425.26 664.28 1165.16 2497.58 11475.85
9 1.76 22.16 47.50 130.15 278.99 598.02 934.15 1638.51 3512.22 16137.92
10 2.61 32.83 70.37 192.82 413.31 885.95 1383.92 2427.42 5203.29 23908.03

Step 2:

Multiply size by a random number between 0.8 and 1.1.

Step 3:

(As of 5.021) If the current base size is less than 34 * AI-handicap-multiplier, set it to that minimum. So on the normal non-handicap of 100% it's 34, and on 300% it's 102.

  • The effect of this is that early AIP increases won't actually increase wave size until AIP hits a certain point, unless you're playing on diff 10 where the result from step 1 is already very close to the minimum (in the absence of AI handicaps).

Step 4:

Now apply the multiplier based on the AI Type. These range from 0.25 to 2.0, with only the Mad Bomber being as high as 2.0. Most of the “aggressive” types are 1.5 or 1.25.

As of version 5.081, the current multipliers are in the table below. The reinforcement multiplier is included for reference as the wave size and reinforcement size are generally balanced with respect to each other. If an AI Type is not listed, both multipliers are 1.

AIType WaveMultiplier ReinforcementMultiplier
MadBomber 2 0.7
NeinzulYoungster 1.5 0.8
ViciousRaider 1.5 0.8
ExtremeRaider 1.5 0.8
TechnologistRaider 1.5 0.8
Attritioner 1.25 0.9
ZenithDescendent 1.25 0.9
Spireling 1.25 0.9
StarfleetCommander 1.25 0.9
Experimentalist 1.25 0.9
GravDriller 1.25 0.9
TheTank 1.25 0.9
FeedingParasite 1.25 0.9
Thief 1.25 0.9
TechnologistParasite 1.25 0.9
Bully 1.25 0.9
Assassin 1.25 0.9
SpeedRacer 1.25 0.9
TheCore 0.5 0.5

Step 5:

Now apply the “wave size” variable, which is generally based on how long it has been since the last wave. This typically ranges from anywhere from 0.1 to 3 or even a bit more. For the first wave of the game, it's always 1. In the case of counterattack waves and raid engine waves, this is simply 2.0.

  • In version 5.036 and later, on difficulty 7 or higher, the fewer the number of planets that can be hit with a wave the more the AI will tend to pick longer times between waves (and thus larger individual waves, but roughly the same total number of ships over time). The idea being that if you have fewer planets to defend from waves you will have defended each of them more, and the AI doesn't bother sending small quick waves against them.

Step 6:

Now apply the multipliers from the actual ship types themselves. Ships with a larger ship cap have bigger waves, those with smaller ones have smaller waves. So there are always 2.8x as many laser gatlings, for instance, compared to the norm.

Note that for waves with multiple ship types (as with the Schizophrenic AI), each individual type of is multiplied by its multiplier, with a floor of 1 per ship type.

Step 7:

Now wave sizes are reduced based on what mark level they are. These reductions happen per each individual type of ship, as happens in step 6 with the wave multipliers -- again with a floor of 1 per ship type.

Mark Level Multiplier
1 1.5
2 0.9
3 0.7
4 0.6
5 0.5

Step 8:

Now the count of each type in the wave is multiplied based on difficulty:

Difficulty Multiplier
Difficulty = 1-3 1
Difficulty = 4    1.5
Difficulty = 5    1.75
Difficulty = 6    2
Difficulty = 7    2.25
Difficulty = 7.3-9    2.5
Difficulty = 9.3    2.75
Difficulty = 9.6    3
Difficulty = 9.8+    3.8
Difficulty = 10    4.5

(note: the 9.3+ range used to be 2.5, was changed in version 5.023)

Step 9:

For waves with only one non-starship type, if the number is less than the effective ship cap for that type it is increased to that effective ship cap. So on low caps a wave of just mkI fighters (plus a starship) will have at least 49 mkI fighters.


And now you have your number -- that's it! Tables created with excel2wiki

AI War:AI War