Heading into the last quarter of 1995, the slower-than-expected progress was wearing on the team members with the least amount of work to do: Dave, American, and Sandy. Making R&D levels with little gameplay or endlessly tweaking the sound engine was not inspiring. Worse, when their work had to be redone because of a necessary core engine change, their days could be actively draining. None of them had been through a full end-to-end engine development cycle with us before and didn’t really know what to expect. They were frustrated with tech for not having a finished engine. They were frustrated that we couldn’t finalize definitive gameplay. They were frustrated that their levels were still just R&D. At best, they were bored. It’s easy to say “It’s done when it’s done” or “It takes the time it takes,” except when it actually takes that time. Nevertheless, everyone wanted to push development of something forward in some way, particularly those who had received lower grades on the report card.
Sandy kept working away on R&D levels, developing his 3D level design style, but his normally cheerful demeanor was replaced by a sullen acceptance. American continued working on R&D levels, too. He tinkered around with QuakeC to make experimental weapons, but he needed our programming team to create the engine-side code for the weapons to work. Eventually, American turned to a part of the game that excited him: the music. He spent chunks of time in New Orleans watching Trent Reznor’s music development and hanging out with Nine Inch Nails. While there, he even got Trent to make some sound effects for the player character just in case we needed them.
Dave’s main job was to get a sound engine working, and it didn’t take all of 1995 to do that. So, he decided to follow in our footsteps and try game studio ownership himself. He asked Carmack and me if it would be okay to start a studio in Austin, hire some coders he knew, and remotely run the team. As entrepreneurs ourselves, we knew it was an incredible opportunity and decided it would be fine, provided his work on Quake remained consistent and that he remained onsite in Mesquite. Dave ran with it and started Crack dot Com.*
The Quake team wasn’t the only team drifting apart.
By now, Cygnus Studios was well established in our studio and working on Strife with our DOOM tech. Scott Host, the owner of Cygnus Studios, was in awe of Carmack and wanted to model himself after him. He admired Carmack’s nonstop work ethic and thought that Strife could be shipped quicker if his team worked like Carmack. So, as we neared the last quarter of 1995, he extended his team’s working hours well beyond the normal stopping time to get them focused on finishing the game faster. He even wrote a program to track their working hours and used it to evaluate their performance. That approach backfired spectacularly. The three guys on Scott’s team were friends of his from Illinois, and none of them had made a game before. As new game developers, they were learning, and their speed reflected that. Scott got angry with them, and they returned that anger in spades. They came to our section of the office to talk to me.
“We’re quitting.”
“What? Why?”
They described the new schedule and the weaponized time-tracking tool, and it was obvious they weren’t fans of it. More than once, they noted that they were sick of their game’s name, Strife, describing their working conditions, too.
“We don’t want to work with a dictator,” they added.
I had a quick chat with Jay about the situation. I had expected Carmack to monitor the team as I had done with Raven, but work on Quake had kept him fully hands off. Even if he was aware of Scott’s edict, he may not have seen it as a negative. After all, coding around the clock was normal for Carmack. We had spent almost $250,000 on Strife development, and we didn’t want it to evaporate because of this. As far as I was concerned, Scott was the cause of the problem, and the best way to solve the problem was to cancel the game with Cygnus and move the game to the new start-up the three Cygnus employees planned to create and own. Carmack, Kevin, Jay, Adrian, and I met to discuss the situation, and they agreed with me. Kevin suggested we also add Sandy to their team as a quasi-producer to provide oversight. The discussions were difficult but straightforward. We told Scott the contract was canceled because of their internal issues, and Scott took his things and moved back to Illinois. The remaining developers gathered and prepared to move forward under a new name, Mutiny Software. The name seemed a little obvious and mean, so I suggested they change it. They decided on Rogue Entertainment instead. With a team of new developers, there were a thousand ways this could have gone wrong (which is true of any game), but this way seemed less likely to go wrong than the death march they were on. So, we worked to set them up for success. They just needed a coder to take over where Scott left off.
It just so happened that I knew a programmer who would probably be interested: James Monroe, the little brother of my high school girlfriend, Jennifer. Every time I went to Jennifer’s house and got on her family’s Apple IIe, James was watching. I’d show him what I was doing and try to explain it, but I think the most significant influence I had on him was showing him it was possible to make games on the computer he had at home. James was hooked and started to learn how to code. He finished high school in England, moved back to Texas with his family, graduated from Texas Tech University, and got a job at Origin Systems in Austin, the same company where I got my first game job seven years earlier. I called James and offered him the job, along with 25 percent of Rogue Entertainment. He took it immediately. James moved up to Dallas and got to work . Sandy, happy to be busy, was installed within the Rogue team to help manage things as they continued to develop Strife. This way, if other issues cropped up, we knew we had someone on the inside to spot them before they reached mutiny status again.
As we wound into late September, we knew that the engine was getting close to completion, and with that, gameplay code and realizing the design would begin in earnest soon. I still believed we needed to have a central hub area for players to practice playing in a 3D space. They were going to have to learn to navigate in 3D just as we had months before. Then, they could venture into one of the paths that took them into an episode. Since it was going to be the first thing players experienced, and representative of the whole of Quake’s gameplay and various level design styles, the hub needed be the last thing built in the game when we, the game’s designers, had achieved a level of mastery with the tools and the possibilities of Quake’s design. I didn’t want to create this central hub until we had reached that mastery level, until the engine was complete, until Quake’s hammer and other core gameplay had been added, until we really knew what the engine could do, or else it risked both not being as good as it could be and not being representative (build your first level last). In our R&D levels to date, we had been establishing the scale of buildings and structures and experimenting with strategic ways to surprise, scare, and reward players. The development of our individual styles came down to defining the shapes of our world building blocks. This included stairs, doors, paths, walls, ceilings, and structural shapes of buildings but also things that rose from that architecture like traps, secret areas, and potential play progression. For instance, American liked to use thick blocks of iron and pools of lava, and I liked to build structures submerged in water with unexpected traps. We also considered organic shapes like rocks, rivers, trees, and mountains. All of these things were, of course, influenced by the textures that Adrian created. Each set of textures reflected a different possible use, and we ended up using them for different dimensions.
Adrian had just wrapped up an Aztec-inspired design featuring a full assortment of Aztec-style textures. He had put significant research into its development, and we were excited to see it come alive. From a design perspective, we believed that the starting point for the Aztec levels might be reminiscent of block-shaped pyramids, halls, and pit traps, and dive into some of the wilder ideas one might find in 1978’s Dungeons & Dragons module Tomb of Horrors. The levels for this section were assigned to American.
After making levels in the Aztec style for about a month, American walked into my office.
“I’m just not feeling it with the Aztec stuff, John,” he said.
“What?” I had no idea what that meant.
“It just doesn’t get me excited. I’m not inspired to make anything interesting with those textures and that theme.”
I couldn’t understand it. The Aztec theme was quite literally my past. Growing up in Tucson, Arizona, in a Yaqui family, Aztec symbolism was everywhere, from our museums to our fabrics to the sun stones depicting the Aztec calendar (one of which still hangs in my mother’s house). That said, if he didn’t feel it, he didn’t feel it.
“Okay,” I said. This was new terrain. No designer had ever complained about a lack of inspiration from Adrian and Kevin’s work, which had helped create the visual identity of id games.
“What I want to do is just have some really dark metal, like iron or black steel. Like a dimension that is completely made of heavy metal.”
“Okay. I’ll let the art team know. They are not going to be happy about it.”
Later that day, I went to tell Adrian and Kevin.
“Are you serious?” Adrian asked. “He can’t get excited about our textures, so he can’t make anything? Really?”
“That’s what he says. Let’s just give him what he needs. It’s creative and artistic. It’s a challenge for you guys. I can totally see this fitting into the game, and American will do a better job.”
As they always did, Adrian and Kevin delivered the goods: some dark, foreboding heavy metal textures. American used them to make magic. Being inspired transformed him. The Vaults of Zin, completed once the engine was done, is the second level in Episode 3 and displays a fully formed idea of what his style is all about. He used a distinctive set of heavy metal textures, and he constructed a set of puzzles strung together, one room or hallway at a time. The starting area lets the player explore a little before he releases an army of zombies behind secret doors. There is an exit from the zombies, but it’s a tricky fall down toward a lava pool, and the player has to be cautious controlling their way down. Each new area reveals a new set of problems, and on the whole, the level shows a strong design aesthetic and a sense of humor. From the first playthrough, I knew American was happy with and inspired by the iron textures because it was apparent in the heavy-duty architecture he built with them. In the end, the Aztec texture set was never used.
Since we had multiple projects in the works and Heretic 2 releasing soon, the pressure on our internal crew was building. It was obvious that Kevin, Jay, and I were stretched to the limit. To alleviate some of the pressure, we felt our self-publishing efforts could be the focus of just one person—a new person. Once again, we convened for a democratic decision. Carmack gave in and agreed to a new hire, and Adrian thought he knew the right person: Mike Wilson. Mike was a high school friend of Adrian’s from Shreveport, Louisiana. Adrian had purchased a DWANGO franchise about six months earlier, and Mike ran it for him. Mike’s office was on the floor below id, so moving upstairs would be easy. Adrian felt that Mike could help us in the marketing department for our upcoming games Heretic 2 and Quake as well as other opportunities we were kicking around. Mike was hired in September 1995.
Mike saw that CDs full of DOOM, Heretic, and DOOM II levels scraped off the internet were selling like hotcakes. Mod packs like D!ZONE, H!ZONE, and D!ZONE 2 cost nothing to develop and were sold at retail for pure profit. People were happy to buy a CD with thousands of levels on it because that meant they didn’t have to spend their time downloading all those levels on their slow modems. By adding custom id-approved levels, Mike knew we could stand out from the crowd and viewed this as a major selling point. It sounded like a great idea, so I identified some of the best DOOM mappers, gave them direction, and paid them a flat rate for their levels. We ended up with twenty kickass, custom levels for Master Levels for DOOM II. Along with those levels, we scraped 1,830 levels from the internet—a mix of levels for DOOM (191 levels), DOOM II (1629 levels), and Heretic (10 levels)—and included them on the CD as well. I wrote an installation program for it, got the disks mastered, and we were good to go for a new product. We grouped the public mods under a Maximum DOOM banner.
Mike’s next order of business was to find a great name for Heretic 2. It didn’t take him long. Mike had a natural knack for marketing and selected the German name for “witch”: Hexen. Ominously evil and starting with the same letter as Heretic, I thought it was a perfect continuation. I told Raven, the company creating Heretic 2, and they thought so, too.
Mike’s biggest efforts, however, were reserved for an upcoming event dubbed Judgment Day, planned for October 30: a collaboration with Microsoft, which would see not only the release of Hexen, but the release of the DOOM port for the Windows 95 operating system and the release of DirectX, too. Mike wanted to send Hexen out into the world with a bang and came up with the idea of inviting the world’s top DOOM players to a twenty-player tournament. It was likely to be nail-biting. On stage, these players would compete in the finals of Deathmatch 95.* While the event would generate a lot of attention for our games, for Microsoft, the stakes were even higher. They invited dozens of game developers to the event and were using it as an opportunity to highlight Windows 95 as a gaming and game development platform not just to us, but to other game developers, game players, and the press. The more I heard about the event, the more surreal it seemed. Did I just overhear him talking about a Ferris wheel?
By now, it was October 1995, and Carmack wanted to find a way to speed up our map processing times, since it was taking at least ten minutes to calculate the binary space partition and the lighting for each map, and this affected our development time. Carmack thought about buying a Cray supercomputer to solve the problem. Cray supercomputers were effectively the Ferrari of computers, many times more powerful than what anyone was using at home, and were typically reserved for government, research, or institutional use. They were even more powerful than mainframe computers. Carmack knew that the Cray could process maps at least three times faster than our Pentiums, if not faster.
Jay called Cray and asked them about doing a deal.
“If we put Cray-looking computers everywhere in Quake,” Jay suggested, “would you give us a break on the price of a supercomputer?”
The Cray salespeople thought about it. By now, even if we hadn’t fully grasped the extent of our reach, the people at Cray had. They agreed to sell us a Superserver 6400 (at a discount) for $500,000. We agreed and promised to show them all the places where we placed the computers so they could sign off on them. We agreed in principle and planned to sign off in several months, at which point we hoped to get the computer.
By now, we were receiving quarterly reports from GT Interactive on sales of The Ultimate DOOM. Three of the four episodes had already been released in DOOM’s registered mail-order version, but it was selling exceptionally well regardless. We decided that we would include four episodes in Quake’s registered release, too—one more than our previous games—to add incentive to buy the full version.
Overall, I was really feeling great about how the company was growing, from our Softdisk escape to developing our own line of original IP games like Wolfenstein 3-D and DOOM to the spin-offs like Heretic, The Ultimate DOOM and Hexen. The add-on level packs were growing both a community and a business, something that was important to me and the longevity of the games. It was one area where Carmack and I really differed, I knew. I wanted to grow the company and take full advantage of what we created, which, among other things, would insulate us against a bad game or a late launch as well as prime an audience for future launches. Carmack liked us as we were: small, with one main game in development. All this focus on revenue and releases might seem contrary to our goals as hard-core game players and game creators. It wasn’t, though. While we clearly made games for love, money was necessary to keep the development train moving on Quake. Diversifying that income stream was (and is) critical to the long-term success of any company. While he didn’t share my goals about expanding our business, all these projects were keeping our coffers flush. At id, we never had to make difficult decisions like laying people off or struggling to make payroll. The “it’s done when it’s done” development mantra requires a continuous money train to power it.
At long last, Judgment Day had arrived. While it had been hyped up, it was far more elaborate than any gaming promotion I’d ever heard about: There was a haunted house, a massive tent for food and drinks, and yes, even the rumored Ferris wheel. Thirty-five different developers had kitted out their own areas, and talk-show celebrity Jay Leno emceed the event. Even Bill Gates himself appeared, holding a shotgun in a DOOM-themed video to kick everything off. It was so far beyond anything that had happened before. Alex St. John’s team at Microsoft launched DirectX, the platform for game development on Windows 95, as well as ports of DOOM and DOOM II and, of course, the MS-DOS version of Hexen.* Expert-level players were flown in and deathmatched on a giant screen, turning our game into a spectator sport. The final match pitted Thresh, aka Dennis Fong, against Merlock, aka Ted Peterson, with Thresh emerging victorious and winning the ultimate prize: the right to battle me in Hexen over DWANGO.
As it turns out, I missed the live event. I was back at the id office in Mesquite, busy fine-tuning Hexen for its release on Halloween. I knew the game inside and out when I connected online with Thresh, which didn’t exactly make for a fair fight.
Judgment Day wound up being a hit for id Software, and as the first event of its type, it was a prelude to how much of a cultural force games would become in the future. The event promoted our game, front and center, which would inevitably help our bottom line. At this point, I was happy with the new marketing for DOOM via Microsoft, because it kept revenue flowing. The timing was great, too, because the team at Raven had surprised me again, finishing the retail version of Hexen months before its targeted Christmas release date. They took my design direction and brought it to life, designing a fun game with lots of levels and an overall higher difficulty than our previous games. Like DOOM II, Hexen was a boxed retail release and entered stores in November.
The team fielded lots of questions about Quake and when it might be ready. We stuck by our old mantra of “it’s done when it’s done.” Internally, the team felt certain that they were close to completing the engine, which meant that work on core gameplay would immediately follow. In a few weeks, I hoped, we would begin doing what Carmack and I always did when the tech was ready: work together to iterate the core of gameplay, in this case, Quake’s hammer. The core was always a collaboration with me focusing on the design and him focusing on the implementation. We’d dial it in until it played great and was as performant as we needed it to be. Once that happened, I figured we’d need under a year to flesh out the gameplay code, iterate upon it, get the levels built, and get Quake out the door.
From the outside, everything at id Software seemed incredible. Inside, however, it was a different story. Just ten days before, on October 20, Carmack and I had our own judgment day. Tensions were flaring, and the frustration had reached a tipping point.
Carmack, Adrian, Kevin, Jay, and I were gathered in the conference room for our standard shareholder meeting. As Jay wrapped up the regular business, Carmack said he had something he wanted to talk about. I could tell from the sound of his voice that it wasn’t going to be good.
“Romero is not doing enough work on Quake,” he started. “You are spending too much time on other projects. So I want to issue a formal warning. And your bonus will be less to reflect it.”
I couldn’t believe what I was hearing.
“I’m working constantly,” I said. “We have a ton of other stuff going on. Hexen is just about to launch.” In addition to Hexen, The Ultimate DOOM released in March, Master Levels for DOOM II was in the works, and deals for two other products were pending. GT Interactive paid us advances on our new games before they even shipped. Our business was doing great, and these external projects were a ton of work.
I looked at Carmack. “I work all the time!”
Adrian and Kevin agreed. They knew how much I was working. Kevin had worked with me on every single project during Quake’s development.
Carmack doubled down. “You’re not focused enough on Quake.”
“The engine’s not done! What do you want me to do? I have designed as many levels as Sandy and American, and I wrote the editor. I’ve done everything I can do on Quake until the engine’s done.”
At the time, I felt like he was blaming me because building the engine was harder than he’d thought it was going to be. I was irritated, too. He wasn’t able to solve it quickly with his computer brain, it was blocking a whole team, and somehow, it was my fault. I didn’t know what Carmack was expecting. I tried to parse it live in my head. Did he really think that it made sense to just sit there and endlessly tinker with R&D levels? As a level designer, those levels had to play upon the core of the gameplay. If Quake was going to have a hammer, those levels would be different than if Quake was just going to use one of the rudimentary weapons we made to test out multiplayer. My level design work was entirely predicated on the core of the game. It’s like saying I wasn’t doing enough work on a painting, but not actually giving me the brushes I needed or a prepared canvas to do it. I felt like he somehow forgot how we had worked on every single game we’d made together to date. The game required gameplay code, and we had yet to write that. I wasn’t pressing him to finish the engine. I supported him. (And hold these thoughts in your head, because I’ll come back to them in the next chapter.) The engine was complex, and it was going to take the time it took. In my mind, I was making the best use of that time by earning money for the company. My focus wasn’t 100 percent on Quake, though, and that, it seemed, was all that mattered to Carmack.*
“When the engine’s ready, you said we’ll start work on Quake’s hammer. In the meantime, I’m not going to sit there and do nothing. I am insulating the company. Can you imagine if we went two whole years without releasing a game? id Software? It would be horrible. That’s forever.”
Two years was forever in 1996 game development time, and it was forever++ in id Software time. We risked losing our leading edge and ownership of the genre we had created, crafted, and were about to redefine. We also risked losing the whole company without buffering our bottom line. Sure, we were bringing in a lot of cash now, but I’d seen multiple companies, including those I worked for, go out of business because they had failed to diversify with multiple income streams. To me, getting games like Hexen and The Ultimate DOOM out there was critical.
“Quake is our most important project, and I expect you to be working on it,” Carmack said.
We were at an impasse. Carmack didn’t value me growing the business. Instead, he viewed it as a lack of focus, and I didn’t understand that. I was extremely focused on what I thought was best for the company during the engine’s R&D phase. Likewise, he didn’t understand why I couldn’t just throw everything else out the window and start turning Quake into a game, but it simply wasn’t possible without the programmers moving over to gameplay code. (Neither of us saw other options.) I thought back to the report card he had issued just a few weeks before. Not discussing that wasn’t the right decision. This was clearly the next level. He didn’t get the result he wanted from that, so he was escalating things.
“The design team also feels like there isn’t enough direction,” he added.
“The design team knows the direction of the game. Sandy just did a big interview on it. They don’t have enough to do, and they’re frustrated.”*
A formal warning was at stake. On paper, it didn’t mean much, but in practice, it showed just how fractured we’d become.
“I don’t agree with the formal warning,” Kevin said. “He’s doing a lot of work.”
Adrian felt the same way. The two refused to go along with it.
Carmack was angry. He realized that the formal warning wasn’t going to pass, but he wasn’t prepared to give up on the punitive bonus.
“Because of your lack of focus on Quake, you’re going to get a lower bonus than normal.”
“I don’t think that’s fair. I’m working hard.”
Adrian and Kevin said nothing. They feared that if they did, Carmack might quit. He didn’t say this, but he didn’t need to. He had threatened to quit over business issues before, like if we ever decided to patent things, but fortunately that never came to pass. It was a standoff, and we knew it. It was him or me. He didn’t get his formal warning, but I didn’t get a full bonus. It was a relatively small concession to keeping peace on the team, and that was most important to me.
We didn’t discuss the amount.
“Okay, then.” I shrugged. “I guess that’s what will happen, then.”
There wasn’t much more fight to be had.
Before I go further, I want to address something. It has been reported that Carmack presented me with a list of my working hours at the beginning of this meeting, apparently from a program he wrote to track my work on my computer. While this meeting was difficult, that absolutely never happened. Rather, it was Scott Host who did this with the Cygnus Studios team. As I mentioned, Host felt he could make more progress if his team worked like Carmack did. He built a tool to track their time. I am not sure from whom the author got that story, but whoever told him conflated two stories. Carmack never programmed anything on my computer, a fact I’ve confirmed with him, nor did he give me a list of my hours. He didn’t stoop to micromanagerial QuakeEd brush-tracking, as that would have only tracked a portion of the multiple projects we had going on. Further, he most certainly didn’t accuse me of doing nothing. He knew the work that I did brought significant income to the company. Rather, he accused me of not being fully focused on Quake. That was true, by design and by necessity. From his perspective, this was a failing. From my perspective it was not only necessary given the engine development, it was necessary for the long-term stability and success of the company.
I have thought through this meeting a million times since. What an incredible, colossal failure this meeting was. There were so many other ways for this whole situation to go, and somehow—probably because of our inexperience—we just couldn’t see the forest for the trees. Things that are so clear to me now just weren’t then, and having talked to Carmack about this, most recently in November 2022, he feels the same way. Earlier, I said that I supported Carmack, and I definitely did. At the same time, though, I didn’t. We didn’t. Not in the right way. Real support would have been all of us saying, “This isn’t working,” listing the things that weren’t working for everyone, and changing those things in a way that worked. Sure, Carmack was the critical path, but there were other things we could have done, other options we could have explored, and I wish we had done any one of those things. I’ll discuss those in the next chapter.
More than anything, Carmack was under pressure and unhappy, and as cofounders, that’s something we should have addressed. Our misaligned goals (me focusing on expanding our business with multiple projects and people, and him focusing only on Quake development and staying small) led to a lot of this tension, and work that wasn’t on Quake was viewed in the same vein as vacation, particularly when, from his viewpoint, there was such a massive discrepancy between the hours he was putting in on Quake and everyone else. That doesn’t mean we weren’t plenty busy on other things, because most of us were, on business things that Carmack would, over time, come to appreciate. But right now, the engine was the bottleneck, and a lot of work was blocked until that engine was done.
But the failure, the total failure of this meeting, was that we came together and said, “It’s not working!” And then, after tempers flared, we left the room, and everything was still not working exactly as it had not been working before. We remained committed to a development path that left some overworked and some without enough work to do, and we remained divided on our business priorities. Nothing changed, and Quake still had eight months to go.
* He directed his team to make a platform-based shooter with impressive lighting called Abuse.
* The qualifying events for Deathmatch 95 were largely held on DWANGO servers from September 18 and October 20, 1995.
* Earlier in the year, Alex contacted us and offered to port DOOM and DOOM II to Windows 95 for free, and we would retain all publishing rights. Obviously we said yes.
* In 2022, in an interview with Lex Fridman for his podcast, Carmack reflects on our division noting how I wanted to grow the company to have multiple products and that he wanted to focus only on Quake. He sees it differently now and recognizes the value of diversifying. Likewise, as this book makes clear, I see it differently, too. There were other ways this whole thing could have gone. We were young. To echo Carmack, there is no animosity in our relationship.
* Years later, while reading another account of this meeting, I learned that Sandy went to Carmack shortly after receiving the report card to express his concerns about the lack of design documentation to which he had grown accustomed at a previous employer, MicroProse. Even though we had never used design docs at id (including DOOM’s, which we didn’t use), Sandy was newly out of his comfort zone and probably anxious. Having something written down provided a feeling of security and a perceived sense of direction, even if that direction might not be practical or even possible. He expressed his concerns to Carmack, who listened, of course, but we didn’t change direction to a “design doc” studio. I was never notified.