Mugshot Games

Publishing your first game in 40 not so easy steps

What does it really take to be a solo indie games developer?

With the recent release of my mobile game CastleMine, I thought it would be good time to pause and reflect on the long road that brought me to this point. Looking back 2 years, it’s funny to think how naïve I was to think the only skill I needed to bring to this journey was programming. It turns out that this is only a small piece of the puzzle. Everything else must be learned along the way. Suddenly you’re trying to be an artist, a musician, a sound engineer, a salesman, an accountant, a graphic designer, a web developer, a social media expert and many other roles other people dedicate their whole lives to. It’s almost comical the number of hats you’ll try to wear on the way to the finish line.

This can be incredibly daunting and more than a little demoralising as you helplessly watch your release date slip further and further down the calendar. But now that I’m here, standing on the finish line, I’m ready to do it all again.

The following is a recreation of my growing task list as I discovered what’s really involved in creating and publishing a game on your own.

I’ve got a great idea, this will be easy.

  • Task 1: Write some code, release a game!


I missed some obvious stuff. This should cover it.

  • Task 2: Create some art. Lots and lots of art.
  • Task 3: Get some music. Trawl the web in search of royalty free music that suits your game perfectly.
  • Task 4: Get sound effects. Listen to 100 “swoosh” sounds to find that perfect effect for that one button. Repeat for every single sound in the game.


Wait I need a few more tasks. I’m going to have to make money somehow.

  • Task 5: Research and compare different sales models. Read dozens of articles on ad-supported vs freemium vs paid models. Realise there is no golden apple and just do what you had planned from the start.
  • Task 6: Research and compare a dozen different ad networks and incorporate their (sometimes buggy) controls into your code. Constantly feel like you picked the wrong ad provider.


It’s not looking quite right. I need to add some more tasks.

  • Task 7: Now that you’ve built half the game you finally know what you were really trying to make. Start again.
  • Task 8: Also, you know that art you did at the start? It was terrible and you can see that now. Start again.
  • Task 9: People keep talking about this thing called analytics. Research what this is all about. Add it to your game so you will be able to tell if your game is a walk in the park or a frustrating nightmare.


Intermission! Experience may vary.

  • Task 10: Welcome your second child into the world. Sleep is now optional. Get relegated to the smallest room in the house, next to the baby change table and diaper bin.
  • Task 11: Develop a deeper appreciation for fresh air and sunlight.


I slept last night. Maybe I should start looking into how to publish this?

  • Task 12: Register as an Apple Developer, learn all their certification requirements. Buy and learn to use a Mac.
  • Task 13: Register as a Windows Phone Developer, learn all their certification requirements. Buy and learn to use Windows 8.
  • Task 14: Register as an Android Developer, learn all their certification requirements. Wait, you don’t need to buy anything?


All those registration forms kept asking for a publisher name, who am I?

  • Task 15: Name your company! Possibly the hardest thing you’ll ever have to do. Your first 99 names will be taken and you’ll discover a deep, fiery hatred for domain squatters.
  • Task 16: Got a name? Great! Register as a company. Suddenly it all feels so real!
  • Task 17: Create a company logo. Add ghetto graphic designer to your resume.
  • Task 18: See an accountant because now that you’re a company you can’t just wing your taxes anymore.
  • Task 19: Setup a company bank account so your wife doesn’t spend your company’s money on handbags and baby clothes.


I’m a company now. But I’m invisible. I need to be the opposite.

  • Task 20: Create a Website. Learn WordPress. Write lots of text in case you get a visitor.
  • Task 21: Setup a Facebook page because all the cool companies have one.
  • Task 22: Setup a Twitter, Skype and YouTube account. Get hopelessly lost in a sea of usernames and passwords.
  • Task 23: Brand all these account pages to fool people into thinking you know how to use them.
  • Task 24: Post content! You don’t want your pages looking like a ghost town (note: your pages will look like a ghost town).


It’s been weeks since I looked at some code. Wasn’t I supposed to be making a game?

  • Task 25: Re-evaluate your game. Make sweeping architectural changes that break everything to fix that one stubborn bug that, realistically, no one will ever notice.
  • Task 26: Test. Beg, borrow and steal (don’t steal) as many devices as you can get your hands on and play through your game on each of them. If you still like your game after this you might be onto a winner.
  • Task 27: Rope in as many friends, family, co-workers and friendly folk from the internet to play-test your game and hopefully give you honest feedback.


