Welcome back to the third part of our blog about making Atomic Society. This edition brings you up to date and covers what’s been going on over the past few weeks. I’ll try to be as neurotic as possible. As you will see, a lot has happened this month and this post would be far too long if I mentioned everything, so here are the big leaps forward.
As mentioned in the last blog, we had stepped out of the bunker at the start of July to tell people about Atomic Society. Even most of our friends and family weren't aware of the game’s existence! (I've discovered self-promotion is hard work when you see faults before praise, I find this Twitter account rather cathartic). But my fears were for nothing. The initial reaction from readers of this blog and on Reddit, has been very encouraging and heart-warming. The game has been in the top 50 on IndieDB and popular on /r tycoon, and that's about as popular as we deserve considering we don't even have a trailer to show off yet.
The downside is that marketing takes a lot of time. It's fun, exciting but endless. I don't know how solo-developers manage it. I’m glad we waited 6 months to go public and didn't start too early, even though common wisdom seems to be shout from the rooftops before you've even got a screenshot. I won't pester the press until we've got some footage to show. Whether that’s wise, we'll find out.
The word people used to describe our game most frequently was “interesting”. That’s great, because I love games that make me think as well provide solid gameplay. Thanks to everybody who took time to post a little comment on Reddit, IndieDB, Twitter, or wherever you heard about this game. Such things feel like a pay cheque when you're working for free.
The Building Costs/Resources/Inventories/Storehouses
This month has largely been consumed by one of those jobs that sounds simple but took ages to do, several weeks in fact. However, Nick our hardworking coder, has at last finished everything to do with the resources system, a tasks with hundreds of sub-elements. It is now possible for us to set resource costs for buildings (which will require a lot of playtesting to balance right), for resources to be subtracted from a storehouse as workers collect them, and for workers to know what the hell do with building supplies.
The core building resources in Atomic Society are: rubble, wood, scrap metal and plastic junk. Workers will have to go off and find these resources in “resource ruins” we've dotted around the landscape, at least until they run dry. We may also put traditional tree-cutting stuff in there as well, but we’ll see how it feels. Some of our levels our set in deserts and frozen wastes, so forests don’t always make sense (and survival games have bored me to them. Thanks videogames, I am now bored of trees).
Our building cost system also now works with converting ruins (see pic above). We have a feature where you can convert certain ruins into houses or storehouses for your growing town. If you leave all the salvage in the ruin, it’s free to convert and you get a free structure. But if you take some of the salvage out, the ruin costs more and more to convert. So there’s a trade-off. This all works now, though I'd still like the ruins to physically decay as the loot is removed, but that's a cosmetic thing for later.
One of the biggest tasks has been devising and implementing an inventory system for the citizens. I often moan about other RPGs and their crappy inventories but now I've tried to make one I feel the developer's pain. This is particularly complex for us as we have a playable third-person character who can pick stuff up manually.
The way we have it now, all citizens and the playable character have a slot-based inventory that fills up as they get items, and empties when they visit a storehouse. When their pockets are full, they know to come back from salvaging to drop it off, etc. You can click on any of them to see what they're carrying and it now all works fluidly and reliably.
This month we decided to stress-test the game, which was something we should've done a while ago! The current goal for the game is that your town’s population will level out around 500. That’s not a lot compared to other games, but our citizens will have completely unique traits, personalities, skins, looks, etc. They’re more similar to The Sims (though fully automated).
Unsurprisingly putting 500 detailed, animated people on screen made Unity blow up. However, with numerous performance tweaks, Nick was able to get it up to about 400 people on mediocre PC hardware by making some optimisations. Still got a way to go but the challenge is doable. Our goal is for a stable 30fps on an average computer and 60+ for those who can handle it.
View a gif of us testing that here
This month Mariana delved into the horrible world of making custom animations to go with some of the ready-made ones we had been using. Not surprisingly, animation turned out to be a massive can of worms. It would've been fine if everything worked, but getting Blender and Unity to be friends has been a nightmare and resulted in some very distorted models. But rage and perseverance paid off and we now have a workable system and experience of how to make custom animations and get them into the game, at least to a basic level. Mariana made a custom hammering/building animation (seen above), and we were able to improve the the avatar (your character) so he can walk or run when you press shift.
We received another new ambient electronic track from our composer, Dawid Dahl. The soundtrack for our game is loosely inspired by artists such Kammarheit, Boards of Canada, Gustaf Hildebrand and others of that ilk. The work of Fallout composer Mark Morgan has naturally also a big inspiration. In other words: dark, haunting, and beautiful. Here is a taster of one of the songs on our growing soundtrack. We're still experimenting and finding our way with the music to get the mood right, but we're in the right ball park.
One of the biggest headaches for me as designer was working out what structures the player would be able to make in this game. I wanted to stay away from medieval things, which I think is a bit overdone. Months ago I did a lot of research on survival scenarios and brainstormed loads of buildings. This month I've spent hours refining that list down so every building is useful, important, and balanced. The goal is that everything will have pros and cons and it will be down to intelligent play to decide what to build. Right now we have 28 building types confirmed. These will all be unlocked at the start when you play the game. Mariana has been making models for them and we'll code the functionality of them one by one.
Some things you might've missed that have also happened this month:
* We now have a subreddit discussion forum where all are welcome to talk about the game.
* This rather poor quality gif of avatar mode in action.
* The fact we are hoping to find a hobbyist UK programmer with plenty of spare time to join our team, assuming if we can find one as deluded as we are.
A couple of people out there have asked about the release dates. Right now, we’re still working to get in all the core gameplay systems in a rudimentary form so we won't be ready to release an alpha version any time soon. Our current goal is to try and get the outstanding core features in as quickly as possible and then in September we'll put out a gameplay trailer/preview thing that at least shows the game in action with some commentary.
At some point over the winter, we may go begging on Kickstarter because we cannot make everything without any form of income, although we’ll do our best! And around that time I'd like to offer people a demo they can tinker with, but we'll see.
Anyway, thanks everybody for reading, and your interest and support, from the 3 of us. Always happy to discuss anything about the game or the way we're making it. One of the reasons I put out these dev logs is to hear what people think, especially on the topics I'm unsure about.
I'll see you next time, in about 1 or 2 weeks. :-)
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.