Assert leads to Autosave!

This afternoon I was happily playing Banished, testing some changes I made to the balance and difficulty of the game. An hour and a half into playing, a non-ignorable debug assert went off, causing me to stop playing and to have to start my test over. Of course I was playing an optimized version of the game. No chance of debugging, and I hadn’t saved my progress in a long while. So that bug might just rear its head in another hour.

This has happened to me a few times over the last month. In my experience making video games, there tend to be bugs like this that occur very rarely and have very difficult reproduction steps.

To combat this, I’ve added an auto-save feature to the game. While in development I can have this go off several times a minute, so if major errors occur, I just have to switch to debug mode and reload the latest save. Then I wait for the error to occur again and fix it.

I’ll be keeping the auto-save feature in the final game, but increase the time to ever few minutes. While I hope to release a bug free game, there’s no reason to upset players by losing┬átheir┬áprogress due to a rare crash. Saves for all!


    June 11, 2012 10:34 pm

    I can’t wait to see this game!

    June 12, 2012 6:49 pm

    How long do you expect games to last for? Will bigger maps (more resources) equate to longer games? Will the game become increasingly more punishing until one slip-up causes you to lose? , or Will it just end when you have the maximum village size you can sustain on recyclable materials? aka (quit when you have nothing else to do)

    June 14, 2012 3:49 pm

    I’m not sure how long games will last for. In my gameplay tests I rarely play for over two hours at the moment, and I fill the play area only about 1/8 of the way. A slip up causes a decrease in population, but you can generally recover from it. The games will be ‘done’ when you decide you’re done in most cases, or if your entire population dies off. But I do plan on adding meaningful achievements and goals to reach while you play.