Hi friends, fans and family!
The following post will be a lot longer than usual and I will be telling you about the process of making and releasing “Rogue Knight: Infested Lands”, what went well and what didn’t as well as revealing the atrocious sales figures. I was inspired to do this after reading many of the awesome posts by Arnold Rauers who has been very transparent about the sales and making of his games (check out this post for example) and Ray Ferraro, the maker of Meteorfall who made a great retrospective which you can read here. Now, there’s a huge difference between their games and mine and the perspective of the posts. Their games would definitely be considered successful whereas “Rogue Knight: Infested Lands” would not. It met our goal which from the beginning was just a simple “release a game” but at the same time it feels a bit like a failure in retrospect with the sales being practically non-existent and the game being far away from any bragging rights regarding to AppStore ranking. But enough with the long winded intro. Let’s begin with the beginning!
HOW IT ALL BEGAN
I started working on a prototype in March of 2016 with the goal of learning more about making tile based games and using pathfinding to move characters around a map. My game idea was not much of an idea at all actually. I just wanted to make something turn based on a tile based map. After a couple of days (read hours) programming I thought about the possibility of making a stealth game where you had to sneak around the map and avoid being seen by guards. The game had no theme or anything at this point. The main character could have been a thief, an assassin or just someone trying to hide from zombies. It really didn’t matter as long as I could get him to sneak around and hide from guards. This is what this EXTREMELY crude prototype looked like at this point:
Last gen graphics, incredible AI and 60 FPS! This will be a super hit!
But don’t let the graphics fool you! There were actually quite a lot more advanced features in this prototype than what made it into the final game. The guards could have fixed and random routes that they patrolled, they ran to the place where they last detected the hero and stopped to look around if he had disappeared etc and their behaviour was quite “smart” in general.
XAVIER JOINS THE PARTY
During this time I convinced Xavier to make the game with me since square dudes with big eyes are not what most people find “aesthetically pleasing”. He was, like me, very interested in games but he had completely different talents. He knew how to make things look pretty. Even though he had mostly dabbled with board games he was (and still is :D) super enthusiastic about making digital games so he jumped onboard without any hesitation. We were still not clear on what kind of game we wanted to make though. We both played games like Hoplite, Microgue and Tiny Rogue a bit at the time so in the end we reached the conclusion that we should do something in that style but add “more of everything” and keep the stealth parts that I had been working on. The game looked like this after just a day or two with Xavier doing the graphics:
A groundbreaking UI and potions everywhere.
THE PROCESS – AN HOUR A DAY KEEPS PROCRASTINATION AWAY
Our process was weird. During the year that we worked on the game, we didn’t actually meet physically more than once or twice despite living in the same city and 20 minutes away from each other (!). We did most of our communication through the Facebook chat. Xavier worked during the night and send me mails with comments, design suggestions and attached sprites. I usually programmed for an hour either before work or directly after and sent him builds to play with almost every day or at least every week. Working consistently for an hour a day on small tasks was crucial to actually getting the game finished and is a “secret” I would gladly give anyone. If you want to get things done, do at least a little each day. Before you know it, you’d have made a lot. Things in motion tend to stay in motion…
REFINING THE DESIGN
Xavier and I quickly realised that having the characters turn in different directions was not feasible. We removed an action point system that I was working on. We experimented with showing the enemies walking directions in advance. We did all sorts of things. And even though we did the right thing by prototyping like crazy one of our mistakes was the lack of direction. We experimented with all sorts of things and this was causing the design to become somewhat conflicted. The game was not sure what it wanted to be and we needed to cut out a lot of features to make the design tighter but also to make sure that the game would be finished at all…
TOOLS
SpriteKit & Xcode
Being an iOS Developer by trade drove me into the easy conclusion that the easiest way to get a game done was by using Apple’s own languages, frameworks and dev environment. I didn’t have much time to spend on game development so I chose to focus on what I already knew and keep the “learning” to a minimum. This made the choice of using SpriteKit as the game engine an obvious one. SpriteKit is ideal for 2D games and is super easy to work with for me, especially for the animation parts. The major drawback though, is that the game can only be released on the Appstore and nowhere else…
GitHub
I use GitHub for source control both at work and at home. It lets me see my code’s history and go back and forth between versions etc and is a crucial tool in my workflow. The bare thought of only working locally makes me queasy. Don’t do it.
Graphics
Both Xavier and I are great fans of pixel art and old-school games so that made the choice of style obvious. Xavier could’nt wait to make pixel art for the first time and used PyxelEdit to do it. I can’t tell you much more about his process than I already have but what I can tell you is that his work was crucial in every way. Just take a lot at the first images I posted and compare them to this trailer if you need convincing 😛
“Rogue Knight: Infested Lands” in motion…
Sounds & Music
I created the sounds super quickly using Bfxr, a handy tool for making the kind of primitive sounds our retro-styled game demanded. Intuitive and easy to use.
I studied music in school and used to play keyboards in a Reggae Band (!) among other things and I occasionally write songs of my own so it was only natural that I’d make the music myself. At first I thought about using a tracker to make Chiptunes but this turned out to be a lot more complicated than I imagined so I quickly abandoned that thought. I found a nice plugin that created 8-bit sounds for Garageband, a free program for Mac that you can use to make music and bought a small MIDI-keyboard that I could use to play the notes and release my inner Mozart. Writing the songs was not that difficult and most where actually made in a matter of minutes and I attribute that to the fact they’re quite straightforward and that I’m always hearing things in my head XD.
MARKETING & RELEASE
I did the incredibly stupid (but apparently way to common) mistake of not taking marketing seriously at all. All I wanted to do was release a game I told myself. Well, that was one of the main reasons why nobody knew about the game either. The day of release, which was arbitrarily decided and could easily have been changed, I panicked a bit and did a bunch of random things at once. I sent out an email to Pockettactics.com cause I thought that their reader base would probably be most interested in this sort of game and they had covered similar games before but got no response. I sent one to Pocketgamer.com but did not get a response there either. I posted the game on slidedb.com and created a Twitter account without having the slightest idea of how to do marketing or anything else on that platform for that matter. I made a post about it on Reddit which is notoriously against self-promotion… In other words, our launch was catastrophic and the weird thing is that I knew it a the time it was happening. But… I didn’t know what to expect and thought that maybe things wouldn’t be that bad so I released it instantly anyway. After all, we had just released our first game! How cool is that?!?
Our game was added to Toucharcade.com by a bot and not by us which says it all. I should have created a page there way before release day. Anyway, we got a small amount of sales from there at least. But how many sales? Not many it turns out…
Sales
Like most games, we sold more on release day and on the days surrounding it but there are some slight spikes in the end of the chart which is incidentally when I’ve become waaay more active on social media. But look at those figures. A total of 653$ in sales from the release on May 2017 to December 2018. And that’s even before Apple has taken their 30% cut! That’s less than a dollar a day. Boy am I happy I have a full-time job as an iOS Developer :D.
Are the sales disappointing? Yes. Was I expecting more? Yes and No. It is our first game so it’s possible that expectations are way off but I’ve seen a lot of games that are “worse” (in my highly subjective opinion :D) that in all likelihood fare much better financially. Maybe if we create another game that gets better attention “Rogue Knight: Infested Lands” sales will be boosted as a side effect.
LESSONS LEARNED
Games take longer to make than you think
The base of the game was done fairly quickly but fixing the bugs, the menus, GUI and adding some polish here and there took a lot more time. The last 20% really takes 80% of the time. So if you’re gonna build a game, start as small as you can and then make it even smaller. If you can increase the scope from there do it but don’t dream up crazy big ideas unless you want to risk burning out way to quickly. Gamedev is a marathon and not a sprint.
Release on multiple platforms if you can
We’ve had a lot of Android users showing interest and one of the most common replies we’ve gotten when we show the game is “this looks really cool. Too bad it’s not on Android”. I have a strong feeling that this game might even had made more money on Android (!) which is a rare thing for games. In any case, unless you have a really good reason NOT to release on multiple platforms, do it. You’ll broaden your audience significantly and it’s the main reason I’m gonna learn Unity.
Be extra disciplined with your time when you have little of it
Making games is extremely time consuming and unless you are unemployed, live at home with your parents or have no social life whatsoever, you won’t have time to do everything you want. Features will be cut and some things will not get the amount of polish that you believe they need and you just have to accept that. Both me and Xavier have full-time jobs and families to take care of so being overly perfectionistic or taking too long on tasks just isn’t feasible if we want to actually release anything.
Marketing is crucial and you should start doing it as soon as you can
If you want your games to be played and earn you at least a bit of pocket change you really have to take marketing seriously. Show off your game as soon as you have something worth showing and maintain a strong social media presence. DON’T just blurt out something on Facebook on the day of release without doing anything else and think this will help you in any significant way. It most probably won’t.
Testing your game on other people should not be an afterthought
I worked for 6 years as a software tester and I should know this better than most. Despite that, we were happy by just letting our significant other and some friends try out the game. Even though this is better than nothing, we should have tried to gather people for a BETA of some sort for two reasons: getting as much feedback as possible but also to build up some hype for the game. There are still some things with the game’s UI that could be improved for example…
Other random lessons
1. Getting the UI right is tricky and should be done early
2. Making scripted tutorials in an otherwise mostly random game is a pain in the ass
3. We like pixel art way more than other people do
4. Don’t get obsessed about code architecture if you want to get any work done
5. Don’t neglect code architecture if you want to keep your sanity
Last but not least: Make the best game you possibly can
I read a post by a publisher where he said that a lot of developers don’t have 100% faith in the quality of their game and that this should tell you something. I am extremely proud of the fact that me and Xavier released a game that others enjoy playing but I feel so much stronger as a developer now that my demands for the game’s reception have changed. Was it the best I could do at the moment? I don’t know. I think there’s more that could have been done but I’ll just have to take that with me for our next game…
Thanks for reading and feel free to ask any questions 🙂
// Luis