Are you looking to get into gaming? Maybe you’ve got a brilliant concept you want to be able to see and feel in your own game, or maybe you’re just interested in the process and want to have a go yourself. Whatever the case, you’ll need to know some basics before you’re peddling your game at the next Nintendo conference. Take a look at our tips to get started in gaming programming.
It’s important to temper your expectations from the get-go. Teams of developers are notoriously struggling to create and release games that aren’t a buggy mess, and within the deadline given. You are one person. You are not about to create the next Assassin’s Creed with photo and virtual-realistic depictions of an ancient world. Honestly, if you get your character to jump the way it’s supposed to, you’ll be doing well.
Look up Game Maker’s Toolkit ↗️ on YouTube. Journalist Mark Brown started by simply critiquing games and giving potential (and established) developers “tools” to make a better game based on gameplay rather than narrative. Nowadays he regularly posts about his progress on making his first game, the pitfalls and blockages he came up against, and the mushrooms he had to hop over to get his game going.
However, the important point is that this man with 1.5 million subscribers, despite regularly talking about games like The Sims or the latest Metro game, is making something much more akin to Mario in the 80’s. He isn’t setting out to make anything open-world or hack and slash, but instead a simple platform game to get the basics sorted.
You will need a very simple premise to get started. Mark’s gaming premise is magnetism. Your magnetic character has to get from A to B on different levels using magnetism. Even that might be overselling it.
We’re all better at being the critic than the creator, but this is especially true of games that are long, gruelling processes of coding, so it’s important that you really get the fundamentals nailed before you get started. Unfortunately, they’re not as easy to pick up as music or painting, as you wouldn’t exactly sit a toddler down at the computer and “let them try” coding the way you would hand them a crayon or a tambourine.
Instead, you have to make a concerted effort to get the basics done, or your gaming venture is over before it starts. Here’s a list of fundamentals you should look into:
- Variables: make sure you understand the different data types, such as integers, floats, booleans, and strings as well as how to store and manipulate data.
- Functions: learn how to modularize code into reusable functions with inputs and outputs.
- Conditionals: use if/else statements, and switches to control program flow based on conditions.
- Loops: implementing for and while loops to repeat code blocks efficiently.
- Operators: learn how to use mathematical, logical, and comparison operators.
- Data Structures: study key structures like arrays, lists, maps that organize data.
- Object Oriented Programming: learn to write code using classes, objects, and inheritance to model the real world.
- Algorithms: implement and analyse key algorithms like search, sort, and pathfinding.
- Debugging: fix errors and issues systematically with tools like print debugging.
Once you have these fundamentals nailed down, you’ll be able to choose your engine. Engines are the canvas of your game. They handle processes like rendering your graphics, playing the audio, physics simulation and more.
There are a lot of common ones that are usually mentioned in gaming journalism, like the Unreal engine which is the basis for games like Bioshock Infinite, Fortnite, Mass Effect, etc. Unreal is known for being the most powerful with 3D capabilities, but they are also the engine of a lot of casino and slot games like Indian Satta Matka ↗️. There is also the Unity engine, which is known for being used by a lot of indie developers like Cuphead, Fall Guys and Hollow Knight. However, for really starting out, your best option would be GameMaker, which is known for being beginner-friendly and limited to 2D games.
And you’re ready to get started. The truth is you’re better off learning by doing, so really you just need to follow the tutorials and the step-by-step instructions to get the hang of it.
The best kind of studying: studying games. Unfortunately, that doesn’t mean playing them. If only life was that kind. Instead, take a look at the game codebase. Look “under the hood” to understand the structure of the game. From there, you can study architecture patterns to create your own game code.
Open-source games show you code implementations which you can study, such as AI, gameplay logic, animation, etc. You can discover new techniques by looking at open-source code, including solutions to problems that might have gone over a player’s head.
Additionally, you can learn what not to do. In the same way modern directors do anything to not be Tommy Wiseau, you can look at a code and discover anti-patterns: bad practices in the code that you don’t want to implement on your own.
Game jams are the incentive you need to get better. They are deadline-focused events where you can try to make a full game in the timespan allowed. Usually, this is 24-72 hours, but it makes a game out of making a game.
There are a lot of benefits to game jams, such as building discipline, rapid feedback, collaboration across programmers, and the overall benefit of actually finishing your game. We’re all guilty of telling people we’re working on that novel or script without actually lifting a pen for months. Don’t be that guy.
Additionally, game jams ↗️ force you to be creative. With a time limit, you’ll have to think outside the box to get things done. You often hear of the budget limits in movies forcing directors to get creative (Reservoir Dogs, Deadpool, etc.), that can be your game: the next big idea you had to come up with on the fly.
Hopefully, with these steps, you’re ready to get started on your first game. If you have a premise in mind, test it out with your first game, or start breaking in the fundamentals and see if that sparks some creativity.