So we're approaching the end of the month, and thus another official release is becoming desirable. Things are shaping up pretty well, imo, but I'm concerned about some of the OutOfMemoryException crash reports I've seen that seem to indicate the game is hanging on to some objects a lot longer than it should (basically forever) and this gradually accumulates to the dangerous 1.5GB level after several hours of play on a big game.
I think 3.086 may have fixed a number of these issues but I really can't tell or tell how many may be left. Generally this sort of thing isn't a problem with C#, so I'm 99% certain it's some new structure I made a mistake with. Anyway, it would help a lot if y'all could pay attention to and post the following about your games:
1) how much memory the AIWar.exe process is using after a fresh start of the game, on the main menu
2) roughly how large the game is at the beginning of the session (foreground object count is a good measure, it counts up through that during the loading process so you should be able to see it)
3) how much memory the AIWar.exe process is using after the loading of the game is complete (wait about 15 game seconds in so that most of the initial stuff is settled)
4) once you're done playing (or if you want to take a benchmark point every few hours), how long you played for
5) how much memory the AIWar.exe process is using at the end of the session (or benchmark point)
6) after you're done, if you don't mind, quit back to the OS, restart AIWar, load the game you just stopped, and check the AIWar.exe memory usage
If the number in 6 is way lower than the number in 4, that would indicate a potential problem (potential in that it may just be a lazy garbage collector, though there are a few explicit calls to the GC, particularly right before a game-save attempt, since that typically takes a lot of memory for the string that is written to disk).
Thanks
Keith