In 2005, Matt started at IndusBlue as a Flash developer, and while working there he took the GO train to and from work everyday. He decided to use that time to make a game. He started thinking about ideas around colour theory and (perhaps because he was on a train at the time) decided to make it about trains. The game was entirely designed on paper and then he went to a Flash demo.
Matt started with zero iPhone development experience but knew it would work best on that platform. He used Cocos2D which has a similar API to Flash. First he built a test game called Quaddy which was never released, but did get some of his beginner mistakes out of the way in private.
In October 2009, Matt started developing Trainyard for iPhone planning to take 3 months. In fact it took until the following April to get into Beta testing and was submitted to Apple June 1st, 2010 after around 500 hours of development. Matt did "marketing" during approval week, or what he knew about marketing which meant putting together a trailer and emailing friends.
Initial responses were good, but it wasn't selling very well. Averaged about $30/day at $2.99 - which wasn't bad for a spare time iPhone app, but based on the response from people who were playing that game, he felt it could do better. Touch Arcade didn't review the game and to Matt, they're the only review site that matters - plus it's suspected that Apple reads Touch Arcade to find games to feature.
Not knowing how to get onto Touch Arcade, Matt kept improving the game and releasing updates. He scoured reviews on the app store to find small issues he could fix. Next, he released Trainyard Express which was a unique 'lite' version in that it contained 60 puzzles all different from the original game. The idea was that if people were playing it then they'd talk about it. Express immediately got 22,500 free downloads in Italy after a great review - that's 10x the global number of Trainyard downloads up to that date.
Then came the magical email from Apple who were going to feature the game on the app store. The sales chart exploded upwards with the game making $3,000 the first day featured and that went up to $7,000 a day as the days went by. Matt's worry was that after the week of being featured, he was going to drop off the charts again. The game reached the #48 paid app spot at the $2.99 price in the Apple charts. He experimented by dropping price to $0.99. Matt wrote a detailed and honest blog post and posted it on Reddit asking people to help my game beat Angry Birds. Creating that story was the most important thing he did without realizing it. Lots of big gaming and tech blogs picked up the story and Touch Arcade reviewed the game for the first time.
Within 24hrs the game reached #2 and was ahead of Angry Birds. At the point it was getting 40,000 downloads a day at a $0.99 price. In total there have been 750 thousand paid downloads and 4 million downloads of the free Trainyard Express game.
Matt stayed at Indusblue for awhile before starting his own company, Magicule.
Looking back at what he learned from the Trainyard ride, Matt pulled out some lessons learned for the second part of his presentation.
One lessons was to use your other skills, e.g. using his Flash background Matt created an almost full version of Trainyard that runs in your browser to watch solutions shared to the web. He also created an Adobe AIR texture generator. The puzzle generator he wrote in Flex was what brought his Flash background into the process of making the game.
On the Android vs. iOS question...
Matt's success was in iOS, so that's his preference. Developers he knows have ported to Android and the games do okay in terms of sales, but not as well as on iOS. Dealing with fragmentation on Android is an issue and as an small developer dealing with iPad and retina/non-retina displays is enough to handle.
Third party tools can be great but you need to be objective about performance. If you're sacrificing framerate or fidelity for an easier development process that's a problem.
On app pricing...
An app store may have 400k apps, but the goodness-to-crapness ratio is incredibly low. Once you start digging into the store, the chances of getting a dud are incredibly high. So the coffee metaphor doesn't apply (why won't people pay the price of a coffee for my app?). For one thing physical goods have reproduction costs. On top of that if you went to Starbucks and bought a coffee that turned out to be a lemonade you'd be surprised, but that happens all the time on the app store.
Pricing isn't about money it is about pride. You have the option of free, $0.99 or more. When people buy at anything above $0.99 and it doesn't do what they want, then their pride is hurt.
$0.99 vs. $2.99...
Matt thinks you price at $0.99 if you believe your app has mass market appeal which means you need Apple's help either through getting featured or moving up in the charts. At $2.99 you need find niche groups who might be interested and go to them wherever they are. The chance of getting up the charts for $2.99 is just much lower because of the volumes of sales.
Free is empowering. For paid apps income is directly coupled to app store ranking. This is a problem because the paid games chart are super static with some blockbusters staying on the charts for ages and fewer and fewer spots for challengers. But the free charts change almost everyday and 100-200k downloads per day can happen with free apps. That means you can have a bit of success and get a big userbase with ads and in-app purchases bringing in money and you're not worried about your place on the charts.
On app marketing...
Consider external social factors (Facebook, Twitter, etc.) that can push users to your app. Twitter is less of a marketing tool for Matt because it lacks the same two-way communication he found on Facebook. Internal social factors are getting app users to market to their friends using solutions and level sharing for example. Marketing won't help unless you have a great app of course. The app store is a meritocracy above all else. You need to delight your users. Apple talks about this a lot and Matt thinks it means your app needs a moment that makes a user happy. Something your users can point to and show their friends. Keep updating and make your app as good as it can be - it seems counter-intuitive, but don't release the 'lite' version right away. Free users, as opposed to paying users, have no investment and will delete your app at the smallest irritation. Get your game up to 5 stars across the board before releasing the lite version.
The app store is a lottery where you work really hard to buy your ticket in the first place. It's unlike a normal lottery because none of the factors are actually random. Apple doesn't roll a die to decide what to feature, that's a decision made by a human based on what comes to their attention. Likewise the charts are based on what humans do, not some random chance. The turning point for Trainyard wasn't when it was featured by Apple. That was certainly important, but it was the release of Trainyard Express that brought the app to the point of getting featured.
Be prepared to capitalize on your big moment - it's great having a story. Like the way Ponycorns was built with the developer's 5 year old daughter (read more about this here). Tiny Wings is one of the best mobile games ever made. It was made by one guy in Germany and reached #1 in the charts without being featured or marketed it was purely based on the quality of the game.
Determine your personal goals and write them where you can see them everyday. They give you a filter for tough decisions based on what choice will get you closer to your goal. Matt recommends listening to Ira Glass on the challenges of creating and the fact you just need to keep going.
Work on projects you enjoy and are excited by so you can do it everyday and push towards your goals.
After his presentation Matt took some questions from the audience:
How do you approach individual puzzle design?
Start from reason for puzzle, not just filling in numbers. Themes help too (volcano waterfall...)
On in-app purchase to unlock for full version...
It doesn't work very well. Free users are literally different people from the paid users. Most of them won't pay but the ones that will are the 'whales' you hear about and they will pay a lot so you have to give them a chance to do that. In app pretty much needs to be consumables/virtual goods. Also, if you're selling upgrades to the fullgame from in-game you aren't counting those numbers towards your paid chart rank.
On process of submitting to Apple...
Painful but not as bad as it used to be and the docs are pretty solid. Done 15 or so submissions and none rejected and all went through within a week or so.
Experience as a player?
I like Starcraft and Team Fortress - pretty normal game tastes. I pretty much hate puzzle games, so Trainyard was a puzzle game from the point of view of a person who hates them.
Who bought your game?
I don't know. There are no analytics in there. No ads either, which is pretty dumb given I have have 4 million free users.
What's the delightful moment in Trainyard?
When players solve a puzzle and understand how they solved it for the first time. Early in the game you discover you can combine the train colours without the game ever telling you that. Matt suspects that's a big moment.
Are you making new puzzles?
I spent three months making a puzzle builder so people can make their own and stop bugging me to make more.
Most unexpected feedback?
I got five stars from a person who said they would smother their wife and dog with a pillow before giving up the game.