View Issue Details

IDProjectCategoryLast Update
0007213Valley 1Crash/ExceptionMay 22, 2012 8:20 am
ReporterLintMan Assigned ToChris_McElligottPark  
Status feedbackResolutionopen 
Product Version0.971 (RC2) 
Summary0007213: Game crashed immediately upon killing overlord.
DescriptionImmediately after I killed the overlord (Continent 1), the game crashed to desktop.

After restarting the game, I was at the world map level, and when I went into the overlord region it was completely unexplored. I made my way to the overlord base, and that was completely unexplored also. So it seems I lost all that exploration - did I lose all the items I had gathered while in the base the first time? (I didn't track it well enough to tell).

So I quickly played through the overlord base again, and when I got to the overlord's room, it was empty. THis was really disappointing, because I never got to collect any of the good loot that I believe he's supposed to drop.

I then noticed that the info on the escape menu said the overlord was dead, so I checked and was able to travel to Continent 2.

I zipped up my world after the crash, and can upload it, if it will help.
TagsNo tags attached.
Internal Weight

Relationships

has duplicate 0007834 feedbackChris_McElligottPark boss monster graphic bugged/ c++ runtime error on taking screenshots 

Activities

LintMan

Apr 22, 2012 2:12 am

reporter  

Chris_McElligottPark

Apr 22, 2012 8:11 am

administrator   ~0022587

Hey there,

Sorry to hear about this -- I've just taken a spin through your error logs, as well as tried to duplicate this myself. Unfortunately (or fortunately) not able to duplicate.

What I did notice were a few errors in your error log that seemed really odd: ones about missing frames on the skelebot overlord. I tested for that as well, and could also not duplicate that issue. I suggest reinstalling the game from the latest installer on our site, which is 1.0; it really looks like something was slightly off on the install you had. Again, apologies!

---

More to the point, what directly happened here was that you ran out of user-space RAM. From the error log:

0 MB physical memory [0 MB free].
0 MB paging file [0 MB free].
2048 MB user address space [95 MB free].
Write to location 001fbf81 caused an access violation.

Now, I see that you have like 16GB of RAM, and that's cool, but it looks like you perhaps turned off your swap file? Every time somebody does that, especially if they have tons of RAM, then windows doesn't seem to know what to do with itself. Rather than allocating more user space RAM or putting some older data to disk, it just... causes programs to crash when they run out of RAM.

During the continent-generation process it needs a lot of extra RAM for doing that. I've put in some new checks for the next version to add more garbage collection passes to avoid this sort of thing if at all possible. However, that's not a rush-out-the-door fix for me because the core problem isn't with the game from what I'm seeing; but rather you're going to run into this with any large-memory program from time to time in windows if you turn off your swap file.

My suggestion for a paging/swap file (which, I know, it seems like you shouldn't need) is to set it to a static 1.5 or 2 GB or so. Then it's not constantly resizing on your disk, keeping your performance up; but then also windows has a safety outlet into which to dump older memory objects if it runs out of local room in which to do so.

--------------

What directly happened in the case of your crash was that the game got all the way through continent-gen, and then was working on mission-gen at the end of that process (which is much lower-memory but still uses some memory), and then windows started saying "you can't have any more RAM, sorry," which causes the unity engine to give up the ghost.

It may have actually been in the process of saving your .dat files for the region you were in with the overlord, which would explain why all progress was lost there. Those are two radically different files, so that would make sense.

In either case, simply having a paging file set up will resolve the core issue; this sort of windows-instigated crash has been something that high-ram players have run afoul of since early beta, and just having a paging file has resolved it 100% of the time so far. So it's a pretty reliable thing!

Again, sorry about the lost progress there with the rare enchants -- bad time for this to bite you, for sure.

LintMan

Apr 22, 2012 1:18 pm

reporter   ~0022597

Arggh! I just typed in a fairly detailed reply to this, and the DB timeout issue raised its ugly head and it gave me the timeout message and lost everything I just typed. (See issue 0007006 for previous report on this - it seems like if the issue page is open for a long time 30+ min) and then you reply or submit, it times out).

Anyway, the quicker version since I can't retype all that again right now:

I do have virtual memory enabled, with a 16GB swap file size, with it set for Windows to manage the size. It seems unlikely the game would have needed 32GB of space to generate the new continent, so I don't know how it could have run out of memory just from that.

Before the crash, the game had been running for a large part of the day (likely 6+ hours), but a some of that time, it was alt-tabbed out while I did other things on the desktop, or whatever. Perhaps a slow memory leak, maybe one that happens when alt-tabbed out, could have caused the out of memory problem?

Anyway, I'll try installing the 1.0 version. Thanks.

Chris_McElligottPark

Apr 22, 2012 1:43 pm

administrator   ~0022598

Thanks for the added details -- sorry about mantis, it annoys us also but isn't something we have the power to directly fix.

In terms of leaving the game running in the background in that fashion, I advise not doing that. Unity (the engine the game runs on) writes to a log file a couple of times a second constantly while you are alt-tabbed out. Not constantly hitting your disk (it's queued in memory), but enough the cause slow memory accumulation.

Sounds like it definitely was not your swap space, anyhow, but unity was reporting that you had no swap space available or existing, so that's very suspicious. It could be an underlying bug in unity (wouldn't be the first time), but without having more details on the state of the ram usage of the game before the crash (both managed in the game memory and unmanaged memory) its hard to say.

I put in some conservative checks for the next version to make it garbage collect at a couple of points during continent gen if it is using more than 400mb or managed memory. But we're talking about a matter of only 20-60mb of managed memory for the whole generation process in my estimate, so it's nothing huge.

This also wasn't a managed memory exception, I should hasten to add -- this was an exception at he level of the engine asking the OS for more ram, and the OS saying no. A managed memory exception (when the game code itself has a memory leak, slow or otherwise), has a different signature. You can see that in some other older and fixed bug reports if you're curious.

So I'm not really sure what to advise here, although reinstalling 1.0 should help given that there were some errors logged that should not have been anyhow. Beyond that, if you're going to be out of the game for hours at a time you may want to close the game and reopen it before playing any more; we do our logging in a memory-static way, but the underlying engine does not seem to. :/

Chris_McElligottPark

Apr 22, 2012 1:57 pm

administrator   ~0022600

Others have also noted the use of memory from the unity log: http://answers.unity3d.com/questions/47577/total-memory-allocated-increases-indefinately-from.html

The trick is still that unity logs something really frequently when minimized, at he engine level below our code, without an option to turn that off. If you look in your output.log file you'll see what I mean. That stuff adds up.

That said, we write to the log with things like chunk creation times and such, and next version I will stop it from doing that and use our own memory-static logs instead. The trick there is that this won't really solve the underlying problem that bit you -- being alt-tabbed out for so long -- but it will inherently make the log smaller all around which would allow for more alt-tabbed-out time.

Note that for those running a multiplayer server in a window for hours at a time, this problem does not occur because he device is never lost. Also, if you play in windowed mode rather than fullscreen you can freely alt-tab around because again the device is never lost. That comes with other drawbacks, though, obviously -- mainly that windowed mode and fullscreen mode are different and you probably prefer fullscreen.

LintMan

Apr 22, 2012 4:18 pm

reporter   ~0022602

Yeah, I prefer fullscreen. So the trick is to exit the game or restart it if I've been alt-tabbed out for a while. That's easy enough. I usually wouldn't leave the game minimzed like that for so long, but what started out me going to the desktop for a minute became longer, and then other distractions came up, etc...

Chris_McElligottPark

Apr 22, 2012 4:50 pm

administrator   ~0022603

Makes sense -- and yep, that solution should definitely prevent the issue!

FAButzke

May 12, 2012 2:59 pm

reporter   ~0024154

Last edited: May 12, 2012 3:00 pm

I can confirm this.
My game crashed when I killed the overlord in the first continent.
The difference in my case was that, when I loaded up my game again, I was still in the Overlord room. No overlord though. No loot as well.

One other thing worth mentioning:

The overlord was an Skelebot with a cape (Don't remember his name) but, as he moved, a huge white square kept appearing (flickering) covering him entirely. Perhaps that's why it crashed and perhaps that why you saw on his logs an error in skelebot animation.

I'm attaching my error log as well.

Ow yeah, and I love the game =)
Keep up the good work guys.

FAButzke

May 12, 2012 3:00 pm

reporter  

Chris_McElligottPark

May 12, 2012 7:10 pm

administrator   ~0024158

FAButzke -- what version of the game were you playing on? It looks like you may have simply run out of RAM for some reason; however, the game should have been able to access more than it needed for this anyhow. We made some post-1.0 improvements to the unity error log handling that helps to conserve RAM.

Chris_McElligottPark

May 12, 2012 7:10 pm

administrator   ~0024159

By the by -- if you start seeing white textures popping up at random like that, it's time to restart the game. A crash is going to happen sooner or later when you see that, and you're likely to lose data as part of it. :/

Platypus

May 13, 2012 2:24 am

reporter   ~0024178

Last edited: May 13, 2012 2:25 am

Just read this. I want to confirm that I encountered the same issue while fighting the Skelebot Overlord except that he was completely invisible except when his attack animation played. Other than that he appeared as a white square when he moved. This was in version 1.010.

Also the game crashed after I killed him and when I reloaded it was fine. I tried to report this a week ago but my thingy wouldnt post. Oops.

FAButzke

May 14, 2012 1:20 pm

reporter   ~0024222

1.018.
I don't know if I ran out of RAM but I don't think so. It's possible though.
Thanks for the heads up regarding crashes. I'll look for these signs from now on ;)

Chris_McElligottPark

May 14, 2012 1:34 pm

administrator   ~0024224

Okay, in for 1.019:

* Added in a new Graphics Compression option in the Graphics tab of the settings menu.
** This allows players to choose from several compression schemes that will reduce RAM use over long play sessions. The new default, Normal, is slightly more compressed than the old default of Low (which is basically no compression at all). You can crank it up to Semi or Heavy if you want to really have very low RAM use from the game, but that comes at a cost of reducing visual quality and increasing load times of the affected assets.
** Unless you're having a marathon play session in one sitting this is unlikely to even come up, but for a couple of players in that situation (or who don't meet the minimum system requirements for RAM but still want to play the game anyway), this provides new options.

