Veteran developer John Romero has shared some of the secrets behind the success of the seminal Id Software team, which defined much of the FPS and the games industry.
During a talk at Reboot Develop today, Romero laid out the principles the Id team followed, and explained how they helped shape key titles such as Doom, Quake and more. While these principles mainly applied to the development days of the early ‘90s, they could be applied to studios today.
Discussing the studio’s prolific output – at one point releasing 12 games in one year, including multiple Commander Keen and Rescue Rover titles – the industry legend said the key was not to prototype.
“No prototypes,” he said. “Just make the game. Polish as you go. Don’t depend on polish happening later. Always maintain constantly shippable code.
"If more money is involved or there are more people are working on it, yeah, you're going to prototype, test ideas and throw stuff out. But if you're on your own and you know exactly what you want to make, just do it."
This tied in with Id’s principles about testing and quality assurance.
“We are our own best testing team,” Romero said, quoting the old Id ethos, “and should never allow anyone else to experience bugs or see the game crash. Don’t waste other people’s time. Test thoroughly before checking your code.
“As soon as you see a bug, you fix it. Do not continue on. If you don’t fix your bugs, your new code will be built on a buggy codebase and ensure an unstable foundation.”
He added that while Id developed multiple games, each team focused on one project at a time, without thinking about how the code could be used for sequels.
“Write your code for this game only – not for a future game. You’re going to be writing a new code later because you’ll be smarter.”
Romero also stressed the need for good tools, urging devs to spend as much time on them as possible. By way of example, he reference a tile editor he created – something that went on to power 33 shipped games, including Wolfenstein 3D and the Commander Keen series.
He also stressed that a studio needs to have a thorough understanding of the tech behind their game to ensure errors are easily made apparent.
“It’s incredibly important that your game can always be run by your team,” he said. “Bulletproof your engine by providing defaults upon load failure.”
Elaborating, he explained that Id used to add different art or audio assets to make it clear that something was broken during playtesting.
“If you’re missing a sprite, show a bagel,” he suggested. “If the theme tune isn’t loading, play something else so that it’s obvious.”
Earlier this week, Romero revealed his long-awaited return to FPS development with Blackroom, a crowdfunded title he is creating with the help of fellow Id co-founder Adrian Carmack. Find out more in our interview here.