View Issue Details

IDProjectCategoryLast Update
0001587AI War 1 / ClassicCrash/ExceptionJan 3, 2011 11:45 am
Reporterwyvern83 Assigned ToChris_McElligottPark  
Status closedResolutionnot fixable 
Product Version4.040 
Summary0001587: game crash/freeze
Descriptionversion 4.040

I was defending against a counter-wave in Orkip while holding down the 'x' key to micro with attack-move when the game froze. (I had to use task manager to close it.)

My fleet contained over 9000 ships in it. (Newer games are all on low cap as I'm aware of my machine's limitations regarding lag in battles of over 12,000 combatants)

relevant settings: normal caps, complete visibility
expansions: TZR, CON (Its a legacy game from before I got into the LotS beta a couple versions back)



The counter-wave is about 1 minute and 45 seconds out in the save below if you wanted to test it. (redoing the battle with over 2000 more ships failed to reproduce the error though I think I relied on FRD for the most part.)

I checked all of the different error log files, only AIErrors had anything about it.

Edit: I forgot to mention both times I've had this a Fatal Error in GC window poped up, two the first time, with the message "too much in the heap section".



11/24/2010 12:08:57 PM (4.040)
-----------------------------------
AILoop Error-----------------------------------
System.ArgumentOutOfRangeException: Argument is out of range.
Parameter name: index
  at System.Collections.Generic.List`1[AIUnit].get_Item (Int32 index) [0x00000] in <filename unknown>:0
  at AILoop.RunAILoop () [0x00000] in <filename unknown>:0

TagsNo tags attached.
Internal Weight

Relationships

related to 0001933 closedChris_McElligottPark Too many heap sections 

Activities

wyvern83

Nov 24, 2010 2:40 pm

reporter  

wyvern83

Nov 24, 2010 6:19 pm

reporter   ~0004450

Last edited: Nov 24, 2010 6:19 pm

I got it again. No report this time, I caught the Fatal Error in GC msg this time, something about ~ 'too much in the heap section'

I was either in large scale combat in 3 systems (2 counter-waves of ~ 4,500 and a strung out CPA of ~ 4,000) with whole fleet of ~ 12,000 ships or I had just finished and was ordering them all back to the front since I don't remember having to reload to do fend off the attack twice.

Chris_McElligottPark

Nov 24, 2010 6:26 pm

administrator   ~0004452

Ok -- that's a lot more clear as to what's going on, then. You're simply running the game past its memory limit in those cases, and it's dying. That's not something we can really fix, and it's one of the main reasons we so heartily recommend not using High ship caps -- it can definitely lead to memory issues when you play on large maps or long games. So, unfortunately the news is not very good on this one. Hopefully a future version of unity will have a less suicidal GC.

wyvern83

Nov 24, 2010 6:58 pm

reporter   ~0004453

I was afraid of that.

I've been playing on low cap ever since I started that campaign but unfortunately it's the last game I played that was on normal cap.

I have 2 Gb of memory on my machine with XP, if I added another 1 Gb would it help or is it a Unity limitation?

On the plus side, I can say that the new carrier mechanic for waves is awesome and blowing up two counter-attack posts on accident with a CPA nine minutes away proved to be really fun. Double counter-attack posts was a great idea for variety.

wyvern83

Nov 24, 2010 7:02 pm

reporter   ~0004454

Almost forgot to ask, would you advise giving up on this campaign for technical difficulties?

Chris_McElligottPark

Nov 24, 2010 7:03 pm

administrator   ~0004455

It's a limitation of 32bit processes, and mono/unity. It looks like there is something of a hard ceiling in the actual mono runtime of about 800mb the way it is coded into unity. The non-managed parts of the code (like textures, sound effects, etc) can take up hundreds of MB on top of that, so you can get to something like 1.4 or 1.6 GB actually used in practice, but it will rarely go over that.

This is despite the fact that unity is supposed to be compiled for the extended address space on windows and there's a lesser limit in general on programs on OSX, and despite the fact that the real 32bit limit should actually be closer to 2gb anyway. A lot of programs that are 32bit have trouble once they pass a certain memory threshold, though. So it's not limited to here, but it is frustrating.

Glad you're enjoying the new carrier mechanic and so forth, though! The added-scale-without-added-load is something I'm really enjoying, too, because it means you can have huge battles without the RAM issues or without the cpu coming to a crawl, thanks to thousands of ships being in the carriers until the carriers die.

Chris_McElligottPark

Nov 24, 2010 7:04 pm

administrator   ~0004456

Oh, one added note: there is a slight chance that having another gb or two of memory actually might help the problem, but I wouldn't spend money on that unless you were already going to, anyway.

The way that the mono runtime works and is integrated into unity is a bit of a black box to me, but it's a definite thing that if you're hitting the ceiling sooner than the caps I mentioned, that the lower memory in the system is probably causing extra pressure on the GC -- but then again, with 2gb that would be really borderline as to whether that could happen or not.

Chris_McElligottPark

Nov 24, 2010 7:09 pm

administrator   ~0004457

Regarding the campaign and technical difficulties... I don't know that I'd advise giving up on it, but I'd advise against getting into quite so large of battles if you can. Often it's possible to use a smaller strike force (like 4000 ships) to take apart a planet piecemeal, rather than all in one big rolling ball of death. And on defense, sometimes you can do things like using lightning warheads or even nukes to ward off thousands of ships before they engage your other thousands of ships.

And... coming up you can enable the new golem or spirecraft minor factions, and use those massive ships against the hordes of enemies. When you have a battle of 12k ships of yours versus thousands of enemies, it's a multiplicative thing in terms of RAM use. If you just have 4 or 5 massive ships against their thousands, it's exponentially less load. So using something like that, you could also get around having your massive fleet and theirs collide and eat your RAM in the middle. ;)

wyvern83

Nov 24, 2010 8:07 pm

reporter   ~0004458

Last edited: Nov 24, 2010 8:07 pm

Thanks for your help, I appreciate knowing what the issue was even there isn't really a fix for it. I use smaller strike forces of 6-8000 already but 4000 will probably be better, starting a rout will help.

Sadly I don't have LotS on for this game, I could retroactively turn it on but the patch-seeding would deny me an incredible amount of stuff since I already control over half the galaxy. Were you still intending to change how that worked?

I know it's not a high priority, (I'm very willing to wait), but that reminds me, how will the patch with the new minor factions work? Can we pick which version it patches in or will we need to start over with the campaigns we're playing now because they are minor factions? (Which I seem to recall can't be introduced after the game is set up.)

Chris_McElligottPark

Nov 24, 2010 8:24 pm

administrator   ~0004459

My pleasure.

And, yes, I've been intending to change how the seeding worked -- I just was not in the cycle of such changes until today. I'm working on a huge number of changes to the spirecraft/golems in general, so I'll make sure that's one of them.

For the minor factions, they'll all default to off -- but you'll be able to turn on whichever one you want with direct commands if you like.

wyvern83

Nov 24, 2010 10:43 pm

reporter   ~0004477

The change log for 4.041 is huge, I look forward to it.

I had one last question about patch-seeding, (which I see made it in), because I've already pushed past the first AI homeworld will I miss out on the Spire Archive that would have been there when I turn LotS on for that campaign?

Chris_McElligottPark

Nov 24, 2010 10:56 pm

administrator   ~0004478

It's out now. :)

For the spire archive... it's hard to be sure on that, I can't recall off the top of my head. But I am pretty sure it would appear, as it's not always on the homeworld, but often on one of the adjacent ones. And homeworld-detection is based on a flag that doesn't go away when you kill the AI's command station there, so it SHOULD be fine, but no promises. ;)

wyvern83

Nov 25, 2010 12:48 am

reporter   ~0004482

Patch-seeding still shuns any world I own or that is unoccupied. Since it's a new topic I'll make another report for it.

Converting this campaign also only gave me one Spire Archive, on the remaining AI homeworld no less. (the first AI homeworld got avenger-nuked, but I'm not sure that mattered, though it should for a conversion since you wouldn't be able to use it)

On a positive note, the direct commands work just fine so I look forward to seeing the how the golems and spirecraft have changed.

Issue History

Date Modified Username Field Change
Nov 24, 2010 2:40 pm wyvern83 New Issue
Nov 24, 2010 2:40 pm wyvern83 File Added: Snake map Conquest 001 - 24.sav
Nov 24, 2010 2:41 pm wyvern83 Summary game crash/freeze => game crash/freeze, might invovle attack-move with large number of ships
Nov 24, 2010 2:42 pm wyvern83 Summary game crash/freeze, might invovle attack-move with large number of ships => game crash/freeze, might involve attack-move with over 9000 ships
Nov 24, 2010 2:42 pm wyvern83 Description Updated
Nov 24, 2010 3:07 pm wyvern83 Description Updated
Nov 24, 2010 6:13 pm wyvern83 Severity minor => crash
Nov 24, 2010 6:13 pm wyvern83 Summary game crash/freeze, might involve attack-move with over 9000 ships => game crash/freeze
Nov 24, 2010 6:13 pm wyvern83 Description Updated
Nov 24, 2010 6:19 pm wyvern83 Note Added: 0004450
Nov 24, 2010 6:19 pm wyvern83 Note Edited: 0004450
Nov 24, 2010 6:21 pm wyvern83 Description Updated
Nov 24, 2010 6:26 pm Chris_McElligottPark Status new => resolved
Nov 24, 2010 6:26 pm Chris_McElligottPark Resolution open => not fixable
Nov 24, 2010 6:26 pm Chris_McElligottPark Assigned To => Chris_McElligottPark
Nov 24, 2010 6:26 pm Chris_McElligottPark Note Added: 0004452
Nov 24, 2010 6:58 pm wyvern83 Note Added: 0004453
Nov 24, 2010 7:02 pm wyvern83 Note Added: 0004454
Nov 24, 2010 7:03 pm Chris_McElligottPark Note Added: 0004455
Nov 24, 2010 7:04 pm Chris_McElligottPark Note Added: 0004456
Nov 24, 2010 7:09 pm Chris_McElligottPark Note Added: 0004457
Nov 24, 2010 8:07 pm wyvern83 Note Added: 0004458
Nov 24, 2010 8:07 pm wyvern83 Note Edited: 0004458
Nov 24, 2010 8:24 pm Chris_McElligottPark Note Added: 0004459
Nov 24, 2010 10:43 pm wyvern83 Note Added: 0004477
Nov 24, 2010 10:56 pm Chris_McElligottPark Note Added: 0004478
Nov 25, 2010 12:48 am wyvern83 Note Added: 0004482
Dec 9, 2010 8:31 am wyvern83 Relationship added related to 0001933
Jan 3, 2011 11:45 am Chris_McElligottPark Status resolved => closed
Apr 14, 2014 9:27 am Chris_McElligottPark Category Bug - Crash or Exception => Crash/Exception