Originally written by Rutskarn on Shamus’ Good Robot Devblog
I hope you’ve all been enjoying Shamus’ series on the art of programming, which I understand is writing special words that make games happen. Sometimes you don’t write the words good enough and the game isn’t good; John Romero did this one time and he’s been working as a garbage man in Tulsa ever since. I’m the lead writer, so programming isn’t really my department, but having accidentally opened the source code while Arvind was explaining TortoiseHg again I can see why Shamus has been having so many problems–to be frank, the grammar was terrible and almost three quarters of the words were misspelled. I did an editing pass which I assume fixed most of the problems; Shamus has assured me this will be the topic of posts #43-129.
But I think we’ve all got the basic idea: coding is “hard” and “interesting” and “requires technical skill” and “can be objectively assessed.” But is it really the most fundamental part of a videogame? Shamus and Arvind say “yes,” repeatedly, at progressively louder volumes–but I’m not convinced. If you take away the code I’m sure a videogame will still run, but can you say the same about its story? What would Killzone, Rocket League, and Neko Atsume be without their rich internationally beloved canons? And if it wasn’t for Final Fantasy villains, how would you know which of your old forum accounts to be slightly embarrassed by?
My point is that my job writing Good Robot (or more precisely, writing a couple hundred headlines that display when interacting with vendors, plus some names to go with level bosses) is exactly as critical as the stuff Arvind and Shamus do all week. I’m guessing. They keep forgetting to tell me when their meetings are.
So in the vein of the rest of this series, here’s a few days in the life of the Lead Writer (!).
It’s a few months until release and wouldn’t you know it, there’s an unforeseen problem: I have to write Good Robot. Arvind claims that based on how many terminals exist in the final game and how many lines are displayed per terminal we’re going to need two hundred and fifty headlines total. That makes sense based on our initial projections, and it should add a lot to replay value for the player, but the obvious complication is that it’s a lot of work. How would he like it if he had to write two hundred and fifty lines of code? That’s probably enough to power an entire year of Assassins Creed releases.
Now I know what you’re thinking: “Rutskarn, why don’t you just write the same line two hundred and fifty times? You can be done in half an hour if the line’s not too long and you type quickly enough!” Which is a terribly clever idea–I eventually thought of it too–but the problem is that Windows has some kind of weird protection where it’ll keep you from playing Mount and Blade if you copy the same one joke over and over again. I don’t understand the technical details, but Arvind was very explicit about it–I think he said it had something to do with polarity reversals. That also kind of shot my initial idea for this article, incidentally.
So back to the drawing board, which I have been using as a writing board–aspiring writers, learn from my example and don’t buy the wrong board by mistake. The board guys are real uptight about exchanges and drawing boards are huge.
The second idea I have is to write one joke, then split it up across two hundred and fifty terminals. This is something we in the games writing business call “worldbuilding.” Rather than spoon-feed the audience an accessible narrative, I make players connect the dots between all of the game’s 250 riveting text characters, presented one at a time at stores throughout the gameworld. What’s exciting about this approach is that every player’s takeaway will be unique: instead of dictating how the letters, punctuation, and numbers should be interpreted or even arranged, I allow players to project their own meanings onto the text. The controversy will have a far greater impact on the psyche of the player than rote, overplayed “complete sentences” would have. Arvind thought this was a great idea, but did express some reasonable concerns that an abstract storyline would cause yon Kelpie to rise from the black moss-fringed loch to drag my meat and bones to a blue-faced death, which is exactly what happened to this other writer Arvind knows. As always, I defer to his superior technical knowledge.
So Plan A and Plan B are both, apparently, unfeasible. And these dang headlines aren’t going to write themselves–unfortunate, as that was my strong Plan C. Misspelling “two hundred and fifty” doesn’t seem to help any, which was Plan D; I think it might come down to that “math” thing I’ve heard about. I’m obviously in a real pickle, but it’s struggles like this that help writers capture the humanity of their characters, which, when your game is called literally anything else, is probably useful.
At the end of the day there’s nothing for it. Counter-intuitive as it might seem to a layman, the solution to my problem of needing several hundred lines is to sit down and write several hundred lines. It’s the only solid move; anything else would be a betrayal of my standards, my colleagues, my contract, mostly my contract, Arvind can sue me, our loyal playerbase, read the contract, especially read the clause about involuntary kidney donations.
Also, I don’t want to get made fun of on Spoiler Warning. More than usual.
I push the scripts to the repository and give myself a modest pat on the back–reflecting as I settle into my chair that there’s a kind of poetic balance to game design, an ebb and flow, a give and take, that you miss if you get too wrapped up in the making videogames part. It’s the little coincidences, like the fact that every time I add something to game’s script a bunch of fix-this-broken-scripting tasks are added to the workpile. Just another one of those facts about how computers work we’ll probably never understand…and I wouldn’t have it any other way.
Posted In: Games, Good Robot
Tagged: game development, good robot