Zero to Gamdev
How I went from knowing nothing about making games to selling one.
My name is James Wakeham, I’m a game developer from Canberra and I’m finishing up my second year of the AIE two year programming course. I work for AIE alumni game dev studio Cardboard Keep and earlier this year we released a game called Puzzle Puppers, a puzzle game about stretching out cute dogs to feed them.
This is important for me because it’s the first game I’ve been the lead programmer and designer on. It’s odd to think that just three years ago I knew almost nothing about programming, the Unity game engine or game production. Now I’m writing an article on how I became a game developer.
How did I get here? In 2015 I did AIE’s Game Programming Foundations short course where I learnt C# and Monogame. Words which, at the time, meant almost nothing to me. When I look back, the first day of that course was the day I became a full time game developer. Since then I have probably worked an average of 7 hours a day on studying and creating games. Once I knew how to do it and I set myself achievable goals, it quickly became my favorite thing to do.
After finishing the course I asked my former teacher out of the blue if there was anything I could do with his studio, and they brought me on as an intern. After six months I was offered a permanent role, awarded a few shares in the company, and upgraded from junior programmer to regular programmer and part owner. During one of our pitch meetings I brought forward the idea for Puzzle Puppers, and it was greenlit for development. And that’s how a first year programmer ended up with the title of “Lead Programmer” on a project, in a studio of five people.
If I could make a few suggestions to people wanting follow my path, they would be:
- Set small goals and finish them
The hardest part about doing something is finishing it, whether it’s building a house or making a game. Smaller goals are easier to achieve, but stack up to big progress.
- Make things as easy for yourself as you can
Just like your goals, make your games little. Then you can say to yourself “I’ve released a game”. Use other people's engines, plugins, code, art, music (All with their permission obviously). Anything to help you get the job done.
- Fail fast!
Every project will tell you a LOT about how to make games, whether it’s a Flappy Bird clone or a multiplayer shooter. There are a lot of near-universal truths that you learn about game dev that will apply to every project you tackle. Take small games to completion, learn as much as you can.
Most importantly have fun! It takes a lot of dedication and luck to make it as a game dev but when you’re having fun even the most grueling task won’t seem so bad. If I can quote Gabe Newell from his recent Reddit AMA: “When I started programming, it wasn't really an established career path. I did it because it was fun."