Once upon a time on the internet, a league of gamemaking wizards gathered in a secret council on Twitter to formulate a list of proverbs to pass on to wizards yet to come. "97 Things Every Game Developer should Know," it was called. Much of the advice was insightful, and all of it was practical, but one statement in particular posed a potentially problematic idea:
@CrociDB Stop thinking you'll rule the world as a Game Designer. Go study programming.
No offense meant to whoever posted that message, but this is arguably the biggest problem with video game development today. I'm not saying it isn't true, because it is. But that's just the problem.
I've been reading up on games and the people who love them, and there's one story I've heard a million times over the last few years. It's usually some variation of this: kid meets games. Kid and games fall in love. Kid wants to design games so that they can spend the rest of their lives together, but then kid realizes that she can't program, and everything comes tumbling down.
The are a variety of endings to this story. Maybe the kid becomes a journalist. Maybe she discovers Twine. Only on a rare occasion would she be compatible with programming in addition to design, somehow able to buckle down and wade through incongruous syntax and incomprehensible jargon, until at last she manages to eke out a primitive, rudimentary program. Or alternatively, and I stress that this is probably the least likely scenario, she manages to find somebody who agrees to do the coding for her.
I'm trying to make a game myself. The reason I brought this up is because I've realized that my life is sort of a reflection of this story. I'd been coming up with game ideas of increasing complexity since I was four years old, and somewhere between then and mid-adolescence, they had turned into full-fledged, well researched, and incredibly long design documents that took things like pacing and balance into account. As a child, I would've loved nothing more than to see those ideas become a reality, but in the end, learning to program never worked out, and I was still down on my luck for a long time.
Also, I've hit the rare fourth ending. I've recently finished writing out the text for the prototype of the game I'm designing. It's only text, yes, but since the game, titled Sweet Dreamer, is a text adventure in the vein of Zork and Colossal Cave Adventure, text makes up the bulk of the experience, and so a lot of it had to be written.
I was lucky enough to have a best friend that knew C#. I was also lucky to have met him at the age of 3 (over a game of Pac-Man no less!), as I doubt anybody but a lifelong friend would have given me the time of day. We have a pretty strange arrangement: he does the programming, I do everything else. Music, art, anything else the project demands. It's a sad kind of irony, if you give it a little thought.
And I was pretty lucky, too. But not for long. It's only a matter of time before the demands of the gaming industry catch up with me, and once this project's over, the only way to get off the ground will be to do something in addition to design. Which means I'd better be learning to code, right now. And I am, of course I am.
But I guess not everybody's rigged for it. I've already made three attempts in the last few years to learn a programming language. This is my fourth, not counting HTML or PHP, which technically aren't programming languages but didn't turn out any better. I'm not very optimistic. Desperate, but not optimistic.
And you know, I wouldn't really care if this had to do with game design, if it had anything to do with game design. But frankly, it doesn't, and that's the big fat problem. Writers have their notepads, artists have their sketchpads, and we have a big ugly thick wall standing between us and our creative process. We can't create directly because the computer doesn't understand game design the same way it understands text or images, save for on such a low level that aspirin will invariably be involved.
The necessity of a game to be programmed is a product of the same human-to-computer communication barrier that causes a voice-operated program to misaddress a package intended for your lover, and send it to your child instead. In other words, it's not an ideal, but rather a shortcoming of modern technology. And no, programming is not game design.
But as it is, programming is the end-all be-all of game development. Is that okay? If you didn't need to program to make a game, what would that mean? Consider that for a moment. Would it mean decreased production costs, or shorter development cycles? Fewer bugs and glitches? These might seem like the most important answers, and quite a few of you would suggest them, at least at first.
But then, slowly, heads would begin to nod. It would begin to dawn on you what the real implications were. You would understand the sheer scale of what was being proposed. And it would be mind-blowing.
Have you figured it out yet?
Before I tell you, I'm going to add a caveat: We will always need programmers. Games can vary wildly in scope, from the five-minute experiment with a team of one to the multi-million dollar epic, and across the board there will be games that require a level of technical complexity and mastery that can only be achieved by getting under the hood. That's okay. Heck, I find machine code programming in this day and age to be, in my own strange way, glamorous and even heroic, especially when done for the sake of speed. I'm not suggesting we throw everybody out of a job, just so we're clear.
But the problem is, we more often than not find ourselves needing to go under the hood for what should be fairly simple ideas. Would you believe the amount of contrived maneuvers clever loopholes it takes just to make a character jump in Game Maker? Shouldn't there be, I don't know, a button for that?
I contracted three programmers for THIS?!
Maybe, just maybe, we rely on programmers more than we ideally should, that is, for the simpler things. And if you'll believe that game design and programming are separate entities, then it follows not only that not all good programmers are good game designers, but also that not all good game designers are good programmers, and that by putting this wall in place we're excluding promising people.
And that's what I was about to say earlier: people. Or, to be precise, a broad range of people from different backgrounds and with a diverse set of voices expressing themselves in ways they never could before. I'd like to see a sea change in the sort of games that get made, and the surest way to make that happen is to get a wider range of people making a wider range of games. A fully-functioning game editor anyone can use could do just that.
It's good business sense, too: if it were that easy for a game designer to make a low-scope game and show off some talent, then we’d have a way to sort the real designers from the wannabes that everybody's so worried about, as anybody looking to hire could ask them to show their work. It would add a sense of legitimacy and viability to raw game design that’s not only well-deserved but also sorely needed in a stagnating industry.
But given the abstract nature of game design, making a high-level tool, as necessary as it may be, would call for a good bit of thinking outside the box. But that isn’t to say it isn’t possible, although I think at this point it will soon be argued that it is, that a computer couldn’t handle something nearly as abstract as this. But it’s not impossible. We have robots that can understand things, programs that can hold conversations and play instruments and be our workout buddies and get emotional so don’t say it’s impossible just yet. The real problem is getting there.
Although I’d hate to spam you with worthless ideas, there are a few common-sense guidelines that would be worth taking into account, as well as common pitfalls and traps that some tools have fallen into, and that we can have a look at and learn to avoid. I’d lay them out now, but this post has gotten long and this next part will be long too, and combining them would only make things worse. Seeing as my last post to even approach that sort of length, “Waiting for the Golden Game” (aka my baby, so sad) was killed by a severe case of tl;dr, I’ve decided that the best course of action would be to split this into two parts. I don’t want to, because by not getting to what is arguably the most important information in the post I risk losing your attention, but I have to, or else I would, paradoxically, risk losing your attention.
So bear with me. Part 2 will be up soon enough. See you then.
Edit: Changed the title. It's unprofessional, I know, but I HATED it.
Any of you out there that would've gotten into game design, but were stopped in your tracks by programming? Any of you still struggling with it now? Sound off in the comments below. By the way, this is also on my blog.
And as always, you can find the rest of my writing here on Kotaku by clicking the "Radical Helmet Special" tag for this post. Don't worry, you'll find it.