Last December, Shacknews published Rocket Jump: Quake and the Golden Age of First-Person Shooters, David L. Craddock's book-sized account of the making of id Software's Quake franchise and other influential FPS games from the 1990s. Presented unabridged, the following chapter is an oral history that recounts the making of the Team Fortress mod for Quake. The full edition of Rocket Jump is available for Mercury subscribers and up for pre-order in hardcover and digital formats from crowdfunding publisher/platform Unbound.
Following the release of Wolfenstein 3D in 1992, John Carmack started a tradition. Any developer interested in locking and loading a first-person shooter of its own could cut id Software a check and license its technology. Apogee was one of many companies to secure a license, building two Blake Stone titles as well as Rise of the Triad on the foundation Carmack had built.
The release of Doom over a year later sparked widespread interest in the engine, dubbed id Tech 1. Droves of "Doom clones" followed. Some titles, such as Digital Café's Chex Quest and Raven Software's Heretic, stuck close to id's template—the latter swapping out shotguns with magic wands and the former yanking out hellish landscapes and inserting bright color palettes that would have looked at home on the back of a cereal box.
In the weeks leading up to June 1996, the industry shook from the foreshocks set off by previews of id's next game, Quake. It would trade pixels for polygons and 2.5D engines for six degrees of freedom. Denizens of its Lovecraftian world would fly apart in showers of gore and dismembered limbs instead of slumping to the ground as one-sided sprites that twisted to match the player's viewpoint, only ever revealing one side of artwork.
More importantly to aspiring developers like Australian players John Cook, Ian Caughley, and Robin Walker—whose preternatural reflexes and astounding decision to aim with a mouse instead of keyboard keys made him the envy of his opponents—Quake would offer total access to the scripting language id Software's designers used to make the game tick.
At the outset, their plans were humble: assign Quake's default weapons to certain characters to put a spin on conventional deathmatch, group them into teams, and play ordinary deathmatch. They called their mod Team Fortress. Almost by accident, the three friends did more than switch up the game's elements. They made something new—and arguably more ambitious than id Software's 3D masterpiece.
Any Town, Australia
While Doom opened the floodgates to user-created hacks known as mods, Quake and QuakeC promised to take custom maps and game modes to the next level. An old-school hacker and programmer, Carmack practiced the credo that information should be shared. Pro developers could license Quake's engine to build commercial-quality titles, and thanks to QuakeC, even kids like Cook and Walker could dabble in game design by changing the way Quake played. But before Quake, before Doom, and long before id, there was the BBC Micro, pen-and-paper games, and a small town where two boys grew up dreaming big dreams.
ROBIN WALKER [co-creator of Team Fortress, programmer/designer at Valve, 1998-]
For perspective, John and I met when we were five or six years old.
JOHN COOK [co-creator of Team Fortress, programmer at Valve 1998-2016, founder of Sodium, 2016-]
We went to the same elementary school, and our fathers played guitar together. There would be these guitar jams where you'd have 10 people from around the town getting together and playing away. They were at Robin's dad's house.
ROBIN WALKER
We grew up in the same town of 800 people. We went to primary school, high school, and college together.
JOHN COOK
He had a house out in the woods. It was a house they built themselves, so basically a log cabin out in the woods. It was a fun place. I'm pretty sure I was around three years old when I went over to Robin's house for one of those. He would have been four or five then.
ROBIN WALKER
Then when we got to Valve, we immediately moved to opposite ends of the company. We're like, 'This is great, but you need to get away from me.' It was a mutually agreed upon separation.
JOHN COOK
When we were in elementary school, which was right near my house in this small town, he wouldn't get picked up until an hour and a half after school let out. He would just play in the yard at the school by himself, or with one of his siblings. Since I lived just down the street, I would come and play with him.
ROBIN WALKER
I had a BBC [Micro] computer growing up, and you basically couldn't buy BBC games in Australia, but you could write code. All the games I had were ones I'd typed in from the backs of computing magazines, so most of the games I played as a kid, I had the code for.
JOHN COOK
Both Robin and I, and our friends, were all very interested in board games, card games, and roleplaying games. We would make card games ourselves, and make our own board games. We played a lot of stuff like Talisman. When computers came around, we had some games, but we wanted to make our own games. There wasn't really a lot of knowledge about computers, though, in this era and in this place. Luckily Robin's father was a programmer for IBM. Without him, I wouldn't have actually known that computer science existed.
ROBIN WALKER
My dad was a computer programmer, so we'd immediately start hacking around with stuff even back then. My brother and I made a Miner 2049er clone with eight levels. When we finished it, we started making more levels because we had all the code there, and levels were just a bunch of raw data sitting at the end of the code.
JOHN COOK
From age 13, I decided I wanted to make video games. I thought, I should go to school, learn how to program, work as a programmer for a few years until I know enough stuff, and then get a job making games. That was my original plan. The point was always to make games.
ROBIN WALKER
The most fun part of programming, to me, is the problem-solving of it. I've always enjoyed writing code irrespective of what the code is supposed to do. I've enjoyed working on databases as much as I've enjoyed working on Team Fortress.
JOHN COOK
In junior high, I did a play-by-mail game. You had a sheet for strategy or roleplaying, like, 'Here's your character and the situation. What do you want to do?' We'd fill out a bunch of options and mail it back. They would process a turn, and you would get post mail back with the next steps on it. And it would be multiplayer, so sometimes you'd have lots of people posting things. I could never actually play them because they were all in the states.
ROBIN WALKER
Whatever code needs to be written, I've enjoyed it, which has served me very well. It's made it so I can enjoy myself while working on any part of [development].
JOHN COOK
I made my own that I played at the school. I started out by having a strategy game, which I'd modeled on a white board in my bedroom. People would submit their turns. I'd take [their letters], and I would process them and then give them letters the next day.
When computers came around, I realized I could automate that stuff. I wrote a program to do it. While I was entering these play-by-mail [answers] into the program, I thought, Oh, I could just have people play the computer version instead. I realized I could make it a multi-terminal program, so I did that. It was early days.
Party Scene
Walker and Cook's passion for games and programming computers led them down the same path, at least at first. They graduated from the same high school and enrolled at the same Australian university, intending to write software for a living. Shortly after entering college, their daily schedules diverged, but their nighttime routine became a fixture.
ROBIN WALKER
John and I were both doing computer science at RMIT, the Royal Melbourne Institute of Technology. It's a really fancy name, but it's a tech college. I couldn't deal with college very well.
JOHN COOK
I was a year behind Robin in college, and I was a lot better at it than he was. He was just not interested in showing up to classes at all, basically. He was six months into his [first] year, and he basically wasn't going, so he got a job.
ROBIN WALKER
John stayed in college, and I started working as a programmer full-time at NEC, working on embedded systems. By day, he'd go to college and I'd go write code that ran on remote power stations in Australia and Tasmania.
JOHN COOK
I was finishing my year, but by the end of that year, we'd made Team Fortress. The next year I actually deferred university for a year so that we could work on Team Fortress. I ended up never going back to university.
IAN CAUGHLEY [co-creator, Team Fortress]
I was a friend of Robin's brother, James, at university, and we met through him. When James went off to Singapore, I spent more time hanging out with Robin. We were having lots of LAN days as well as running gaming competitions at a local Internet cafe. John, I met through Robin.
ROBIN WALKER
Ian was a friend of my brother's, so he was a good friend of ours. He came to LAN parties a bunch and participated [in Team Fortress] on a design level. At night, we had modems and we played Quake deathmatch online on one of the seven or eight servers in all of Australia.
JOHN COOK
We were very active in the Quake clan scene. We played competitively and traveled around to tournaments. We also had friends we'd met in IRC as well. The Quake community was a big part of [the attraction to the game].
We just played in Australia. The farthest we went was from Melbourne to Brisbane for a tournament. That was a 20-hour drive. Two of us drove the car, which was stacked with computers. The other four people took the bus. I was one of the few people who had a driver's license, so I had to do the driving. That was fun.
ROBIN WALKER
I have very fond memories of that time because everyone sort of knew each other. The total population of Quake players was probably sub-100, so you knew everyone. It didn't really matter what server you ended up on, because there'd be people on there you knew.
JOHN COOK
We did well. Robin probably didn't tell you, but he was the best Quake player in Australia for several years. He's too modest. There wasn't a final tournament that he decided everything, but he was definitely great.
ROBIN WALKER
I remember, in those early days, being one of the only people who used the mouse, so playing on Ziggurat Vertigo was awesome. It was an exercise in cruelty.
JOHN COOK
He would have been using the mouse in Doom first. By the time Quake came around, it was all mouse [and keyboard].
ROBIN WALKER
There was a group of us who had LAN parties regularly. I can't remember if it was every week or every two weeks, somewhere around there. Technically I'd dropped out of college at this point. I was working as a programmer, and I shared a flat with John.
IAN CAUGHLEY
Robin's parents had a flat in Melbourne where the kids got to live. After James left, Robin was living there with his sister Jane. The flat became the hub of much gaming. I was involved from the start, I think.
JOHN COOK
The Internet really wasn't that good for multiplayer games at the time. We just had dial-up, so it was too slow for Doom and Quake being popular, and Diablo was the other [popular] one.
ROBIN WALKER
Every weekend or thereabouts, we would have regular LAN parties at our house. Everyone would lug their computers over at that time, and we alternated between playing Quake Test and Duke 3D. This was the height of LAN parties, at least in my life.
JOHN COOK
Next thing you know, you've got 14 people in a two-bedroom flat with their big computers and their big CRT monitors stashed all around. People underneath the table, other people on top of the table, that kind of thing.
ROBIN WALKER
We liked Duke 3D a bunch: its versatility, its combat, its deathmatch. The primary reason we mixed it in with Quake Test instead of just playing Quake Test was because while Quake was full 3D, which was much more interesting, Duke had a much broader set of weaponry: trip mines, pipe bombs, and so on that were really fun.
IAN CAUGHLEY
I remember when the demos of Quake first came out, none of us had the hardware to run it properly. We were all huddled around a machine playing it at like 320x200 pixels in the middle of the screen.
JOHN COOK
We had a cyber cafe just down the road from us. We met people through that. It was an early Internet cafe. We played games there, and we ended up helping the owner run tournaments for video games. He wasn't getting enough traffic from people just [using the Internet], so we showed him how to install Quake and got people around to play there as well.
Walker's, Cook's, and Caughley's mutual interest in Quake went deeper than its brown, polygonal surface. They took a keen interest in id Software's semi-regular updates about the game's design and technology. The fact that players would be given access to QuakeC, a customized programming/scripting language with which to design modifications for the game, was an even more exciting prospect than Quake itself.
IAN CAUGHLEY
We had gotten a bit bored with all in deathmatch and started playing team-versus-team in whatever we were playing. I can't recall if the games supported it, or we found some way to mod differently colored player models.
But it wasn't really till Quake came out as the most moddable game to date, thanks to QuakeC, that we saw the potential to make the team-versus-team game we wanted to play.
ROBIN WALKER
These days I think we would think of [creating mods for] those games more like content editing. Quake was the first game to say, all right, here's all the game rules. They gave you access to everything. You didn't have the engine, but you had all the rules for the game at the fingertips and you could go in and change them all.
We were programmers, so as soon as someone said, 'We're going to write a scripting system so you can write code,' that seemed instantly far more powerful, and it was, compared to what you could do with Doom and Duke.
JOHN COOK
The foresight of John Carmack was to do two particular things: the client-server architecture of the game, which made it easy for people to have a large-scale game that's server authoritative; and his adding of the QuakeC modding system.
ROBIN WALKER
We'd done some Doom modding and had built Doom maps, and I'd messed around with the way you could sort of hack game rules together. We'd build our own deathmatch mods that were fun and ridiculous. We kept talking about what we would do with Quake when they released Quake C, because we were pretty excited about that.
JOHN COOK
Not only did we like Quake, but it was clearly [inviting users] to work with it. Without QuakeC modding platform that was created, we would not have made Team Fortress. The idea of mods didn't exist before that, really. Not in a product-like fashion. That was huge.
ROBIN WALKER
Literally the day they released Quake C, we started on TF. We were waiting. We'd already started by taking Quake Test weapons and dividing them up into classes, all that sort of stuff. John came over and started writing TF, just hacking away with Quake C.
Class Warfare
Cook, Walker, and Caughley didn't crack open Quake's ribcage and dig into its guts without a game plan. Before the game and its toolset were released, they discussed design ideas and jotted them down on a Blizzard Entertainment-branded notepad that Walker had pulled out of his Diablo II Collector's Edition box. Those scribbles, combined with inspiration gleaned from the games they played at LAN parties, impelled them to go outside their wheelhouse and design a team-oriented shooter.
ROBIN WALKER
Five minutes down the road there was another group of people, and we'd go down and have LAN parties at their house. They were primarily Doom players, and they'd play this Doom map called Fortress. It was a really neat, 2v2 map.
JOHN COOK
We were super impressed by the extra layer of strategy that the game added. It's hard to remember how basic FPSes were back then in terms of the gameplay options that were available.
ROBIN WALKER
You spawned inside a room and chose to drop down into the real map by falling into one of two or three different holes, and in each hole there was a different loadout of weapons. Rocket launcher, versus a plasma gun, and other stuff [in the third hole].
JOHN COOK
The enemy had a base, and your team had a base. You had to run up into their base and press a button. That would unlock the next area of their base. In the first areas of each base, you had basic weapons: the double-barreled shotgun. But once you unlocked the next area of their base, then they would have access to the rocket launcher and a couple other weapons.
Then you would go and you'd have to fight them [when they had] better weapons, trying to get to the third part of their base and unlock it, which would have more weapons—the plasma rifle, specifically, being the best one. Then you'd have to get all the way through the third [section] and hit a button, and you'd win a map.
ROBIN WALKER
It was a super rudimentary way of making a choice about loadout, but we played a lot of that and really liked it.
JOHN COOK
So, the whole time you're balancing offense versus defense, who stays back [to guard the base] and who goes out. There's also a nice progression ramp. It's like, okay, it's getting harder and harder to get through because [progressing] powers them up.
ROBIN WALKER
We named Team Fortress as a nod to that map. I think the main thing we took from it was, hey, classes seem like an interesting thing to focus on. I tried to find the map years later. I've talked publicly about this in the past and have always hoped that someone might ping us and say, 'Hey, I made that!' It's never happened.
JOHN COOK
Doom didn't really support [enough customization] for the gameplay to work exactly how they intended. You'd press the last button, and nothing would happen. You could also go into their base and get their [better] weapons, but the agreement was, 'No, don't do that. These are the rules of the game.'
It was a map that really could only work on LAN play, and Doom didn't work well on the Internet anyway. But you had to know the rules and [communicate with other players] because the game didn't enforce the rules.
ROBIN WALKER
We made plenty of Doom maps and none of ours were interesting in any way, but then we played that, and it was like, hey, here's someone subverting [the norm]. It's like, well, I can't show a menu to players, so how do I do handle selection? Handle it from a level-design perspective: We'll partition it into spaces. That stuff was cool.
JOHN COOK
We did make a version of the fortress map for Duke Nukem 3D, though. We fell in love with Duke Nukem for a little bit. It was really fun, but it just didn't have the modding capabilities that Quake did, so we went back to Quake.
ROBIN WALKER
Team Fortress is literally a team-based version of the [Doom] Fortress map. Probably 10 or 15 years ago, I spent a bunch of time looking for the Doom Fortress guy. I never found him. It opened my eyes to good design.
[Author's note: On December 11, 2017, one week after Rocket Jump was published, I finally tracked down the Doom Fortress map that inspired Walker, Caughley, and Cook. You can download it here.]
In the beginning, plans for Team Fortress were modest. Over hours of programming and informal play tests with friends, the scope of the game grew organically into what Walker would later describe as an "obvious" conglomerate of mechanics.
ROBIN WALKER
The first couple of versions of Team Fortress didn't have teams. It was pure deathmatch.
IAN CAUGHLEY
The weapons of the first classes were all based on existing Quake weapons. We just tweaked them to adjust damage.
JOHN COOK
We made someone who had a rocket launcher, because the rocket launcher in Quake was awesome. We made the Scout, the Sniper, the Heavy Weapons Guy.
ROBIN WALKER
A lot of stuff in TF didn't come from game design. The Heavy Weapons Guy and his assault cannon came from Predator. It was an amazing movie; we loved it.
JOHN COOK
I think we knew we wanted to work up to some sort of challenge. At first, all of the characters looked the same, which was sort of confusion. Basically, we just sort of split up the Quake weapons amongst [the classes].
ROBIN WALKER
I think there were five at the time. We had a fairly standard, what I would think of as a fairly obvious set of initial classes. We started with a fast-moving class to the opposite end, a heavy, slow-moving class, and divided Quake's existing weapons amongst them.
JOHN COOK
We did the thought experiment to learn how to apply the fortress, but decided not to do it. We decided to do it later. That's always the way you decide not to do things: You decide to do them later.
ROBIN WALKER
We played a lot of Dungeons & Dragons like everyone else, so we thought [character] classes made a lot of sense. We also had a bunch of different people at our LAN parties, too.
JOHN COOK
We played Hexen a lot at our earlier LAN parties, and one of the things we would do was make levels for it. You could make levels so quickly that you could make them while people were playing the game. We'd have two groups of three go through levels and see how quickly they could get through them. We'd time them so it was competitive. We really liked how the classes interacted with each other.
IAN CAUGHLEY
At the same time as playing lots of multiplayer FPS, we were also playing other [genres] such as RPG and RTS. In these games you often controlled a team of characters with different skill sets, and we wanted this in our team-versus-team FPS. I remember Syndicate being a particular influence.
These games also had your typical rock-paper-scissors mechanics and taught us that each class would need both strengths and weakness as well as easy kills and nemeses.
ROBIN WALKER
We had a very broad spectrum of [players with different] skills. There were some people who were not really hardcore gamers at all, but who wanted to come home to LAN parties and play. Classes seemed an obvious thing for us to do as a way to make sure everyone was having fun.
Relying on suggestions and comments from friends as well as stories from other realms of pop culture, Team Fortress grew to incorporate more complex weapons that had transformative effects on moment-to-moment gameplay.
ROBIN WALKER
The strange thing was we were hardcore deathmatch [players], too. When we were at those parties, all John and I played was one-on-one deathmatch. We played as competitively, and in tournaments, as you could in those days. It always struck me as sort of incongruous that what we played was so different from what we worked on. We played TF when people were there, but at nights we'd play deathmatch.
JOHN COOK
The order that the classes are listed in the menu is the order in which they were built, to give you an idea of when things came on. We released five classes originally.
ROBIN WALKER
Between deathmatch and TF, one was easier to play because you only needed two people. The player counts were low in those early days. That was a material factor. In a lot of our LAN games, if we didn't have enough people, we couldn't really get a fun game of TF going. But if there were only three or four of us, we could always have fun deathmatches.
JOHN COOK
There was a lot of stuff that was emergent, like being able to blow yourself across the map with a concussion grenade.
ROBIN WALKER
There was definitely class impact. The Soldier was absolutely the class made for anyone who wanted to do deathmatch. We kept the rocket launcher and core gameplay. When I look at that stuff, my takeaway is that there wasn't any effort spent on trying to build good team mechanics into those early classes. We were influenced a lot by our [habits].
IAN CAUGHLEY
Since we had lots of people during the LAN days, we had lots of play styles represented. We also listened to the feedback from players. For example, the Pyro was added after QuakeWorld came out to help out players with slow network connections.
JOHN COOK
Originally it was, you throw the concussion grenade and it knocks people away, isn't that cool? There were customers who thought, I'm going to throw the grenade at my feet and shoot myself across the map. That became this key part of all clan play in the Quake version of Team Fortress.
ROBIN WALKER
I think the Pyro largely grew out of a mod done by another guy, whose name I can't remember. That feels terribly unfair to him. The early Quake-mod days were like that. There was a lot of sharing of mods and techniques, things like that.
IAN CAUGHLEY
As you can imagine, when you consider the slight time delays involved with the server telling a game where the enemy is, followed by the game telling the server that the player fired in a certain direction, it becomes quite difficult for the server to calculate if a weapon hit its target. This is compounded by the server not being able to trust the game, since a cheater could be playing with a modified game designed to make weapons always hit.
The Pyro's main weapon, the flame thrower, did not need to be targeted accurately. Instead of looking along a line to see if the weapon hit, we looked in an invisible box in front of the player, as if that area was filled with flames, because it was. If the weapon hit its target, they would be lit on fire, causing damage over time so, once you hit your target, you didn't need to keep hitting them.
Couple this with the fact that faster units would typically have less health, and a pyro could be quite an annoyance—deadly—in a confined space. On the downside, they had no range, so were almost useless out in the open, though the flames could be used to make it a bit harder to see where your head was—always a good thing when there are snipers about.
JOHN COOK
The most frustrating class was definitely the Pyro. There were a lot of things we wanted to do, like set whole areas on fire. We got that working, but the performance was bad. Having 20 flame sprites on the screen started to slow things down.
Plus, it turned out that area denial is not that fun in FPS games. Running through areas is fun, but having a grenade that sets a whole area on fire for half a minute is not a good gameplay idea.
ROBIN WALKER
It was a bit of a game in and of itself: Trying to figure out how to get Quake to do something was fun. If you managed to figure it out, you wanted to tell everyone. I think that's why you see things like grappling hooks showing up everywhere. It was such a neat that to even be able to get Quake to do that. I think everyone wanted to try it.
JOHN COOK
The Sniper was the class we had the most fun making, mainly because it was fairly straightforward to implement. You aimed and shot forward using the mouse. We wondered, 'How do we get the charging mechanic right for powering up? How do we make it slow to shoot but still rewarding when you get head shots?'
We played a lot of matches of just us playing Snipers against each other. We did try a few [implementations], and that one sort of balanced the difficulty of shooting and feeling like you really accomplished something when you shot someone.
ROBIN WALKER
We were a group of people who got together a lot or LANs, and you could yell out to each other. I think the clarity of design we reached years later, when fundamentally we had a design for 32 people who don't know each other—and who probably won't know each other again after this game—and they're all going to have their own individual goals, and a small view of everything going on—our goal was to make it so that as they all individually and locally optimize for their experience, optimization at the team level falls out of that.
They could look left, look right, and see teammates doing some stuff and go, 'Man, we're working well as a team,' even though we started with the base assumption that they were all ignoring everyone else, because it turns out that's the way most players work.
JOHN COOK
Really, a lot of the time spent making Team Fortress was spent working out, what are the capabilities of QuakeC? What are the extents of this game engine? What can we take advantage of to do more gameplay? You can't just do anything. You have to understand limitations and work with them to make the best game we could.
ROBIN WALKER
I feel like we had a shallow understanding of teamwork and so did obvious stuff. There's a combat medic: A medic is an obvious [class] to build if you're trying to have people care about each other. But this is the core problem of multiplayer game design: You're trying to get a bunch of people to work together as a team, but they want someone else to play Medic; they want someone else to [defend the base].
The Demolition Man had a tool we used in a bunch of maps that let him alter the map. He had a big bomb, he could go put it [somewhere], if it blew up before the enemy stopped it, it would destroy a wall and his team could get through. We didn't keep that concept in TF2 because we kept finding that it was a perfect example of everyone wanting someone else on the team to do that.
JOHN COOK
A lot of decisions, like how concussion grenades, were based around us asking: What can we get Quake to do? What are its capabilities as a modding platform? I ended up writing a pre-compiler for it just to, okay, we want to make this thing; how do we do it?
ROBIN WALKER
At a design level, you were constantly torn between providing enough value to that [type of scenario] so that when someone does it, the team is rewarded and happy, but not such that everyone feels like, 'We're screwed if someone doesn't do it, but I don't want to do it, so I'm going to jump into Demoman, do it, then flip back to the class I actually want to play.' We didn't like making players make that kind of choice.
JOHN COOK
We could take a small amount of code and have the pre-compiler generate a large amount of code so we can deal with all these limitations of the system.QuakeC didn't have a lot of conditionals. You couldn't concatenate strings together. I had to make a system that was, okay, I want to concatenate things, so really, I need a giant if-else statement which handles all the different ways these four strings can be concatenated so we can share a status bar at the bottom of the screen. It was limiting, but it was still awesome.
ROBIN WALKER
At a design level, you can create choices for players that are not really choices. They're more like induced friction or punishment. It didn't seem like a good long-term strategy. I think the Medic is a good example of that. TF's Medic is not really a fun role. We made him a thing that needed to exist if teams wanted to be competitive by making him powerful, but that's not really a good solution.
JOHN COOK
The Medic seemed very simple to build initially: Just add a healing pack and you are done, right? But getting him fun to play and actually heal other players required constant tweaking and we didn’t really get him good until TF2.
ROBIN WALKER
We had a much better solution [for the Medic] in TF2. I'm sure it's far from perfect, but at least we understood that the right way to treat this class was to make it the single most important person on the battlefield for specific points in time, and make him be the way teams can break stalemates. I think that was a lot more successful.
JOHN COOK
It certainly was pretty crude. We just printed a bunch of text to the screen, and made the person hit a number that corresponded to the [option] on the screen that they wanted. If you wanted to make a menu with a bunch of transitions, that was never going to happen. if you wanted to just print out some text, you could.
ROBIN WALKER
A lot of the things we were dealing with [were new problems]. You couldn't add any data to a Quake entity, so every entity had the exact same data. The player has a variable for the amount of nails ammo they've got; that means every other entity has that variable as well. But you couldn't add variables, so what you'd end up doing is [repurposing data].
JOHN COOK
If you wanted to tell someone they were on fire, you just printed a message to the screen: 'You are on fire.' That's literally what we did.
ROBIN WALKER
So, on a flag, item 'nails' is a piece of data that will store a data that means a completely different thing: the skin that should be shown when it's dropped by a red team member.
JOHN COOK
There were things that seemed like a limitation, like saying 'You are on fire' and flashing that on the screen instead of showing flames. People just thought that was funny. The low fidelity was consistent enough that that was just how the product was. People accepted it. They found the [humor] in it.
ROBIN WALKER
The code was such a mess because there's all that kind of stuff where you're stuffing things that mean [something different] into pre-existing variables, and the variable names are all misleading.
When the going got tough, Cook and Walker took comfort in the fact that they weren't the only ones trying to flip the script on Quake. A burgeoning community of amateur developers was hacking the game and pollinating email lists and Internet forums with their results.
ROBIN WALKER
Quake C was a puzzle in two parts. One part was the standard coding to get what you wanted. The other part was: I want to do this specific thing, and at face value there's no way Quake will allow me to do this, but maybe there's some way I can make it. Sometimes you'd come up with solutions where you'd completely misuse something from the way it was intended just to get what you wanted. Every now and again we'd get something to work that we didn't think we'd ever be able to get to work. It was a puzzle in that sense. I really enjoyed that. It was really fun.
JOHN COOK
The nailgun is one of the guns we brought over from Quake to give to the Scout. We wondered why people always switched over from it to the base shotgun. Does it not do enough damage? Well, it does good damage, but you have to [land a lot of hits], and the nails are slow.
ROBIN WALKER
We were doing that sort of stuff, but at that time, everyone was doing that sort of stuff. The Quake C mailing list was full of people saying, 'Oh, wow, I just realized that if you do this and this, you can do this!' It was a global effort, which was one of the fun things about it. Steve Bond and John Guthrie at that time, at Quake Command, were doing all sorts of bizarre stuff. They weren't making mods so much as they did short-form experiences. The Quake Rally guys were turning the whole damn thing into a vehicle-based game.
JOHN COOK
If you have a LAN party where a bunch of people come over, you play the game and see what's fun, and make it better.
ROBIN WALKER
Once you saw that someone had done something, it was just as much fun pulling it apart [as building mods of your own]. The grappling hook is a good example. I can't remember who built the first grappling hook. I think it pre-dated CTF, but I can't remember. But once you saw it was possible, you wanted to learn how to do it. That was really fun.
2 forts
Team Fortress. Team Fortress Classic. Team Fortress 2. No matter which version players tried first, no matter which class they favor, no matter the art or gameplay styles they prefer, the words "Team Fortress" call to mind a vivid scene: Red and blue teams fighting to defend their flag and capture the opposing team's. For most players, this scene plays out a map that's been synonymous with Team Fortress players as well as its developers since 1996.
ROBIN WALKER
At some point, we shipped our first map. I want to say that was the third release, but I'm not super sure.
JOHN COOK
We couldn't really work out how to get the fortress mode working in a more generic environment. It was kind of what we wanted, but instead we went ahead and did capture the flag because we understood it. I started making a map for that, which was 2fort.
IAN CAUGHLEY
It's amazing how well this map did considering it was one of our earliest. I think a lot of its design came from John. He did a great job of making different parts of the map suit different classes and allowed for many different strategies.
ROBIN WALKER
CTF and 2fort had such a symbiotic relationship for the longest time. We really only had one map for some period of time; we were simultaneously making the game using the map, and making the map.
JOHN COOK
2fort was basically the map which Team Fortress was developed on from that point on. Every time we were playing it, we were playing on an updated version of 2fort.
IAN CAUGHLEY
It developed as we added more classes with the second version, making it even better with multiple ways to get everywhere.
ROBIN WALKER
Inevitably, each class had sort of a place to be on the map. You've got this case where the classes were molding themselves to fit the map, and the map was molding itself to fit the classes. In retrospect, it didn't surprise us that 2fort was the most popular map. It embodied Team Fortress's gameplay better than anything else.
JOHN COOK
All the classes were balanced around being fun on 2fort, the roles of the classes. The core gameplay evolved at the same time at that map, so it's not a surprise that it worked the best out of all the maps.
ROBIN WALKER
You end up with these relationships between classes and areas. The Sniper needs a place to be. Snipers want to be up above enemies, and have a place to retreat, so the battlements show up. Once the Engineer appears, you think, What's the Engineer's role in this? or Where would Soldiers hang out? You have all these places where classes end up in terms of 3D positions in the map, and we would iterate on those rooms just to make them more fun to be in as a Soldier, or an Engineer, [or other classes].
JOHN COOK
I don't know how we just decided that it was 2forts facing each other across a bridge. I don't know who builds forts like that in real life, and why it's a '2' instead of 'two.' That's just how it worked, but it worked out well.
Newer fans may be surprised to learn that 2fort was not packaged with Team Fortress right at its humble beginning. Likewise, the idea of fighting over sheets of cloth affixed to poles was a concept that arose shortly after Team Fortress's initial release. Cook and Walker weren't the only ones to take their design in that direction. David "Zoid" Kirsch, creator of the popular Threewave CTF mod, got there first, but players still debate over which implementation was more popular.
ROBIN WALKER
It was the third version when we added Team Fortress map goal support. We never specifically coded Capture the Flag into TF. This was before Threewave [CTF mod], if I recall. The only reason I remember that is because there was this fight online between various fans about who came up with flags first, like it was Quake that had invented flags.
The reason I point this out is because it wasn't clear that Capture the Flag was going to become [the de facto mode of play]. We wanted to build something that hopefully would support [the type of gameplay] people wanted to do.
JOHN COOK
Zoid [Threewave CTF creator David Kirsch] had contracted at id for a while, and that's when we talked with him. He was helping test the new version of Quake World. The new version broke Team Fortress, so he talked to us about that.
ROBIN WALKER
We thought that things like flags could be thought of generically. They could be an object, and the game rules could be encoded by the map maker into the object. Say, if the player touches this, it should be attached to the player; if the player carrying it dies, it should fall to the ground, or maybe it should return back to where it was, or return back to where it was after a certain amount of time—all that sort of stuff.
JOHN COOK
We thought of ourselves as in competition with Threewave. I think Zoid was a lot better at communicating to people. He was friends with all the big Quake sites, and [Threewave] CTF was held up as the most popular Quake mod. It wasn't. It was us. Team Fortress.
ROBIN WALKER
We wrote some code that started polling all the Quake servers in the world every 15 minutes or so, and left it running for a few weeks. It pulled off data that anyone could pull off a Quake server at that time. The data showed us that there were more people playing TF than Quake itself. More than anything else. That was a shock to us. That was something that caused us to believe we had some hope at doing it professionally.
JOHN COOK
It showed that there were around 2500 people playing Team Fortress, and only 1500 people playing [Threewave].
CTF is simple in concept: Each team defends their flag while waging assaults on the enemy base to steal theirs. For all its versatility, QuakeC made executing such a seemingly straightforward mode quite tricky.
ROBIN WALKER
No one really had a good way to teach anyone things inside of Quake; you could just put text on the screen. One of the positives of TF's map system was that level designers had a lot of power to control exactly how the game played out on their map. One of the negatives was that level designers had lots of power.
What that meant was you might play two maps that both call themselves CTF maps in TF, but they might have subtly different rules.
JOHN COOK
Robin pushed for this, to make it so people could do more with their maps. He spent a lot of time making a system so that the map makers could do a little bit of programming without all the setup and do more interesting things with the maps. That's how you ended up with maps like The Rock and other [gameplay] variants.
IAN CAUGHLEY
I would say about six months in, Robin decided to re-write the code behind the objectives. I think he did most of the design and implementation of this bit on his own, and what he came up with was pretty amazing. He effectively wrote a 4GL language that map builders could use to define map behaviour and objectives and opened up modability like never before.
Now map makers with little coding experience could build games, not just maps. Well, at least within the context of TF. This is when we saw so many more ways to play TF get developed. So many of the game modes that are seen today in FPS were created by map designers using Robin's toolkit.
ROBIN WALKER
If you touch the flag on this one after it falls, it's returned; on the other map, maybe it sits there for 30 seconds and you have to defend it [until it returns to your base]. That was entirely up to the map maker. We unified those decisions across the [CTF] maps we shipped as a way of promoting the rules we thought were best.
JOHN COOK
Robin tried to make a C&C map for Team Fortress. You would get stuff from the enemy base and take it back, and build up structures. These structures would rise out of the ground and power-up your weapons as you [upgraded them], but we hit the wall, technically, on what we could do. In terms of dynamic worlds, Quake wasn't suited to that.
ROBIN WALKER
In particular, I think one thing that confused lots of people who came from Threewave to TF was that in most TF maps, if the enemy dropped your flag somewhere and your team touched it, it didn't return to the starting point. It had a timer above it, and you had to [defend] it where it fell for 20 or 30 seconds; then it would return.
We liked that because it meant that instead of the only place you defend your flag being your starting point, we liked the fact that [defending a dropped flag] caused teams to suddenly have to spring up defense in another place.
Team Fortress didn't make its way online until late August of 1996. Once it did, feedback trickled and then flooded in from the mod's growing fan base. Weeks ahead of release, Cook and Walker availed themselves of a more immediate method of feedback.
ROBIN WALKER
At that point, we were having LAN parties, and we'd have games where someone would complain about X, and we'd immediately change X and start the server back up again.
JOHN COOK
We didn't spend tons of time coordinating what stuff we would add. We just went at it as we could, and trusted that we could fix it up on the weekend when we were playing it with other people.
IAN CAUGHLEY
Early on we were all contributing everything. Lots of coding, tweaking the 3D player models, new textures, map design. None of us had great artistic skills, so after the mod had a little initial success, we started getting more art contributions from the other people in the community. This made the game look much more awesome.
ROBIN WALKER
On any given Saturday or Sunday where we'd play for hours, we'd go through several versions of Team Fortress on that day and just keep changing things. Everyone sort of contributed to design ideas. In the later versions of Team Fortress, as they got bigger and bigger, John and I started alternating. On one update, one of us would do 75 percent of the coding and the other one would relax. I don't remember organizing it that way. We just fell into that [routine].
JOHN COOK
I was trying to finish school, get to my second year of classes. Sometimes it would just be: He did the capture-the-flag system, I did the pyro class. We'd sort of bounce back and forth that way, just taking a big piece.
ROBIN WALKER
At that time, I was like any 22-year-old: I thought I was right and that John was totally wrong, and that if he'd stop working on the game it'd turn out so much better. Now I can look back and realize that if not for him, I would have petered out much earlier. The game was better for having two of us with [preferences] for what should be in it.
IAN CAUGHLEY
Modding was such in its early days that the whole community was super interactive and supportive. The first gamers to download and play our game would have been other modders; we were all trying out each other's ideas.
JOHN COOK
Part of the issue was we didn't know anything about source control. I think we were forced not to work on the codebase at the same time because we didn't have a tool to share code.
ROBIN WALKER
There's the old military [proverb]: Strategy never survives contact with the enemy. I think you could adapt that to, 'Game design never survives contact with the player base.' We start shipping updates, players start playing it, and that changes everything. Feedback changes things, ideas change things.
Thanks to the advent of social media, blogs, YouTube, and indie publishing channels on platforms such as Steam, fans are able to follow nearly every step of a game's development leading up to its release. On August 24, 1996, the date of the initial Team Fortress release, Walker and Cook didn't think of themselves as developers. They had made a mod for a game, and they published it with all the fanfare they felt such an effort deserved.
JOHN COOK
At some point, we put it on cdrom.com. There was no official release.
ROBIN WALKER
The first release just contained Scout, Sniper, Soldier, Demoman, and Medic. We added some stuff that wasn't all Quake. The Medic had a medikit, and the Sniper had a sniper rifle. The rest of them, I'm pretty sure, just used Quake weapons.
JOHN COOK
There was ftp.cdrom.com. He had a directory on the FTP for Quake mods. We had downloaded Quake mods from there, and we were kind of done making Team Fortress with its five classes. We put it up there with a little readme file that said, 'Hey, we made this thing, check it out.'
ROBIN WALKER
We were subscribed to all the Quake C mailing lists, but we didn't really say much. We hadn't really entertained the idea of releasing it. It was written for our LAN parties, so we had a group of Quake players who showed up every couple of weeks and we'd just play it. Those were our core customers and play testers for quite a while.
JOHN COOK
We kind of forgot about it until people emailed us and said, 'This is pretty fun. Are you going to do any updates?' We said, 'Oh, sure. If people like it.'
ROBIN WALKER
The initial Team Fortress, at least for the first few versions, you played on Quake deathmatch maps. There weren't flags or anything because there weren't maps built with the idea of [CTF] in mind.
JOHN COOK
It was more that we found [ftp.cdrom.com] useful because we were doing our own mods, so we would give back to the community. We put new versions up and mailed the people who had written us [to let them know]. We got some more play-time in, and more people kept mailing us to the point where we built a website for it and hosted it off the university. It was a very organic process.
ROBIN WALKER
I think our allergy to self-promotion was true, even back then, and I think it absolutely hurt the rate at which the game was adopted. Something about the two of us even then, we just really didn't like the idea of promoting what we did.
JOHN COOK
You downloaded maps separately. We thought about how Quake had this ecosystem of mods coming online. We thought about maps in the same way. We wanted it to be that people would find good maps, instead of ours shutting down other people from making and playing other maps.
IAN CAUGHLEY
I think the way Quake worked was that you installed mods separately from how you chose your map. So, you could effectively play TF on any map, but only TF maps would link to our objective system. But we were very open about how to write a TF map, and collaborated with other map makers as much as we could.
I'm reasonably sure that once we had done the big objective code re-write, we didn't do much of our own map making from that point forward. Other map makers were better at it than us, and we were too busy playing their maps.
JOHN COOK
In hindsight, that was silly, but that was the idea: Here's the game, and you can get the maps separately. We put the maps up separately from the game, so it was almost an invitation for people to make their own maps.
At first, Cook and Walker were as bemused by the attention as they were delighted. Learning how to promote their efforts proved more difficult for them than building the mod.
ROBIN WALKER
We pretty quickly started focusing on what people were saying online, what they wanted. But we still weren't thinking of ourselves as [professionals]. If you'd asked us then, 'Are you guys game developers?' or 'Do you work in the games industry?' we would have said no. That never even occurred to me.
JOHN COOK
I think we're still learning how to [self-promote]. We were proud of the product and thought it should speak for itself. We know now that doing that is doing an injustice to a product. If it's good, it's worth telling lots of people about, telling people why you're excited about it. It's just not quite in our nature. Even though you know it's worth telling people about, you also know it's a bunch of work for you, a bunch of socializing.
ROBIN WALKER
Even as a kid, playing Way of the Exploding Fist, which was a game that I just loved and played the hell out of--it would start up with a Melbourne House logo, and I never connected the dot that Melbourne House meant Melbourne, the city near me. The games industry to me seemed like it was in the UK, and to a lesser extent, the US. The UK dominated it. I had a BBC and a Commodore 64 later on, and everyone making games seemed to be all over Europe.
JOHN COOK
As more people kept contacting us, we got more interested in making it. Just knowing people are consuming your work and going and playing with it was pretty awesome.
ROBIN WALKER
In that period from 1996 to [2004 when Steam shipped], as a mod maker, your biggest problem was, fundamentally, distribution. You could make a really good game, but you didn't have a good way to get it to customers in a way where they could give you money in return. You could put it online and people could download it, but if you decided you wanted to sell it, there wasn't an opportunity for you. There was this narrow window we went through.
IAN CAUGHLEY
The guy who was writing the story for Kanon also produced the TF promo movie which I think was the first FPS promo to have classical music as its track instead of heavy metal. It was pretty awesome at the time, and I think influenced future music choices across the industry.
ROBIN WALKER
Once things like Steam appeared and you no longer needed a publisher to connect to a whole bunch of publishers... It wasn't just Steam. Really, the whole Internet just got to a point where a whole bunch of people were buying [products] through it. If we had done what we did four years later, we would never have gone to Valve, because I think we would have been far more convinced we could have done it ourselves. It all seems incredibly naive to me in retrospect.
John and I have talked since about how much we threaded the needle in life. That the path we followed didn't exist before Quake, and it was a path that ended not long afterwards.
IAN CAUGHLEY
We were having a lot of fun playing it, so I guess we weren't so surprised that people liked it. The wonderment was more around how fast the word of mouth could travel and how fast a TF community developed within the Quake one.
It was also very awesome that we could effectively develop our game iteratively. Companies do it all the time now with early access, but it was a new concept back then for games. I guess that's because games still came from ships, but mods came from the net, so in a way the free mod market back then was the pre-cursor to the modern online game markets.
Looking back now, I should be surprised how many people donated their time and artwork to the game, but like I said, there was lots of sharing within the modding communities.
JOHN COOK
At some point, some game developers started contacting us, including Activision. They said, 'We love your game. Let us know what you guys are doing next.' I think they assumed a level of professionalism that was not there. But that did make us think, oh, maybe there are some real opportunities here.
Platforms
Walker's and Cook's proficiency in game design and in wrangling QuakeC grew in parallel to the Quake community's enthusiasm for Team Fortress. With more experience came more ambitious character classes and styles of play.
JOHN COOK
By the time the Engineer was added, it was later in the cycle. We were a little more thoughtful about the product at that point.
ROBIN WALKER
The sentry gun came from a love of Aliens. Everyone loved aliens. They started as a concept: 'Oh, man, we've got to have that in the game.' But the Engineer, which we didn't get to until later, is a much more rounded concept than that.
JOHN COOK
We really wanted to make [a class] that was easier for a non-hardcore FPS player to play. Between that and a lot of playing Command & Conquer, we decided building structures would be a fun thing. From there we just tried a bunch of ideas, and the dispenser and sentry gun came up.
The Engineer was a lot of fun to make. The sentry turret felt like we were doing something that had never been done before in an FPS, and it had all these implications on map design and game balance beyond just adding a character with a new gun.
ROBIN WALKER
We understood that the Engineer was a class that should exist to draw in people who wanted to be in combat and have an impact, but didn't necessarily want to do it directly. Maybe they don't have the aiming skills they would like, or maybe they just want to spend more time thinking about which way enemies would be coming in, and where enemies would get to, and exploit that.
The sentry gun was a tool to serve game design problems we were interested in solving, which I don't think is how we started out. That's game design: Things you want to do come from all over the place.
JOHN COOK
Balancing got easier as it took off on the Internet because you could just go play with other people and see what they were doing, and make changes appropriately. Just because of the situation, we were very comfortable updating live, basically.
ROBIN WALKER
The Spy is a perfect example of [design ideas] coming from lots of different places. If I remember correctly, the Spy came from a bug. For a while, we had a bug that made players appear like they were on the other team. There's a chunk of code responsible for making sure you're the right color and the right skin, depending on the team and class you picked. At some point we had bugs where players would look like they were the wrong class or the wrong team.
Somewhere amidst all that, as we worked on fixing it, we thought, Hey, that might be an interesting idea for a class.
JOHN COOK
It was, 'Okay, we'll just do a big update, and some customers will like it and some won't.' We could take a lot of risks by just updating [the game].
ROBIN WALKER
We did an obvious set of things. The Spy should be able to look like any class. At that point we had target ID: When you mouse over a teammate, you get info about their name and health and so on; Spies needed to be able to fake all of that. The Spy was a nightmare to code. There are so many exceptions in the code that exist just for the Spy. There were a bunch of things we could do in TF that were kind of hard to do in Quake, the big one being that if you were a Spy on team red disguised as an enemy on team blue, then team blue players saw you as team blue, but team red players also saw you as on team blue.
That meant your own teammates saw you as an enemy. The number of times we'd see new players trying to kill a Spy only to be confused because, hey, this guy's not taking any damage, and how did this enemy get into our spawn area? We fought that as much as we could in Quake.
JOHN COOK
Eventually we did beta releases, but at the start, a lot of it was just, okay, let's make some logical guesses about gameplay changes and see what happens.
ROBIN WALKER
The Spy invented this whole other concept: Everywhere you've got a piece of code that says, 'Is the player I just shot, or bumped into, or am looking at, or whatever—is that player on my team? If so, do this. If not, do that. Or, is it on my team but disguised as being on the enemy team?' Those are exceptions you have to think about, and in some cases, code, because any of them could be a giveaway.
JOHN COOK
You play, and you watch other people play, and you see how they're actually using [items]. You have some creative process afterwards to take that data and turn it into something actionable. Like, okay, they're using it or not using it in certain situations: Why is that? You come up with a theory for that, and come up with an idea for a [solution]. You say, 'Okay, here's a more fun way to do the same thing.'
ROBIN WALKER
One of my favorite things with the Spy, which is one of the dumbest, simplest tricks, was running backwards. One of the mini-games we'd play in our one-on-one deathmatches was to run backwards. I don't know why. We played a lot of Quake, so we just tried everything. We'd do one-on-one deathmatches where you were only allowed to move backwards. You had to run past your [opponent] to be able to shoot at them, and then circle around them.
It was a strange way of playing, but fun. You'd play the map so well that you could get across lava jumps and [other obstacles] just by jumping backwards because you knew where everything was, you'd played it so damn much.
Over 1996, Team Fortress garnered more attention from players. The transition from tinkerer to developer happened so quickly that it took Cook's and Walker's mutual friend, Ian Caughley, to point it out, and to suggest taking the next big step.
ROBIN WALKER
Quake 2 was coming out, so the expectation was that Quake 1 was going to die, or was going to [lose support] in some way.
JOHN COOK
We had another friend at college who had just a little bit of money. He said, 'We should all start a company.' This was Ian; he was the third co-founder.
IAN CAUGHLEY
I was only part-time since I was completing my second degree. I was still coding and designing, helped a bunch on the promo. I was also doing a lot of managing of third parties that were providing art, sound and music. Also, importantly, I was paying the rent and buying the food.
ROBIN WALKER
Ian's super fun to work with and a smart guy, a good programmer. There wasn't any good reason that he didn't work on Team Fortress that much, other than that most of that work was happening at our flat where it was just John and me, so we could share code easily between the two of us. When we started working on TF for Quake 2, [Ian joined in].
JOHN COOK
Ian said, 'We should start a games company and make games because we have an opportunity.' We said, 'Yeah, sure, that sounds cool.'
IAN CAUGHLEY
It just felt like the natural progression. I don't think we delusions of making it big, but we thought we could make some good games people would pay for. We started working on our TF2 which would have much more map interaction and a setting more grounded in reality, and a game called Kanon which was to be a story driven team based co-op.
We also kept improving TF, supporting the map builders and adding better art, and put it out as 'donateware,' which made us tens of dollars.
ROBIN WALKER
I guess another factor was we did a donation drive, and a lot of people donated to us. The primary reason we did that was just because people kept telling us they wanted to donate. Just the fact that people wanted to do it, and then followed through and did it, made us also feel like, hey, maybe we should be doing more.
IAN CAUGHLEY
We had no idea how to monetise what we had. I can think of much better ideas now, and those at Valve giggle at those ideas as small-time.
ROBIN WALKER
In retrospect, looking back: Oh my god, we didn't know what the hell we were doing. We were so screwed. If Valve hadn't bought us out, I think we would have failed massively.
The roadmap for Team Fortress was simple: id was developing Quake 2, so the trio of Team Fortress Software would break ground on Team Fortress 2 tailor-made for the Quake 2 engine. Fans weren't the only ones interested in seeing what lay in store for the mod.
ROBIN WALKER
I don't have any recollection of us [receiving interest from] anyone in the Australian games industry. It was a big, successful place, I guess. I just managed to avoid it. It was strange.
I got interviewed by one of the main Australian newspapers a few years later. They ran with the only quote they got from me in the end, which was, 'We never heard from anyone in the Australian games industry.' They used it as a damning statement; I didn't mean in that way. It did seem like everything interesting was happening around Quake, first-person shooters, and online.
JOHN COOK
Scott Lynch reached out. He saw an opportunity for Half-life to be like Quake where it would be a good platform for mods and to build things. He had this idea that Team Fortress 2 could be a mod that was sold for both Quake 2 and for Half-life, because Half-life was supposed to come out around the same time as Quake 2, which it did not, obviously.
ROBIN WALKER
We got interest from a bunch of publishers who were interested in what we were planning to do next. We did some contract work for EA or Activision on some games. We built a version of Quake for arcades for a company. They wanted to build an arcade box that played Quake, and take it over to id to see if they could get id's blessing to manufacture them. We wrote software for them so you could play through Quake through a timed mode. We did a bunch of random pieces like that while working on the Quake 2 version of TF.
JOHN COOK
The Valve guys liked the idea of us coming in and co-working with them to educate them on what makes a good modding platform. What do mod makers need and look for in a game engine that makes it able to be modded extensively?
ROBIN WALKER
I think the main difference between them and everyone else who had talked to us--we'd by then sort of gotten used to publishers mailing us to say 'Hey, we're interested in doing X and Y,' and those turning into long email threads that never went anywhere--the difference was that within a few days, maybe overnight, us saying, 'Yeah, we're interested,' and Valve replying back to say, 'Okay, here are your plane tickets. Let's do this.'
Walker and Cook packed their bags and headed to Seattle to meet the powers that be at Valve. Although there was some buzz around Half-life, meeting with Gabe Newell and the folks at Valve was like being set up on a blind date.
ROBIN WALKER
At the time when Valve contacted us, no one knew anything about them. There was a small number of screenshots of Half-life. So, they were working on stuff, but no one really new anything about them at this point. We probably had more visibility to Ritual, who was working on Sin at the time, which looked much cooler [than Half-life]. There was more media out for it.
IAN CAUGHLEY
Everyone was very excited about Half-life coming out and knew Valve from the promos. Then they offered us free flights, free accommodation, and three seats for three months at Valve. It blew our little modder minds.
JOHN COOK
When we first came over, it was March of '98, so they were working on Half-life. We co-worked with them for three months.
ROBIN WALKER
Ian, John, and I sat in a room at Valve and worked on porting over Team Fortress. I think we showed up and said, 'Hey, we've been working on this thing we're calling Team Fortress 2 for Quake 2. Instead of porting Team Fortress, why don't we bring Team Fortress 2 over?'
I think they were happy with that, so we started working on Team Fortress 2—the first version. If you asked me to recap all the versions, I'd need to spend some serious time thinking.
IAN CAUGHLEY
Valve wanted the next thing we did, be it TF2 or something else, to be built on their engine, and they saw the best way to make that happen was to put us on the floor with the Half-life folks. We never felt like they wanted to influence what we were building, just how we were building it. They were a bit busy with their own game, and Valve was helping us with lots of connections, too. They introduced us to Sierra to look at publishing and to their lawyers so that Sierra didn't do us over.
JOHN COOK
The idea was we would work on Team Fortress 2 for Quake 2 and for Half-life. They'd interact with us, sort of see what was there.
IAN CAUGHLEY
It was an odd combination of fun loving and hard working. Everyone was super friendly and did lots of things together. Everybody spent a lot of time at the office, but there was some game playing, but mostly work. Lots of the people there were working for reduced wages and shares in company, so everyone was very success focused.
I remember when a box full StarCraft games turned up, it created a slight dip in productivity. Even though we were clearly only working at Valve, not for Valve, they were very open about everything they were doing.
Compared to more public industry figureheads like John Carmack and John Romero, Valve Software co-founder Gabe Newell was an enigma. He stepped out from behind his wizard's curtain to talk with Cook, Walker, and Caughley about the future of Team Fortress and games as a platform. The long-time friends did more than listen. They were mesmerized.
JOHN COOK
Gabe used to talk about eSports back then. He'd say, 'We want arenas of people cheering on people playing your game.' He was thinking so far ahead. It was dizzying in a lot of ways.
ROBIN WALKER
Gabe is like that. The world will never, sadly, be able to fully understand him. For years I just sort of assumed that all CEOs, people who had managed to achieve the things he's managed to achieve, were lucky.
JOHN COOK
He was certainly intimidating to work with. What of his first questions to us, during the first lunch we were having after flying in from Australia, was, 'So, tell me what's fun about team play?' We just looked stunned at each other. The notion of breaking down elements like that hadn't occurred to us yet. I probably still couldn't tell you what's fun about team play. So, he was challenging, but he understood the future.
ROBIN WALKER
I've since met many CEOs, very big people in terms of what they've achieved, but Gabe remains a really interesting fellow.
JOHN COOK
Valve basically was taking advantage of Quake's modding ecosystem to hire people. They were looking for anyone who had made anything interesting with Quake, and with other games, but Quake was certainly a focus. They were one of the earliest companies to look on the Internet for people doing interesting things, and try to hire them.
Gabe, specifically, had a lot of admiration for Carmack had made it so other people could add value to his game. That was something he wanted to capture himself. Gabe worked at Microsoft, and he'd worked on Windows for a long time. All the thinking over there was about platforms. You're making a platform that lets developers quickly add value to customers, and lets customers communicate back to developers. That's what he wanted games to be.
ROBIN WALKER
He's an intellectual force. There's no one quite like him. I love working with him for that reason. He's a pretty amazing guy.
JOHN COOK
We didn't have the high-level thought of, Maybe we'll end up working here. We were way too naive to think of that. But the entire time we were there, they were actually interviewing us pretty heavily. I look back and realize, 'That was actually an interview question this person was asking me.'
IAN CAUGHLEY
At the end of the day, I suspect it was a three-month job interview; we just didn't know it.
Once it dawned on Walker, Caughley, and Cook that they had been going through an extended interview process, the next step seemed logical.
IAN CAUGHLEY
Valve was being very smart, in my humble opinion, and using the modding community as a way to find people who were thinking outside the box, were self-driven and had skills. They were offering jobs to many of the top names in the scene.
It was a bit unfortunate for them that we had incorporated. They could have just offered us jobs, but I think they wanted to do right by us, and didn't want to just discard the work we had done. They basically gave us back pay to when we started the business and we gave them the rights to TF.
ROBIN WALKER
About a month and a half into that, they said, 'We've watched you guys work. We're interested in just buying you guys out if you're up for it, and you would stay here.' We took them up on their offer, obviously.
IAN CAUGHLEY
It came completely out of the blue to us. We had been talking to a lawyer one week earlier when they asked if we had plans to sell the business. The idea had never occurred to us that we be planning to sell, or that anyone would want to buy it.
JOHN COOK
Gabe called us all into his office and said, 'We like working with you guys, and it seems like you like working with us. We should make this a permanent deal. What do you think?' I thought, Fuck yeah. Yes.
ROBIN WALKER
In retrospect, based on everything I've done since, whenever we say, 'Hey, come work at Valve for a little while,' we're asking you to do that because we think seeing you work is the single best way to find out if we want to hire you.
JOHN COOK
It was good, too, because we had no idea what we were doing with our game company. It's very different experience when you're saying, 'We're going to build this and make money.' There's a lot more to think about [when you run a company] than just, 'I'm going to make the game better and see if people like it.'
ROBIN WALKER
I've never worked anywhere else besides NEC, my company [TF Software], and Valve, so it's hard for me to speak to the rest of the games industry. Valve was a concentrate of the smartest bunch of people I'd ever met in my life. I remember having a couple of thoughts.
One, I didn't realize people could be that smart. That's sort of a goofy thing to say, I guess, but I'd never met people who seemed to be so good at thinking through the problems they're working on. And not just one or two people, but sitting in a room where there was a whole group of them. I learned more in that first month or so at Valve than I had in years prior.
JOHN COOK
I was struck because I'd never met people that smart before. I didn't even know people that smart existed in the world. I was just blown away. I was always the best programmer in the vicinity all the time.
ROBIN WALKER
My first several years at Valve were ones where I got addicted to self-improvement. I met people who made me want to be better. I'd never had such a strong desire to get better at something, because I guess I'd never realized what I could aspire to. That was the truth of it. I'd never met a group of people who made me want to get better.
For years, I got addicted to be able to look back to a year earlier and say, 'Holy crap, I was an idiot. I didn't realize how much I didn't know.' I tried to drain as much knowledge out of these people as I possibly could.
JOHN COOK
Suddenly, here are these people at a whole new level. I must continue to work with these people and learn from them, because this is like nothing I've ever experienced before.
Like his friends, Caughley was having a blast at Valve, but turned down Valve's offer. As much as he enjoyed working on Team Fortress, his path in software development amicably diverged.
IAN CAUGHLEY
I had a girl and a city that I loved and wanted to come home to. I was also felt like everyone there was amazing, and I wasn't quite amazing enough. They didn't make me feel that way; it was just me.
They were nice enough to print Caughley the tool down the side of the Engineer's spanner in TF Classic, both imortalising me into the game, and [good-humoredly] letting me know what they thought of my decision to not stay.
Walker and Cook became full-time developers at Valve Software in early 1998, roughly eight months before Half-life was due to ship out to stores. Both developers jumped in with both feet, helping tidy up loose ends on Valve's to-do list. Once the game was more or less complete, they turned their attention to revamping Team Fortress in the form of Team Fortress Classic, a version customized for Half-life's more robust engine and feature set.
JOHN COOK
After Half-life shipped, we spent some time thinking about what was next. Really, we were thinking about how to make the Half-life SDK as good as possible. One of the things we realized was, if there's not enough people playing the game multiplayer, Half-life is not going to be a good platform to make mods on.
ROBIN WALKER
We, along with other people at Valve, helped build their SDK. We did the work, and there were many of our ideas [incorporated into the product]. Half-life's multiplayer [deathmatch] was still in development. We helped out there.
JOHN COOK
Even if the tech was good, there needed to be an active customer base. Half-life's deathmatch itself wasn't that popular. We said, 'We have this valuable property in Team Fortress. We should get that working in Half-life and bring those customers over to introduce them to this game mode that we think is really fun.'
ROBIN WALKER
The Valve guys had all been thinking about single-player, so we collaborated with them on multiplayer. From there on out, it was Robin and me being a part of figuring out, how does multiplayer work? How does the SDK work? We were part of all that.
JOHN COOK
We looked at all that Quake C code and said, 'We can't rewrite all this from scratch. It would take too long.' I sort of get teased at work for my initial estimate: 'Oh, man, we could probably do this in three or four weeks.' I think it took us three months.
ROBIN WALKER
At that point, we'd been working with Quake for years. As any programmer will tell you, if you spend two years with a product with a bunch of code, being play tested by thousands of people around the world, you fix a ton of bugs. If you decide to go and rewrite that, you have to be careful. You'll write cleaner code, but in all the places where the code is cleaner, you've actually not brought over bug fixes and design changes that were nonobvious and made the game better.
JOHN COOK
But that was part of making the SDK as successful as possible. I feel like that was a good move, because out of that came Counter-Strike. Without that, without the level of people playing multiplayer in Half-life [and Team Fortress Classic], I don't think Counter-Strike would have been made, or it would have been made for some other game platform.
The decision [had] two tracks: We're going to make Team Fortress 2, and we're going to make the game's multiplayer environment as good as possible, because that would in turn create opportunities. Another Gabe thing was, 'Deliver all your value as fast as possible. If you have value in this Team Fortress but it's not being delivered to our customers, fix that. Get it in there for them.' That was really it.
David Ogilvy is regarded as the father of modern advertising. In 1968, he published a paper on management principles in which he wrote, If you ever find a man who is better than you are - hire him. If necessary, pay him more than you would pay yourself. Another popular story goes that Ogilvy once gifted each of his company directors with a set of Russian nesting dolls.
Opening the dolls one by one, the directors found a note folded in the smallest doll that read, If you always hire people who are smaller than you, we shall become a company of dwarfs. If, on the other hand, you always hire people who are bigger than you, we shall become a company of giants.
Reflecting on their journey, Walker and Cook agreed that it was the prospect of surrounding themselves with giants that attracted them to Valve more than the chance to continue developing Team Fortress games.
JOHN COOK
I was always impressed by the community scene that emerged, especially the clan players. There was a lot of really smart players organizing games, battling rivals and just making the game better. Great players are what make a multiplayer game great.
IAN CAUGHLEY
Three things. First, as new games were developed after TF, I felt it was clear that our game had a reasonably significant influence on the design of FPS games. I think we showed that the community wanted more from multiplayer FPS than just deathmatch, that they could work as teams and wanted to, and game developers saw that and built games for those players. We showed that players wanted more interesting goals than killing everyone, they wanted to work out strategies and work as a team to put them into action. And now we have games like the amazing Overwatch and team MOBAs.
Second, people are still playing TF—Team Fortress 2 counts—and we're coming up to our 20-year birthday.
Third, it took Valve 10 years to come out with TF2, and when it came out, it was very similar to the original. I know they went through a lot of iterations to get there, and it was amazing to see them decide that the original had so many things right.
ROBIN WALKER
I'm a realist. I think there are people who want to say that things got created because a specific kind of person was really smart. I look at TF, and so much of it seems really obvious, and so much of it comes from lots of people. TF is a huge bundle of things, and in some cases, we were people who created things that other people proposed. It's hard to know where we started and where TF began.
I remember a conversation with Gabe [Newell] and a bunch of people at Valve, not long after we joined Valve. I can't remember who proposed the theory, but there was this idea that game developers were all going to lose to the mod community. That the mod community had done more iteration on game design through its sheer number of people, in a couple of years of [playing and creating mods for] Quake, than the games industry had done for years prior.
It wasn't that they were smarter than the game developers; it's that they had a fundamentally better method for creating games. Iterating in public, iterating in front of your customers, was a fundamentally superior way of doing games.
One of our fears in that conversation was, 'If we can't get some kind of similar development process, our games will be worse than all these mods.' I think that was accurate. Today, game developers don't necessarily choose to take advantage of that [style], but we have the opportunity to build products in the way that mod makers were building them for Quake and the games that followed. You can see a huge amount of innovation that happened as a result of that.
There was this period of time where a ton of people, far more than John, Ian, and I, were channeling their thoughts into a bucket for Team Fortress. It was super fun to be a part of that.
Last December, Shacknews published Rocket Jump: Quake and the Golden Age of First-Person Shooters, David L. Craddock's book-sized account of the making of id Software's Quake franchise and other influential FPS games from the 1990s. Presented unabridged, the following chapter comes from the full edition of Rocket Jump, available in full for Mercury subscribers and available to pre-order in hardcover and digital formats from crowdfunding publisher/platform Unbound.
-
David Craddock posted a new article, Threading the Needle: The Making of Quake Team Fortress
-
-
-
-
Hey David, I finally was able to finish reading this and it was a lot of fun. I didn't play much TF, but there was still a lot of nostalgia for the old Quake modding days, it got me thinking of Rocket Arena, and knowing everyone on my local servers. So much fun. I really like your articles David, you are a huge asset to Shacknews. I don't want to make requests, but I will just say, an article similar to this for Counter-Strike would be incredible if it is ever possible. Love your work, keep at it!
-
-
-
Wow, this is fantastic, David! I don't know if you did the graphics/YouTube embedding, but that's my "FOLD vs. Green Panthers" video linked within the article. Which is fine! I posted my thousands of QuakeWorld Team Fortress videos for others to view them!
Anyway, you might find my YouTube channel and QWTF site of interest:
https://www.youtube.com/user/Tickenest
http://qwtf.digitaljedi.com/
I spent pretty much the last ten years capturing and posting to YouTube just about any interesting QWTF match demos I could find because I knew that it was basically the only way of preserving this aspect of gaming/FPS history. I played in a few clans in the late 1990s and started by posting my own stuff, but then I decided to start posting other players' demos and to date have over 1300 rounds of footage on my site. It's mostly footage from the late 1990s and early 2000s, with a little bit of more recent action here and there. Anyway, I hope you find it interesting if you get the chance to check it out.
Thanks again for this fantastic article about TF! -
To play this game on 2020, take a look at FortressOne: https//www.fortressone.org/
-