I attended the 2018 Global Game Jam: an annual 48-hour long event in which participants form a group and make a game. It’s fast-paced, mentally and physically draining, and stressful, yet it’s also a great opportunity to make new friends while learning about the game-making process. Of course, creating a game in a weekend has the side effect of taking all the struggles of regular game development and condensing them down into a never-ending cycle of toe-tapping anxiety. With that in mind, let’s look at some of the challenges that game devs face on a regular basis, whether they’re making a game in a day or a decade.
Bug Fixing
If there’s one thing that’s guaranteed while programming, it’s that there will be bugs. It doesn’t matter whether you’re creating a game engine from scratch or writing a simple function to display the player’s health; chances are, you’ll end up making mistakes somewhere. Worst of all, it’s far more common to discover these bugs later in development, rather than right after you finish implementing the offending code. Be prepared to pore over lines of text for hours on end, searching desperately for the one spot where you used ‘<’ instead of ‘<=’.
Efficient Art Pipelines
On the artistic side of things, games require a wide array of talents to go into their art, from music to modeling. These skills typically aren’t universal across artists (e.g. you’re more likely to have someone who’s really good at texturing and lacking at modeling than someone who’s great at both), which means that teams must be managed so everyone gets what they need, when they need it. Texture artists can’t do their job if they have nothing to texture, and character designers need to know what the plot and characters will involve before they can get to work; it’s all one big balancing act.
Project Coordination
Making a game on your own is a massive undertaking, and I have infinite appreciation for those that dare to attempt such a daunting task. Unfortunately, the rest of us are left to work with others, which brings with it a whole host of other problems. I’ve worked on projects where the artists have worked tirelessly to produce all the necessary assets as quickly as possible, only to end up twiddling their thumbs for hours on end while us programmers attempt to bring it all to life. Plus, finding people to handle extraneous (yet nonetheless important) tasks like QA can be an absolute nightmare, especially if they’re already drained from their last set of tasks.
Endless development
A common misconception regarding software development is that the project lifecycle ends when the product is shipped. This couldn’t be further from the truth. Like it or not, we live in an era of day one patches, balance updates, and of course, DLC and other additional content. All that can take a significant amount of manpower to manage, to the point where some companies will have entire divisions devoted simply to supporting their older titles. If you want your game to be well-received, you have to put in the work up-front. If you want it to remain relevant, you’re going to be spending an awful lot of time with it post-launch.
Feature Creep
Of course, you should finish the project before you move on to patching and DLC. Feature creep is the notorious trend in software development to continually ask the question: “Wouldn’t it be cool if…?”. While it can often lead to some of the best ideas in a game, it can also rapidly cause a project to spiral out of control. You’re partway through the single player portion of the game, and then someone on your team suggests adding multiplayer. Then someone else suggests split screen co-op. Then your fans ask for a longer story mode. Suddenly, your game has gone from one component that was nearly complete to a series of disjointed loose ends. Making a single game can often take years to complete, and avoiding the rabbit holes of feature creep is critical to ensuring that it doesn’t take many years more.
Crunch
Crunch has become infamous in game development, in large part due to the unreasonable stresses it can place on developers. Stories of people working 60-plus hour weeks, sleeping at the office, or barely getting any sleep pervade the time leading up to many major releases. In recent times, some companies have attempted to take stands against mitigating crunch, but it often seems inevitable; there always seems to be more than enough time for a project… until there isn’t.