Yeah I always thought it was because they are evil demons who hate each other just as much as they hate you, so they will look for any excuse to start shit.
When I played it always happened between different species of demons so I thought they were more like tribes fighting together instead of a cohesive unit.
About self-infighting: you didn't say everything. If monster without melee attack is targeted to themselves, they will shoot in the air in eastern direction, which is the zero angle
@@zoelio999 Mob is short for Mobile. It was coined by Richard Bartle, who used it to refer to moving objects, usually NPCs, in MUD1, which was one of the very first virtual text-based dungeon crawlers ever made.
@@SurprisePie That origin for "mob" makes more sense. I had previously heard it was short for Movable Object Block, but that seems like kind of a lame backronym. "Mob" short for "Mobile" works better. Then maybe changing it to "Mobile OBject" right after. Personally, I preferred to call them Sprites.
Or they're trying to compete with each other to see who will ultimately get Doomguy's head. So instead of working together for that goal, they eliminate their competition first!
IIRC most of the gameplay beyond the engine was coded by Romero. He programmed nearly all the linedef effects at least, after maybe the first dozen or so by Carmack (simple doors and lifts, a crusher and stair builder, etc).
@@Fuchsia_tude I could be wrong, but I always thought that Carmack was the base coding guy to make the game run while Romaro was more of the level designer and sound coder. Both great for different reasons.
even if they aren't fighting each other, it doesn't even mean they're friendly in the slightest, they're only tolerating each other. when other's attack them by accident, they will not show mercy
The cacodemons and Barons of hell were said to have a rivalry, which is why i ask why don't cacos and barons fight each other more, Maybe it was hell knights but i forget , you'd think they'd fight each other to get to doom guy first or something.
AI “infighting” is always my favorite part of games. Bonus points if there are special interactions the AI have with each other that isn’t ever done against the player.
This once happened in a game called eve online. The NPC spaceships in it had an entire war amongst each other just for mining an asteroid belt until a certain NPC ship came which wiped out the entire battlefield and despawned
It's stunning that a game made over 20 years ago, that seems so simple on the surface, has so many complicated systema, like this or the randomness in animations. I also like that Archie has no threshold. It balances him out a bit.
I think the Archvile has no threshold because it can just resurrect the demon that attacked it and go: "Don't think about doing it again, I'll wreck you I swear to Satan!"
@@purplefloyd1513 Not entirely accurate. It has emergent complexity. The code and its functions are fairly simple. But the ways those functions play off each other - especially with a human player involved - _generate_ complexity.
Honestly my favorite parts. So many people try and explain gameplay mechanics without proving them. Luckily Doom is open source and can be easily proved
I thought something was funny about those rules and just only now realized they ARE like game logic programming, as if that whole universe was a game and those were its scripts! Brick joke finally hit me. Nice. What I mean is that physical/biological/natural laws does not distinguish entities such as "human" and "life", let alone "name" (except the immune system that exists specifically to do that - but it identifies proteins irregardless of their actual real origin). That instead is how game physics and logic works - it gives each entity a unique ID and uses it whenever calculations occur. Such as, a projectile fired by an entity typically carries ID of the one who fired it to determine friendly fire or incur infighting. In real world a bullet fired by a person is indistinguishable from one fired by anyone else - criminalistics exists to determine who could have done that but it is not an exact science. For the same reason time-of-death or length-of-life are not really things that can be exactly calculated. Death is a process where flesh siezes to function, necrotizes and then rots. Anything dying can be theoretically brought back to life - only some or all of their organs fail and do not work properly anymore, this includes brain. This is what coma often is - brain does not function correctly but has a chance to regain at least some of the functionality.
Monster Infighting is such a delightfully fun feature. After all these years, making monsters start a big brawl where they just angrily tear each other apart, still makes me giggle like a fool.
I love that the Archie has no threshold, it really fits him that he doesn't fuck around like that, the second he takes damage he turns around like "YOU!".
4:44 If you really want to see something wild, try firing a single pistol shot at a Lost Soul while it's in the middle of a charge. (I'm serious, go try it!) It freezes, hovering in mid-air, continuing its charge animation forever, completely helpless, letting you walk up and punch it to death, unless you hit it with something that knocks it back into a wall or another enemy. (In which case it will only damage things that are in the direction it's currently moving, regardless of what direction it's facing) I haven't looked at the source code, but I think the reason for the way Lost Souls behave (from what I've observed of the original game) is that when it charges, it becomes its own projectile. Every time it finishes a charge, it essentially becomes a new enemy, which is why it doesn't remember who it was in-fighting with after a single charge, and also probably why it doesn't make any sound when you get its attention. (Otherwise, it would be making that noise after every time it charges!) This makes me think that a video explaining the Lost Soul behaviour could be interesting.
Basically, yes that's what happens-- when the Soul attacks, it's in a special attack-mode animation, and it's supposed to change after the attack completes. But if it loses all forward momentum, it can get stuck for quite a while. But it does have that damage threshold thing. If you shoot it enough, but don't kill it, it may become "unstuck".
When I made Monster Mash, I gave the Lost Soul's attack to the Cacodemon. And I had to put a time limit on how long it would stay in attack mode. The Cacos, being more massive, could frequently get stuck in attack mode just drifting through the air.
Some extra notes: 1. The reason why making a sound previously in a room will prevent monsters from idling is because sound propagation is _permanent._ As soon as you press the fire button ( which, for most guns, means before they even _fire_ ), the "sound" spreads as far as it can given physical barriers and sound blocking lines, then marks all sectors that are touched with the firing player's id as their soundtarget. Then, whenever a monster calls A_Look ( the codepointer that, well, looks for a new target, called in every Spawn state ), it checks its current sector's soundtarget, and if there is one, it wakes up and starts chasing them. Notably, since soundtarget is only checked in A_Look, a monster that kills its current target with look around, see no players in vision range, go back to idle, check for a soundtarget, then immediately wake back up again. You can tell this from the fact that it makes its alert sound again. 2. Those hardcoded exceptions with the hell nobles and archviles are inherited by any actor that replaces them via Dehacked. Any actor that is internally a baron of hell will never be hurt by a projectile sourced to an actor that is internally a hell knight, and vice-versa, and the archvile's targeting idiosyncrasies will be adopted by anything that is internally an archvile. This doesn't go for hitscanners or lost souls being able to infight themselves, however, as those are caused by the effects of the hitscan and lost soul charge codepointers themselves. 3. Minor correction, but all vanilla Doom monsters call A_Chase twice per step ( one at the start of the animation frame, and one in the middle ). This means that it takes a minimum of 50 ( visual ) steps for a monster to be able to change targets, though it easily can be more if a monster starts an attack with its first A_Chase call per step. Except with the caco, though that's because it literally doesn't have a moving animation.
Kinda ironic considering in Hell's lore in Doom 2016 they were smart enough to take over heck tons of dimensions and corrupt it into their own like a cancer plague yet they can't stop themselves from infighting each other.
The demons don't really lack for numbers, so any losses due to infighting among themselves are acceptable losses. Also, there's no monster infighting in Doom 2016 other than scripted instances... so those demons are really "smarter" in some senses. Or at least their higher-ups can maintain better discipline.
@@Schwarzvogel1 We could, alternatively, think of their higher smartness as being so intimidated by their superiors that if they start 1 more infight they're executed on the spot, no court marshaling, so they'll rather fight a literal suicide mission against Doomguy than face whatever horrors their superiors cook up since there's nothing else to look forward to conquer. Maybe they already knew from seeing it all, and had a tough choice to make: die a brutal but pretty quick one from Doomguy, or pure agony from their superiors. I definitely see which is an easier choice, but whichever you take you're still fucked.
When I was a kid, I remember always waiting on Icon of Sin to spawn lots of enemies, and then run across the map with god mode and noclip, to then watch the carnage. Sadly I remember making so many monsters die in this way (over 12k monsters), every time I tried to load the savefile, the game would crash in less than 5 seconds
I once borrowed dad's x486 laptop with a passive LCD black-and-white screen to play Doom II. IDCLEVed to map 30 and started running around and spending ammo on endless waves of monsters. After some time the game started glitching, the LCD matrix was not redrawing quickly enough, and I could barely see what was happening anymore, behind mountains of corpses. After maybe 40 minutes the game crashed.
There's something oddly satisfying about hiding around a corner and listening to a group of hitscanners going at each other. The sound effects of them shooting and hollering makes me giggle :b
The first time I read about monster in-fighting, for original Doom, was mainly focused on Barons vs Cacodemons, as the two monsters were meant to hate each other and took pleasure in offing their opponents before turning their attention back to the player. I think that and the feud between the Cyberdemon and Spider Mastermind are probably my favorite examples.
@@CantoniaCustoms theres a mod called Idle Doom, where demons spawn in the center of a room and you press switches to buy gunners to kill them. It works like an idle game but in Doom.
The code designed for Baron and HK still works, even if one of them uses the different projectile, such as cacodemon fireball. Because of this, HK and Antaresia (Baron replacement) in Struggle don't infight each other. On the other hand, if one of them uses a hitscan attack, the one that hit by a bullet will start trying to infight against the hitscanner. Even if the projectile doesn't do much, they'll have a nice boxing match in close range sooner or later. And that's why Annihilator (another Baron replacement) in Eviternity uses hitscan attack, rather than Former Captain or Arachnotron's high-caliber bullet projectile, to provoke infighting.
After all these years of playing Doom, I finally got an answer as to why some enemies stay focused on me even when getting hit by other enemies. You really know this game inside and out, and I applaud you for sharing the knowledge
I remember watching my Dad play this on his PC when I was a little kid in the early 90's and he was blown away that the enemies turned on each other. I remember him saying he doesn't know how games could possibly get better.
While this comment goes beyond vanilla Doom, I think it's somewhat relevant: In at least complevel 11 (MBF), infighting seems to trigger differently. I have not looked at the code but it feels subjectively a little worse than vanilla in that the threshold isn't hit as easily so they keep fighting the player a little longer... Maybe? I really should look at the code. Sadly I realized this difference only after Eviternity was already long since settled on this complevel.
I noticed that too. It's as if the threshold is set to a high number when a demon spots you. Often I want an undamaged Cyberdemon that just spotted me to infight stuff, but he simply doesn't retaliate. Worth investigating!
@@decino I'm looking at p_enemy.c for MBF 2.0.4 and it looks like Lee Killough rewrote a lot of this code. I assume it was mostly for cleanup so maybe the change is unintentional. But it could also be a side effect of MBF's friendly helper monster (item 888, by default a dog, replaced in Eviternity with the rather unfriendly Nightmare Demon). I don't know C but look at line 852: What does the value of 60 here mean?
Not at my computer right now. Quick glimpse: the monster that finds you has its threshold set to 60, so pretty much what I predicted. The threshold decrements each time a monster takes a step. When the threshold reaches zero or less, it can switch targets when damaged.
I haven't looked deeply into Doom code, but if I understand correctly, monsters are given the exact number for threshold, when their search for player is successful. Why exact number and not adding? Well, I don't know. But it was intended do do that way. You can choose between classic infight and modified. Local .txt says that infighting would be harder, not completly removed
This is indeed the case. See my Valiant MAP19 demo for an example of how much work some fight setups require you to do to initiate an appropriate infight in MBF. Out of curiosity, is the threshold set to 60 every time a monster kills its current adversary and switches back to you, or does this happen only the very first time it spots/hears you?
One of the funniest glitches in an old version of doom was a pinki demon taking damage from a barrel. It would just stand there and do the bite animation forever lol.
Huh, amazing. I was just thinking about the next topic, and infighting was the one to cone to my head as the possible one. And I had a comment like "I am too jealous to allow monsters kill each other. They are all mine. Except Gotcha of course. Thanks for the video.
Infighting was always one of my favorite mechanics in DOOM, allowing me to save a bunch of ammo while I can just sit back and watch Hell’s forces tear each other apart. Needless to say, it saved me in a lot of areas, especially in DOOM II.
"What about you and me, on my couch, with pop corn, a huge tv, and beautiful afternoon watching all decino's yellow screen videos teaching us everything about Doom with his delightful voice?" And that is how I met your mother kids.
This explanation reminds about how there was a college presentation about how the AI works in games like F.E.A.R. and other games inspired by it. Just shows that some AI for games like Doom can still hold up because of how much thought was put into it.
Wow, even after playing Doom for all these years, I never realised how much logic was behind infighting. One question; doesn't RNG factor in to any aspect of the infight logic? It feels like it would have been a better "index" than the step counter you mention. As always, great video!
Only indirectly. Idle monsters will only retaliate if they get damaged when on their first idle frame (they have 2), so the timing of the other monster's attack is pure RNG.
I love how much personality DOOM's enemies get just from the AI mechanics. The Arch-Vile having absolutely NO chill compared to other enemies gives it a far more aggressive feeling than the others, and I think that's super incredible.
There are wads that often intentionally use doom's infighting as a level mechanic I think theres also alot of times were Infighting is also often necessary to beat certain wads UV Max or to beat certain slaughter wads Infighting is a really cool feature that I think is pretty pretty uncommon in video games, the only other games off the top of my head that i can think of that have some kind of infighting are half life 2, sometimes in the borderlands games, and minecraft theres probably others but I either don't remember or haven't played
Some other games with AI infighting are Gamebryo engine games(Fallout and Elder Scrolls), Warcraft(some computer only teams will fight amongst each other), and Turok. I remember playing Turok Evolution and kiting saber-tooth cats out of that one cave system to have them demolish the enemy soldiers waiting outside. Fun times.
I remember Tatsurd-Cacocaco running Sunlust a while back and he ended up getting a completely random Baron on Baron infight because of a barrel. No setup, it just happened.
I like that stragedic part in doom. Makes this game unique and some good map makers build areas or even whole maps around that technic where without using it its hard or impossible to finish the level. Thanks for showing decino.👍👊🤘❤
One of my favorite (fixed) bugs is arch-vile resurrection loop. When archy kills some monster, resurrects them, kill again and so on. This was in some earlier version of ZDoom, and in Doom 2 beta
Friend and I were talking about this a while back, always though it was damaged based. We also talked about how the AI pathfinding was kind of like a marble in those wooden labyrinth mazes. Eventually based on the angles of the player/enemy facing and map wall angles, it would ambush you or catch you around a corner. Smart design based off of what they had w/ memory and such.
I think an underrated benefit of infighting, aside from saving ammo, is that it distracts the monsters and frees you up to either A) Take on another group of monsters in the area or B) Allow you to work on a puzzle/getting out of a room, it's especially helpful on Nightmare to get some infighting to happen which frees you up to make a beeline out of the area.
That was good, and I learned a few things. I wanted to mention: the rockets fired by the Cyberdemon have two kinds of damage. They have regular missile weapon damage, but also splash damage. Any kind* monster could get damaged by the splash, and then go after the originator I think? * any: except that Cyberdemons are also immune to rocket splash damage. So they still don't go after each other. IIRC, I think I discovered this behavior when playing around with DeHackEd and giving the rocket attack to other monsters. The Cyberdemon immunity to rocket splash damage is based on thing slot.
They fact they thought of in fighting and programmed it into the game is genius. The first time I saw it happen, and then started making it happen, I felt like a tactical mastermind.
Finally someone who explains how the threshold value works. I keep seeing new doom players confused why monsters don't instantly retaliate to others. Great vid as always, Pro Plutonia 2 when decino? wait, wrong channel
One of the funniest in-fighting brawls I saw was in Brutal Doom where two cyberdemons were kick stomping each other due to a barrel that went boom. (A melee attack exclusive to BD games). They rocketed each other for a bit, and then when they got close enough they started stomping and eventually, one went kaput. The rockets never hurt each other, but as soon as they started stomping I could see damage hits and soon enough, kaboom. Never thought I'd ever see it, but hey, it followed the code.
I think I caught some infighting today in Doom 2016. I didn’t see the fight but I come around a corner and just see the last few seconds of a mancubus’ corpse existing.
This is a game from 1993. People say that it was complex for it's time. I think this game should be still considered complex even in 2019. Monster infighting is just one thing, there are so many other things in the game, that I think this game still holds up really well. Just the way you can interact with the world around you, the power-ups, the weapons. Every enemy matters, and they are so distinct from each other, not just from a visual perspective, but the way they behave. To give you another example: When you shoot the cacodemon with a chaingun, it rarely fires back, because he is in constant pain. These ideas, these thoughts make this game one of the best, if not the best game of all time.
Omg thank you for that Archvile tip. I noticed him attacking other demons before, but didn't realize I accidentally caused that by having him switch targets the first split second he started setting me aflame.
When I was a kid I use to call Cyberdemon Servant (Sluga), because of the Plutonia level where he fights everyone and helps me. I actually didn’t know his true name until I got interested in Doom again after long brake, and learned English better. I cannot remember how I use to call them all, but I know Zombie man was Veterinarian, Pinky was Bakarača (I have no idea how to translate that one), Mancubus was Babura ( Fat Granny), Revenant was Zarezač (Pencil Sharpener, his shoulder launchers reminded of that), Arachnids Spidey (Paućak), Cacodemon was called Dom (Since I didn’t know English and for “oo” sound we read it as “o”, and Cacodemon was on exe icon), Pain Elemental was called Sheep (really have no idea why) and Icon of Sin was called Emboo Kai since that is what I first understood when he would start speaking. I wish I could I could remember others.
Currently playing through Doom for the first time (yes, I know I’m late to the game) and I used your infighting tips to defeat the spider mastermind. Love the videos, please keep them coming!
I think the lost souls are an interesting case of infighting They were made to be projectiles against anything that wasnt a demon, aka Doomguy, so if they get involved with infighting, they quickly forget their secondary target due to being incredibly simple minded weapons
All of decino’s doomguy thumbnails have me thinking, this doomguy fella seems like a pretty chill dude. Playing poker with the demons, trying to tug the spider mastermind’s legs to hold her in place, running in and starting turf wars amongst the demons.
Blood actually does have infighting! It's been a long while since I played but I vividly remember getting axe zombies to gang up on a fat zombie in that one episode that starts you off in a castle. (the axe zombies eventually win)
I know I've seen Steamworks mods that allow you to do this in Serious Sam games, but of course since they weren't designed for infighting, it only results in making the games easier, and you already get an absurd abundance of ammo, anyway.
I was really happy to see monsters infighting in Doom Eternal, but sad when I realized they were all just pretending to fight and not actually hurting each other.
Monster infighting was one of the coolest things about Doom. I'm so glad to see enemy infighting in some other shooters like the Borderlands series, though that is more limited. To infight in Borderlands, enemies must be part of opposite "factions". Humans and wildlife, for instance, will fight each other as will wildlife of different species who "hate" each other (such as threshers and varkids in Borderlands 2).
Fun fact: Sonic Robo Blast 2, a Sonic fangame built off the DOOM engine, did not bother to remove monster infighting. It does not happen particularly often due to most of the enemies not being able to attack eachother, but you can see a prime example of this in the secret Disco Room, where Dr. Eggman will fight back against the three Jetty-Syn badniks if they hit him.
Ok, I've seen almost all of the videos analyzing Doom, and all I can say is the amount of research in these is incredible. I can't think think of anyone else in gaming who goes this deep for their viewers.
When you hate yourself so much you start tearing yourself apart for hitting an explosive barrel
"Oh crap, I missed! I'm such and idiot, let's commit the not living."
Well, demons aren't known for being sane.
Nocny Cieć z Choroszczy
Demon: *Blows up explosive goo tub.*
Demon: *Commits Sudoku to preserve honor.*
I mean who among us can say they haven't at least once done that after a good night out on the town.
This reminds me of a string of pictures where a revenant punched an explosive barrel and he died
The justification John Romero gave for including infighting as a mechanic is my all time favourite game design quirk: "They are chaotic/evil!"
Yeah, when i first saw the demon infighting as a kid i wasn't very surprised, i took it as "Oh look...well, i knew they were assholes."
The chaotic evil thing is referencing D&D alignments.
Yeah I always thought it was because they are evil demons who hate each other just as much as they hate you, so they will look for any excuse to start shit.
When I played it always happened between different species of demons so I thought they were more like tribes fighting together instead of a cohesive unit.
@@JojonathanOliveira That's how I've always imagined it. Demons are racist.
"Get a load of these demons"
-Doomguy
Hello fellow crystal guardian
"[...] It will start tearing itself apart."
*Brutal.*
RIP AND TEAR THEY SAID
@The Xenomorphian Congratulations, your reply made someone laugh, have a imaginary cookie!
It's not a phase, Satan!
Shamefur dispray!
@The Xenomorphian here have a cookie 🍪
About self-infighting: you didn't say everything. If monster without melee attack is targeted to themselves, they will shoot in the air in eastern direction, which is the zero angle
Oh yeah, good one.
Interesting, I didn't know that, might be able to use it for Dehacked tricks
In heretic this was never fixed if they blow-up a gaspod they'll meele themselves to death
@@xindage9820 heretic is underrated
I was curious and searching for this very topic. Thanks!
1:55 it's good to know that even back in 93 no one took function argument naming seriously.
thingy
That's just lovely 💞
Wait... is this also where the term Mob comes from, mobj or monster object?
@@zoelio999 Mob is short for Mobile. It was coined by Richard Bartle, who used it to refer to moving objects, usually NPCs, in MUD1, which was one of the very first virtual text-based dungeon crawlers ever made.
It was '93. They *especially* didn't take it seriously.
@@SurprisePie That origin for "mob" makes more sense. I had previously heard it was short for Movable Object Block, but that seems like kind of a lame backronym.
"Mob" short for "Mobile" works better. Then maybe changing it to "Mobile OBject" right after.
Personally, I preferred to call them Sprites.
As soon as they see Doomguy, they realize that fighting amongst themselves is better.
Thats because they think doomguy will spare their lives if they kill themselves
@@joshuagostosaum666 *They're wrong.*
Or they're trying to compete with each other to see who will ultimately get Doomguy's head. So instead of working together for that goal, they eliminate their competition first!
The Ugly Barnacle I’m pretty sure demons are smart enough to know that 2 of them cannot kill doomguy, let alone a single demon.
doom 1 2 and 64 are before doomguy became feared by demons and got the name "doomslayer" so,, probably not
the way doom is programmed is amazing, it's nice to have someone that teach us about this, keep the great work decino.
John Carmack is a coding god
Doom was ahead of its time and still is with its coding imo
IIRC most of the gameplay beyond the engine was coded by Romero. He programmed nearly all the linedef effects at least, after maybe the first dozen or so by Carmack (simple doors and lifts, a crusher and stair builder, etc).
Right? Doom's code is not too difficult to understand, nor too easy and thus boring, it's just perfection.
@@Fuchsia_tude I could be wrong, but I always thought that Carmack was the base coding guy to make the game run while Romaro was more of the level designer and sound coder. Both great for different reasons.
0:21 - Can we just take a moment to appreciate how awesome that orbiting missile manipulation was? **chef kiss**
The way the Revenant eventually killed the Hell Knight after his death, that was some revenge from beyond the grave type of sh-t.
@@CattleCluj but revenant is already dead, so beyond-the-grave-ception??
666 likes, damn.
time to change it >:)
This is such a well designed game. It also makes sense that these hell creatures don't have any attachment to each other.
Exactly - they're demons. They don't care what they're hitting as long as they're shedding blood.
even if they aren't fighting each other, it doesn't even mean they're friendly in the slightest, they're only tolerating each other. when other's attack them by accident, they will not show mercy
Demons are chaotic evil.
The cacodemons and Barons of hell were said to have a rivalry, which is why i ask why don't cacos and barons fight each other more, Maybe it was hell knights but i forget , you'd think they'd fight each other to get to doom guy first or something.
@@sheilaolfieway1885 In the Doom novels Cacodemons and Barons of Hell hate each other so much they will kill each other over humans.
AI “infighting” is always my favorite part of games. Bonus points if there are special interactions the AI have with each other that isn’t ever done against the player.
Baldurs Gate
Monster Hunter World basically
Monsters killing other monsters in Brutal Doom have unique fatality animations.
Unfortunately in the gba version infighting doesn’t work very well
This once happened in a game called eve online. The NPC spaceships in it had an entire war amongst each other just for mining an asteroid belt until a certain NPC ship came which wiped out the entire battlefield and despawned
that edgy baron trying to hurt himself got me
Can you blame him? If he knows his fate of being ripped and torn by Doomguy, then he would surely know that suicide is a preferable alternative.
CRAAAAAWLING IIIIIIIN MY SKIIIIIIN
"I shall die on my own terms!"
I'd like to see a mod that adds special sprites of the baron tearing himself apart when this event happens.
But can he actually kill himself?
It's stunning that a game made over 20 years ago, that seems so simple on the surface, has so many complicated systema, like this or the randomness in animations. I also like that Archie has no threshold. It balances him out a bit.
One of the great things about Doom's systems,is that they may be complex,but the code is pretty simple
It's solid,efficient and easy to understand
I think the Archvile has no threshold because it can just resurrect the demon that attacked it and go: "Don't think about doing it again, I'll wreck you I swear to Satan!"
Its actually not complex which just goes to show the difficulty of programming and coding.
@@silverhand9965 hence why it is modded to this day.
@@purplefloyd1513 Not entirely accurate.
It has emergent complexity. The code and its functions are fairly simple. But the ways those functions play off each other - especially with a human player involved - _generate_ complexity.
Baron of Hell: 'Trust Nobody, Not Even Yourself'
Highlighting the lines in the code was like reading and analyzing the rules of Death Note
Honestly my favorite parts. So many people try and explain gameplay mechanics without proving them.
Luckily Doom is open source and can be easily proved
I thought something was funny about those rules and just only now realized they ARE like game logic programming, as if that whole universe was a game and those were its scripts! Brick joke finally hit me. Nice.
What I mean is that physical/biological/natural laws does not distinguish entities such as "human" and "life", let alone "name" (except the immune system that exists specifically to do that - but it identifies proteins irregardless of their actual real origin).
That instead is how game physics and logic works - it gives each entity a unique ID and uses it whenever calculations occur. Such as, a projectile fired by an entity typically carries ID of the one who fired it to determine friendly fire or incur infighting. In real world a bullet fired by a person is indistinguishable from one fired by anyone else - criminalistics exists to determine who could have done that but it is not an exact science.
For the same reason time-of-death or length-of-life are not really things that can be exactly calculated. Death is a process where flesh siezes to function, necrotizes and then rots. Anything dying can be theoretically brought back to life - only some or all of their organs fail and do not work properly anymore, this includes brain. This is what coma often is - brain does not function correctly but has a chance to regain at least some of the functionality.
Monster Infighting is such a delightfully fun feature. After all these years, making monsters start a big brawl where they just angrily tear each other apart, still makes me giggle like a fool.
Whenever you are having a bad day, remember that the barrel remembers who hurt it.
Only if it doesn't explode on the first hit.
I love that the Archie has no threshold, it really fits him that he doesn't fuck around like that, the second he takes damage he turns around like "YOU!".
4:44 If you really want to see something wild, try firing a single pistol shot at a Lost Soul while it's in the middle of a charge. (I'm serious, go try it!) It freezes, hovering in mid-air, continuing its charge animation forever, completely helpless, letting you walk up and punch it to death, unless you hit it with something that knocks it back into a wall or another enemy. (In which case it will only damage things that are in the direction it's currently moving, regardless of what direction it's facing)
I haven't looked at the source code, but I think the reason for the way Lost Souls behave (from what I've observed of the original game) is that when it charges, it becomes its own projectile. Every time it finishes a charge, it essentially becomes a new enemy, which is why it doesn't remember who it was in-fighting with after a single charge, and also probably why it doesn't make any sound when you get its attention. (Otherwise, it would be making that noise after every time it charges!)
This makes me think that a video explaining the Lost Soul behaviour could be interesting.
Sounds interesting hope he sees this
Basically, yes that's what happens-- when the Soul attacks, it's in a special attack-mode animation, and it's supposed to change after the attack completes.
But if it loses all forward momentum, it can get stuck for quite a while.
But it does have that damage threshold thing. If you shoot it enough, but don't kill it, it may become "unstuck".
When I made Monster Mash, I gave the Lost Soul's attack to the Cacodemon. And I had to put a time limit on how long it would stay in attack mode. The Cacos, being more massive, could frequently get stuck in attack mode just drifting through the air.
it's the best practical application of the pistol once you have the chaingun!
Baron:I’m gonna kill you doom guy!
Revenant: *shoots baron*
Baron: But first....
Some extra notes:
1. The reason why making a sound previously in a room will prevent monsters from idling is because sound propagation is _permanent._ As soon as you press the fire button ( which, for most guns, means before they even _fire_ ), the "sound" spreads as far as it can given physical barriers and sound blocking lines, then marks all sectors that are touched with the firing player's id as their soundtarget. Then, whenever a monster calls A_Look ( the codepointer that, well, looks for a new target, called in every Spawn state ), it checks its current sector's soundtarget, and if there is one, it wakes up and starts chasing them. Notably, since soundtarget is only checked in A_Look, a monster that kills its current target with look around, see no players in vision range, go back to idle, check for a soundtarget, then immediately wake back up again. You can tell this from the fact that it makes its alert sound again.
2. Those hardcoded exceptions with the hell nobles and archviles are inherited by any actor that replaces them via Dehacked. Any actor that is internally a baron of hell will never be hurt by a projectile sourced to an actor that is internally a hell knight, and vice-versa, and the archvile's targeting idiosyncrasies will be adopted by anything that is internally an archvile. This doesn't go for hitscanners or lost souls being able to infight themselves, however, as those are caused by the effects of the hitscan and lost soul charge codepointers themselves.
3. Minor correction, but all vanilla Doom monsters call A_Chase twice per step ( one at the start of the animation frame, and one in the middle ). This means that it takes a minimum of 50 ( visual ) steps for a monster to be able to change targets, though it easily can be more if a monster starts an attack with its first A_Chase call per step. Except with the caco, though that's because it literally doesn't have a moving animation.
Kinda ironic considering in Hell's lore in Doom 2016 they were smart enough to take over heck tons of dimensions and corrupt it into their own like a cancer plague yet they can't stop themselves from infighting each other.
Smart in military; not common sense.
The demons don't really lack for numbers, so any losses due to infighting among themselves are acceptable losses. Also, there's no monster infighting in Doom 2016 other than scripted instances... so those demons are really "smarter" in some senses. Or at least their higher-ups can maintain better discipline.
@@Schwarzvogel1 We could, alternatively, think of their higher smartness as being so intimidated by their superiors that if they start 1 more infight they're executed on the spot, no court marshaling, so they'll rather fight a literal suicide mission against Doomguy than face whatever horrors their superiors cook up since there's nothing else to look forward to conquer.
Maybe they already knew from seeing it all, and had a tough choice to make: die a brutal but pretty quick one from Doomguy, or pure agony from their superiors. I definitely see which is an easier choice, but whichever you take you're still fucked.
Aren't most empires like this?
These guys are technically not smart, just overwhelm the battlefield with just huge numbers and projectiles
2:35 "I'm tearing me apart, Lisa"
When I was a kid, I remember always waiting on Icon of Sin to spawn lots of enemies, and then run across the map with god mode and noclip, to then watch the carnage. Sadly I remember making so many monsters die in this way (over 12k monsters), every time I tried to load the savefile, the game would crash in less than 5 seconds
The Icon of Sin can cause loaded games to crash for other reasons, so it might be that, too.
I once borrowed dad's x486 laptop with a passive LCD black-and-white screen to play Doom II. IDCLEVed to map 30 and started running around and spending ammo on endless waves of monsters. After some time the game started glitching, the LCD matrix was not redrawing quickly enough, and I could barely see what was happening anymore, behind mountains of corpses. After maybe 40 minutes the game crashed.
There's something oddly satisfying about hiding around a corner and listening to a group of hitscanners going at each other. The sound effects of them shooting and hollering makes me giggle :b
The first time I read about monster in-fighting, for original Doom, was mainly focused on Barons vs Cacodemons, as the two monsters were meant to hate each other and took pleasure in offing their opponents before turning their attention back to the player.
I think that and the feud between the Cyberdemon and Spider Mastermind are probably my favorite examples.
I once made a map that was RELIANT on monster in-fighting, but was told by others it wasn't very good because Doom is "not a spectator sport".
Foebane72 you should spite them by making a doom betting wad, press switch to place bets on which demons win the infight
@@CantoniaCustoms theres a mod called Idle Doom, where demons spawn in the center of a room and you press switches to buy gunners to kill them. It works like an idle game but in Doom.
You kidding me? Watching a horde of Cyberdemons go at it against even more Barons of Hell is one of my favorite pastimes!
Elitism is pathetic
@@DiggitySlice th-cam.com/video/CqvBJcEoRjU/w-d-xo.html
The code designed for Baron and HK still works, even if one of them uses the different projectile, such as cacodemon fireball. Because of this, HK and Antaresia (Baron replacement) in Struggle don't infight each other. On the other hand, if one of them uses a hitscan attack, the one that hit by a bullet will start trying to infight against the hitscanner. Even if the projectile doesn't do much, they'll have a nice boxing match in close range sooner or later. And that's why Annihilator (another Baron replacement) in Eviternity uses hitscan attack, rather than Former Captain or Arachnotron's high-caliber bullet projectile, to provoke infighting.
Some monster: (hits another monster)
Other monsters: *_YOU PICKED THE WRONG MONSTERS FOOL!_*
Archvile: Nah, man
And it repeats
Never should've come here!
After all these years of playing Doom, I finally got an answer as to why some enemies stay focused on me even when getting hit by other enemies. You really know this game inside and out, and I applaud you for sharing the knowledge
5:21 Doomguy: Decino
A ton of proyectiles coming towards him: our love and support
Whoopsy, I hit you with my love and support.
I'm kind of impressed by how well documented the code is, they made a really good effort to add comments to everything.
carmack's big ass brain
Moldygreenbean Spiderdemon brain levels.
that's not really impressive. impressive would be if they didn't write comments.
Documentation is really important,and Carmack understood that from the start
@@harryballs6652 and how exactly would it be impressive
Such a unique mechanic. Wish it was in more games.
*Coughs in Doom 2016 / Eternal*
-I think Diablo 1 & 2 have it.-
@@daniel-zh9nj6yn6y They don't.
@@0neDoomedSpaceMarine oh, ok.
@@vert3432
Pretty sure the infighting in Doom 2016 is scripted since it so rarely happens.
That rocket-wrangling used to finish off the hell knight is a thing of beauty.
I remember watching my Dad play this on his PC when I was a little kid in the early 90's and he was blown away that the enemies turned on each other. I remember him saying he doesn't know how games could possibly get better.
"Let one demon hurt another demon, and it's Worldstar time"
One of my favourite lines from this channel.
DOOM: a game where even bar fight scenes are a thing, and these demons are too drunk to know who’s friend or foe.
Too drunk w/ Anger and Hate ;)
Decino: "in-fighting is good."
Me: I think someone has a bright future as a politician.
@The Xenomorphian The banging in H-Doom is basically a pornified glory kill. Other that it is literally just a glorified asset swap.
especially if there is a demon outbreak in the future.
@Zoomer Waffen no, you go away
While this comment goes beyond vanilla Doom, I think it's somewhat relevant: In at least complevel 11 (MBF), infighting seems to trigger differently. I have not looked at the code but it feels subjectively a little worse than vanilla in that the threshold isn't hit as easily so they keep fighting the player a little longer... Maybe? I really should look at the code. Sadly I realized this difference only after Eviternity was already long since settled on this complevel.
I noticed that too. It's as if the threshold is set to a high number when a demon spots you. Often I want an undamaged Cyberdemon that just spotted me to infight stuff, but he simply doesn't retaliate. Worth investigating!
@@decino I'm looking at p_enemy.c for MBF 2.0.4 and it looks like Lee Killough rewrote a lot of this code. I assume it was mostly for cleanup so maybe the change is unintentional. But it could also be a side effect of MBF's friendly helper monster (item 888, by default a dog, replaced in Eviternity with the rather unfriendly Nightmare Demon). I don't know C but look at line 852: What does the value of 60 here mean?
Not at my computer right now. Quick glimpse: the monster that finds you has its threshold set to 60, so pretty much what I predicted. The threshold decrements each time a monster takes a step. When the threshold reaches zero or less, it can switch targets when damaged.
I haven't looked deeply into Doom code, but if I understand correctly, monsters are given the exact number for threshold, when their search for player is successful. Why exact number and not adding? Well, I don't know. But it was intended do do that way. You can choose between classic infight and modified. Local .txt says that infighting would be harder, not completly removed
This is indeed the case. See my Valiant MAP19 demo for an example of how much work some fight setups require you to do to initiate an appropriate infight in MBF.
Out of curiosity, is the threshold set to 60 every time a monster kills its current adversary and switches back to you, or does this happen only the very first time it spots/hears you?
One of the funniest glitches in an old version of doom was a pinki demon taking damage from a barrel.
It would just stand there and do the bite animation forever lol.
Huh, amazing. I was just thinking about the next topic, and infighting was the one to cone to my head as the possible one.
And I had a comment like "I am too jealous to allow monsters kill each other. They are all mine. Except Gotcha of course.
Thanks for the video.
Hello my fellow caco
@@trogo3402 Hello-hello. What a coincidence that you can't spell "hello" without the Hell
@@trogo3402 Caco invasion! Ha! :)
2:30 is a bug that should've been kept in the game. Demons randomly going crazy and tearing themselves apart is fitting and quite unsettling.
civvie 11 does doom 64 and now a Decino lesson! H E L L YES!
Back to back
Friends don't let friends watch Civvie11, so I'mma have to stop you right there, fam. 😶✋
@@pumpkin6429 what?
good pumpkin
@@pumpkin6429 #FreeCivvie
Infighting was always one of my favorite mechanics in DOOM, allowing me to save a bunch of ammo while I can just sit back and watch Hell’s forces tear each other apart. Needless to say, it saved me in a lot of areas, especially in DOOM II.
"What about you and me, on my couch, with pop corn, a huge tv, and beautiful afternoon watching all decino's yellow screen videos teaching us everything about Doom with his delightful voice?"
And that is how I met your mother kids.
This explanation reminds about how there was a college presentation about how the AI works in games like F.E.A.R. and other games inspired by it.
Just shows that some AI for games like Doom can still hold up because of how much thought was put into it.
2:31 Baron: "I'm gonna kick my ass!"
0:24 “Let one demon hurt another demon, and it’s Worldstar time.” Revisiting these videos is always worthwhile just to rediscover gold like this.
Wow, even after playing Doom for all these years, I never realised how much logic was behind infighting. One question; doesn't RNG factor in to any aspect of the infight logic? It feels like it would have been a better "index" than the step counter you mention. As always, great video!
Only indirectly. Idle monsters will only retaliate if they get damaged when on their first idle frame (they have 2), so the timing of the other monster's attack is pure RNG.
I love how much personality DOOM's enemies get just from the AI mechanics. The Arch-Vile having absolutely NO chill compared to other enemies gives it a far more aggressive feeling than the others, and I think that's super incredible.
There are wads that often intentionally use doom's infighting as a level mechanic
I think theres also alot of times were Infighting is also often necessary to beat certain wads UV Max or to beat certain slaughter wads
Infighting is a really cool feature that I think is pretty pretty uncommon in video games, the only other games off the top of my head that i can think of that have some kind of infighting are half life 2, sometimes in the borderlands games, and minecraft
theres probably others but I either don't remember or haven't played
Requiem and Memento Mori II are good examples of this. They have quite a few infighting dependent levels like Requiem's Dead Simple clone for instance
Some other games with AI infighting are Gamebryo engine games(Fallout and Elder Scrolls), Warcraft(some computer only teams will fight amongst each other), and Turok.
I remember playing Turok Evolution and kiting saber-tooth cats out of that one cave system to have them demolish the enemy soldiers waiting outside. Fun times.
Half-Life 2 does not have infighting
Half Life has in-fighting if you meant that instead of HL2, but only between soldiers and aliens.
Heretic and Hexen are two FPS games made with the same engine as the original Doom that feature infighting.
I remember Tatsurd-Cacocaco running Sunlust a while back and he ended up getting a completely random Baron on Baron infight because of a barrel. No setup, it just happened.
I like that stragedic part in doom. Makes this game unique and some good map makers build areas or even whole maps around that technic where without using it its hard or impossible to finish the level. Thanks for showing decino.👍👊🤘❤
5:23 is that....nuts.wad running without lag....WHAT IS THIS EVIL SORCERY
-|---- (the cross is for the demons living inside the video)
it is decino sorcery and you do not question him lest you be smited by shotguns
plutonium pc
PrBoom+
One of my favorite (fixed) bugs is arch-vile resurrection loop. When archy kills some monster, resurrects them, kill again and so on. This was in some earlier version of ZDoom, and in Doom 2 beta
I like how the lot of us Doom fans are essentially self taught at these kinds of subjects as the years go on
Friend and I were talking about this a while back, always though it was damaged based. We also talked about how the AI pathfinding was kind of like a marble in those wooden labyrinth mazes. Eventually based on the angles of the player/enemy facing and map wall angles, it would ambush you or catch you around a corner. Smart design based off of what they had w/ memory and such.
I think an underrated benefit of infighting, aside from saving ammo, is that it distracts the monsters and frees you up to either A) Take on another group of monsters in the area or B) Allow you to work on a puzzle/getting out of a room, it's especially helpful on Nightmare to get some infighting to happen which frees you up to make a beeline out of the area.
Imp: *accidentally hits Revenant*
Revenant: so you have chosen...death
Doomguy *fistpumps*
Monsters *start randomly fighting each other*
Cyberdemon *walks in -- obliterates everyone with rockets*
That was good, and I learned a few things.
I wanted to mention: the rockets fired by the Cyberdemon have two kinds of damage. They have regular missile weapon damage, but also splash damage. Any kind* monster could get damaged by the splash, and then go after the originator I think?
* any: except that Cyberdemons are also immune to rocket splash damage. So they still don't go after each other.
IIRC, I think I discovered this behavior when playing around with DeHackEd and giving the rocket attack to other monsters. The Cyberdemon immunity to rocket splash damage is based on thing slot.
3:16 it looks like that Revenant is pelvic thrusting at the Baron. I’m so unbelievably disturbed by this.
They fact they thought of in fighting and programmed it into the game is genius. The first time I saw it happen, and then started making it happen, I felt like a tactical mastermind.
Infighting is probably one of the best mechanics in videogames, even to this day, makes the world feel more real and interactive.
Wait a cacodemon-picking second.
"Open a can of boomer juice"???
Was that an honest to god Civvie11 reference? Decino, you cad. I love it.
FragMagnet Oh yeah.
A man a culture I see
whaddup helmetfolks
Ghoul Hellbilly AYYY
I mean civvie didn't start the whole "boomer juice" thing though
@@stickmakerman yeeah, he'd probably hate being credited as originator of boomer juice meme
Finally someone who explains how the threshold value works. I keep seeing new doom players confused why monsters don't instantly retaliate to others.
Great vid as always, Pro Plutonia 2 when decino? wait, wrong channel
One of the funniest in-fighting brawls I saw was in Brutal Doom where two cyberdemons were kick stomping each other due to a barrel that went boom. (A melee attack exclusive to BD games). They rocketed each other for a bit, and then when they got close enough they started stomping and eventually, one went kaput. The rockets never hurt each other, but as soon as they started stomping I could see damage hits and soon enough, kaboom. Never thought I'd ever see it, but hey, it followed the code.
Doom taught me about the infight mechanic. Life changing
I think I caught some infighting today in Doom 2016. I didn’t see the fight but I come around a corner and just see the last few seconds of a mancubus’ corpse existing.
This is a game from 1993. People say that it was complex for it's time. I think this game should be still considered complex even in 2019. Monster infighting is just one thing, there are so many other things in the game, that I think this game still holds up really well.
Just the way you can interact with the world around you, the power-ups, the weapons. Every enemy matters, and they are so distinct from each other, not just from a visual perspective, but the way they behave.
To give you another example:
When you shoot the cacodemon with a chaingun, it rarely fires back, because he is in constant pain. These ideas, these thoughts make this game one of the best, if not the best game of all time.
Guy That the chaingun in 2016 is also good at pain/stunlocking cacos 😄
I love that they doing even more like that in Doom Eternal.
Omg thank you for that Archvile tip. I noticed him attacking other demons before, but didn't realize I accidentally caused that by having him switch targets the first split second he started setting me aflame.
When I was a kid I use to call Cyberdemon Servant (Sluga), because of the Plutonia level where he fights everyone and helps me. I actually didn’t know his true name until I got interested in Doom again after long brake, and learned English better. I cannot remember how I use to call them all, but I know Zombie man was Veterinarian, Pinky was Bakarača (I have no idea how to translate that one), Mancubus was Babura ( Fat Granny), Revenant was Zarezač (Pencil Sharpener, his shoulder launchers reminded of that), Arachnids Spidey (Paućak), Cacodemon was called Dom (Since I didn’t know English and for “oo” sound we read it as “o”, and Cacodemon was on exe icon), Pain Elemental was called Sheep (really have no idea why) and Icon of Sin was called Emboo Kai since that is what I first understood when he would start speaking. I wish I could I could remember others.
That put a smile on my face.
This is the best feature of the entire game. It really conveys the chaotic nature of the monsters.
Wow it never came to my mind how complex monster infighting is.
I was playing DOOM 2 yesterday and caused a huge infight between hordes of shotgunners.
5:23 volume at Max, then type kill monsters.
I like your personalized pics for the videos. My favorite, cyberdemon thicc :v
Currently playing through Doom for the first time (yes, I know I’m late to the game) and I used your infighting tips to defeat the spider mastermind. Love the videos, please keep them coming!
I think the lost souls are an interesting case of infighting
They were made to be projectiles against anything that wasnt a demon, aka Doomguy, so if they get involved with infighting, they quickly forget their secondary target due to being incredibly simple minded weapons
Honestly I’m glad this is a feature. It makes the game so much fun to mess around with.
Cannot image Doom without it!
An analysis video! Perfection!
Hi Carl, how is Hell these days?
Good as long as the Pinkies don’t fight at the dinner table with the mancubi.
@@trogo3402 Oh those Pinkies...
@@trogo3402 Oh those Mancubi...
The tricks and traps and map 20 fight was incredible to see in vr
I could smell those rockets at 3:40, nice dodging!
idk why im so fascinated about the technicalities of a game i played when I was 4 years old yet here i am.
This is a great vid, thanks for clearing up my most lingering questions
All of decino’s doomguy thumbnails have me thinking, this doomguy fella seems like a pretty chill dude. Playing poker with the demons, trying to tug the spider mastermind’s legs to hold her in place, running in and starting turf wars amongst the demons.
It's a shame that BUILD games(Duke Nukem, Blood and so on) or Serious Sam games dont use infighting.
Blood actually does have infighting! It's been a long while since I played but I vividly remember getting axe zombies to gang up on a fat zombie in that one episode that starts you off in a castle.
(the axe zombies eventually win)
I know I've seen Steamworks mods that allow you to do this in Serious Sam games, but of course since they weren't designed for infighting, it only results in making the games easier, and you already get an absurd abundance of ammo, anyway.
Your skill at dodging in the various clips you show me put my several years of dodging projectiles in doom to shame.
The best part of the suburbs level was causing a massive fight.
I was really happy to see monsters infighting in Doom Eternal, but sad when I realized they were all just pretending to fight and not actually hurting each other.
0:59 it hurts me that he didnt hit the barrel.
Enemy or monster infighting is one of the funniest and greatest features of a video game.
You're quite the celebrity in the Civvie discord
I really hope no one was fist pumping during the tricks and traps fight, they would've gotten absolutely whipped by the barons
“Open a can of boomer juice”
Is this a Civvie reference?
@@GeekMasterGames same
Monster infighting was one of the coolest things about Doom. I'm so glad to see enemy infighting in some other shooters like the Borderlands series, though that is more limited. To infight in Borderlands, enemies must be part of opposite "factions". Humans and wildlife, for instance, will fight each other as will wildlife of different species who "hate" each other (such as threshers and varkids in Borderlands 2).
Monsters: *begins to infight*
Decino: haha fists go brrrrr
Fun fact: Sonic Robo Blast 2, a Sonic fangame built off the DOOM engine, did not bother to remove monster infighting. It does not happen particularly often due to most of the enemies not being able to attack eachother, but you can see a prime example of this in the secret Disco Room, where Dr. Eggman will fight back against the three Jetty-Syn badniks if they hit him.
lol 1:19 when pinky leans over that far & stay balanced still
I had wondered if infighting was a deliberate mechanic, or a bug that they left in. Now I know. It's amazing how much is involved in it.
1:26 pinky died with zombieman sound
Zombieman got rekt behind me.
Ok, I've seen almost all of the videos analyzing Doom, and all I can say is the amount of research in these is incredible. I can't think think of anyone else in gaming who goes this deep for their viewers.