I’m so hyped about my first professional game development credit being for Doom (2016)! The original is such a classic, and I got really into it back in the day. I still remember playing for long stretches of time; getting so into it that I started leaning over to the side when I strafed to dodge a fireball. 😂

Certain Affinity worked on the PVP multiplayer for this title. Though the mode wasn’t as universally beloved as the stellar single player campaign, over time reviews started to come around to recognize the work we did to deliver a kick ass experience.

When I first started, I was a little familiar with the tech as I had played around in the Doom 3 source code beforehand. idTech 6 had seen some major rework though! I really appreciated all of the C++ niceties that had made their way into the tech; vector operations were really intuitive and navigating the codebase was generally pretty straight-forward. Still, there was a lot to learn; when I first started on the project, I worked on some of the medals and call-outs, and that was a great way to learn the ins and outs of the gameplay / logic flow.

The majority of my work was on the playable demon characters in multiplayer, particularly the Prowler and the Mancubus. We had struggled to make the Prowler work as a stealth-oriented power character. I implemented the “perch anywhere” ability of the Prowler to attach to most any wall or ceiling surface. Finding a good position and orientation for fully arted up maps was a bit of a challenge; we used deferred physics queries when possible to manage performance. When the player selects a perch, they traverse the space in between, and potentially scoop up an enemy player along the way. I still really get a kick out of the Prowler smashing the head of an enemy into the wall and tossing his body away. 🤣

I also worked closely with animators, riggers, and designers on the Glory Kills in multiplayer. Though the system had already been developed by id for the single player, implementing these synchronized animations had its own challenges in multiplayer, especially with very mobile players and large demons. We had to factor in who was on the ground vs in the air, how they were positioned and oriented relative to each other. When the kill was triggered, the participants would slide into place, rotate to match the animations, and play out the coordinated scene. Sometimes props would need to be spawned (such as the chainsaw or the Mancubus’ gland), or the killed player would be swapped for a gore rig.

The gore system was another thing I had spent some time working with for the project. Handling body cleanup, spurting blood and guts, and getting the ragdolls right for the big characters took some work. It was a blast working on such a visceral part of what makes Doom what it is!