This second dev log (out of how many I wonder) will be a speedy overview of the key moments from the last 5 months of development on Atomic Society. It will bring us more or less up to date, minus a few issues that have been blotted from our memories. After this entry, all dev logs will be about what we’re doing right now in the present, and crammed with all the problems, successes, and decisions that are fresh in our minds.
So, as stated in part 1, the idea of making a post-apocalyptic city building game had been agreed upon and we’d committed to the game for the foreseeable future. We had a ton of design documentation that I was pumping out, but there was a lot of foundational work to do before any of it became useful.
Near the start, this is how Atomic Society looked:
As you can see, it's not great (look at that tree!). Unfortunately you can only get so far when you know so little. And we barely knew anything.
Mariana, our artist in the making, had to learn Blender to construct the 3D art (because it's free and good) and I had to learn Unity (because it's free and good) enough to feel comfortable around it. Nick, our programmer, had more experience but this was a case of his hobbyist knowledge being pushed in new, challenging ways. If we didn't like learning, we'd be screwed. Fortunately game development is incredibly rewarding. Every little step forward feels like a milestone as that virtual world comes to life, more so when it's your first big, dream project.
But there was, and remains, frustrations. It's hard to find good, free info out there on the internet and we don't have any wise pros to call for help. Unity has a big community, but it doesn't always overlap with what you're doing. We had to get used to making mistakes and asking dumb questions of one another.
Nick was determined to get the foundations of the game right. He created a database to catalogue all the buildings and citizens, etc, could be collected in one place for easy editing and loading. We wanted everything to be as flexible as possible so the game could be tweaked and adjusted later on without the whole house of cards coming down.
In March Unity decided to let all free users get access to its whole suite of features without paying a penny. This was a huge boost for us. Things like image effects, LOD support, AI navigation, and performance analysing are so handy. Working on the old, free version was forcing us to make one compromise after the next. Finally our tools weren't holding us back.
A level before Unity 5...
The same scene after an hour of playing with Unity 5. I loved trying to kill the frame-rate with those new image effects.
Around this time we dropped in the first of our more novel features, "avatar mode", which lets a player control a character and walk around their town. This was a big task, essentially assembling a third-person game on top of a management one, but it came together and created that buzz of seeing something that had just been in my head become a reality. And it not sucking.
Not all features were so straightforward. We dropped the procedural map idea because it was simply going to take too long to set it up, and we wanted faster progress. It was also decided that it'd be better to have a handful of good looking, carefully arranged maps than an endless amount of mediocre ones. We also had to drop the idea for laying a coloured grid across the terrain which would show players where they could and couldn't put structures because it took up a surprisingly huge amount of memory and again, we didn't have time to solve it.
Meanwhile, I got serious about the soundtrack. Music is an essential part of any game and especially for this genre, where the player spends long periods of time just watching a virtual world. Fortunately one of my old World of Warcraft buddies happened to be a member of the Swedish rock band Angrepp and also an ambient/synth DJ in his own right. He was more than happy to create a moody, haunting soundtrack for us out of interest in the idea. It was immensely cool hearing original music created for our own project (I'll have more on the music in later blogs).
Mariana got to grips with Blender as the weeks rolled by and was soon slowly creating a 3D village of her own:
It's insane how much great, free software there is out there these days for making games. That, and the rise of Kickstarter and Greenlight truly have opened the floodgates for all wannabe game developers, for better or worse. What we're doing would be out of the question for amateurs like us a few years ago.
This was a highly productive month for us as we got over the initial "what the hell are we doing" phase and found a workflow involving weekly video-call progress reports and the awesome free task management site Asana. Although we were still struggling with bugs, Unity updates that broke features, and design ideas that refused to be pinned down, we were getting closer to the moment when this would feel more like an unfinished game and less a collection of random assets.
We came up with a cool solution for doing scaffolding that rose up around the buildings automatically just using a transparent texture on some cubes. We also started work on the front-end, texture and normal mapping, and creating a build menu for putting structures down. And I got to grips with global illumination and using lighting artistically to make up for our lack of graphical sheen.
This last screenshot shows us working on the second unique feature, which is salvaging ruins for food and supplies. Citizens will do this or the player can even do it directly as the avatar. We had to work out an entire RPG-like inventory and loot generation system for this and it took a good few weeks until it all came together.
This was the month we decided to make our adventures in game development more formal and created Far Road Games as a limited company. After that we all briefly felt like adults. The hardest part, naturally, was coming up with a name for the company and game, which had just been a code name before then. I must've invented about 50 alternatives but we all liked the same ones fortunately.
In general, the team side of making a game, through all the weeks and late night after day jobs, was (and still is) working out incredibly well and so much fun. We're fortunate to live relatively close-by and meet up face-to-face occasionally to discuss big issues. We've grown comfortable around each other. It's such a relief that we all expect the same excellence from each other but also remain supportive at the same time. We're all shy weirdos, but give us a project to focus on and that doesn't matter. The buzz of taking on a challenge together professionally with people you like cannot be beaten.
Later this month, we had the big milestone of actually getting some NPCS in the game to join the deserts and tundras and ruins. Our NPCs started as just white blocks but Mariana switched her craft from making buildings to making and rigging humanoids instead. Here's the initial scary effort:
Nick also worked out the system for giving the citizens different ages and genders. It was fantastic seeing the poor NPC suckers enter our post-nuclear world. I feel an odd attachment to them. This is God-gaming taken the next level when you're the ones actually creating characters out of nothing. And I know what terrible lives they're going to have. They'll wish they'd been born to a different game.
And that almost brings us to the present in this rocket-speed tour...
I'll cover what exactly has happened to the game this month in next weeks' dev log. But the main thing, and perhaps the scariest, was actually deciding to tell show the outside world our game. We didn't plan to reveal it so soon, but it's the modern indie way to show everything no matter how early it is, and to be honest, it's been fantastic just sharing what we're on even if hardly anybody knows we exist yet. It doesn't feel as isolating even though I'm still nervous about it all.
Overall, looking back from where we are now, I'm happy with how things have gone. The only disappointment is just how much time it takes to make a game of this scope and size, especially when you're unpaid, working hard in whatever free time you can make. Needless to say, the usual joke about doubling your time estimates seems to be true. I'm thrilled with our progress but also impatient to see more and more of the game come to life. We're working flat out but there's only so much we can do.
On the plus side, we have a great code foundation to the game, good tools, a decent workflow, a set of maps, a working salvage and construction system and visible, (mostly) animated citizens and a front-end. But we don't yet have any proper gameplay.
I'll see you next week when we'll go over what progress and disasters have occurred in the current month. Thanks for reading.