When I first met Josh a couple years ago, I didn’t realize he was relatively new to the company. He was such a perfect fit with our company culture – smart, thoughtful, hardworking, laid back – that I assumed he’d been part of the team all along and I’d failed to introduce myself. We wish he had been here all along. In addition to programming the tools for the art team, one of the producers tells me that he makes some of the best milestone videos behind the scenes. So don’t believe this guy when he says he’s only got one skill. Meet Josh. — Sanya
Behind the Scenes
by Josh Petrie
My name is Josh Petrie, and I’m a programmer here at Undead Labs. I’ve been programming in one form or another for most of my life. To some extent, this is because it’s the only employable skill I’ve got, but fortunately it turns out that I love doing it.
It started in the 1980s. During a family trip to Boston, my father got to spend some time with a friend’s Macintosh SE. Dad was impressed enough with the thing that a few weeks later, he bought one himself. It came in an enormous box, given the squat proportions of the machine inside. When he unpacked it, I was more interested in trying to figure out how the styrofoam packing material could be re-imagined as a sword or a gun than the machine itself. Dad set the computer up on a desk in the corner of our dining room, near our freestanding wood stove.
Eventually though, something drew me to it. I don’t remember what started it, but I do remember logging in to CompuServe or Prodigy with Dad and downloading simple shareware games to play. I can still recall the look and feel of many of those games, even if I’ve forgotten their names over the intervening years.
However, the most significant of those games didn’t come from some online bulletin board service. It came from the local Egghead Software branch; it was the first game I got to pick out from a real, brick-and-mortar software retailer: Dark Castle. The game itself was a 2D platform where the player took control of Duncan, an intrepid-and-slightly-foolhardy adventurer. Duncan roamed the halls of the eponymous castle, armed only with some rocks he could hurl at his enemies, attempting to topple the throne of the castle’s evil lord. As a child, the game was too difficult for me to finish, but I adored its graphics, sound and characterizations. The difficulty only served to add to its mystique.
Around the same time, Dad had started using this program called HyperCard to create multimedia tools and databases for his landscape design jobs. Some of those first games I’d played on the computer were also built with HyperCard, and my fascination with Dark Castle (coupled with my inability to finish it) led me to try experimenting with peeking behind the the scenes of those games. Eventually I decided I would build a game of my own, something like my version of Dark Castle.
That’s how I ended up learning HyperTalk, my very first programming language.
I never finished that first game. It was, of course, well beyond my youthful and inexperienced capabilities at the time. Yet, I can still look back and pinpoint that time in my life as the ultimate start of my eventual career. Years and years later, here I am, a professional game developer.
I do a little bit of everything in my job, but mostly I focus on writing tools and core internal technology for the rest of the development team to use. Tools programming isn’t the most visible or glamorous, it’s true: when people hear that I make games, they usually ask me what games I’ve worked on (easy enough to answer), and what I did for those games (somewhat less easy to respond to).
A gameplay programmer could indicate the cover or stealth systems and say “I made it possible to hide behind those boxes.” A graphics programmer can show off acres of gently-waving grass, saying “I made it possible for all of that to be drawn at 60 frames per second.” But almost everything I do is less front-and-center. I integrate middleware. I write content editing tools, build systems, and localization software. I streamline the pipeline for getting art out of Maya and into the game where players can shoot at it. The way I like to describe my job is that it is all about putting out fires, trying to avoid starting new ones, and working behind the scenes to make everybody else’s job easier. I love it, and I wouldn’t have it any other way.