I think the game is done. Maybe I should market it?

  • Task 28: Look into marketing. Realise you should have been marketing months ago.



  • Task 29: Find every site/blogger/youtuber who might be even mildly interested in your game.
  • Task 30: Listen to advice that you should individually tailor press release emails to each of your targets. Attempt this and give up. Promise yourself to use a PR guy next time.
  • Task 31: Create a compelling video trailer that really sells your game. No pressure, but if it sucks no one will play your game.
  • Task 32: Create some sexy screenshots. No pressure, but if they suck no one will play your game.
  • Task 33: Create a store description. No pressure, but… actually everyone just looks at the screenshots.
  • Task 34: Create a web demo version of the game and host it. The press (if they take interest in your game) will want instant, easy access.


Finally, it’s ready for release!

  • Task 35: Customise all your icons, screenshots and promo images to suit each of your target platforms’ 101 requirements. That’s 15 different icon sizes if you’re wondering.
  • Task 36: Create a privacy policy. Research what a privacy policy is. Make sure you’re not breaking your own privacy policy.
  • Task 37: Pray you haven’t added any last minute game-breaking bugs as you click the upload button. Be prepared to completely freak out if you did.
  • Task 38: Execute your marketing plan. Briefly hate your life. Wish your hobby was collecting stamps.


The aftermath

  • Task 39: If your game was a flop: Learn from it. Make another game.
  • Task 40: If your game was a success: Learn from it. Make another game.


The point of listing all of this is not to discourage the would-be indie game developer, but to show a glimpse of what might lie ahead should you choose to give up your life for this cause. If you have the determination and commitment to see your project through to the end, I can tell you it’s one of the most rewarding and satisfying experiences there is. Everyone who reaches the end of this path will tell you a different story, but this was mine.

So, if you’re about to start down this path, good luck to you! I’ll see you at the end and look forward to hearing your story.


* No children were neglected in the making of this game.
** If you enjoyed this story please consider tipping me by downloading my game. It’s free. (iOS, Android, WP8)

Steve has always had a passion for game design and has been developing mobile games since 2011. He is the entirety of Mugshot Games and is learning to juggle development hours around a full time job and a growing family.
  1. Brian P

    Thanks for posting this, with all your experiences in the process. It is both inspiring and daunting. I’m also a full-time developer by day (non-games industry) with a family and dreams of developing a game, so I can appreciate what you’ve had to do to get this far. Congrats on your success! I haven’t tried it yet, but now that I know more about you it makes me want to buy it just to support you.

    Can you post more about the tools you used? I thought I read somewhere that CastleMine first came out on for a Windows Phone. What did you use to then get it to iOS and Android? One of the cross-platform tools like Corona or Unity?

    Have you thought about posting one of the post-mortems about how much you’ve made, with the different platforms and pricing models? I know it seems personal and nosey to ask that, but I’m sure many are wondering.

    • Steve Yap

      I’ll probably do a post mortem once the dust settles a bit from this recent release. I think my experiences so far comparing Windows Phone to Android to iOS will be probably be a bit of a shock to some. It’s definitely hasn’t been what I expected.

      As for tools, I built the original game in Silverlight because that was what I was most comfortable with at the time. After the Windows Phone release went well, I decided to learn Unity so I could make the game cross-platform and fell in love with Unity in the process.

  2. Samuel Batista

    Hilariously informative. The brevity and awesomeness of this post is much appreciated.
    - Fellow game developer with no spare time.

  3. Evil Dan

    Hey Steve – thanks for posting this!

    It is super encouraging to hear your journey of how you encountered and overcame a lot of the roadblocks I am still muddling through.

  4. Tim Roadley

    So true, particularly the bit about marketing, art and sound!

    If no one knows about your game, no one will buy it. If your game looks crap, no one will buy it. If your game sounds crap, your reviews will be crap, and no one else will buy it.

    I overlooked those things when I made my iOS game and am having much more success with a utility app instead of a game.

    Great post!


  5. Rossa

    It’s always a relief when someone with obvious exertpise answers. Thanks!

  6. Dilmer


    I don’t know how to tell you how I relate to your story, I just like you did spent months developing a game and wearing so many hats, and it was a week ago after 3 months of development that I was able to release my game to Apple. I do feel so good after releasing my game and been able to play it and watching other people play the game is soooo rewarding ! Also, sharing it with your co workers gives you a higher level of respect for whatever reason.

    Good article!

  7. Jonathan

    Thanks for the article, downloaded the Android version. Will check it out.

  8. Herman

    Thanks for sharing this! I don’t feel so ‘alone’ anymore. I have been trying with some apps and after spending MANY hours you wait for the millions. So dead wrong. I don’t do games, I go for productivity because frankly my graphic design skills flop 100%.

    Pushing for the Ads don’t work either, the return on that is minimal.

    I then promoted on Facebook, marketing you know! Facebook $ 45, me $3 so far.

    I will just try again, and again. Something must work because I love what I do…

  9. Jean-Denis Haas

    That was great, thanks a lot!

    I’m about to start from scratch, first time game developer, so this list is a good outline and reminder of what’s to come. :)