Doom Retro, Feat. Brad Harding

March 26, 2022

The ultimate enhanced vanilla experience

DOOM RETRO

It’s time to talk source-ports. We all know them; we all use them and it is very likely that more than a few of us are fans of certain source-ports. Their history is long and their variety is incredible; since the first source-port, these programs have not stopped offering a huge variety of ways to play and adopt Doom. Classic source-ports celebrate the purity of the game while others seek to achieve modernist ideals that open up multiple opportunities and exploit the engine to the fullest. The advantage of a history as long, deep and varied as this, is that there are dozens of different ways to play Doom that suit every type of player, from those who want to play with a thousand mods on top, to those who prefer to see 2 pixels on their screen. Today, we’re going to talk about those who are looking for a bit of the best of both worlds. That classic vanilla-scented love, but with a little modern twist that enhances our lives. Today we will talk about Doom Retro.

Enhance, improve, restore.

Doom Retro is a source-port developed by Brad Harding. Created with the intention of celebrating 20 years of Doom, the source-port is a classic representation of the pure demon-killing experience, combined with a gallery of small improvements that combined improve and fix the bugs or flaws of the classic. Doom Retro is like the art of restoring a painting; you need to keep the spirit, the essence intact, but improve the paint run, the scratches of time and give it a new coat to protect that eternal legacy. This source-port does that and much more, being able to create an effective balance between a faithful experience to the original, and enhance it to fit modern systems, utilize the hardware to the fullest and make every pixel feel like a crispy fantasy.

Doom Retro custom menu

