First, I have to say, I didn't become a self made millionaire. But still this was one of the greatest things I have done so far. I'm a Finnish computer science student in University of Jyväskylä in Finland. I got in touch with game development during programming classes. I was hooked immediately. Learning to code is like learning a new language like English. After you have learned the semantics and syntax you can write your own code.
LAST HOLD Mountain Climbing was originally invented in Jyväskylä Game Lab project. JKL Game Lab was a project with an aim to develop new methods for game development education. Our team came up with an idea of climbing game. Here's a sneak peak of what came out of that idea:
Most significant about the whole game development process was team work. What I'm trying to say is that you can create a game by your self but I wouldn't recommend it. Two fully committed developpers is 100% better than working alone. Our team had a great start. We had two programmers, team leader, music artist and graphics artist. That's pretty much all you can hope for in indie game development. We worked 5 months together. Not every day but more like a few hours per day. Programmers and team leader worked most of the time and music and graphics were brought to the project once in a week.
After 5 months we had a game prototype which was not nowhere near ready for publishing. Two programmers (me included) and team leader agreed to continue development until we would have a release version of the game. This was when things got complicated. Our problem was that we didn't really meet anymore and no-one really worked for the game anymore. This was when I decided to work alone. It took half a year to improve our simple game ready for publishing. Well someone could say that it's still not ready but I was happy with it. It took so long because this was a hoppy for me. I did not get any salary so I couldn't spent all my days with game development.
Development tools for indie developers
LAST HOLD Mountain Climbing uses Unity game engine. I had never used Unity before so I just had to learn all from the scratch. Code was written in C#. Now after my first game project I would definitely recommend Unity. It's a great tool for indie developer. Unity is free to use and you can find a lot of tutorials, blogs and online discussions about almost any issue you might face during your development process.
For graphics we used a drawing pad and photoshop. I ordered my pad from China and paid 60$ for it. So it's not so expensive to get. A good graphics artist is important to have. If you played my game you can see that there could be a lot more and a much better graphics in it. Any-one interested? ;)
Publishing your game
There should come a point in time when the game is good enough for release. This means that it is never perfect. So if you are waiting your game to be perfect it will never ever be in the store.
If you want your game to succeed, don't do what I did. In first version I uploaded crappy screenshots and app icon and released the game without a preview video. That's definitely not the way to go. You want to cause an interest to your game when people look at the game profile page. That would be the most important thing to do in your publishing process.
Secondly you should try to offer your game to game reviews, bloggers, game related magazines and what ever marketing channel you can think of. Do not forget social media! Use it as much as you can.