View Issue Details
ID | Project | Category | Date Submitted | Last Update | |
---|---|---|---|---|---|
0001676 | AI War 1 / Classic | Bug - Other | Dec 1, 2010 1:13 am | Dec 1, 2010 1:51 pm | |
Reporter | Vinraith | Assigned To | keith.lamothe | ||
Status | resolved | Resolution | fixed | ||
Product Version | 4.042 | ||||
Summary | 0001676: (4.042) Early game wave sizes way out of hand | ||||
Description | I'm a big fan of the new, harder waves but this can't possibly be intended. This is a two player game, two random non-technologist AI's at 7.3 each, initial waves (at AIP 21) are in the 600's with one over 1000. That's just not survivable, and I'm assuming it's not intended behavior. | ||||
Tags | No tags attached. | ||||
Internal Weight | |||||
|
|
|
|
|
Tried a solo game at level 7 with easier AIs - got similar results, one turtle sent nothing and a fortress baron sent close to 500 ships on the first wave (AIP < 25). |
|
I don't suppose either of you had advanced logging (under settings window, advanced tab) on and could post your MainThreadWaveComputationLog.txt and AIThreadWaveComputationLog.txt files from the RuntimeData directory? I think I know what the problem is: previously there was a bug that applied the wave-size multiplicative factor twice instead of once, and those factors start at less than one. The bug resulted in factors greater than one going increasingly bonkers, but also made the factors less than one much easier than intended. That said, these wave sizes sound more than a bit out there ;) |
|
Sorry, didn't have adv logging on last night but... I brought a laptop to work today and sometimes you have to reproduce game bugs instead of work (at work)! In doing so I found something interesting. I wasn't paying attention to my settings on the first pass and used simple ship types and non schitz waves (with a fortress baron and vanilla ai, lvl 7). Got what appear to be normal waves given the AIP. Save, screenshot and log to be attached shortly. Then, I realized what I did and kept everything fixed except I turned on schitz waves and used complex ships and.. there you go - both AIs sent 500+ waves at less than 25 AIP. Files also to be attached shortly. |
|
|
|
|
|
simple ships - non schitz AIThreadWaveComputationLog.txt (1,503 bytes)
12/1/2010 10:56:08 AM (4.042) ----------------------------------- Starting CreateHomogenousWaveToPlanet at Game Time: 0:11:39 ; Player.AIType: Vanilla ; Player.AIDifficulty: 7 ; AIProgressionLevel: 10 ; AITechLevel: 1 ; WaveSize: 1 aiTypeBasedAIPIncrement : 0 workingShips = ( ( AIProgressionLevel * Player.AIDifficulty ) / ( 11 - Player.AIDifficulty ) ) : 17.5 workingShips *= FInt.FromParts( 1, AILoop.Instance.AIRandom.Next( 0, 300 ) ) : 19.77 workingShips = Min(workingShips,Player.AIDifficulty * 20) :140 workingShips = Min(workingShips,Player.AIDifficulty * 10) :140 numberShips = workingShips.IntValue :140 after AdjustNumberShipsFromAIType call, numberShips :70 numberTech123 = numberShips - numberExplosive - numberCore :70 12/1/2010 10:56:08 AM (4.042) ----------------------------------- Starting CreateHomogenousWaveToPlanet at Game Time: 0:11:39 ; Player.AIType: Fortress_Baron ; Player.AIDifficulty: 7 ; AIProgressionLevel: 10 ; AITechLevel: 1 ; WaveSize: 1 aiTypeBasedAIPIncrement : 0 workingShips = ( ( AIProgressionLevel * Player.AIDifficulty ) / ( 11 - Player.AIDifficulty ) ) : 17.5 workingShips *= FInt.FromParts( 1, AILoop.Instance.AIRandom.Next( 0, 300 ) ) : 17.76 workingShips = Min(workingShips,Player.AIDifficulty * 20) :140 workingShips = Min(workingShips,Player.AIDifficulty * 10) :140 numberShips = workingShips.IntValue :140 after AdjustNumberShipsFromAIType call, numberShips :70 numberTech123 = numberShips - numberExplosive - numberCore :70 |
|
complex ships - schitz on AIThreadWaveComputationLog.txt (1,529 bytes)
12/1/2010 11:02:52 AM (4.042) ----------------------------------- Starting CreateMixedWaveToPlanet at Game Time: 0:11:39 ; Player.AIType: Vanilla ; Player.AIDifficulty: 7 ; AIProgressionLevel: 10 ; AITechLevel: 1 ; WaveSize: 1 aiTypeBasedAIPIncrement : 0 workingShips = ( ( AIProgressionLevel * Player.AIDifficulty ) / ( 11 - Player.AIDifficulty ) ) : 17.5 workingShips *= FInt.FromParts( 1, AILoop.Instance.AIRandom.Next( 0, 300 ) ) : 20.11 workingShips = Min(workingShips,Player.AIDifficulty * 20) :140 workingShips = Min(workingShips,Player.AIDifficulty * 10) :140 numberShips = workingShips.IntValue :140 after AdjustNumberShipsFromAIType call, numberShips :70 numberTech123 = numberShips - numberDefensive - numberExplosive - numberCore :70 12/1/2010 11:02:52 AM (4.042) ----------------------------------- Starting CreateMixedWaveToPlanet at Game Time: 0:11:39 ; Player.AIType: Fortress_Baron ; Player.AIDifficulty: 7 ; AIProgressionLevel: 10 ; AITechLevel: 1 ; WaveSize: 1 aiTypeBasedAIPIncrement : 0 workingShips = ( ( AIProgressionLevel * Player.AIDifficulty ) / ( 11 - Player.AIDifficulty ) ) : 17.5 workingShips *= FInt.FromParts( 1, AILoop.Instance.AIRandom.Next( 0, 300 ) ) : 20.61 workingShips = Min(workingShips,Player.AIDifficulty * 20) :140 workingShips = Min(workingShips,Player.AIDifficulty * 10) :140 numberShips = workingShips.IntValue :140 after AdjustNumberShipsFromAIType call, numberShips :70 numberTech123 = numberShips - numberDefensive - numberExplosive - numberCore :70 |
|
|
|
|
|
I suspect you can work out which files are which! |
|
And for some reason this was filed under Product Version 4.041 but as Vinraith noted in his report it's actually happening to us under 4.042. |
|
Do you have the MainThread computation logs too? |
|
|
|
Got that beat. Level 5 ai, 50 aip, initial wave of almost 4000. Mostly from an 'everything' ai, the other guy's stuff is pretty standard. Maybe a bad interaction between schizo and everything, making a full wave for each ship type? |
|
I do, I think, sadly if so it's all rolled in to one file (I didn't delete it between attempts like i did for the other log). Attaching now.. Note - it probably has data from one or two other attempts at the beginning when I was sorting out what happened. |
|
full MainThreadWaveComputationLog.txt (21,725 bytes)
12/1/2010 10:41:36 AM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 10:41:36 AM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 10:41:36 AM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:40 WaveSize factor: 1 Raw Units Dictionary Entries: ZenithBombardment => 70 LeechStarship => 1 12/1/2010 10:41:36 AM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:40 CheckWave: populating count of ZenithBombardment with base magnitude of 70 numberUnits = kv.Value * this.WaveSize : 70 after applying ShipCapMultiplier if any, numberUnits : 8.75 after applying CanUseNeinzulRegenerator if any, numberUnits : 8.75 after applying Mark-based multiplier if any, numberUnits : 8.75 after applying at-least-one rule, numberUnits : 8.75 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 26.25 numberUnitsInt = numberUnits.IntValue : 26 after at-least-effective-ship-cap-rule, numberUnitsInt : 26 CheckWave: populating count of LeechStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 27 TypesForDirectAdd count by type: ZenithBombardment => 26 LeechStarship => 1 TypesForCarrierAdd count by type: 12/1/2010 10:52:22 AM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 10:52:22 AM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 10:52:23 AM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:41 WaveSize factor: 1 Raw Units Dictionary Entries: MissileShip => 70 LeechStarship => 1 12/1/2010 10:52:23 AM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:41 WaveSize factor: 1 Raw Units Dictionary Entries: ElectricShuttle => 70 LightStarship => 1 12/1/2010 10:52:23 AM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:41 CheckWave: populating count of MissileShip with base magnitude of 70 numberUnits = kv.Value * this.WaveSize : 70 after applying ShipCapMultiplier if any, numberUnits : 35 after applying CanUseNeinzulRegenerator if any, numberUnits : 35 after applying Mark-based multiplier if any, numberUnits : 35 after applying at-least-one rule, numberUnits : 35 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 105 numberUnitsInt = numberUnits.IntValue : 105 after at-least-effective-ship-cap-rule, numberUnitsInt : 105 CheckWave: populating count of LeechStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 106 TypesForDirectAdd count by type: MissileShip => 105 LeechStarship => 1 TypesForCarrierAdd count by type: 12/1/2010 10:52:23 AM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:41 CheckWave: populating count of ElectricShuttle with base magnitude of 70 numberUnits = kv.Value * this.WaveSize : 70 after applying ShipCapMultiplier if any, numberUnits : 8.75 after applying CanUseNeinzulRegenerator if any, numberUnits : 8.75 after applying Mark-based multiplier if any, numberUnits : 8.75 after applying at-least-one rule, numberUnits : 8.75 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 26.25 numberUnitsInt = numberUnits.IntValue : 26 after at-least-effective-ship-cap-rule, numberUnitsInt : 26 CheckWave: populating count of LightStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 27 TypesForDirectAdd count by type: ElectricShuttle => 26 LightStarship => 1 TypesForCarrierAdd count by type: 12/1/2010 10:53:41 AM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 10:53:41 AM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 10:53:41 AM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:41 WaveSize factor: 1 Raw Units Dictionary Entries: Raider => 70 Dreadnought => 1 12/1/2010 10:53:41 AM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:41 WaveSize factor: 1 Raw Units Dictionary Entries: MissileShip => 70 LightStarship => 1 12/1/2010 10:53:41 AM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:41 CheckWave: populating count of Raider with base magnitude of 70 numberUnits = kv.Value * this.WaveSize : 70 after applying ShipCapMultiplier if any, numberUnits : 87.5 after applying CanUseNeinzulRegenerator if any, numberUnits : 87.5 after applying Mark-based multiplier if any, numberUnits : 87.5 after applying at-least-one rule, numberUnits : 87.5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 262.5 numberUnitsInt = numberUnits.IntValue : 262 after at-least-effective-ship-cap-rule, numberUnitsInt : 262 CheckWave: populating count of Dreadnought with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 263 TypesForDirectAdd count by type: Raider => 262 Dreadnought => 1 TypesForCarrierAdd count by type: 12/1/2010 10:53:41 AM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:41 CheckWave: populating count of MissileShip with base magnitude of 70 numberUnits = kv.Value * this.WaveSize : 70 after applying ShipCapMultiplier if any, numberUnits : 35 after applying CanUseNeinzulRegenerator if any, numberUnits : 35 after applying Mark-based multiplier if any, numberUnits : 35 after applying at-least-one rule, numberUnits : 35 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 105 numberUnitsInt = numberUnits.IntValue : 105 after at-least-effective-ship-cap-rule, numberUnitsInt : 105 CheckWave: populating count of LightStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 106 TypesForDirectAdd count by type: MissileShip => 105 LightStarship => 1 TypesForCarrierAdd count by type: 12/1/2010 10:56:08 AM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 10:56:08 AM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 10:56:08 AM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:41 WaveSize factor: 1 Raw Units Dictionary Entries: Bomber => 70 LeechStarship => 1 12/1/2010 10:56:08 AM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:41 WaveSize factor: 1 Raw Units Dictionary Entries: ElectricShuttle => 70 Dreadnought => 1 12/1/2010 10:56:08 AM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:41 CheckWave: populating count of Bomber with base magnitude of 70 numberUnits = kv.Value * this.WaveSize : 70 after applying ShipCapMultiplier if any, numberUnits : 35 after applying CanUseNeinzulRegenerator if any, numberUnits : 35 after applying Mark-based multiplier if any, numberUnits : 35 after applying at-least-one rule, numberUnits : 35 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 105 numberUnitsInt = numberUnits.IntValue : 105 after at-least-effective-ship-cap-rule, numberUnitsInt : 105 CheckWave: populating count of LeechStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 106 TypesForDirectAdd count by type: Bomber => 105 LeechStarship => 1 TypesForCarrierAdd count by type: 12/1/2010 10:56:08 AM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:41 CheckWave: populating count of ElectricShuttle with base magnitude of 70 numberUnits = kv.Value * this.WaveSize : 70 after applying ShipCapMultiplier if any, numberUnits : 8.75 after applying CanUseNeinzulRegenerator if any, numberUnits : 8.75 after applying Mark-based multiplier if any, numberUnits : 8.75 after applying at-least-one rule, numberUnits : 8.75 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 26.25 numberUnitsInt = numberUnits.IntValue : 26 after at-least-effective-ship-cap-rule, numberUnitsInt : 26 CheckWave: populating count of Dreadnought with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 27 TypesForDirectAdd count by type: ElectricShuttle => 26 Dreadnought => 1 TypesForCarrierAdd count by type: 12/1/2010 11:02:51 AM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 11:02:51 AM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 11:02:52 AM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:41 WaveSize factor: 1 Raw Units Dictionary Entries: SpireGravityRipper => 7 MissileShip => 12 Fighter => 15 VorticularCutlass => 20 Dreadnought => 1 Bomber => 16 12/1/2010 11:02:52 AM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:41 WaveSize factor: 1 Raw Units Dictionary Entries: Fighter => 15 Bomber => 16 AutocannonMinipod => 15 MissileShip => 12 ZenithParalyzer => 12 LightStarship => 1 12/1/2010 11:02:52 AM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:41 CheckWave: populating count of SpireGravityRipper with base magnitude of 7 numberUnits = kv.Value * this.WaveSize : 7 after applying ShipCapMultiplier if any, numberUnits : 1.75 after applying CanUseNeinzulRegenerator if any, numberUnits : 1.75 after applying Mark-based multiplier if any, numberUnits : 1.75 after applying at-least-one rule, numberUnits : 1.75 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 5.25 numberUnitsInt = numberUnits.IntValue : 5 after at-least-effective-ship-cap-rule, numberUnitsInt : 49 CheckWave: populating count of MissileShip with base magnitude of 12 numberUnits = kv.Value * this.WaveSize : 12 after applying ShipCapMultiplier if any, numberUnits : 6 after applying CanUseNeinzulRegenerator if any, numberUnits : 6 after applying Mark-based multiplier if any, numberUnits : 6 after applying at-least-one rule, numberUnits : 6 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 18 numberUnitsInt = numberUnits.IntValue : 18 after at-least-effective-ship-cap-rule, numberUnitsInt : 98 CheckWave: populating count of Fighter with base magnitude of 15 numberUnits = kv.Value * this.WaveSize : 15 after applying ShipCapMultiplier if any, numberUnits : 7.5 after applying CanUseNeinzulRegenerator if any, numberUnits : 7.5 after applying Mark-based multiplier if any, numberUnits : 7.5 after applying at-least-one rule, numberUnits : 7.5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 22.5 numberUnitsInt = numberUnits.IntValue : 22 after at-least-effective-ship-cap-rule, numberUnitsInt : 98 CheckWave: populating count of VorticularCutlass with base magnitude of 20 numberUnits = kv.Value * this.WaveSize : 20 after applying ShipCapMultiplier if any, numberUnits : 20 after applying CanUseNeinzulRegenerator if any, numberUnits : 20 after applying Mark-based multiplier if any, numberUnits : 20 after applying at-least-one rule, numberUnits : 20 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 60 numberUnitsInt = numberUnits.IntValue : 60 after at-least-effective-ship-cap-rule, numberUnitsInt : 196 CheckWave: populating count of Dreadnought with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) CheckWave: populating count of Bomber with base magnitude of 16 numberUnits = kv.Value * this.WaveSize : 16 after applying ShipCapMultiplier if any, numberUnits : 8 after applying CanUseNeinzulRegenerator if any, numberUnits : 8 after applying Mark-based multiplier if any, numberUnits : 8 after applying at-least-one rule, numberUnits : 8 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 24 numberUnitsInt = numberUnits.IntValue : 24 after at-least-effective-ship-cap-rule, numberUnitsInt : 98 Wave total ships: 540 TypesForDirectAdd count by type: SpireGravityRipper => 49 MissileShip => 98 Fighter => 98 VorticularCutlass => 196 Dreadnought => 1 Bomber => 98 TypesForCarrierAdd count by type: 12/1/2010 11:02:52 AM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:41 CheckWave: populating count of Fighter with base magnitude of 15 numberUnits = kv.Value * this.WaveSize : 15 after applying ShipCapMultiplier if any, numberUnits : 7.5 after applying CanUseNeinzulRegenerator if any, numberUnits : 7.5 after applying Mark-based multiplier if any, numberUnits : 7.5 after applying at-least-one rule, numberUnits : 7.5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 22.5 numberUnitsInt = numberUnits.IntValue : 22 after at-least-effective-ship-cap-rule, numberUnitsInt : 98 CheckWave: populating count of Bomber with base magnitude of 16 numberUnits = kv.Value * this.WaveSize : 16 after applying ShipCapMultiplier if any, numberUnits : 8 after applying CanUseNeinzulRegenerator if any, numberUnits : 8 after applying Mark-based multiplier if any, numberUnits : 8 after applying at-least-one rule, numberUnits : 8 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 24 numberUnitsInt = numberUnits.IntValue : 24 after at-least-effective-ship-cap-rule, numberUnitsInt : 98 CheckWave: populating count of AutocannonMinipod with base magnitude of 15 numberUnits = kv.Value * this.WaveSize : 15 after applying ShipCapMultiplier if any, numberUnits : 15 after applying CanUseNeinzulRegenerator if any, numberUnits : 15 after applying Mark-based multiplier if any, numberUnits : 15 after applying at-least-one rule, numberUnits : 15 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 45 numberUnitsInt = numberUnits.IntValue : 45 after at-least-effective-ship-cap-rule, numberUnitsInt : 196 CheckWave: populating count of MissileShip with base magnitude of 12 numberUnits = kv.Value * this.WaveSize : 12 after applying ShipCapMultiplier if any, numberUnits : 6 after applying CanUseNeinzulRegenerator if any, numberUnits : 6 after applying Mark-based multiplier if any, numberUnits : 6 after applying at-least-one rule, numberUnits : 6 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 18 numberUnitsInt = numberUnits.IntValue : 18 after at-least-effective-ship-cap-rule, numberUnitsInt : 98 CheckWave: populating count of ZenithParalyzer with base magnitude of 12 numberUnits = kv.Value * this.WaveSize : 12 after applying ShipCapMultiplier if any, numberUnits : 6 after applying CanUseNeinzulRegenerator if any, numberUnits : 6 after applying Mark-based multiplier if any, numberUnits : 6 after applying at-least-one rule, numberUnits : 6 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 18 numberUnitsInt = numberUnits.IntValue : 18 after at-least-effective-ship-cap-rule, numberUnitsInt : 98 CheckWave: populating count of LightStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 589 TypesForDirectAdd count by type: Fighter => 98 Bomber => 98 AutocannonMinipod => 196 MissileShip => 98 ZenithParalyzer => 98 LightStarship => 1 TypesForCarrierAdd count by type: |
|
@Nihilus - that's what I was thinking too - a full wave for each type. |
|
Reading through my log now, and yep, that's what's happening. It's applying the 100 unit floor for each unit type, from an Everything AI with Schizo enabled.... pretty cool, actually, but definitely a bug and not a feature :P |
|
Thanks for the files, will take a look :) And Nihilus, if you use advanced logging you can compare the everything-AI and the other-AI's computations, which is much more valuable than speculation :) That said, I think some of the minimum-number logic may be interacting with the large number of distinct types to create an abnormally large wave, yes. |
|
It doesn't actually do a full wave for each type, it spreads the raw numbers across the types randomly, but the raw numbers are transformed into the final numbers via logic that includes some minimum-count logic designed to avoid waves of 1 zenith electric bomber, etc. It may be that schizo needs to reduce or ignore the minimums. |
|
Bingo. I would say ignore the minimums, because the initial AddInboundWave has almost all 1 and 2 of each type, only a few 3's. Any floor higher than that could potentially double what it should be. |
|
Yeah, pure speculation from users... got to love it. |
|
Well, from me anyhow... Nihilus seems to know something. But it's pure blind hip shot on my end. |
|
It was filed under 4.041 because 4.042 wasn't available via the drop down in Mantis, at least at the time. I should have thought to turn on the advanced logging, will do so now and reproduce those waves. Edit: Not that you even need more, but those have been added as OP_ for reference. |
|
OP_AIThreadWaveComputationLog.txt (2,987 bytes)
12/1/2010 12:57:38 PM (4.042) ----------------------------------- Starting CreateMixedWaveToPlanet at Game Time: 0:11:10 ; Player.AIType: Golemite ; Player.AIDifficulty: 7.3 ; AIProgressionLevel: 21 ; AITechLevel: 1 ; WaveSize: 1 aiTypeBasedAIPIncrement : 0 workingShips = ( ( AIProgressionLevel * Player.AIDifficulty ) / ( 11 - Player.AIDifficulty ) ) : 41.43 workingShips *= FInt.FromParts( 1, AILoop.Instance.AIRandom.Next( 0, 300 ) ) : 44.2 workingShips = Min(workingShips,Player.AIDifficulty * 20) :146 workingShips = Min(workingShips,Player.AIDifficulty * 10) :146 numberShips = workingShips.IntValue :145 after AdjustNumberShipsFromAIType call, numberShips :72 numberTech123 = numberShips - numberDefensive - numberExplosive - numberCore :72 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Starting CreateMixedWaveToPlanet at Game Time: 0:11:10 ; Player.AIType: Golemite ; Player.AIDifficulty: 7.3 ; AIProgressionLevel: 21 ; AITechLevel: 1 ; WaveSize: 1 aiTypeBasedAIPIncrement : 0 workingShips = ( ( AIProgressionLevel * Player.AIDifficulty ) / ( 11 - Player.AIDifficulty ) ) : 41.43 workingShips *= FInt.FromParts( 1, AILoop.Instance.AIRandom.Next( 0, 300 ) ) : 53.19 workingShips = Min(workingShips,Player.AIDifficulty * 20) :146 workingShips = Min(workingShips,Player.AIDifficulty * 10) :146 numberShips = workingShips.IntValue :145 after AdjustNumberShipsFromAIType call, numberShips :72 numberTech123 = numberShips - numberDefensive - numberExplosive - numberCore :72 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Starting CreateMixedWaveToPlanet at Game Time: 0:11:10 ; Player.AIType: Stealth_Master ; Player.AIDifficulty: 7.3 ; AIProgressionLevel: 21 ; AITechLevel: 1 ; WaveSize: 1 aiTypeBasedAIPIncrement : 0 workingShips = ( ( AIProgressionLevel * Player.AIDifficulty ) / ( 11 - Player.AIDifficulty ) ) : 41.43 workingShips *= FInt.FromParts( 1, AILoop.Instance.AIRandom.Next( 0, 300 ) ) : 42.5 workingShips = Min(workingShips,Player.AIDifficulty * 20) :146 workingShips = Min(workingShips,Player.AIDifficulty * 10) :146 numberShips = workingShips.IntValue :145 after AdjustNumberShipsFromAIType call, numberShips :72 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Starting CreateMixedWaveToPlanet at Game Time: 0:11:10 ; Player.AIType: Stealth_Master ; Player.AIDifficulty: 7.3 ; AIProgressionLevel: 21 ; AITechLevel: 1 ; WaveSize: 1 aiTypeBasedAIPIncrement : 0 workingShips = ( ( AIProgressionLevel * Player.AIDifficulty ) / ( 11 - Player.AIDifficulty ) ) : 41.43 workingShips *= FInt.FromParts( 1, AILoop.Instance.AIRandom.Next( 0, 300 ) ) : 44.2 workingShips = Min(workingShips,Player.AIDifficulty * 20) :146 workingShips = Min(workingShips,Player.AIDifficulty * 10) :146 numberShips = workingShips.IntValue :145 after AdjustNumberShipsFromAIType call, numberShips :72 numberTech123 = numberShips - numberDefensive - numberExplosive - numberCore :72 |
|
OP_MainThreadWaveComputationLog.txt (18,940 bytes)
12/1/2010 12:57:38 PM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:11 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:11 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:11 WaveSize factor: 1 Raw Units Dictionary Entries: Fighter => 14 Raider => 17 SpacePlane => 15 Bomber => 15 Dreadnought => 1 MissileShip => 11 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:11 WaveSize factor: 1 Raw Units Dictionary Entries: Fighter => 14 SpacePlane => 17 MissileShip => 12 Bomber => 19 Raider => 10 LeechStarship => 1 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:11 WaveSize factor: 1 Raw Units Dictionary Entries: EtherJet => 21 SpacePlane => 12 Raptor => 18 AutocannonMinipod => 21 LeechStarship => 1 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:11 WaveSize factor: 1 Raw Units Dictionary Entries: AutocannonMinipod => 12 SpaceTank => 8 MicroFighter => 7 MissileShip => 7 Raptor => 10 Fighter => 8 Bomber => 7 EtherJet => 8 SpacePlane => 5 LightStarship => 1 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:11 CheckWave: populating count of Fighter with base magnitude of 14 numberUnits = kv.Value * this.WaveSize : 14 after applying ShipCapMultiplier if any, numberUnits : 7 after applying CanUseNeinzulRegenerator if any, numberUnits : 7 after applying Mark-based multiplier if any, numberUnits : 7 after applying at-least-one rule, numberUnits : 7 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 21 numberUnitsInt = numberUnits.IntValue : 21 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of Raider with base magnitude of 17 numberUnits = kv.Value * this.WaveSize : 17 after applying ShipCapMultiplier if any, numberUnits : 21.25 after applying CanUseNeinzulRegenerator if any, numberUnits : 21.25 after applying Mark-based multiplier if any, numberUnits : 21.25 after applying at-least-one rule, numberUnits : 21.25 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 63.75 numberUnitsInt = numberUnits.IntValue : 63 after at-least-effective-ship-cap-rule, numberUnitsInt : 222 CheckWave: populating count of SpacePlane with base magnitude of 15 numberUnits = kv.Value * this.WaveSize : 15 after applying ShipCapMultiplier if any, numberUnits : 13.13 after applying CanUseNeinzulRegenerator if any, numberUnits : 13.13 after applying Mark-based multiplier if any, numberUnits : 13.13 after applying at-least-one rule, numberUnits : 13.13 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 39.38 numberUnitsInt = numberUnits.IntValue : 39 after at-least-effective-ship-cap-rule, numberUnitsInt : 155 CheckWave: populating count of Bomber with base magnitude of 15 numberUnits = kv.Value * this.WaveSize : 15 after applying ShipCapMultiplier if any, numberUnits : 7.5 after applying CanUseNeinzulRegenerator if any, numberUnits : 7.5 after applying Mark-based multiplier if any, numberUnits : 7.5 after applying at-least-one rule, numberUnits : 7.5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 22.5 numberUnitsInt = numberUnits.IntValue : 22 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of Dreadnought with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) CheckWave: populating count of MissileShip with base magnitude of 11 numberUnits = kv.Value * this.WaveSize : 11 after applying ShipCapMultiplier if any, numberUnits : 5.5 after applying CanUseNeinzulRegenerator if any, numberUnits : 5.5 after applying Mark-based multiplier if any, numberUnits : 5.5 after applying at-least-one rule, numberUnits : 5.5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 16.5 numberUnitsInt = numberUnits.IntValue : 16 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 Wave total ships: 645 TypesForDirectAdd count by type: Fighter => 89 Raider => 222 SpacePlane => 155 Bomber => 89 Dreadnought => 1 MissileShip => 89 TypesForCarrierAdd count by type: 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:11 CheckWave: populating count of Fighter with base magnitude of 14 numberUnits = kv.Value * this.WaveSize : 14 after applying ShipCapMultiplier if any, numberUnits : 7 after applying CanUseNeinzulRegenerator if any, numberUnits : 7 after applying Mark-based multiplier if any, numberUnits : 7 after applying at-least-one rule, numberUnits : 7 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 21 numberUnitsInt = numberUnits.IntValue : 21 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of SpacePlane with base magnitude of 17 numberUnits = kv.Value * this.WaveSize : 17 after applying ShipCapMultiplier if any, numberUnits : 14.88 after applying CanUseNeinzulRegenerator if any, numberUnits : 14.88 after applying Mark-based multiplier if any, numberUnits : 14.88 after applying at-least-one rule, numberUnits : 14.88 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 44.63 numberUnitsInt = numberUnits.IntValue : 44 after at-least-effective-ship-cap-rule, numberUnitsInt : 155 CheckWave: populating count of MissileShip with base magnitude of 12 numberUnits = kv.Value * this.WaveSize : 12 after applying ShipCapMultiplier if any, numberUnits : 6 after applying CanUseNeinzulRegenerator if any, numberUnits : 6 after applying Mark-based multiplier if any, numberUnits : 6 after applying at-least-one rule, numberUnits : 6 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 18 numberUnitsInt = numberUnits.IntValue : 18 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of Bomber with base magnitude of 19 numberUnits = kv.Value * this.WaveSize : 19 after applying ShipCapMultiplier if any, numberUnits : 9.5 after applying CanUseNeinzulRegenerator if any, numberUnits : 9.5 after applying Mark-based multiplier if any, numberUnits : 9.5 after applying at-least-one rule, numberUnits : 9.5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 28.5 numberUnitsInt = numberUnits.IntValue : 28 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of Raider with base magnitude of 10 numberUnits = kv.Value * this.WaveSize : 10 after applying ShipCapMultiplier if any, numberUnits : 12.5 after applying CanUseNeinzulRegenerator if any, numberUnits : 12.5 after applying Mark-based multiplier if any, numberUnits : 12.5 after applying at-least-one rule, numberUnits : 12.5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 37.5 numberUnitsInt = numberUnits.IntValue : 37 after at-least-effective-ship-cap-rule, numberUnitsInt : 222 CheckWave: populating count of LeechStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 645 TypesForDirectAdd count by type: Fighter => 89 SpacePlane => 155 MissileShip => 89 Bomber => 89 Raider => 222 LeechStarship => 1 TypesForCarrierAdd count by type: 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:11 CheckWave: populating count of EtherJet with base magnitude of 21 numberUnits = kv.Value * this.WaveSize : 21 after applying ShipCapMultiplier if any, numberUnits : 15.75 after applying CanUseNeinzulRegenerator if any, numberUnits : 15.75 after applying Mark-based multiplier if any, numberUnits : 15.75 after applying at-least-one rule, numberUnits : 15.75 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 47.25 numberUnitsInt = numberUnits.IntValue : 47 after at-least-effective-ship-cap-rule, numberUnitsInt : 133 CheckWave: populating count of SpacePlane with base magnitude of 12 numberUnits = kv.Value * this.WaveSize : 12 after applying ShipCapMultiplier if any, numberUnits : 10.5 after applying CanUseNeinzulRegenerator if any, numberUnits : 10.5 after applying Mark-based multiplier if any, numberUnits : 10.5 after applying at-least-one rule, numberUnits : 10.5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 31.5 numberUnitsInt = numberUnits.IntValue : 31 after at-least-effective-ship-cap-rule, numberUnitsInt : 155 CheckWave: populating count of Raptor with base magnitude of 18 numberUnits = kv.Value * this.WaveSize : 18 after applying ShipCapMultiplier if any, numberUnits : 9 after applying CanUseNeinzulRegenerator if any, numberUnits : 9 after applying Mark-based multiplier if any, numberUnits : 9 after applying at-least-one rule, numberUnits : 9 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 27 numberUnitsInt = numberUnits.IntValue : 27 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of AutocannonMinipod with base magnitude of 21 numberUnits = kv.Value * this.WaveSize : 21 after applying ShipCapMultiplier if any, numberUnits : 21 after applying CanUseNeinzulRegenerator if any, numberUnits : 21 after applying Mark-based multiplier if any, numberUnits : 21 after applying at-least-one rule, numberUnits : 21 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 63 numberUnitsInt = numberUnits.IntValue : 63 after at-least-effective-ship-cap-rule, numberUnitsInt : 178 CheckWave: populating count of LeechStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 556 TypesForDirectAdd count by type: EtherJet => 133 SpacePlane => 155 Raptor => 89 AutocannonMinipod => 178 LeechStarship => 1 TypesForCarrierAdd count by type: 12/1/2010 12:57:38 PM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:11 CheckWave: populating count of AutocannonMinipod with base magnitude of 12 numberUnits = kv.Value * this.WaveSize : 12 after applying ShipCapMultiplier if any, numberUnits : 12 after applying CanUseNeinzulRegenerator if any, numberUnits : 12 after applying Mark-based multiplier if any, numberUnits : 12 after applying at-least-one rule, numberUnits : 12 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 36 numberUnitsInt = numberUnits.IntValue : 36 after at-least-effective-ship-cap-rule, numberUnitsInt : 178 CheckWave: populating count of SpaceTank with base magnitude of 8 numberUnits = kv.Value * this.WaveSize : 8 after applying ShipCapMultiplier if any, numberUnits : 4 after applying CanUseNeinzulRegenerator if any, numberUnits : 4 after applying Mark-based multiplier if any, numberUnits : 4 after applying at-least-one rule, numberUnits : 4 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 12 numberUnitsInt = numberUnits.IntValue : 12 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of MicroFighter with base magnitude of 7 numberUnits = kv.Value * this.WaveSize : 7 after applying ShipCapMultiplier if any, numberUnits : 5.25 after applying CanUseNeinzulRegenerator if any, numberUnits : 5.25 after applying Mark-based multiplier if any, numberUnits : 5.25 after applying at-least-one rule, numberUnits : 5.25 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 15.75 numberUnitsInt = numberUnits.IntValue : 15 after at-least-effective-ship-cap-rule, numberUnitsInt : 133 CheckWave: populating count of MissileShip with base magnitude of 7 numberUnits = kv.Value * this.WaveSize : 7 after applying ShipCapMultiplier if any, numberUnits : 3.5 after applying CanUseNeinzulRegenerator if any, numberUnits : 3.5 after applying Mark-based multiplier if any, numberUnits : 3.5 after applying at-least-one rule, numberUnits : 3.5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 10.5 numberUnitsInt = numberUnits.IntValue : 10 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of Raptor with base magnitude of 10 numberUnits = kv.Value * this.WaveSize : 10 after applying ShipCapMultiplier if any, numberUnits : 5 after applying CanUseNeinzulRegenerator if any, numberUnits : 5 after applying Mark-based multiplier if any, numberUnits : 5 after applying at-least-one rule, numberUnits : 5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 15 numberUnitsInt = numberUnits.IntValue : 15 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of Fighter with base magnitude of 8 numberUnits = kv.Value * this.WaveSize : 8 after applying ShipCapMultiplier if any, numberUnits : 4 after applying CanUseNeinzulRegenerator if any, numberUnits : 4 after applying Mark-based multiplier if any, numberUnits : 4 after applying at-least-one rule, numberUnits : 4 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 12 numberUnitsInt = numberUnits.IntValue : 12 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of Bomber with base magnitude of 7 numberUnits = kv.Value * this.WaveSize : 7 after applying ShipCapMultiplier if any, numberUnits : 3.5 after applying CanUseNeinzulRegenerator if any, numberUnits : 3.5 after applying Mark-based multiplier if any, numberUnits : 3.5 after applying at-least-one rule, numberUnits : 3.5 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 10.5 numberUnitsInt = numberUnits.IntValue : 10 after at-least-effective-ship-cap-rule, numberUnitsInt : 89 CheckWave: populating count of EtherJet with base magnitude of 8 numberUnits = kv.Value * this.WaveSize : 8 after applying ShipCapMultiplier if any, numberUnits : 6 after applying CanUseNeinzulRegenerator if any, numberUnits : 6 after applying Mark-based multiplier if any, numberUnits : 6 after applying at-least-one rule, numberUnits : 6 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 18 numberUnitsInt = numberUnits.IntValue : 18 after at-least-effective-ship-cap-rule, numberUnitsInt : 133 CheckWave: populating count of SpacePlane with base magnitude of 5 numberUnits = kv.Value * this.WaveSize : 5 after applying ShipCapMultiplier if any, numberUnits : 4.38 after applying CanUseNeinzulRegenerator if any, numberUnits : 4.38 after applying Mark-based multiplier if any, numberUnits : 4.38 after applying at-least-one rule, numberUnits : 4.38 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 13.13 numberUnitsInt = numberUnits.IntValue : 13 after at-least-effective-ship-cap-rule, numberUnitsInt : 155 CheckWave: populating count of LightStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 1045 TypesForDirectAdd count by type: AutocannonMinipod => 178 SpaceTank => 89 MicroFighter => 133 MissileShip => 89 Raptor => 89 Fighter => 89 Bomber => 89 EtherJet => 133 SpacePlane => 111 LightStarship => 1 TypesForCarrierAdd count by type: SpacePlane => 44 |
|
Ok, this one has been stuffed and mounted on the trophy rack, thanks :) Of course, the early waves can still be fairly big, as you can see: 12/1/2010 1:03:09 PM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:41 WaveSize factor: 1 Raw Units Dictionary Entries: MissileShip => 26 SentinelFrigate => 28 Fighter => 32 VampireClaw => 31 LightStarship => 1 Bomber => 23 12/1/2010 1:03:09 PM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:41 CheckWave: populating count of MissileShip with base magnitude of 26 numberUnits = kv.Value * this.WaveSize : 26 after applying ShipCapMultiplier if any, numberUnits : 26 after applying CanUseNeinzulRegenerator if any, numberUnits : 26 after applying Mark-based multiplier if any, numberUnits : 26 after applying at-least-one rule, numberUnits : 26 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 78 numberUnitsInt = numberUnits.IntValue : 78 skipping at-least-effective-ship-cap-rule due to multiple non-starship types CheckWave: populating count of SentinelFrigate with base magnitude of 28 numberUnits = kv.Value * this.WaveSize : 28 after applying ShipCapMultiplier if any, numberUnits : 2.8 after applying CanUseNeinzulRegenerator if any, numberUnits : 2.8 after applying Mark-based multiplier if any, numberUnits : 2.8 after applying at-least-one rule, numberUnits : 2.8 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 8.39 numberUnitsInt = numberUnits.IntValue : 8 skipping at-least-effective-ship-cap-rule due to multiple non-starship types CheckWave: populating count of Fighter with base magnitude of 32 numberUnits = kv.Value * this.WaveSize : 32 after applying ShipCapMultiplier if any, numberUnits : 32 after applying CanUseNeinzulRegenerator if any, numberUnits : 32 after applying Mark-based multiplier if any, numberUnits : 32 after applying at-least-one rule, numberUnits : 32 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 96 numberUnitsInt = numberUnits.IntValue : 96 skipping at-least-effective-ship-cap-rule due to multiple non-starship types CheckWave: populating count of VampireClaw with base magnitude of 31 numberUnits = kv.Value * this.WaveSize : 31 after applying ShipCapMultiplier if any, numberUnits : 18.6 after applying CanUseNeinzulRegenerator if any, numberUnits : 18.6 after applying Mark-based multiplier if any, numberUnits : 18.6 after applying at-least-one rule, numberUnits : 18.6 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 55.79 numberUnitsInt = numberUnits.IntValue : 55 skipping at-least-effective-ship-cap-rule due to multiple non-starship types CheckWave: populating count of LightStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) CheckWave: populating count of Bomber with base magnitude of 23 numberUnits = kv.Value * this.WaveSize : 23 after applying ShipCapMultiplier if any, numberUnits : 23 after applying CanUseNeinzulRegenerator if any, numberUnits : 23 after applying Mark-based multiplier if any, numberUnits : 23 after applying at-least-one rule, numberUnits : 23 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 69 numberUnitsInt = numberUnits.IntValue : 69 skipping at-least-effective-ship-cap-rule due to multiple non-starship types Wave total ships: 307 TypesForDirectAdd count by type: MissileShip => 78 SentinelFrigate => 8 Fighter => 96 VampireClaw => 55 LightStarship => 1 Bomber => 69 But that's at least working as designed, no funny business. Note that this was with 2x waves and schizo on. |
|
Ah, I found another bug with how it was handling minimum-wave-size-by-difficulty, and roughly doubling that; here's a wave calc with that fixed: 12/1/2010 1:17:04 PM (4.042) ----------------------------------- Triggering Normal Wave; wave size factor: 1; Game Time: 0:11:40 12/1/2010 1:17:04 PM (4.042) ----------------------------------- Starting CreateMixedWaveToPlanet at Game Time: 0:11:39 ; Player.AIType: Vanilla ; Player.AIDifficulty: 7 ; AIProgressionLevel: 12 ; AITechLevel: 1 ; WaveSize: 1 aiTypeBasedAIPIncrement : 0 workingShips = ( ( AIProgressionLevel * Player.AIDifficulty ) / ( 11 - Player.AIDifficulty ) ) : 21 workingShips *= FInt.FromParts( 1, AILoop.Instance.AIRandom.Next( 0, 300 ) ) : 22.07 workingShips = Min(workingShips,Player.AIDifficulty * 10) :70 numberShips = workingShips.IntValue :70 after AdjustNumberShipsFromAIType call, numberShips :70 numberTech123 = numberShips - numberDefensive - numberExplosive - numberCore :70 12/1/2010 1:17:04 PM (4.042) ----------------------------------- Receiving AddInboundWave from AI Thread at Game Time: 0:11:43 WaveSize factor: 1 Raw Units Dictionary Entries: Bomber => 15 Fighter => 14 MissileShip => 12 Infiltrator => 13 Sniper => 16 LeechStarship => 1 12/1/2010 1:17:05 PM (4.042) ----------------------------------- Performing first CheckWave with size factor of 1 on wave at Game Time: 0:11:43 CheckWave: populating count of Bomber with base magnitude of 15 numberUnits = kv.Value * this.WaveSize : 15 after applying ShipCapMultiplier if any, numberUnits : 15 after applying CanUseNeinzulRegenerator if any, numberUnits : 15 after applying Mark-based multiplier if any, numberUnits : 15 after applying at-least-one rule, numberUnits : 15 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 45 numberUnitsInt = numberUnits.IntValue : 45 skipping at-least-effective-ship-cap-rule due to multiple non-starship types CheckWave: populating count of Fighter with base magnitude of 14 numberUnits = kv.Value * this.WaveSize : 14 after applying ShipCapMultiplier if any, numberUnits : 14 after applying CanUseNeinzulRegenerator if any, numberUnits : 14 after applying Mark-based multiplier if any, numberUnits : 14 after applying at-least-one rule, numberUnits : 14 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 42 numberUnitsInt = numberUnits.IntValue : 42 skipping at-least-effective-ship-cap-rule due to multiple non-starship types CheckWave: populating count of MissileShip with base magnitude of 12 numberUnits = kv.Value * this.WaveSize : 12 after applying ShipCapMultiplier if any, numberUnits : 12 after applying CanUseNeinzulRegenerator if any, numberUnits : 12 after applying Mark-based multiplier if any, numberUnits : 12 after applying at-least-one rule, numberUnits : 12 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 36 numberUnitsInt = numberUnits.IntValue : 36 skipping at-least-effective-ship-cap-rule due to multiple non-starship types CheckWave: populating count of Infiltrator with base magnitude of 13 numberUnits = kv.Value * this.WaveSize : 13 after applying ShipCapMultiplier if any, numberUnits : 36.4 after applying CanUseNeinzulRegenerator if any, numberUnits : 36.4 after applying Mark-based multiplier if any, numberUnits : 36.4 after applying at-least-one rule, numberUnits : 36.4 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 109.19 numberUnitsInt = numberUnits.IntValue : 109 skipping at-least-effective-ship-cap-rule due to multiple non-starship types CheckWave: populating count of Sniper with base magnitude of 16 numberUnits = kv.Value * this.WaveSize : 16 after applying ShipCapMultiplier if any, numberUnits : 3.2 after applying CanUseNeinzulRegenerator if any, numberUnits : 3.2 after applying Mark-based multiplier if any, numberUnits : 3.2 after applying at-least-one rule, numberUnits : 3.2 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 9.6 numberUnitsInt = numberUnits.IntValue : 9 skipping at-least-effective-ship-cap-rule due to multiple non-starship types CheckWave: populating count of LeechStarship with base magnitude of 1 numberUnits = kv.Value * this.WaveSize : 1 after applying ShipCapMultiplier if any, numberUnits : 1 after applying CanUseNeinzulRegenerator if any, numberUnits : 1 after applying Mark-based multiplier if any, numberUnits : 1 after applying at-least-one rule, numberUnits : 1 after applying difficulty-based (if >= 8 then 4, if >= 7 then 3, if >= 6 then 2, else 1) multiplier if any, numberUnits : 3 numberUnitsInt = numberUnits.IntValue : 3 it's a starship so only adding one rule : 1 (had you going there, didn't we) Wave total ships: 242 TypesForDirectAdd count by type: Bomber => 45 Fighter => 42 MissileShip => 36 Infiltrator => 109 Sniper => 9 LeechStarship => 1 Again, 2x waves with schizo (note that 2x doesn't impact wave size _at all_, just the timing; without that I would have had to run the test longer to get the wave trigger). |
|
Wow, that was fast - thank you! Looking forward to the update! |
|
Our pleasure, I hope that 4.043 will be out tonight but I'm not sure what the schedule looks like. |
Date Modified | Username | Field | Change |
---|---|---|---|
Dec 1, 2010 1:13 am | Vinraith | New Issue | |
Dec 1, 2010 1:13 am | Vinraith | File Added: excessive waves.sav | |
Dec 1, 2010 1:17 am | Vinraith | Description Updated | |
Dec 1, 2010 1:18 am | Vinraith | File Added: Screenshot_2010_12_01_01_03_43.png | |
Dec 1, 2010 1:23 am | Master Cylinder Pants | Note Added: 0004718 | |
Dec 1, 2010 7:22 am | keith.lamothe | Note Added: 0004720 | |
Dec 1, 2010 7:22 am | keith.lamothe | Assigned To | => keith.lamothe |
Dec 1, 2010 7:22 am | keith.lamothe | Status | new => feedback |
Dec 1, 2010 11:07 am | Master Cylinder Pants | Note Added: 0004759 | |
Dec 1, 2010 11:09 am | Master Cylinder Pants | File Added: simple ships - no schitz Screenshot_2010_12_01_10_56_11.png | |
Dec 1, 2010 11:09 am | Master Cylinder Pants | File Added: simple ships - no schitz.sav | |
Dec 1, 2010 11:10 am | Master Cylinder Pants | File Added: simple ships - non schitz AIThreadWaveComputationLog.txt | |
Dec 1, 2010 11:10 am | Master Cylinder Pants | File Added: complex ships - schitz on AIThreadWaveComputationLog.txt | |
Dec 1, 2010 11:10 am | Master Cylinder Pants | File Added: complex ships - schitz on.sav | |
Dec 1, 2010 11:10 am | Master Cylinder Pants | File Added: complex ships -schitz on Screenshot_2010_12_01_11_02_56.png | |
Dec 1, 2010 11:11 am | Master Cylinder Pants | Note Added: 0004761 | |
Dec 1, 2010 11:13 am | Master Cylinder Pants | Note Added: 0004762 | |
Dec 1, 2010 11:15 am | keith.lamothe | Note Added: 0004764 | |
Dec 1, 2010 11:24 am | Nihilus | File Added: impossible early wave.sav | |
Dec 1, 2010 11:24 am | Nihilus | Note Added: 0004766 | |
Dec 1, 2010 11:29 am | Master Cylinder Pants | Note Added: 0004767 | |
Dec 1, 2010 11:29 am | Master Cylinder Pants | File Added: full MainThreadWaveComputationLog.txt | |
Dec 1, 2010 11:30 am | Master Cylinder Pants | Note Added: 0004768 | |
Dec 1, 2010 11:31 am | Nihilus | Note Added: 0004769 | |
Dec 1, 2010 11:32 am | keith.lamothe | Note Added: 0004770 | |
Dec 1, 2010 11:34 am | keith.lamothe | Note Added: 0004771 | |
Dec 1, 2010 11:38 am | Nihilus | Note Added: 0004772 | |
Dec 1, 2010 11:41 am | Master Cylinder Pants | Note Added: 0004773 | |
Dec 1, 2010 11:42 am | Master Cylinder Pants | Note Added: 0004774 | |
Dec 1, 2010 12:42 pm | Vinraith | Note Added: 0004777 | |
Dec 1, 2010 12:42 pm | Vinraith | Status | feedback => assigned |
Dec 1, 2010 1:00 pm | Vinraith | Note Edited: 0004777 | |
Dec 1, 2010 1:01 pm | Vinraith | File Added: OP_AIThreadWaveComputationLog.txt | |
Dec 1, 2010 1:01 pm | Vinraith | File Added: OP_MainThreadWaveComputationLog.txt | |
Dec 1, 2010 1:01 pm | Vinraith | Note Edited: 0004777 | |
Dec 1, 2010 1:01 pm | Vinraith | Product Version | 4.041 => 4.042 |
Dec 1, 2010 1:08 pm | keith.lamothe | Note Added: 0004780 | |
Dec 1, 2010 1:08 pm | keith.lamothe | Status | assigned => resolved |
Dec 1, 2010 1:08 pm | keith.lamothe | Resolution | open => fixed |
Dec 1, 2010 1:20 pm | keith.lamothe | Note Added: 0004781 | |
Dec 1, 2010 1:49 pm | Master Cylinder Pants | Note Added: 0004785 | |
Dec 1, 2010 1:51 pm | keith.lamothe | Note Added: 0004787 |