Released in 2013, Brad Harding used the code of Chocolate Doom as a base to expand this source-port and redesign it to his liking. The main feature of Doom Retro is its improvement over the classic Doom experience without altering the essence. It keeps the spirit intact but adds a multitude of quality-of-life improvements, giving it a sort of modern paint job that feels in balance with the game in its purest state. Doom Retro also has a considerable range of compatibility; it allows you to play vanilla, limit-removing, Boom-compatible and even MBF-compatible WADs, which pretty much encompasses 90% of existing WADs (a random number that popped into my head, heh) and allows you to enjoy the coolest single-player experience you can find. Available for Windows in 32 bit and 64 bit, and written in C (which I have no idea what it means), this source-port is a state-of-the-art enhanced experience for all Doom lovers that wish you enjoy the pureness of vanilla with the greatness of modern improvements. Such as:

  • A simple, convenient WAD launcher is built in.
  • Version 2.0.16 of the SDL (Simple DirectMedia Layer) library is used.
  • A resolution of 640×400 (twice that of the original DOOM) is used, accommodating for any screen size while maintaining the correct 4:3 aspect ratio.
  • A highly optimized 256-color software renderer is used.
  • Every frame is scaled up onto the screen using hardware acceleration with either the OpenGL or Direct3D APIs.
  • A widescreen mode is available, easily accessible at any time by pressing the + and – keys, with a choice of two different heads-up displays.
  • Windowed and fullscreen modes are switchable at any time by pressing ALT + ENTER.
  • A powerful and unobtrusive console is always available by pressing the ~ key, where all messages are displayed and all settings may be changed.
  • The framerate is uncapped.
  • Motion blur can be applied when the player turns around quickly.
  • MUS, MIDI, MP3, Ogg Vorbis, WAV, FLAC and MOD music lumps are supported.
  • There are several alpha, additive and per-pixel translucency effects.
  • More blood is spilled when shooting monsters.
  • All blood spilled leaves permanent splats on the floor.
  • Cacodemons have blue blood, hell knights and barons of hell have green blood, and lost souls have no blood.
  • Friendly monsters, including MBF-compatible “helper dogs”, may be spawned in a map using the spawn CCMD.
  • Dynamic shadows are cast by monsters.
  • Liquid sectors bob up and down.
  • Objects are partially submerged and bob up and down, and the player’s view is lowered, when in liquid.
  • Brightmaps have been applied to certain wall textures.
  • Corpses are randomly mirrored.
  • Corpses react to splash damage from nearby rockets and barrel explosions, and smear blood on the floor as they slide about.
  • The screen shakes when the player is injured or a nearby barrel explodes.
  • The player’s field of view can be between 45° and 135°.
  • There are 10 darker gamma correction levels to accommodate for today’s brighter LCD screens (with a darker gamma correction level of 0.90 set as the default).
  • There is a low detail mode that emulates the original 320×200 resolution, but enhanced with SSAA (supersampling anti-aliasing).
  • The various limitations of the original DOOM are either raised or removed completely.
  • There is support for DeHackEd files and lumps, including those with BOOM extensions.
  • DeHackEd support has been extended to allow for 2,910 additional states (numbered 1,089 to 3,999), 100 additional map objects (numbered 150 to 249), 100 additional sprites (numbered 145 to 244) and 200 additional sound effects (numbered 500 to 699). These extensions have since been adopted by a number of other DOOM source ports.
  • There is partial support for Hexen-style MAPINFO lumps.
  • There is partial support for UMAPINFO lumps.
  • There is specific support for SIGIL by John Romero (which is automatically loaded if found).
  • The maps E1M4B: Phobos Mission Control and E1M8B: Tech Gone Bad by John Romero are included. (These can be played by entering map E1M4B or map E1M8B in the console when a DOOM or The Ultimate DOOM IWAD is loaded.)
  • There is specific support for the BFG Edition of DOOM and DOOM II: Hell On Earth, including Nerve Software’s No Rest For The Living expansion (which is automatically loaded if found).
  • There is also specific support for:
  • Freedoom: Phase 1 and Freedoom: Phase 2,
  • Chex Quest,
  • HacX: Twitch ‘n Kill,
  • REKKR.
  • Maps with regular nodes, extended DeePBSP v4 nodes and extended, uncompressed ZDoom nodes are supported.
  • There are various rendering improvements, which include:
  • The removal of many “firelines” and “slime trails”,
  • The removal of “sparkles” along the bottom edge of doors,
  • Better drawn floors and ceilings,
  • Changes in height are drawn more accurately,
  • Smoother, slightly darker and dithered lighting,
  • Light is cast better on the player’s weapon,
  • A better and more consistent “fuzz” effect for spectres, and the player’s weapon when they have a partial invisibility power-up.
  • The majority of “bugs” from the original DOOM have been fixed.
  • A “vanilla” mode is available that allows you to easily compare the many but often subtle differences between DOOM Retro and the original DOOM.
  • Keyboard support is improved:
  • The W / A / S / D keys are set by default,
  • The CAPSLOCK key can be used to “always run”.
  • Support has been added for DirectInput and XInput gamepads:
  • XInput gamepads vibrate when the player is injured, fires their weapon, or a barrel explodes nearby,
  • Gamepads can be connected in the middle of a game.
  • There is improved mouse support:
  • A higher mouse sensitivity is possible,
  • Vertical mouse movement is disabled by default,
  • The mousewheel can be used to change weapons,
  • A mouselook feature where the vertical position of the player’s weapon is updated dynamically.
  • Over 1,400 level-specific fixes for the official DOOM and DOOM II WADs have been implemented, which include:
  • Missing textures that cause floors and ceilings to “bleed”,
  • Incorrect textures,
  • Misaligned textures,
  • Monsters that are stuck in walls or each other.
  • Extensive player and map stats are available.
  • Significant changes have been made to the automap:
  • The automap updates dynamically as the player moves around the map,
  • The automap may be shown on an external display,
  • A rotate mode can be toggled on or off using the R key,
  • Solid walls are twice as wide and are drawn over other lines,
  • Secrets are drawn correctly as they are discovered by the player,
  • The path the player takes around a map can be displayed.
  • Several improvements have been made to the menu and player messages.
  • Screenshots have been enhanced:
  • Screenshots can be taken at any time using the PRINTSCREEN key,
  • Screenshots are saved as PNGs instead of the now obsolete PCX format,
  • Screenshots are the same size as the screen,
  • There is no limit to the number of screenshots that can be taken.
  • Several improvements have been made to the monsters’ animations.
