Staying motivated can be a constant struggle for many people, and even more so for aspiring game developers. In fact, it’s a problem that I often encounter both in the late night appointments with my laptop and my homework, as well as in my personal game development process. Of course, people procrastinate on homework because it is not enjoyable; but shouldn’t game development be different because people do it for fun? It is different—but it definitely remains a problem.
There’s a very real distance between the drawing board and the finished item during the creative process. The organization of the actual game development process is important to all game companies, which look to deliver a polished product within a reasonable (and affordable) amount of time. In the beginning of game development, concepts are thrown around and the possibilities seem endless. However, every feature a game has requires time to implement, and the game development process revolves around deadlines and milestones.
Teaching myself programming has a lot to do with intrinsic motivation, as I don’t have deadlines to meet nor do I have clients to satisfy. However, even with a personal desire to create games, I find it difficult to slog through the more tedious parts of programming. In fact, I took too long of a break from programming during the winter break from school, and I realized that a lot of my code didn’t make too much sense when I returned to resume my work. After a little bit of hesitation, I decided to start anew with the help of another set of YouTube tutorials. The groundwork was not very different from my first Java project, and I completed my engine (with the help of the tutorial) rather quickly. I felt more comfort going into my second attempt at a game, as I had a better grasp of what was going on.
I soon realized that I was making excuses for my lack of motivation. It was true that I had picked up several skills in the process of following the first set of tutorials, but I had not completed my game. Having a finished product is ultimately the goal for me and every other programmer out in the world. After all, long lines of beautifully formatted code mean nothing if they don’t deliver. When people line up to buy a game on its release date, they expect to be amazed in every way possible and feel as if they got their money’s worth from the game. By not even having a single completed game under my belt (admittedly, I’ve made Pong and Asteroids before), I ultimately have nothing to show for my work and don’t even have the ability to evoke any reactions, good or bad, from the people that would play my game.
Making a game is a lot easier said than done, especially when I’m having fun imagining what cool features I would love to have in my game—without thinking about how much time and effort it would take to implement those features. I’d love to create a game jam-packed with every single fun feature imaginable, but I simply don’t have the ability to yet. I know I have to start small, even if I keep thinking big. It’s something I have to remember every single time I get off-track: I have to deliver. Unfortunately in this post, I won’t have the standard three .gif format. I have some Java I need to tackle down.
Words by Kelvin Pan
Animations made in Adobe Flash