* Put in a number of internal graphics pipeline changes so that the unity materials are now pooled rather than created as-needed for specific graphics.
** This doesn't seem to harm performance any, but we haven't tested this on a wide array of machines. And in fact this should actually improve loading speed slightly on most machines, as well as provide a slightly lower memory footprint; particularly over long play sessions where we suspect the engine may have been leaking small amounts of RAM when materials are disposed and recreated many times.


Thanks! Hopefully that helps.

Platypus

May 14, 2012 10:04 pm

reporter   ~0024239

Cool, I love how fast the responses come to these issues that come up.

My current Overlord is once again a Skelebot Overlord and I'll make sure I let you know if anything untoward occurs when I finally stop messing about and get fight him.

FAButzke

May 22, 2012 8:20 am

reporter   ~0024566

Awesome!
Thanks for the fast reply and keep up the great work. =)

Issue History

Date Modified Username Field Change
Apr 22, 2012 2:12 am LintMan New Issue
Apr 22, 2012 2:12 am LintMan File Added: Crash_2012-04-21_204504.7z
Apr 22, 2012 2:57 am LintMan Description Updated
Apr 22, 2012 8:11 am Chris_McElligottPark Note Added: 0022587
Apr 22, 2012 8:11 am Chris_McElligottPark Assigned To => Chris_McElligottPark
Apr 22, 2012 8:11 am Chris_McElligottPark Status new => feedback
Apr 22, 2012 1:18 pm LintMan Note Added: 0022597
Apr 22, 2012 1:18 pm LintMan Status feedback => assigned
Apr 22, 2012 1:43 pm Chris_McElligottPark Note Added: 0022598
Apr 22, 2012 1:43 pm Chris_McElligottPark Status assigned => feedback
Apr 22, 2012 1:57 pm Chris_McElligottPark Note Added: 0022600
Apr 22, 2012 4:18 pm LintMan Note Added: 0022602
Apr 22, 2012 4:18 pm LintMan Status feedback => assigned
Apr 22, 2012 4:50 pm Chris_McElligottPark Note Added: 0022603
May 12, 2012 2:59 pm FAButzke Note Added: 0024154
May 12, 2012 3:00 pm FAButzke File Added: Crash_2012-05-12_111030(FAButzke).rar
May 12, 2012 3:00 pm FAButzke Note Edited: 0024154
May 12, 2012 7:10 pm Chris_McElligottPark Note Added: 0024158
May 12, 2012 7:10 pm Chris_McElligottPark Note Added: 0024159
May 13, 2012 2:24 am Platypus Note Added: 0024178
May 13, 2012 2:25 am Platypus Note Edited: 0024178
May 14, 2012 1:20 pm FAButzke Note Added: 0024222
May 14, 2012 1:34 pm Chris_McElligottPark Note Added: 0024224
May 14, 2012 1:34 pm Chris_McElligottPark Status assigned => feedback
May 14, 2012 2:41 pm Chris_McElligottPark Relationship added has duplicate 0007834
May 14, 2012 10:04 pm Platypus Note Added: 0024239
May 22, 2012 8:20 am FAButzke Note Added: 0024566
Apr 14, 2014 9:28 am Chris_McElligottPark Category Bug - Crash or Exception => Crash/Exception