Blood and gore with a retro feel

My Retro opinion

My general scope and expertise lie in WADs, but due to the compatibilities, features and certain tricks that some WADs have, I have been forced to play among a multitude of source-ports in order to fit the requirements. Usually, for universal compatibility I prefer GZDoom, but when it came to classic WADs, I preferred to play with Crispy due to the low fidelity aforementioned. The constant switching between source-ports made me try a multitude of them, and among the ones I’ve enjoyed the most, is, without a doubt, Doom Retro, and now I want to give my opinion about what I liked and didn’t like about this sweet source-port. All this from the opinion of an average consumer, not a code or source-port connoisseur!

What I like about it:

  • It perfectly encapsulates the vanilla spirit.
  • Enhances the game with QoL improvements.
  • Crispy beauty all the way!
  • Instant change between low and high detail.
  • Non-intrusive and easy-to-use console.
  • Cool visual enhancements for the menus and automap, like fade effects.
  • Extremely customizable thanks to CVARS.
  • Plug and play. Or is it install and play?
  • Slick simplicity.
  • Properly colored blood for Cacodemons, Hell Knights and Barons!
  • Minimalistic alternative HUD.
  • Consistency in updates (has being updated non-stop for 7 years).
  • Balanced performance.
  • A plethora of small visual effects like translucency, liquid effects, screen shake, blood splats, rocket trails, randomly mirrored corpses, brightmapsetc. All customizable and optional.
  • Incredible customer attention. (Brad is always there to help and listens to feedback)
  • A visual dithered lightning effect for improved crispy visuals. Optional too!
  • Screenshots are properly named according to map title.
  • The background menu animation is just so cool to me.
  • Global stats tracked for your entire playthroughs.
  • The Doom Retro Wiki for all reference needed.
  • A recommended WADs list https://github.com/bradharding/doomretro/wiki/RECOMMENDED-WADS created by Brad and supported by Doom Retro. Obviously.
  • DirectInput support and very responsive mouse sensibility.
  • Extensive bug fixing.
An awesome and simplistic alternative HUD

What I don’t like about it:

  • No demo support (although, justifiable).
  • Performance isn’t the best in low-end hardware.
  • No secret sound/notification. Expected on vanilla, but still wanted!
  • Can’t drag and drop zip files, or use zip files with ZDL.
  • VSync is ON by default. Although, it can be turned OFF.
  • Status screen doesn’t keep track of the total time played, just level time.
  • Gore/blood can’t bog down FPS on large levels.
  • Slightly slow loading times.

Is Doom Retro worth it?

If you’re still not sure about it after reading the entire list of features and pros and cons, honestly, I don’t know what else to tell you. It’s one of my favorite source-ports, it’s perfect for the vanilla lovers and it looks, feels and plays fantastically. Doom Retro is one of a kind and is just great for everything it sets to do. It’s goddamn worth it.

But now, I want to welcome the one and only, Brad Harding, creator and maintainer of this awesome mod! I reach out to him and asked him a few questions about his Doom story, the tale behind Doom Retro and more, so, without further ado, Brad!

Interview with Brad Harding, creator of Doom Retro.

E2M8 (Base Ganymede) taken with Doom Retro

1. Tell us, how did your history with Doom begin?

“The very first time I experienced DOOM was actually the day of my high school graduation in late 1994. That morning a group of us kids stopped by a friend’s place, and on a tiny 14″ CRT monitor in his darkened living room I spied the very start of DOOM II’s Entryway. My mind was blown. Although I was already familiar with Wolfenstein and Catacomb Abyss, I don’t think I had ever heard of DOOM before that day. I didn’t get a chance to play it then, but soon after I got hold of copies of DOOM and DOOM II and played them constantly.”

