David Stark talked about the development of the game and shared his thoughts on indie production.
There’s really just me. I live in Zurich with my partner and my two cats and mostly work from home. I started working on Airships in September 2013, so pretty much exactly three years ago. Initially, it was just a quick prototype, but I got very positive feedback and just sort of… kept working on it.
It’s a 2D steampunk airship construction and combat game. You got the primary inspirations exactly right: Cortex Command and Master of Orion, along with some FTL. I spent a lot of time as a teen in the Master of Orion 2 ship editor, and so I long wanted to do a starship design game.
Eventually, I noticed that most starship combat games felt really boring – just two silvery lumps sitting in space firing energy beams at each other, shields depleting. It occurred to be that if I made a ship design game about airships instead, the combat would be much more visceral. In Airships, there’s no energy shields, no overall ship hit points. Each module can take damage individually. Ships can ram and board each other, force one another down, break into pieces.
There’s two major game modes: multiplayer matches against other players and a strategic conquest mode where you take over a map with your fleet. The latter is still pretty basic and is due to receive an overhaul later this year. Right now, I’m mostly working on various monsters for the players to fight, such as giant floating krakens and “Fleshcracker” terror-robots.
The game’s based on Java and OpenGL/lwjgl2/Slick2D. In terms of architecture, there’s a clean separation between the game logic and the display – you can run combats with full fidelity without ever starting up OpenGL. The game entities are a tree structure: combats contain ships contain modules. The display system on the other hand consists of several dozen independent visual layers that show one particular aspect of the game. This makes it easy to add new visual effects and information for the player.
The game data is pretty much all in JSON files, and the game can reload the data without having to restart, which is very helpful for development and modding.
The main drawback of choosing Java as a development language is that no one has your back. Oracle don’t really care about Java on the desktop, and certainly not about games. OS vendors like Apple and Microsoft want to push their own native stuff, and are indifferent-to-hostile to Java. I currently have two crash bug reports that I cannot reproduce locally and cannot diagnose because no one knows or cares about the tech I use.
The First Sketch
For my next major game development project, I will probably switch to Unity, despite my dislike of how it wants you to do things. But with Unity, you have a company that actually cares about your game running correctly, and a large community of other devs to tap into.
I think everyone has an idea of a “golden age of games”, which just so happens to match the time when they first encountered games. That’s why there’s been such a glut of 8-bit and 16-bit pixel art in games. I got into games relatively late in my life, as a teenager rather than as a kid, and so my idea of the “golden age” is the early to mid-nineties. Strategy games like Warcraft II, Starcraft, Imperialism II. This is all a roundabout and self-analytical way of saying that the art style is a fairly detailed pixel art style because that’s what makes me happy.
The current visuals very heavily rely on the dynamic lighting system in the game. The base sprites are pretty simple and adhere to a limited color palette, but this then gets modified heavily by the bump mapping, lighting, and (as of the newest builds) ambient light color.
Working on Releasing The Title
I first started selling the game through itch.io in early 2014, after only about 6 months of development. It was important to me to get a build out to players as soon as there was something to play. This wasn’t to make money, but to get feedback as soon as possible, and to start raising wider interest in the game. And I have nothing but good things to say about itch.io. It’s easy to work with, and while it’s still a niche store, I did sell about 800 copies in that first year.
I put the game onto Steam Greenlight in October 2014. It did OK on there, but not well enough to get picked up, as at that time, Valve would drop by every few weeks or months and let in the top 20 games on Greenlight. Eventually, in early 2015, they massively lowered the bar to entry, and Airships got greenlit along with several hundred other titles.
So I don’t know if getting a game onto Steam is hard these days. It looks to me as if it should be pretty easy now, as you need far fewer votes to get in. And frankly, most of the games you can see on Greenlight now look really awful, which suggests a kind of “dead sea effect”, where anything halfway decent gets through pretty quickly and only the bad stuff remains. But that appearance may be deceiving. I guess I’ll find out when I put up my next project, which won’t happen for at least another two years.
I self-financed it by doing (non-games) software development contract work. Nowadays, game sales on Steam can just about support ongoing development, so I spend only about 10% of my time on contract work, for long-term customers and the occasional small project that I find interesting. But I’m also consciously keeping my hand in, just in case the whole game development thing goes disastrously wrong.
Also, my partner has an actual, real, salaried job, so in the worst-case scenario we could survive off that. We’ve had plenty of times in our lives where the one or the other was unemployed or unable to work, and we were able to pull through on one income.
This is also part of why I work on the game by myself – excepting freelancers who do specific things for the game, such as Curtis Schweitzer, who did the soundtrack. I know that game development is ridiculously risky financially, but I have exit routes and safety nets. If I started hiring employees, I’d feel responsible for them, their lives and careers, and probably dissolve into a puddle of stress. With a freelancer there’s a clearly defined transaction and then the two of you are disentangled again.
The two things that have worked especially well for me are development blogs and YouTubers.
I started blogging about the game’s development the same day I wrote the first line of code. I put those dev blogs on IndieDB, where they found an interested and enthusiastic, if small, audience. I found that readers are very interested in the fine details of game development and design. Rather than dumbing things down for a general audience and presenting the end result of my work, I’ve found that if you write about your thoughts and considerations behind what you’re doing – and even your mistakes – that makes for much more engaging reading. I’ve even done several blog posts where I write about specific bugs and how I fixed them – and that’s entertaining stuff, because it’s like a little mystery story.
But while the blogging certainly helped the game in its early stages, its large-scale impact seems somewhat limited. The problem is how to get new readers. Sure, you can “just” write really engagingly and hope word will spread, but that’s a slow process. And on the web, everyone is clamoring for their blog, their article, their site to be read. For a while I had some success posting my development posts on Reddit, but this was ruled to be self-promotion and clamped down on, even in subreddits that were specifically meant for this kind of stuff.
The main driver for the game’s adoption has really been YouTube. It’s the kind of game where you can make things, experiment, play around, to some degree tell your own stories. That’s what makes it interesting for YouTube channels. Of course, it’s a niche game, so I don’t hold out hope for it to be featured by a top-tier channel. But medium-sized channels, especially Stuff+, who’s done like two dozen videos of the game now, have been a massive driver for sales.
Finally, simply being on Steam with a decent review score and an interesting concept will yield a reasonable amount of “foot traffic”.
All of this doesn’t mean that Blogging + YouTube is the one true way of indie promotion. For one, my game is not selling as well as I hope it will, one day. So there might be some other as yet undiscovered channel that will truly catapult it to visibility, glory, and profitability. Or maybe I’ll just steadily pick up the occasional YouTube channel and the game will become successful in a slow-burn way.
So my advice would be to try and think of as many channels as possible, and try out all of them. Blogs, Reddit, Pinterest, Twitter, Facebook, web ads, YouTube channels, making your own video content, podcasts, IndieDB, Tumblr, TIGForums, the press, festivals… I dunno, the local farmer’s market, telepathic projection, trained spiders. Learn about each channel and tailor your approach. Different aspects of your game may fit to different channels. And each channel has its own social rules. Behavior that’s considered normal in one place may be considered a massive nuisance in another, or be too timid to be noticed in a third.
David Stark, Developer of Airships
Interview conducted by Kirill Tokarev.