Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
j4rio

Monster AI [they sometimes don't retaliate]

Recommended Posts

Monster 1 (for example hell knight) hits monster 2 (for example imp). Imp is now provoked and is going to attack hell knight. Player shoots at hell knight before he could get hit by any attack of provoked imp. Now to the point - I wanted to ask if it's vanilla behavior if upon shooting hell knight before imp, he doesn't get provoked to infight for some seconds and keeps tracking player instead, while getting bombarded by imp? I'm using a port so I'm not too sure. Also reason I want to know this is just because it's pretty tactical when getting this into use for tyson playthrough - you just shoot a pistol few times while all health gets slowly deplenished by other provoken monster.

Share this post


Link to post

This kind of thing does occur in the original game, but the whole issue is a little complicated. See the post by Quasar here for instance, as well as other posts in that thread.

Some ports may make some subtle or other changes in the way this works, of course. Obviously, any that retain demo compatibility must maintain the exact behaviour of the original game.

Share this post


Link to post

I always thought that was because the monster was angry at you for shooting him, lol

Share this post


Link to post

I was playing AV.WAD MAP25 once with Chocolate Doom and the Cyberdemon in the first room was fighting a couple of Barons and I was behind him watching and when he was finished fighting them he went back to his dormant state. I thought he would have resumed his previous target, but the vanilla behaviour must be to ignore the first target after killing a second. Very interesting, Boom had a feature to switch this flag on or off so it must be a Boom feature for the monsters to kill a second target and then resume attacking the first.

Share this post


Link to post
Mr. T said:

I always thought that was because the monster was angry at you for shooting him, lol

That is why, basically. The "threshold" that is given to monsters represents a certain level of anger due to a specific injury that gradually wears off as the monster stomps around. Dunno if you've ever noticed, but monsters infight a lot more readily if they are hit by a monster first rather than by the player, and THEN a monster.

Share this post


Link to post

If you add some MBF enhancements, the retaliation becomes even more complicated. They'll refuse to switch targets against another at short time after seeing you, and some times when they're unsuccessful pursuing their current monster target, they turn back on you (I guess Coop mode has the latter trait as well, correct?)

Share this post


Link to post
neubejiita said:

I thought he would have resumed his previous target, but the vanilla behaviour must be to ignore the first target after killing a second.


Actually, if you examine the source code, there's nothing even close to a "list of targets that pissed me off" for monsters: they only "remember" the latest attacker (which they pursue), and can only change target if a new attacker hurts them repeatedly and more than what the current one did.

Sure, the code (and mobj structs) could be changed so that attackers form a linked list or populate an array of sorts, and the retaliating monster goes through it one by one until it had killed every one last of them (or is killed itself).

It would be interesting, as a concept, but terrible for nuts.wad-like maps: monsters would have to "remember" quite a lot, and infighting would be far more destructive.

Share this post


Link to post

I do like that trick. Pop a cyber with a small gun and let its rocket hit another monster to provoke infighting. But that tiny amount of damage will keep the cyber from destroying the smaller monster instantly. Just keep hitting cyber and letting the other monster/s hit cyber. Saves lots of ammo.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×