The two people at the core of the Id development team are the biggest fans of Id games and their harshest critics. Lead programmer John Carmack is clearly the main reason behind the technical superiority of Id's games. Talking to him about the games he's worked on is almost anticlimactic because he always emphasizes how much better he could make them today. When the contractor Id hired to do the network drivers for Doom didn't come through, Carmack matter-of-factly wrote a network driver and had it up and running the next day.
In contrast to Carmack's eternal pessimism regarding his past creations, project specialist John Romero is the biggest fan of Id's games that you could ever hope to meet. His enthusiasm is infectious as he plays the latest beta making his own sound effects with his mouth to compensate for the game sound effects that haven't been added in yet. It is this mix of diehard programmer who plays games and diehard gamer who programs that ultimately makes Id's games as good as they are.
True to form, John Carmack was already displeased with Wolfenstein by the time it was released to the public. His game engine had been completed in the first month of the six-month development cycle and, by the time the first copy of Wolfenstein was buzzing across the modems of America, he knew he could do better. While the rest of the Id development team was hard at work completing Wolfenstein, Carmack was writing the game engine that would later be licensed to a company called Raven for the game that was to become Shadowcaster.
This game engine featured more than a one-point perspective and allowed objects to be taller than the player. It was around advances made in the Raven engine that the new game (tentatively titled "Green and Pissed") was to be built. But in the making of what was to become Doom, Id Software severed its relationships with two of the parties that had been around since its beginning.
In the initial development of Doom, a determination was made as to what direction Id's games should take. This decision resulted in founding member Tom Hall leaving Id Software. Carmack and Romero felt that Hall's creativity was coming into conflict with gameplay. As creative director, Hall was insisting on continuity in the storyline and trying to give the game a plot. As Romero would later say, "You don't need much of a storyline if your game is good."
"The game designer shouldn't be making a world in which the player is just a small part," echoed Carmack. "The player's the boss; it's your duty to entertain him or her." In the midst of this debate and other creative differences, Hall left Id to become project manager at Apogee.
After the fallout from Hall's departure, Id crystallized its design ideology. Id's mission is to take cutting-edge technology and turn it into highly playable games. The plot, or lack thereof, in Doom is a good example. It involves the vague idea of starting in a space station and descending into Hell. Doom, and presumably all of Id's future games, involves just enough of a storyline to set a mood and inject snippets of pop culture, mostly from B-movies. Perhaps it was Carmack who put it best, "We put the player in a dangerous situation and basically let the fight or flight instincts take over."
Another staff split involved Id taking over the distribution for Doom instead of using Apogee. Although the Id staff was pleased initially with Apogee, who gave Id its start in shareware games, the staff felt that Apogee wasn't equipped to handle the onslaught of phone orders that would accompany Doom. In an ironic twist, after Id had contracted a company called Digital Magnetics to handle the phone orders, Apogee realized that Id was right about its phone order capabilities and ended up hiring Digital Magnetics as well. Id continues to deal with Apogee with ongoing projects such as Wolfenstein II, which Apogee will develop itself using a slightly souped up Wolfenstein engine. Id still recommends Apogee to potential game programmers as a good place to start.
With the knowledge that Carmack had gained from working on the Raven engine, he started work on Doom. The Raven engine was much more advanced than Wolfenstein. It could render sloping floors, map texture on any side of a cube (in Wolfenstein, a cube had to be the same on all sides), allow different textures for the ceiling, and create walls at angles other than 90 degrees. Unfortunately, the technology used by the Raven engine was as advanced as it would get, so to work on Doom, Carmack had to start from scratch.
Three revisions later, Carmack had a game engine with performance that met his expectations. By breaking the map down into small sectors and reordering them so that the engine was able to make use of the 486's internal cache, the engine was optimized for fast machines. The final Doom engine has a medium detail mode option that doubles the pixel width horizontally and triples the speed of the game on slower machines. Another important addition to the Doom engine was allowing all objects to have physical characteristics, such as weight, momentum, and even sound. For example, bullets were actually physical projectiles in the Doom engine as opposed to Wolfenstein, where they were just calculations. Improved AI routines allowed monsters to interact with each other, and light sourcing gave a better sense of depth.