I noticed that a lot of people were asking for respawning monsters in Brutal Doom (like the classic Nightmare difficulty in Doom) and nobody had tackled that problem yet, so I went ahead and did it.
Here is an example in Doom 2's MAP01. I basically run back and forth in the level so that you can see the monsters respawning.
Here's a brief example in the original Doom's Knee Deep In The Dead campaign. You can see at around 6:45 that some monsters I killed earlier are clearly respawning back into the map:
The monsters I selected for respawning are as follows:
ZombieMan
ShotgunGuy
ChaingunGuy
Imp
Demon
Spectre
HellKnight
BaronofHell
PainElemental
Arachnotron
Cacodemon
Revenant
Mancubus
I figured it would be a little crazy to have respawning Cyberdemons and Spider Masterminds, so I left those out.
It also gets crazy if you respawn Lost Souls, because Pain Elementals spit so many of them out, and they just multiply... it gets ridiculous. So, those aren't included either.
The spawn time I chose is 1400 tics, which is 40 seconds (35 tics = 1 second). This means that after a monster dies, a timer will begin to count down from 40 seconds, and when it hits zero, the monster will come back to life (leaving its original corpse on the ground). The original Doom had a spawn time of 30 seconds, but since Brutal Doom makes everything a bit faster paced and generally more difficult, I chose 40 seconds so that the player doesn't get overwhelmed. You can easily edit my mods and replace the "1400" in the DECORATE lumps with whatever respawn duration you prefer.
All 5 classic difficult levels are still available (I'm to young to die, Hey, not too rough, Hurt me plenty, Ultra violence, and Nightmare), but the difference is that monsters will respawn after dying on all difficulty levels, not just on Nightmare difficulty.
After trying this mod out with some friends online, I discovered that it's actually fun to use respawning monsters in deathmatch games. In order to make sure the players don't run too low on ammo, I made it so that all monsters will drop a random item or weapon when you kill them... If you also turn off the "Items Respawn" deathmatch flag, this means that the ONLY way for players to get additional items/weapons/ammo is by killing monsters. This makes for a fun new mode of gameplay where players are fending off a constant horde of enemies (and scavenging items from them) while also fighting each other. It's pretty fun. You could also edit this mod and do fun stuff like having higher-level monsters give better items and weapons, or whatever you feel like.
I have tested this with Brutal v018a and it works just fine. I really can't guarantee forwards compatibility or backwards compatibility, but I will try to update this mod each time a new version of Brutal Doom is released.
I uploaded both mods as attachments. To use these mods, just add them after brutalv018a.pk3 in the command line. For example...
Code: Select all
(...directory path...)/zdoom.exe -file brutalv018a.pk3 BrutalDoomNightmare_TheSleeve.wad
Code: Select all
(...directory path...)/zandronum.exe -file brutalv018a.pk3 BrutalDoomNightmare_TheSleeve.wad
Code: Select all
(...directory path...)/gzdoom.exe -file brutalv018a.pk3 BrutalDoomNightmare_TheSleeve.wad
You can also use launchers like Doomseeker to do this. Just make sure my mod comes after Brutal Doom if you're using multiple mods.
Known bugs:
- I have noticed that a few monsters (particularly the bigger, badder ones) don't always reliably respawn, and I'm not entirely sure why.
- If you are standing directly on a monster when it respawns, it's possible that you will get stuck. This is due to the fact that I am using the SXF_NOCHECKPOSITION flag on the A_SpawnItemEx function. Just kill the monster and you should be able to move again.
- Sometimes monsters who are thrown against walls when they die will get sort of stuck in the wall when they come back to life. This is also a side-effect of the SXF_NOCHECKPOSITION flag. I'm not sure how to fix this.
- If several monsters die in the same place, they may get stuck in each other when they respawn. Once again, this is due to the SXF_NOCHECKPOSITION flag.
- It's not possible to destroy corpses to keep them from coming back.
Fixed bugs:
- Pain elementals are no longer replaced by mancubi
- Pain elementals now respawn properly
- Chaingunners now drop only one chaingun instead of two