2. What made you want to create your own source-port?

“It wasn’t until several years later that I revisited DOOM. Of course, it still held up. But I guess because I was a bit older, I noticed little quirks in the game that I’d like to change for myself. My first exposure to other DOOM source ports was probably DOOM Legacy, and then ZDoom, as well as the Brutal DOOM mod. I found that although I definitely prefer the more vanilla side of things, I can also appreciate the more advanced features that those source ports and mods brought to the table, and that motivated me to find my own happy medium.”

3. You have been updating it consistently for more than 7 years, something admirable! Do you plan to continue doing this indefinitely? If so, what are your plans for the future?

“As long as it remains fun for me, then yes, I’ll continue to work on it. I have a long list of features that I’d like to implement, whether they be minor improvements, or more major endeavors. And then there are a couple of new “unique features” I have up my sleeve that I’d like to keep to myself for now. ;)”

4. How was the initial process of creating Doom Retro?

“I was a bit casual about it to start with. In late 2010 I moved (for love) 1,400km from Adelaide, South Australia to Sydney, and committed myself to start work on my own source port to hopefully release on DOOM’s 20th anniversary, 3 years later. There was no version control back then. I just tinkered with the source while writing down ideas in a journal.”

5. Throughout all this time, what has been the hardest challenge in its development?

“Software development is not my profession. All this is just a hobby. A passion, yes, but still a hobby. Everything I do to DOOM Retro I do in my spare time for free while trying to juggle a full-time job, etc. So, time management is always definitely a challenge.”

6. I have to ask, where does the logo come from? What does it mean?

“When DOOM Retro was first released, it’s logo had a very close likeness to the original DOOM’s logo, and so soon after to avoid any copyright issues, I sought my own unique branding. I initially played around with a few designs inspired from art in DOOM 2016’s art book, but strangely enough, the logo you see now is inspired by the designs adorning the first door you encounter in the first map of Quake. If you ignore the top-left and bottom-right elements of DOOM Retro’s logo you get a lowercase d and r.”

7. What source-ports have inspired you or have you used as exemplars to develop yours?

“Obviously, I’d have to say Fraggle’s Chocolate DOOM is the main source port of inspiration, of which DR was originally based on. Lee Killough’s work on BOOM and MBF is also inspiring. To mention Quake again, I can also appreciate qbism Super8 (https://super8.qbism.com/).”

8. Let’s talk WADs! You have a nice curated list of WADs compatible with Doom Retro, how was this list created? Have you played all these WADs?

“I tend to lurk on the Doomworld forums quite a bit. If a screenshot catches my eye, or a mapper of note posts about their newest creation, if I see “boom” or “vanilla” or “limit-removing” in the description, I might check it out. If I find it looks especially great in DOOM Retro, and plays well, it makes the cut. Have I played them all? Nah, I don’t have time for that, I’m too busy coding! But seriously, I’ve played them all (and for the slaughter maps: poorly).”

9. What are your favorite WADs?

“I absolutely love both Breach and Brigandine by Alun Bestor. He is such an amazing mapper who sadly hasn’t made anything since. Suspended in Dusk by the late Espi is brilliant. Episodes 1, 2 (and 3?) of Back To Saturn X by Esselfortium are works of genius.”

10. Are you satisfied with the work you have done?

“I am. It has been an amazing learning experience, and has become a very personal journey for me. I get a lot of enjoyment from working on this project, and believe it has become something very special, something unique, and I have every intention on continuing to work on it.”

11. Any last words to the fans?

“I would truly like to thank everyone who has offered their support over the past few years. I appreciate it immensely, and it keeps me motivated to continue DOOM Retro’s development well into the future. If you’d like to contribute in some ways, please don’t hesitate to contact me.”

– Brad

For the full feature, check it out issue #14: https://wadazine.com/portofolio/