View Issue Details

IDProjectCategoryLast Update
0002891AI War 1 / ClassicBalance IssueFeb 21, 2011 12:11 am
ReporterXRsyst Assigned Tokeith.lamothe  
Severitymajor 
Status resolvedResolutionfixed 
Product Version5.000 
Summary0002891: Impossible Situation, ~1200 Spire Maws (II) in standard attack wave 2 hours in
Description5.001
Playing a game with another person, about 2 hours in we get a standard attack wave of over 1200 Spire Maws. It's insane and totally unwinnable. I don't believe we did anything to "trigger" this (earlier saves available if you like), it just happened. A wave size of maybe 120 would be winnable and reasonable, but 1200 is all but unstoppable, especially only 2 hours into the game.
TagsNo tags attached.
Internal Weight

Relationships

related to 0002869 closedkeith.lamothe Give the "starship like" tier of fleet ships a hard cap in waves 

Activities

XRsyst

Feb 20, 2011 4:48 pm

reporter  

SpireMaws.sav (346,651 bytes)

TechSY730

Feb 20, 2011 7:50 pm

reporter   ~0010537

Is this related to the maws currently having a glitched ship cap (namely, no ship cap)?

TechSY730

Feb 20, 2011 8:01 pm

reporter   ~0010539

Did you have advanced logging on? It would be nice to see the wave computation logs. (Once the wave is sent, that information is kind of lost. It has to be on when the wave is sent.)

keith.lamothe

Feb 20, 2011 8:03 pm

administrator   ~0010540

The infinite cap thing should have been fixed in 5.001 (the description says 5.001, I think the version picker doesn't have that one yet).

XRsyst, did you have Advanced Logging on (it's a checkbox on the Advanced tab of the Settings window)? If you have that on when the wave is initially announced, it will append information to "MainThreadWaveComputationLog.txt" and "AIThreadWaveComputationLog.txt" in your install's "RuntimeData" directory. If you can get the erroneously high wave to happen with Advanced Logging on (it doesn't slow anything down except a tad when generating a new wave, etc), and attach those two files to this report, I can see where the math went wrong.

Thanks :)

XRsyst

Feb 20, 2011 8:03 pm

reporter   ~0010541

I have rolling saves every 5 min so I've got one right before. How do I turn on this logging?

XRsyst

Feb 20, 2011 8:04 pm

reporter   ~0010542

I'll turn it on and have logs sometime tonight hopefully.

XRsyst

Feb 20, 2011 8:26 pm

reporter  

MainThreadWaveComputationLog.txt (3,928 bytes)   
2/20/2011 5:23:28 PM (5.001)
-----------------------------------
Triggering Normal Wave; wave size factor: 0.99; Game Time: 2:46:17

2/20/2011 5:23:29 PM (5.001)
-----------------------------------
Receiving AddInboundWave from AI Thread at Game Time: 2:46:17
WaveSize factor: 0.99
Raw Units Dictionary Entries: 
BomberII => 269
BomberStarship => 1


2/20/2011 5:23:29 PM (5.001)
-----------------------------------
Receiving AddInboundWave from AI Thread at Game Time: 2:46:17
WaveSize factor: 0.99
Raw Units Dictionary Entries: 
SpireMawII => 328
Flagship => 1


2/20/2011 5:23:29 PM (5.001)
-----------------------------------
Performing first CheckWave with size factor of 0.99 on wave at Game Time: 2:46:17

CheckWave: populating count of BomberII with base magnitude of 269
numberUnits = kv.Value * this.WaveSize : 265.19
after applying the ship-type-specific cap multiplier (which includes the unit-cap-scale multiplier), numberUnits : 132.6
after applying CanUseNeinzulRegenerator if any, numberUnits : 132.6
after applying Mark-based multiplier if any, numberUnits : 119.32
after applying at-least-one rule, numberUnits : 119.32
after applying difficulty-based multiplier (if <= 3 then 1, if <= 4 then 1.5, if <= 5 then 1.75, if <= 6 then 2, if <= 7 then 2.25, anything higher gets 2.5), numberUnits : 298.31
numberUnitsInt = numberUnits.IntValue : 298

CheckWave: populating count of BomberStarship with base magnitude of 1
numberUnits = kv.Value * this.WaveSize : 0.99
after applying the ship-type-specific cap multiplier (which includes the unit-cap-scale multiplier), numberUnits : 0.99
after applying CanUseNeinzulRegenerator if any, numberUnits : 0.99
after applying Mark-based multiplier if any, numberUnits : 1.48
after applying at-least-one rule, numberUnits : 1.48
after applying difficulty-based multiplier (if <= 3 then 1, if <= 4 then 1.5, if <= 5 then 1.75, if <= 6 then 2, if <= 7 then 2.25, anything higher gets 2.5), numberUnits : 3.7
numberUnitsInt = numberUnits.IntValue : 3
it's a starship so only adding one rule : 1 (had you going there, didn't we)

Wave total ships: 299
TypesForDirectAdd count by type: 
BomberII => 298
BomberStarship => 1
TypesForCarrierAdd count by type: 


2/20/2011 5:23:29 PM (5.001)
-----------------------------------
Performing first CheckWave with size factor of 0.99 on wave at Game Time: 2:46:17

CheckWave: populating count of SpireMawII with base magnitude of 328
numberUnits = kv.Value * this.WaveSize : 323.36
after applying the ship-type-specific cap multiplier (which includes the unit-cap-scale multiplier), numberUnits : 323.36
after applying CanUseNeinzulRegenerator if any, numberUnits : 323.36
after applying Mark-based multiplier if any, numberUnits : 290.99
after applying at-least-one rule, numberUnits : 290.99
after applying difficulty-based multiplier (if <= 3 then 1, if <= 4 then 1.5, if <= 5 then 1.75, if <= 6 then 2, if <= 7 then 2.25, anything higher gets 2.5), numberUnits : 727.47
numberUnitsInt = numberUnits.IntValue : 727

CheckWave: populating count of Flagship with base magnitude of 1
numberUnits = kv.Value * this.WaveSize : 0.99
after applying the ship-type-specific cap multiplier (which includes the unit-cap-scale multiplier), numberUnits : 0.99
after applying CanUseNeinzulRegenerator if any, numberUnits : 0.99
after applying Mark-based multiplier if any, numberUnits : 0.89
after applying at-least-one rule, numberUnits : 1
after applying difficulty-based multiplier (if <= 3 then 1, if <= 4 then 1.5, if <= 5 then 1.75, if <= 6 then 2, if <= 7 then 2.25, anything higher gets 2.5), numberUnits : 2.5
numberUnitsInt = numberUnits.IntValue : 2
it's a starship so only adding one rule : 1 (had you going there, didn't we)

