And many more…
Welcome to The Game Dev Journey I’m your tour guide John Davenport and today’s episode is the perfect way to launch this podcast.
To start I’m going to take you through a brief history of my own game dev journey. How I taught myself how to code to the point of being able to publish my first game. Then I’ll answer these three questions.
* What was the launch experience like? * What have I learned since launch? * What’s next for me as a developer?
Let’s dive in
This journey started many years ago – really after getting my hands on my first iPhone and wondering if I could create my own apps. That was the iPhone 3GS and it was the summer of 2009.
However, back then, there were some roadblocks that prevented me from making progress towards this goal.
* Most significantly was that in order to properly test apps that you’ve created you needed access to Apple’s developer license. Something I wasn’t willing to pay for at the time. * Secondly objective-c, which was the language used for iOS development at the time has a fairly steep learning curve. * To make matters worse the amount of online learning was limited and hard to find back then.
A few years ago Apple solved problem number one by allowing free use of Xcode even granting permission to unlicensed developers to test their apps on their own personal devices.
Apple also introduced a new language called Swift in 2014 which has evolved into a powerful and easy to learn coding language reducing the learning curve.
Finally – as the app ecosystem has grown so has the number of resources for getting started. This makes it much easier to find answers to those problems that will inevitably will arise during game development.
So after many start and stop attempts and even a detour into the land of Unity and C# development, which is an entirely different episode, I now have successfully published my first game on the App Store.
EXPERIENCE OF FIRST APP
So then… what was the launch experience like?
After spending years getting to this point and a few months prototyping ZER0ED on my own devices I finally purchased an apple developers license with the intent to publish my first game.
However it’s not as simple as sign up and hit publish. There’s still a lot of work that needed to be done at this point.
The first step was getting comfortable with the submission and distribution process. To do this I started by releasing beta builds on TestFlight. Next, was the last piece to the puzzle of ZER0ED, implementing GameCenter achievements and leaderboards into the game. This is something that requires the developer license to even begin to test which means it’s a brand new experience for me and meant diving into more learning and experimentation.
Even once the Game Center integration was completed I still only have a prototype of a game not a finished product. It’s littered with unfinished art – no sound effects and broken pages or wonky UI.
And in order to release a game to the App Store it needs to be in a finished state. No placeholder art, no place holder code, it needs to be done. So I encountered my first feature freeze of sorts. I had to stop building and start polishing – again something I’ve never actually done before in game development.
Time To Start Polishing
So I dove into procreate on my iPad and drew some art for the game. I fired up Logic Pro and put some sound effects together and a few music tracks. Finally it was time to hook it all up in code and finished polishing the mechanics and interactions. Finally, after about a month of work, I had taken the game from prototype to polished game.
It was finally time to launch it to the world. So I uploaded the final build to Apple’s servers and submitted the game for review.
About 2 days later I was approved for distribution on the App Store. I hit the button to send the game live and told my friends, family and anyone else that would listen.
The first few days were actually quite exciting. Family and friends who had no idea that I was doing this congratulated me on the accomplishment and those with iPhones downloaded and tried the game. I got some feedback from people who found bugs or issues and quickly got to work on some fixes and improvements over the next few weeks.
However… the downloads didn’t keep coming. After the initial launch weekend of 50 downloads the next 12 weeks have resulted in only an additional 20 downloads and worse yet – active users has dwindled to 1-2 per week.
WHAT HAVE I LEARNED
The saying “build it and they will come” is a lie. But I knew that – just wanted to reiterate it for those listening who might have expected more success.
I did learn a few things with this launch though.
The first of which is a really simple one – I learned that I can do this. I can create a game for other people to play. This might seem like a small thing, but in reality this is one of the biggest things to learn because so many times I stopped moving forward simply out of fear of not being able to finish. Now that I’ve finished a project I know I can do it and it motivates me to continue learning.
One of the more surprising things that I learned was how difficult it would be to write a tutorial. I can show someone how to play the game in person, but showing someone how to play the game by breaking various elements of the game apart and explaining them – in code – so that they would appear in a visual way to the player was surprisingly frustrating.
WHAT’S NEXT FOR MY GAME DEVELOPMENT
This is really just the beginning of the journey as far as I can tell. With ZER0ED I think I can take the game a bit further over the next few months with some more polish, a few new features, and even an expansion. I am planning to use the expansion as a way of learning how to integrate into Apple’s payment system and take In-App Payments.
More broadly as a developer I do have a rough concept of a game in my mind that I’ve been toying with and I’d love to get that idea into a working prototype sometime in 2021.
I’ve always thought about venturing outside the world of game development and learning a bit of app development. I’ve toyed around with this and while there are some similarities – it is a different beast entirely so that might take some time.
Today’s episode was brought to you by ZER0ED – a punishing numbers arcade game found exclusively on the iOS App Store.
Thank you for listening today. If you enjoyed this episode I will ask you for a favor – can you tell one friend about this podcast?
I’ll be back next week to talk about that detour into Unity.