PaulWeston Posted May 19, 2015 Share Posted May 19, 2015 Hi again,Continuing our work on the original Starship Enterprise NCC-1701, now on our third version of the game which is much improved from our previous offerings...However, as the game grows and we are pushing the functionality, I keep running into various random-seeming crashes, and it's getting very frustrating. Basically, because of the size of the ship, and the fact that zones and particularly portals seem to be flaky, we have had to implement a triggered add/remove system for objects in the ship... We load all deck floors, turbolifts, doors and lights on startup, but only when a player goes to a specific deck does that trigger the adding of the rest of the deck objects (room details, hallway arches, etc). Before we load in that deck's objects, we remove the previous deck's stuff to free up memory and keep the FPS up.This actually works very well, and you can run through the whole ship from top to bottom and back and everything will load and unload as it should.That is, until we started adding in more effects such as AI characters, Awesomium web-enabled objects and more SFXEmitters around the ship... This seemed to push us up over some limit or something, because since then I will crash randomly at odd times, not linked to any specific action. Sometimes it will crash shortly after loading up a new deck, other times it may just crash if you turn too quickly after standing still for a while.In the cases where I can create the Awesomium objects client-side, there is an improvement in stability, perhaps the server has trouble ghosting them or something. But it's still not the smoking gun, I will still crash randomly once in a while. Likewise with the AI, the more groups I put in there, the more likely I will crash when spawning/despawning them. We use the UAISK which has always been solid before.Our engine is pretty clean, I have spent a lot of time making sure everything was merged properly and there are no loose ends. Our current engine is basically a T3D 3.0 base, but with most of 3.6 merged in including Faust's latest open-source AFX branch, along with some old resources we use like the Advanced Character Kit, Pathshape resource, fxGuiSnooper, and Guis on Objects.I have also succeeded in creating a new version using the latest 3.7 RC, for which I had to sort out converting old Con:AddCommands to DefineEngineMethods, but that version is actually less reliable sadly. I was hoping for an improvement after all the work it took to build it, but when that version crashes the whole window just suddenly disappears with the sound still going and I need to end the task in task manager :(So... I am trying to find the best ways to troubleshoot this. Obviously a debug build is a start, and I have tried that, but it did not give me much insight. The break point when it crashes is not the same each time and is always in some generic function that is not easily identified as to what it's doing.Are there any other/better ways to troubleshoot random crashes like this? What are the main causes for such crashes in your experience? I have eliminated some obvious causes such as mismatched pack/unpack lists, all that seems fine. I am also not out of masks or anything.console.log is pretty useless in these cases, it tells me roughly where it crapped out but it is not in a consistent place. It basically just seems to choke randomly, sometimes on an AI spawn, sometimes when adding an Awesomium shape, sometimes when deleting old objects from the previous deck, and sometimes seemingly for no reason when clicking while turning too fast.Anybody have any ideas for me as to what I should be looking for / tightening up? Also, ideas why 3.7 crashes so hard without even a windows popup crash box?Thanks for listening to yet another long rant from me lol :)CheersP Quote Link to comment Share on other sites More sharing options...
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.