I’m super tired and got little sleep, but whats the point of a release-day blog post if you do it weeks later? Frankly I need sleep, and a day off. Making this game is REALLY hard, and we had last minute problems, and I actually have a minor eyesight thing recently thats freaking me out. Argggh. Game dev is HARD.
Anyway, last night at 8PM my time (why? because I’m stupid), Democracy 4 went into Early Access. We have already sold a lot of copies, we had 7,600 games played yesterday, there are tons of emails, and forum posts, lots of youtube videos are cropping up, some previews and reviews…its all very hectic.
We launched with a bad bug for maybe 4-5% of players (maybe less), which caused major GUI mayhem. Icons would dissapear, or be massive, or the wrong icon. The game became unplayable, then there was major lag. It was a mess, and the worst possible thing: I could not reproduce it on any of my PCs. Fixing a bug that has no error message and you cant reproduce is…challenging. At the time of writing I’m feeling pretty good that I’ve fixed it, within 14 hours. Thats actually *not too bad*, although it still probably dinged our steam reviews a bit. (if you bought on steam and like the game PLEASE give us a nice thumbs up review!).
I made a lot of mistakes, and I guess this is as good a time as any to confess to them. Mistake #1 was that I didnt treat every warning in my code as being serious. I was seeing some warnings about icons being sized wrong, but it didnt seem to show up on screen, and I figured it was a harmless thing when they got resized correctly before being drawn. who cares right?
Turn out that on some PCs, in some screen resolutions and in fullscreen mode… This caused MAYHEM of EPIC proportions. I just wasn’t seeing it under any circumstance in my test cases. PLUS! we had a lot of pre-EA alpha players who had not experienced this. But… yesterday 4,500 hours of Democracy 4 were played in 14 hours. No wonder stuff cropped up we had not seen before.
We converted the game to be 64 bit a few days before release (Mistake #2), which sped up the start-up time, and future proofed the game against any insane move my microsoft to ban 32bit…but this seemed to be the cause of the bug. It also stopped it running under WINE. I decided the 64 bit middleware had broken the game. I reverted to 32bit, it achieved nothing (but got us WINE back), but wasted my time in tracking down the real cause…
Eventually I think we have found whats going wrong, and here is Mistake #3. Some of our code was just blindly accepting data and doing what it thought was right. This is BAD. You should code defensively, and if you are about to draw an icon on the screen, its worth checking that the width is not -25 or 10 billion pixels wide. if it is… then somebody probably screwed up, so don’t draw it.
Anyway… this sort of thing is SUPER stressful, because we have moved from the lovable, friendly ‘community of friends’ atmosphere of my early-access players on my own discourse forums, to the terrifying confrontational angry wasteland of the steam forums, where people pull no punches. Its always fun to be told your game is rubbish, or biased, or you are a stupid/lazy developer who doesnt know how to code etc. Oh fun times!
Anyway… its out there. it was in the steam top sellers. it might still be, I’m too busy to look! And you can now get the game from us direct using the widget below, OR from steam gog or the humble store.
At some point I’ll do a proper update with a bunch of stats about wishlists and release and all that (we had about 20,000 wishlists on launch day), but I need to deal with the huge list of stuff in my inbox first… Thanks to everybody who put down their hard earned money on buying my game, its hugely appreciated. I hope ya like it!