I have always been interested in the process of making games. Games are something that I, along with millions of others, play every day without even knowing how they (mostly) work. They are a part of our culture now, especially considering how many people use iPhones and how many games are in the App Store. The purpose of my column is to learn the process of game creation. While the completion of a game is not critical to the success of my column, it would be pretty freakin’ cool to produce and distribute one!
I am not completely devoid of game development knowledge. I will be starting at an AP-level of Java programming and will be finding and following tutorials on the internet, specifically The Cherno Project on YouTube. Following a tutorial from start to finish won’t give me a product that I can call my own, so upon completing the (lengthy) tutorial, I’ll be looking to make my own game based on the concepts and knowledge gained from the tutorial (and from any other videos I find).
Now that I’ve gotten over my dry introduction, I’d like to dive right into documenting my game making process. My name is Kelvin Pan and thanks for reading my column, In Development!
I have no idea how people start making a game. Do a group of people just come together and randomly decide that they’re going to make a game? Is it different if one person makes a game or multiple people make a game? How long does it normally take? Is it possible to make the next big hit with something related to a bird?
There are some things I do know, though. Software that runs on a device is essentially just data, nothing more or less. Everything from games to a high-end application like Adobe Photoshop is built from data, or more specifically, code. However, the more complex the application, the more complex the data. Popular titles on computers and consoles contain thousands upon thousands of lines of code.
On the other side of the spectrum, there are also simple games such as Pong that can be made without going over a thousand, or maybe even a hundred lines. This code dictates every single thing (on and off of the screen), such as the locations of a paddle, or the size of the screen itself. But a complex game won’t complete itself with just a programmer mindlessly mashing away at the keyboard.
A game is born from an idea.
It can be many concepts fitted together over a month of planning, or it can be something simple yet ingenious that was hatched while taking a shower (seriously, the shower is one of the best places for thinking). It might’ve come from a drawing, a novel, or even another game. Here’s an idea: a player controls a flying creature and avoids crashing into obstacles by expertly diving and jumping past them. While it does sound like a particular anger-inducing game (hint: Flappy Bird), controlling a character and dodging obstacles is a concept that’s been done in hundreds of games. So while a game doesn’t have to be completely original, the idea behind it has to be something the creator is satisfied with – and if it’s going commercial – something many people can get hooked on.
I’m not too sure what I want yet, but coming up with an idea is definitely where I will start. In the meantime, I’ll be learning how to code. Wish me luck and feel free to leave a comment if you have any suggestions or questions.
Words by Kelvin Pan
Images made in Photoshop