View Issue Details
ID | Project | Category | Date Submitted | Last Update | |
---|---|---|---|---|---|
0004319 | Valley 1 | Crash/Exception | Sep 29, 2011 6:56 pm | Jan 26, 2012 3:08 pm | |
Reporter | GrimerX | Assigned To | Chris_McElligottPark | ||
Status | resolved | Resolution | open | ||
Product Version | 0.503 | ||||
Summary | 0004319: Loading a savegame from a higher version of AVWW crashes AVWW | ||||
Description | Since you publish updates to games often thought you might be interested in this. Fairly minor, should only happen when people move savegames between computers (what I do :-). 9/29/2011 3:54:08 PM (0.502) -----------------------------------Error-----------------------------------Log String: OnGUI: System.Exception: Error, current Game.GameVersion is 502 and trying to load world of version 503 at World.DeserializeWorldMetadataFrom (.ArcenDeserializationBuffer InputBuffer, Boolean IsFromTheNetwork) [0x00000] in <filename unknown>:0 at World.LoadWorldFromDisk (System.String WorldFilename) [0x00000] in <filename unknown>:0 at MainMenu.LoadGame (System.String WorldFilename, Boolean DoTransitions) [0x00000] in <filename unknown>:0 at MainMenu+<SubclassInit>c__AnonStorey2B.<>m__C6 () [0x00000] in <filename unknown>:0 at ArcenQueuedButtonClickDelegate.Execute () [0x00000] in <filename unknown>:0 at ArcenGUIManager.DrawGUI () [0x00000] in <filename unknown>:0 at MainCameraLogic.OnGUI () [0x00000] in <filename unknown>:0 Stack Trace: at World.DeserializeWorldMetadataFrom (.ArcenDeserializationBuffer InputBuffer, Boolean IsFromTheNetwork) [0x00000] in <filename unknown>:0 at World.LoadWorldFromDisk (System.String WorldFilename) [0x00000] in <filename unknown>:0 at MainMenu.LoadGame (System.String WorldFilename, Boolean DoTransitions) [0x00000] in <filename unknown>:0 at MainMenu+<SubclassInit>c__AnonStorey2B.<>m__C6 () [0x00000] in <filename unknown>:0 at ArcenQueuedButtonClickDelegate.Execute () [0x00000] in <filename unknown>:0 at ArcenGUIManager.DrawGUI () [0x00000] in <filename unknown>:0 at MainCameraLogic.OnGUI () [0x00000] in <filename unknown>:0 | ||||
Tags | No tags attached. | ||||
Internal Weight | Fix Before Major Release | ||||
|
I think it's fair for the game to not understand data that hadn't been invented yet when it was around, but it should note its confusion with a friendly warning instead of a stack trace... |
|
We'll have to just make it so that it shows a message when the version is older -- thanks. But loading newer saves in older versions will never be something that works, it's just a cleanliness thing in making it show a message instead of crash. |
|
Yup, agreed. Polish thing. |
|
@jerith -- this is part of what I do in my day job :-) Having multiple versions of our system running (and multiple versions of data schema) simultaneously is a normal condition. But not something I'd want to tackle unless I have to :-) |
|
GrimerX: Likewise. I know how hard this kind of thing is to get right, which is why I have so much respect for the Arcen crew who pull it off with style, panache, and the best damned customer support in the PC gaming industry. And they build great games, too. :-D |
|
Thanks for the kind words! And, of course for all the help -- part of the reason we pull this off at all is the legion of folks like yourselves who go above and beyond to help out. Seriously. |
|
@jerith - Amen :-) @x4000 - Thanks for letting us. It's quite unique, and one of the things I love about Arcen Games. |
|
It's my pleasure. It's one of those things that is REALLY hard to do at first -- back when I was in the first 2-3 months of post-release for AI War, it was very emotionally difficult for me to accept so much criticism. But I pushed on through, and it really became obvious that people were criticizing out of a genuine desire to help and a love of the game. And I realized I was just as critical of it as them, for the same reasons, but I wasn't catching nearly everything on my own. And past that point I mostly stopped having emotional reactions to it at all. Sure there's sometimes something I feel strongly about and an argument gets heated or whatever, but that's really pretty rare. Mostly it's just data input, and really valuable data. Aside from stuff with the art -- I'm finding I still have really emotional reactions to critiques of the art for whatever reason. That initial hurdle of difficulty is something that I think keeps more developers -- indie or otherwise -- from doing it. It's easier to set yourself at a distance from players, and I think the natural human tendency. I was already accustomed to working in this sort of fashion with business customers at my last job, though, so it seemed natural to carry it over to here. Come to think of it, the business customers thought it was unusual, too. I'm not sure where I got it -- I think my old boss really was the one who started it, perhaps. He's a really good guy and we're still friends. |
|
One of the most important lessons I've learned as a programmer over the years (right up there with revision control and automated tests) is to decouple criticism of my code from criticism of me personally. Lots of people read "this code is doing something stupid" as equivalent to "you did something stupid in this code", and then they get defensive instead of looking for ways to improve things. A couple of months of having a public bug tracker with lots of random strangers opening tickets (or a handful of code reviews from mithrandi) does wonders for your outlook on such matters. (Or it leaves you a shattered wreck. But that's a risk you just have to take.) It takes a special kind of person to not only convince customers to take on a whole lot of testing work, but to actually pay for the privilege. Part of it is that you're so open about your processes and what it is you're working on at any given time. Part of it is that you have an insanely short turnaround time on fixing problems and implementing suggestions. Part of it is that you have a really solid base to build on. Part of it is that you really care about building a quality product, and you obviously love doing it. There's probably more to it than that, but you've kept me up way past my bedtime already and my brain's starting to shut down. I'll expect three new releases to be waiting for me in the morning, with all sorts of fantastic new features in them. :-P |
|
Cheers. :) |
Date Modified | Username | Field | Change |
---|---|---|---|
Sep 29, 2011 6:56 pm | GrimerX | New Issue | |
Sep 29, 2011 7:01 pm | jerith | Note Added: 0014753 | |
Sep 29, 2011 7:01 pm | Chris_McElligottPark | Note Added: 0014754 | |
Sep 29, 2011 7:03 pm | GrimerX | Note Added: 0014756 | |
Sep 29, 2011 7:09 pm | GrimerX | Note Added: 0014758 | |
Sep 29, 2011 7:18 pm | jerith | Note Added: 0014767 | |
Sep 29, 2011 7:23 pm | Chris_McElligottPark | Note Added: 0014769 | |
Sep 29, 2011 7:27 pm | GrimerX | Note Added: 0014772 | |
Sep 29, 2011 7:34 pm | Chris_McElligottPark | Note Added: 0014774 | |
Sep 29, 2011 7:56 pm | jerith | Note Added: 0014783 | |
Sep 29, 2011 9:13 pm | Chris_McElligottPark | Note Added: 0014791 | |
Sep 30, 2011 5:59 am | tigersfan | Internal Weight | => Fix Before Major Release |
Sep 30, 2011 5:59 am | tigersfan | Assigned To | => Chris_McElligottPark |
Sep 30, 2011 5:59 am | tigersfan | Status | new => assigned |
Jan 26, 2012 3:08 pm | tigersfan | Status | assigned => resolved |
Apr 14, 2014 9:27 am | Chris_McElligottPark | Category | Bug - Crash or Exception => Crash/Exception |