Encode (Twitch): https://www.twitch.tv/videos/287619936
- Aims for fastest possible time
- Uses hardest difficulty
- Contains speed/entertainment tradeoffs
- Brightness is set to maximum for better viewing
IMPORTANT: This TAS does not take advantage of lag clipping, a major glitch that would save several minutes off of this time, because there is no emulator that can faithfully recreate this glitch. While this time is several minutes ahead of the fastest real time speedrun, there are a few points where I uncontrollably lose time to RTA (examples being the levels Final Outpost, Watch Your Step, and Breakdown.) Ultimately, it is up to a judge to decide whether this invalidates the run from being publishable.
Doom 64 is a spiritual successor to Doom 2 on the Nintendo 64, made by Midway Games and published by id Software. It features 32 new maps, as well as new graphics and sounds on a modified version of the Doom engine (which is built around the Atari Jaguar port's codebase.) It is also the only Doom game to feature the Unmaker weapon. While monsters such as the archvile and the chaingunner have been removed due to low memory capacity, there are also two new monsters: The Motherdemon and the Nightmare Imp.
This run plays on the hardest difficulty: Watch Me Die, the equivalent of original Doom's Ultra-Violence. A seperate category exists for the lowest difficulty, Be Gentle, but I believe that this category is not different enough, nor entertaining enough in a TAS setting to warrant its own TAS. The only notable differences in Be Gentle are less monsters, slightly different routing in certain maps, and double ammo.
Notable differences between Doom 64 and other Doom games:
This will document everything there is to know that makes Doom 64 different between other Doom games in a speedrun/TAS setting.
Usage of speed modifiers (SR40/SR50)
Doom 64 is not designed to be played on a mouse and keyboard, but the weird octopus-styled Nintendo 64 controller we all love to hate. Unlike most games, however, the further you're pushing up on the control stick, the faster you move forward. The same can be said for backwards movement as well. However, the N64 analog stick has ranges far greater than the physical stick can allow (the normal limit is approximately 90, -90 for both the X and Y axes, where the real limit is 127, -128). As a result the console allows inputs greater than what is supposed to be possible on the analog stick. This allows us to get to speeds far greater than expected. In RTA, this involves abusing the calibration of the controller on startup, or manually calibrating using a set of inputs. Setting the neutral position to 90 forward allows access to inputs beyond the standard range while still using a standard N64 controller. In a TAS, however, this is irrelevant as we have access to the full analog range at all times. Therefore, it is important to categorize this trick differently for TAS.
Essentially, we get the full benefits of Neutral Reset but even greater. To make things easier to understand, I will be defining strafe running the same way you would with PC Doom. Holding fully up on the control stick and strafing gives a speed boost equivalent to SR40 speed. Additionally, holding down the button bound to "strafe on" (default: down C) locks your turn speeds, allowing the equivalent of SR50 speeds. As far as I know, there is no way to maintain this while turning, so I frequently have to default to SR40 again to make corners.
Player/Enemy size difference
All enemies are bigger than their PC counterparts, including Doomguy himself. Because of the latter, there are no places where the player can glide (exactly fit through an area the width of Doomguy's size) in any maps of the game.
MACROs are a unique, albeit basic and Doom-centric scripting language designed specifically for Doom 64. They offer far less flexibility than other Doom engine based languages such as ACS, but more flexibility than any other original Doom title. Only one MACRO script can be run at a time, which is important because this means that we may be temporarily unable to progress through a level until the MACRO runs out (example: end of MAP05). MACROs are used to call basic and advanced actions, sometimes in a designated sequence in order to change the layout of a level, spawn enemies, operate bridges and more. Sometimes the level will offer triggers that will terminate the MACRO that is currently functioning (example: MAP15), but this is often not the case.
Other notable differences in map design:
Bridges work based on MACRO scripts that are often based on line triggers. These triggers raise and lower respective floors and ceilings out of our sight so as to give a fake-3D effect. The triggers can be skipped, but this isn't useful as it just ends up blocking our path.
Other/miscellaneous key differences between PC Doom and Doom 64:
- Rocket jumping no longer works
- Delay after hitting exit switch (for nearly all maps this delay is 15 frames long)
- Linedef trigger skipping is no longer directional
- Wallrunning to get extra speed no longer works
- Archviles, chaingunners, revenants and spider masterminds have been removed due to the limited cartridge space
- One of two projectiles can be spawned by the game at will (revenant rockets or darts)
- Lost souls have reduced health but are extremely aggressive
- Pain elementals can now spawn two lost souls at a time, and attempting to block them will result in you taking explosive damage that can kill you almost instantly
- The SSG and rocket launcher have a small amount of knockback, which increases your speed when going backwards, but not enough to make a huge difference over the course of any map
- The plasma rifle, while having virtually no cool down time, is highly nerfed, making it virtually useless in a run
- The Unmaker weapon, which can be powered up by grabbing three demon artifacts across three of the secret levels. Currently useless in an any% speedrun
- Additionally, grabbing the aforementioned demon artifacts allows you to exit the final map more quickly, but this is slower overall
- Lag clips allow you to voidwalk where the level design permits, and you can enter the level easily from the void by lag clipping in
Tricks/Skips used in this run:
SR50 speed is used extensively throughout the entire game. Running at this speed gradually saves minutes throughout the course of the run.
Throughout the game, we find keys on pedestals 64 units or thinner in length. Just like in PC Doom, we can thrust into these pedestals and grab the key early. This skips several puzzles and saves minutes of time, causing the run to be much faster paced.
There are two types of triggers that can activate events: LINEDEF based triggers and THING based triggers. The former kind can be skipped when passing through the line at the proper speed and angle. Not only can horizontal and vertical lines have skippable triggers, but using SR50, I can also skip triggers on diagonal lines, which is impossible with SR40 speed. This comes into play on MAP05, and saves some time. Most line-based triggers however you will want to activate, such as those for lifts, doors and other important events to progress the map. THING based triggers cannot be skipped as they possess a length and width bigger than possibly skippable, however there are no instances where skipping those triggers would help anyway.
There are a few places where doors are designed to open from the middle vertically and are divided into two halves. If we close the door on a precise frame, we can take advantage of the fact that we can get increased height from the bottom half. This is used in The Bleeding and Terror Core.
Doom, no matter what version you play, is a game that's heavy on RNG. RNG decides enemy movement and damage ranges, along with shotgun and SSG spread patterns. Thankfully, upon loading every level, the RNG seed is reset to zero, meaning that if improvements were to be made to the run, it will only affect RNG in that individual level.
RNG Manipulation without losing time
Shooting at walls allows us to manipulate RNG without changing our movement and delaying inputs by a specific number of frames. Therefore, we want to be able to manipulate RNG without losing time as much as the game allows us to. Also, in non-time sensitive moments such as autoscrollers, moving differently allows us to manipulate the RNG without using ammo.
Tricks/Skips not used in this run:
Emulation for the Nintendo 64 is not cycle accurate, and therefore, no functional emulator in this present time emulates lag properly. While in some cases this isn't a major problem, in this game lag can be used in order to clip through impassable linedefs (and given the map design, even walls, making voidwalking possible!) This TAS loses several minutes to not being able to abuse any sort of lag.
Here is how lag clipping would work if it was used in this TAS: If we run into anything that allows us to build speed on it, such as a fence or a bar, the SSG can be used to generate lag if we're close enough to the wall. This lag somehow increases our speed beyond normal limits about a half second later. Having this increased speed can allow you to bypass nearly anything as long as you have enough. This currently allows us to bypass any impassable linedef, any 16-unit bar, as well as any 32-unit bar. There are also a huge number of theoretical uses that a TAS might be able to take advantage of, so the full scope of what's possible with this glitch is still not fully known.
Other notable differences between console and emulator:
On BizHawk, loading times are doubled. This increases the length of the TAS by about 3 more minutes than if emulation was more accurate. This is unique because in many cases, the exact opposite is true from an emulation standpoint.
The version of BizHawk I used runs all N64 games at 60FPS even if they run below that. Doom 64 runs at 30FPS. Interestingly, this has the small side effect of dithering between odd and even framecounts per level (Example: The Terraformer advances on even numbered frames, where Main Engineering advances on odd numbered frames).
Stage by Stage Comments
MAP01: Staging Area
Staging Area is one of the most technical levels in the entire game from an RTA standpoint. The level consists of many small hallways and orifices that sometimes have 8 unit wide supports sticking out, along with very many enemies blocking you on Watch Me Die, making optimal movement difficult. The IL record is 0:28.
MAP02: The Terraformer
This is where new additions to the Doom engine start becoming evident. This level is so-called because we activate a terraformer in the middle of it. This is the only instance in the run where we have more than a few seconds of time to waste as the level changes. This is also the first level where sequence breaks come into play in the speedrun. We keygrab the blue and yellow keys to get them far more quickly than the intended route. Grabbing the blue key skips a puzzle that takes more than 20 seconds to set up, while the yellow key skips having to press a switch that isn't too far away, but wastes a few seconds to go towards. This is also the first instance of trigger skipping, in which I skip the activation of ceiling crushers just before the red key.
MAP03: Main Engineering
This was the first major roadblock in making this TAS. The main culprit was the yellow key room, which is deceptively complex and requires a lot of effort to make optimized. Incidentally, I abuse a previously unknown bug in the mapping that displays a missing texture (missing textures in this game display the message "I suck at making maps"). The yellow key room is one of the most complex rooms in the entire game. It consists of me having to spawn prevent two cacodemons as well as two nightmare imps. I have to manipulate the RNG so that three of the cacodemons already present in the room were able to spawn prevent them. This leaves six lost souls to kill, which takes two SSG shots. Additionally, I had to redo this multiple times due to having bad luck with the way the cacodemons in the room moved around.
The rest of the level is otherwise straightforward and not too difficult. A lot of it is an autoscroller when taken down to such an extreme. I lose a small amount of time by intentionally spawning a rocket launcher (which in turn spawns a few nightmare imps) but I need every single rocket I can get as rockets are sparsely placed in this portion of the game.
MAP04: Holding Area
The level starts with five enemies that need to be killed. I kill three spectres and two shotgun guys in three SSG shots.
The rest of the level is mostly just movement. I activate a lift as I'm getting the blue key and just barely make it back on. Activating this lift early saves 4 seconds.
MAP05: Tech Center
This level is mostly about perfect movement with some moments of RNG manipulation throughout. Early on we encounter two sets of barrels. I boost through the second set very dangerously, leaving me with 1 health.
After getting the yellow key, I head into a very tight set of rooms that are connected by thin hallways with a lot of doors. These rooms have monsters in them, and at the health I was at, manipulating monsters was very important. After this, I head into another thin hallway with a bunch of crushers inside, but I skip the trigger that activates them, saving about a second. Shortly after this, I turn around and press a switch, then proceed to use the lift on my way to the red key through the wall. Using the lift early saves 2 seconds. After getting the red key, I open the red door and skip a very hard to skip trigger that activates a crusher that surrounds the blue key, saving another 2 seconds. Skipping this trigger requires SR50 speed, which makes it essentially impossible to skip in RTA runs.
After obtaining the blue key, a MACRO activates that takes some time to end. While casually, and even in RTA runs, it ends quick enough to activate the next switch seamlessly, I end up speeding to the switch very quickly, which forces me to wait a short bit before going ahead and activating it, as the switch also triggers a MACRO. From here, it's just a short walk to the exit.
MAP06: Alpha Quadrant
This is a pretty unforgiving level that starts off with a hexagonal hallway that was extremely difficult to optimize. After that, we flip a switch to spawn two hell knights, which we must kill to get the yellow key. After that, we head over to the yellow key switch and position a lost soul under a portion of the ceiling that is lowered, so we can open cause the door to open early. We don't need to enter the door, but doing so causes the MACRO to end early, and the platform directly after the jump uses a MACRO to function. We cross over a few large platforms to hit another switch. Going backwards once you're on the other side saves about 10 frames over taking the teleporter. Once we get the blue key, we can exit the level.
MAP07: Research Lab
Very simple level with a lot of sequence breaks. I make a jump to the blue key that you aren't supposed to make, and then a few seconds after, immediately jump to the exit early. I intentionally lose 3 frames here to pick up two rockets that I must pick up; if I avoided them, I would be one frame away from getting a 0:10.
MAP08: Final Outpost
Due to the fact that lag clipping cannot be done on emulator, we cannot skip this level. There are still a few sequence breaks present that you wouldn't otherwise see, however.
Just before I get the blue key, I shoot the lost souls in such a way that one of the lost souls activate the lift trigger. This saves about 1.5 seconds over having to activate it myself. After that, we keybump the red key immediately, skipping an entire section filled with zombies, imps, and a baron. Shortly after, we proceed to do another keybump for the yellow key, which skips a small puzzle and saves a small amount of time.
The last part of the map is the most complicated, and is a massive highlight for those watching. Normally, alongside the four barons that spawn, there are two hell knights, but we can have the nightmare imps spawn prevent them, leaving only the barons. TASing this part of the game was insanely fun once I got that step done, because of the actual fight between the barons. I tried making this look as flashy as possible while picking up the health and ammo I need. In my opinion, this is an awesome tradeoff for unfortunately not being able to skip the level.
MAP09: Even Simpler
This level is a reference to MAP07 of Doom 2's "Dead Simple" and plays similarly, though we cannot skip it and the improved engine provides more freedom towards what enemies can be placed in the level.
This level is highly complicated, and is possibly the hardest level to TAS in the game. To put it simply: I must first kill the first set of mancubi in 3 rockets each, then kill 8 hell knights in 2 rockets each while manipulating RNG to spawn prevent 4 of 6 barons using the cacodemons that spawned earlier. After this, I kill the second set of mancubi that spawn by using two rockets and the darts. Because I spawn prevented most of the barons, I just barely have enough ammo to continue the run.
MAP10: The Bleeding
We start this map by immediately door jumping onto the edge of a balcony, which is possible because not all the lines that make up the edge are impassible. This causes the sequence to be broken a little bit. While we could go immediately towards the direction of the yellow key at this point, there's a problem: we have to get back in the spawn area to exit, and since we can't use lag clipping, we have no way of finishing the map. Therefore, we first have to go to the opposite side of the level to activate a switch that lowers a set of pillars, allowing us to enter once again.
Once we activate the switch, we head towards the yellow key. Then we navigate our way through a room filled with spectres and activate a couple of switches. Once I get the BFG, I use it to clear my path once I open the outside door.
MAP11: Terror Core
This level begins with a large amount of monsters that I all have to kill to progress. My weapon of choice is the rocket launcher, because it clears out the area the most efficiently. After getting the blue key, I head my way toward the arena this level has.
It's worth noting that the hardest part of this level in a TAS is not the arena, but this hallway that's filled with spectres just before it. Going back to the hallway and moving through it is very difficult without being blocked by the spectres. Intense RNG manipulation was used to get the best possible movement in this specific area.
Anyway, once we get to the arena, I use my BFG to clear out the majority of the monsters, then finish the rest off using rockets. After this, I head up and use a door jump to skip the yellow key. This leads me to the red key, after which I use my BFG again on the lost souls and open the red door through the wall, which allows me to get a faster entry into the exit.
MAP12: Altar of Pain
Yet another simple, yet broken, level. Up until the lift, the level stays relatively normal. But once I make it up the lift onto the balcony, I make a huge jump that effectively skips the rest of the level.
MAP13: Dark Citadel
By contrast, this level is pretty complicated. What makes this level so difficult is that you can have a demon activate a lift for you much earlier than you can get to it, which saves seconds. While I have to use this lift twice, I wasn't able to get this to happen a second time due to the monster movement. In the library, I'm able to hit a switch through the wall, saving roughly 4 seconds. Otherwise, this level is focused on movement.
MAP14: Eye of the Storm
We start this level by killing four barons in order to lower the pedestal that the blue skullkey is resting on. We kill two of the barons using the BFG, and the other two using rockets. It's important to note that I lay 3 rockets on one of the barons, then let the arachnotron finish it off as I go to the other side. After that, it's mostly a rush to the exit, avoiding some lost souls along the way, as well as hitting the switch that lowers the exit through the wall, saving a second.
MAP15: Dark Entries
One of the simplest levels in the TAS, mostly focused on optimization. I keybump the blue key to skip a massive puzzle that would otherwise take a huge amount of time. Otherwise, what's going on in this level is self-explanitory.
MAP16: Blood Keep
This is a very movement-intensive level with a ton of enemies blocking our way throughout. The room that is locked by the red door traps us in once we're inside, but if we're fast enough, we can avoid getting trapped entirely. I grab a backpack from its pedestal so I can get the 20 cells it gives so that I can use my BFG later in the level to kill some spectres that block me. Once I get the yellow key, I make a jump onto a railing to get to the yellow door earlier, saving some seconds. The zombies open the door for me after that, saving me from having to open it myself. Once I open the blue door, I ready my BFG and use it against the spectres. Normally, the exit room traps you in, but since I'm fast enough, I'm able to activate the MACRO before the door has a chance to close, giving me the ability to walk in and out of the room freely. I use my BFG as early as possible to kill all the enemies that spawn, which opens the exit.
MAP17: Watch Your Step
Similar to Even Simpler, this map has more of an emphasis on killing monsters in an arena. But this time, far more spawn prevention is involved. First, I need to get the blue key so that I can press a switch. I have a pain elemental spawn a lost soul that I lure with some RNG manipulation. I head back into the arena to start the fight sequence. It's very important to note that I only kill the monsters that the game flags as being necessary to kill, and spawn prevent some of those when possible. While fighting each set of monsters, I lead the lost soul through the arena, making sure it doesn't die. The reason I need to do this is because I have it spawn prevent one of the two cyberdemons, which saves two seconds and a BFG shot. Of course, this level can be skipped with lag clips, but we can't use them here.
MAP18: Spawned Fear
This map is very long, with multiple sections and lots of backtracking throughout. The first part consists of getting the blue key; the trick is to do so optimally while getting enough monsters to open the doors for me ahead of time. I have to pass this area of the level 3 times, so I need to do this 3 times as well. After getting the blue key, I head to the blue key door, and perform the window jump that allows me to get the red key early. This saves about 40 seconds. I then head to the red door and use my only BFG shot in the level; this is to make it easier for me going out the room with all the hell knights in it, as well as make it so it's less crowded going back to that area. I'm actually able to avoid using a lift simply by moving fast enough, saving a couple seconds, which is really nice. Moving in the caverns at this point was a chore, not just because of monsters blocking you, but because there's a nightmare imp that's stuck in the map geometry, which really changes the jump to get the yellow key. Fortunately, it saves more time to just leave it there than to kill it.
MAP19: The Spiral
This level is short and incredibly simple: go up the spiral once, hit a switch that lowers a wall, go up halfway, teleport twice to the red key, go up once again and make your way to the exit. The red key door can be opened from the opposite side through a wall, saving a second. The IL record is 0:18.
We start by immediately hitting a switch from below using the SSG. By abusing the shotgun spread, we can hit the switch to lower the blue key earlier than intended. After moving through the first set of hallways, I make it to the red key room, where I have to use 2 BFG shots to kill 18 demons. After this, I head back and go to the maze portion of the level. There are a couple bars that block our way, but there's enough space to get past them by running along the side rail.
After shooting the first three rockets, I grab the yellow key and head to the switch. Pressing it gives me access to the maze, where most of this level takes place in. It's harder to get past monsters in this area, because the maze is built diagonally. This means I have to shoot most of them to progress. I can make a jump to get to a switch that lowers a wall early, while avoiding a cacodemon below to save a few seconds. I also keygrab the blue key, saving a few seconds. After getting the red key, I had to manipulate RNG so that I could get the best possible distribution of the zombies after teleporting, making it so that I'm not blocked for too long.
MAP22: Burnt Offerings
This level has some of the strangest movement in the entire TAS, not only having to deal with very constrained spaces that are filled with monsters, but also requiring a lot of RNG manipulation on top of that. When I press the first switch, I go out of my way to rocket a cacodemon from below. I have to do this again, because both cacodemons completely block your path. I can get the blue key while the MACRO I just activated is still running, saving a few seconds. I am also able to activate the rocket launcher trap just before the MACRO is about to end, enabling me to not only run over the trap entirely, but to stand on top of the walls that surround it. Shortly after teleporting, I use a BFG shot against the demons, just so I can clear my path ahead. After I get the yellow key, I make my only real detour to get some ammo in this TAS, which wasted around 1.5 seconds, but will save me much more later on. I am also able to skip the trap that activates when you grab the red key, saving me more than 10 seconds. Luckily, the monsters didn't block me at all on the way to the exit.
MAP23: Unholy Temple
This is the longest level in the entire game. It starts with some arachnotrons and spectres that we need to kill to proceed. After that, we gain access to the lift that allows us to reach the barons, who we have to kill next. After that, we take a shortcut by standing on the switch that raises from the ground, and going over the border after we press the switch. We then go to the blue key area, skipping a trigger that spawns several sets of monsters, losing about 20 seconds. We'll have to go here again later. After getting the red key, we enter the room where we get the yellow key. Normally, we have to trigger a couple of MACROs and follow the key around in a convoluted fashion, but we can skip that. We need to trigger these MACROs later, but we need the yellow key immediately. We now go up so that we can do the puzzle, which gives us access to three switches that we need to press to exit the level. After the first switch, we have to go back to the lowest level to press the second one. We need to kill 3 arachnotrons with a BFG shot, and after that, we have to press two switches on the top of the room. Then, I press the lift so that I can make a quick exit from this room. Now, we have to trigger the aforementioned MACROs to get to the exit. For some reason, doing this as quick as I did causes one of the yellow keys that spawn to get in this weird state in between being spawned and being despawned (you can actually see it briefly in the TAS; you can tell because the key stays translucent the whole time.)
MAP24: No Escape
Appropriately named, No Escape is the hardest level in the Watch Me Die speedrun. The exit trigger is activated only once you kill the three cyberdemons. I have to go around part of the level twice, as I don't have lag clips, so I have to damage the first cyber with a BFG shot and 3 rockets. Once I get to the other two cyberdemons, I made it so that I kill two of them at the same time for entertainment purposes, although the level ended much earlier than normal, so I think doing this saved time as well.
MAP28: The Absolution
For some reason, this level is MAP28 despite being the 25th required level. I can only assume they wanted the player to wonder about MAP25-27, the "fun" levels. Anyway, this level has three gates that monsters come out of. Getting the three demon artifacts would close all the gates, but it takes less time to deal with the level normally. I need to manipulate RNG so that I don't need to wait between the time that any of the monsters spawn, which is easier said than done, because the monsters have to physically teleport into the arena, and the monsters' movement patterns vary a lot, especially when dealing with a lot of them.
The Motherdemon (known internally as the Resurrector) is the final thing we have to kill in order to finish the run! It has only 5,000 health, which means that with proper manipulation, it can be killed in two BFG shots. I shoot the first shot just after it becomes vulnerable, then set up the second shot in such a way where I get a height boost from the Motherdemon's attack. The result is that I die before the Motherdemon does, but the BFG tracers are still close enough so that I can kill it as early as possible.
TAS vs. RTA
|Altar of Pain||0:26||0:41||-0:15|
|Eye of the Storm||0:32||0:591||-0:27|
|Watch Your Step||0:31||0:17||+0:14|
1Utilizes pausing for lag clips/OoB strats
There are a huge amount of places where lag clips can be incorporated to save time, as established earlier. The difference might be so staggering as to create a whole different category entirely, but that's debateable, and depends on how much we still have yet to discover using the glitch.
Other than that, there are a few places where further optimization could save some time. The beginning of MAP04 is probably where I could improve the most, as I get through that area in three SSG shots as opposed to two, which would save over a second in that map.
This is my first attempt at TASing a full game. I have always appreciated TASes from a distance, but never thought I would end up making one until I realized that if I wanted a TAS of this game to exist, I had to make it myself. It took over two years, but I'm extremely happy with the resulting TAS.
Unfortunately, it simply can't be ignored that this TAS is unable to utilize the most broken and notable glitch in the entire game due to emulation issues that are out of my control. Some in-game times are significantly slower than what they could possibly be, occasionally being slower than even what real time runs have done. If this TAS isn't publishable for this reason, I fully understand.
Special thanks to Grav, for being one of the only speedrunners of this game and for providing insight that helped make this TAS possible.
adelikat: Claiming for judging
TheCoreyBurton: Publication is now under way.