Wave total ships: 728
TypesForDirectAdd count by type: 
SpireMawII => 727
Flagship => 1
TypesForCarrierAdd count by type: 


keith.lamothe

Feb 20, 2011 8:26 pm

administrator   ~0010544

That would be great, that will be very helpful in figuring out what needs fixed :)

XRsyst

Feb 20, 2011 8:26 pm

reporter  

AIThreadWaveComputationLog.txt (1,508 bytes)   
2/20/2011 5:23:28 PM (5.001)
-----------------------------------
Starting CreateHomogenousWaveToPlanet at Game Time: 2:46:16 ; Player.AIType: Fortress_Baron ; Player.AIDifficulty: 7.3 ; AIProgressionLevel: 234 ; AITechLevel: 2 ; WaveSize: 0.99
aiTypeBasedAIPIncrement : 0
workingShips = ( AIProgressionLevel * player.AIDifficulty ) / ( 13 - player.AIDifficulty ) : 299.67
workingShips *= FInt.FromParts( 0, AILoop.Instance.AIRandom.Next( 800, 1100 ) ) : 269.08
workingShips = Min(workingShips,Player.AIDifficulty * 10) :269.08
numberShips = workingShips.IntValue :269
Inside AdjustNumberShipsFromAIType, multiplier: 1
after AdjustNumberShipsFromAIType call, numberShips :269
numberTech123 = numberShips - numberExplosive - numberCore :269


2/20/2011 5:23:28 PM (5.001)
-----------------------------------
Starting CreateHomogenousWaveToPlanet at Game Time: 2:46:16 ; Player.AIType: Fortress_Baron ; Player.AIDifficulty: 7.3 ; AIProgressionLevel: 234 ; AITechLevel: 2 ; WaveSize: 0.99
aiTypeBasedAIPIncrement : 0
workingShips = ( AIProgressionLevel * player.AIDifficulty ) / ( 13 - player.AIDifficulty ) : 299.67
workingShips *= FInt.FromParts( 0, AILoop.Instance.AIRandom.Next( 800, 1100 ) ) : 328.13
workingShips = Min(workingShips,Player.AIDifficulty * 10) :328.13
numberShips = workingShips.IntValue :328
Inside AdjustNumberShipsFromAIType, multiplier: 1
after AdjustNumberShipsFromAIType call, numberShips :328
numberTech123 = numberShips - numberExplosive - numberCore :328


AIThreadWaveComputationLog.txt (1,508 bytes)   

XRsyst

Feb 20, 2011 8:27 pm

reporter  

BeforeBadWave.sav (339,431 bytes)

XRsyst

Feb 20, 2011 8:28 pm

reporter   ~0010545

I've attached the logs & the save file that is about 1 minute before the wave spawns. Is a two player game.

Good luck!

keith.lamothe

Feb 20, 2011 8:49 pm

administrator   ~0010546

Well, there it is:

numberUnits = kv.Value * this.WaveSize : 323.36
after applying the ship-type-specific cap multiplier (which includes the unit-cap-scale multiplier), numberUnits : 323.36

It should have been either 9 or 10 with the 0.03 multiplier they have (and that's sitting right in front of me in the code), but something else was going on. Will investigate :)

keith.lamothe

Feb 20, 2011 9:01 pm

administrator   ~0010547

Ok, I loaded up BeforeBadWave.sav, and let it run for a bit, and it announced two waves: one of 338 bombers, one of 16 spire maws.

... Of course, I just remembered that the spire maw infinite ship cap really is fixed in 5.002, as TechSY730 was trying to remind me ;) So in 5.001 this can certainly happen, sorry about that. We'll try to get 5.002 out soon.

keith.lamothe

Feb 20, 2011 9:57 pm

administrator   ~0010554

Confirmed fixed in 5.002. Sorry about it being in 5.001 ;)

XRsyst

Feb 21, 2011 12:11 am

reporter   ~0010565

Great, thanks!

Issue History

Date Modified Username Field Change
Feb 20, 2011 4:48 pm XRsyst New Issue
Feb 20, 2011 4:48 pm XRsyst File Added: SpireMaws.sav
Feb 20, 2011 4:58 pm XRsyst Summary 0000686:0001200 Spire Maws (II) in standard attack wave => Impossible Situation, 0000686:0001200 Spire Maws (II) in standard attack wave 2 hours in
Feb 20, 2011 7:50 pm TechSY730 Note Added: 0010537
Feb 20, 2011 7:56 pm XRsyst Relationship added related to 0002869
Feb 20, 2011 8:01 pm TechSY730 Note Added: 0010539
Feb 20, 2011 8:03 pm keith.lamothe Note Added: 0010540
Feb 20, 2011 8:03 pm XRsyst Note Added: 0010541
Feb 20, 2011 8:04 pm XRsyst Note Added: 0010542
Feb 20, 2011 8:26 pm XRsyst File Added: MainThreadWaveComputationLog.txt
Feb 20, 2011 8:26 pm keith.lamothe Note Added: 0010544
Feb 20, 2011 8:26 pm XRsyst File Added: AIThreadWaveComputationLog.txt
Feb 20, 2011 8:27 pm XRsyst File Added: BeforeBadWave.sav
Feb 20, 2011 8:28 pm XRsyst Note Added: 0010545
Feb 20, 2011 8:49 pm keith.lamothe Note Added: 0010546
Feb 20, 2011 9:01 pm keith.lamothe Note Added: 0010547
Feb 20, 2011 9:57 pm keith.lamothe Note Added: 0010554
Feb 20, 2011 9:57 pm keith.lamothe Status new => resolved
Feb 20, 2011 9:57 pm keith.lamothe Resolution open => fixed
Feb 20, 2011 9:57 pm keith.lamothe Assigned To => keith.lamothe
Feb 21, 2011 12:11 am XRsyst Note Added: 0010565
Apr 14, 2014 9:29 am Chris_McElligottPark Category Gameplay - Balance Issue => Balance Issue