Universal Enhanced AI

Projects that alter game functions but do not include new maps belong here.
Forum rules
The Projects forums are ONLY for YOUR PROJECTS! If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.

Re: Universal Enhanced AI

Postby Josh771 » Tue Oct 16, 2018 10:32 pm

@-Ghost- :lol: Yes, well, I might have taken some inspiration from Sneaky Doom. I actually would like to bring that same light-level gimmick to this mod/mutator at some point. It shouldn't be too terribly hard to add, but I haven't attempted it yet. (And I was formerly known as SidDoyle, which is an old username I'm doing my best to drop in favor of just Josh).

@Gideon020 Oh... I didn't realize there was a level set. The Babel I have is just weapons/effects and monster AI. It's mostly vanilla, but with monsters that attack in concert, either one after another or all at once. Am I playing an old release?
User avatar
Josh771
formerly known as SidDoyle
 
Joined: 03 Apr 2013
Location: Elsewhere.
Discord: josh771#7771

Re: Universal Enhanced AI

Postby Gideon020 » Wed Oct 17, 2018 1:29 am

Josh771 wrote:@Gideon020 Oh... I didn't realize there was a level set. The Babel I have is just weapons/effects and monster AI. It's mostly vanilla, but with monsters that attack in concert, either one after another or all at once. Am I playing an old release?


https://babel-mod.neocities.org/

Has both a levelset with modified weapons, and a monsters-only version, so possibly you're playing an older release.
Gideon020
Fanboy
 
Joined: 28 Sep 2015

Re: Universal Enhanced AI

Postby Tesculpture » Wed Oct 17, 2018 7:38 am

Having given this a try, I've found a bug whereby enemies that attack continually (ie chaingunners and arachnotrons) will get stuck shooting at their path nodes instead of moving toward them. I have been unable to replicate this reliably; as best as I can tell, it happens if a continually-attacking monster begins its attack (ie faces/takes aim at you), but loses sight of you before it actually starts firing.
User avatar
Tesculpture
 
Joined: 07 Feb 2016

Re: Universal Enhanced AI

Postby Enjay » Wed Oct 17, 2018 8:05 am

A second possible bug (or maybe it's meant to be that way judging by point 4 in the OP): I played through episode 1 with this (I like to use ep1 as a test bed for new stuff because I know it so well, so I can spot differences more easily) and a couple of times I came across enemies just standing there waiting to be shot when I know that they would normally have been active. Perhaps they got to their path node and then just stopped searching. The first time it (with the imps in the soul sphere secret of E1M3 - one was just standing there staring at the wall) the debug output had lots of "DoomImp searching for [insert number here]" messages.

Code: Select allExpand view
DoomImp path marker reached; continuing
DoomImp path marker reached; continuing
DoomImp path marker reached; continuing
DoomImp switch to searching
DoomImp searching for 29
DoomImp searching for 29
DoomImp searching for 29
DoomImp searching for 29
DoomImp searching for 29
DoomImp searching for 29
DoomImp searching for 29
DoomImp searching for 28
DoomImp searching for 28
DoomImp searching for 28
DoomImp searching for 28
DoomImp searching for 28
DoomImp searching for 28
DoomImp searching for 28
DoomImp searching for 27
DoomImp searching for 27
DoomImp searching for 27
DoomImp searching for 27
DoomImp searching for 27
DoomImp searching for 27
DoomImp searching for 27
Picked up an armour bonus.
DoomImp searching for 26
Picked up an armour bonus.
DoomImp searching for 26
Picked up an armour bonus.
DoomImp searching for 26
DoomImp searching for 26
DoomImp searching for 26
DoomImp searching for 26
DoomImp searching for 26
DoomImp searching for 25
DoomImp searching for 25
DoomImp searching for 25
DoomImp searching for 25
DoomImp searching for 25
DoomImp searching for 25
DoomImp searching for 25
DoomImp searching for 24
DoomImp searching for 24
DoomImp searching for 24
DoomImp searching for 24
DoomImp searching for 24
DoomImp searching for 24
DoomImp searching for 24
DoomImp path marker reached; continuing
DoomImp searching for 23
DoomImp searching for 23
Picked up an armour bonus.
DoomImp searching for 23
Picked up an armour bonus.
DoomImp searching for 23
Picked up an armour bonus.
DoomImp searching for 23
DoomImp searching for 23
DoomImp searching for 23
DoomImp searching for 22
DoomImp searching for 22
DoomImp searching for 22
DoomImp searching for 22
DoomImp searching for 22
DoomImp searching for 22
DoomImp searching for 22
DoomImp path marker reached; continuing
DoomImp searching for 21
DoomImp searching for 21
DoomImp searching for 21
DoomImp searching for 21
DoomImp searching for 21
DoomImp searching for 21
DoomImp searching for 21
DoomImp searching for 20
DoomImp searching for 20
DoomImp searching for 20
DoomImp searching for 20
DoomImp searching for 20
DoomImp searching for 20
DoomImp searching for 20
DoomImp path marker reached; continuing
DoomImp searching for 19
DoomImp searching for 19
DoomImp searching for 19
Picked up a box of bullets.
DoomImp searching for 19
DoomImp searching for 19
DoomImp searching for 19
DoomImp searching for 19
DoomImp searching for 18
Picked up a stimpack.
DoomImp searching for 18
Picked up a yellow keycard.
DoomImp searching for 18
Picked up a stimpack.
DoomImp searching for 18
DoomImp searching for 18
DoomImp searching for 18
DoomImp searching for 18
DoomImp path marker reached; continuing
DoomImp searching for 17
DoomImp searching for 17
DoomImp searching for 17
DoomImp searching for 17
DoomImp searching for 17
DoomImp searching for 17
Picked up a health bonus.
DoomImp searching for 17
Picked up a health bonus.
DoomImp searching for 16
Picked up a health bonus.
DoomImp searching for 16
DoomImp searching for 16
DoomImp searching for 16
DoomImp searching for 16
Picked up a health bonus.
Picked up a health bonus.
DoomImp searching for 16
Picked up a health bonus.
DoomImp searching for 16
DoomImp path marker reached; continuing
DoomImp searching for 15
DoomImp searching for 15
DoomImp searching for 15
DoomImp searching for 15
DoomImp searching for 15
DoomImp searching for 15
DoomImp searching for 15
DoomImp searching for 14
DoomImp searching for 14
DoomImp searching for 14
DoomImp searching for 14
DoomImp searching for 14
DoomImp searching for 14
DoomImp searching for 14
DoomImp path marker reached; continuing
DoomImp searching for 13
DoomImp searching for 13
DoomImp searching for 13
DoomImp searching for 13
DoomImp searching for 13
DoomImp searching for 13
DoomImp searching for 13
DoomImp searching for 12
DoomImp searching for 12
DoomImp searching for 12
DoomImp searching for 12
DoomImp searching for 12
DoomImp searching for 12
DoomImp searching for 12
DoomImp path marker reached; continuing
DoomImp searching for 11
DoomImp searching for 11
DoomImp searching for 11
DoomImp searching for 11
DoomImp searching for 11
DoomImp searching for 11
DoomImp searching for 11
DoomImp searching for 10
DoomImp searching for 10
DoomImp searching for 10
DoomImp searching for 10
DoomImp searching for 10
DoomImp searching for 10
DoomImp searching for 10
DoomImp switch to searching
DoomImp searching for 9
DoomImp searching for 29
DoomImp searching for 9
DoomImp searching for 29
DoomImp searching for 9
DoomImp searching for 29
DoomImp searching for 9
DoomImp searching for 29
DoomImp searching for 9
DoomImp searching for 29
DoomImp searching for 9
DoomImp searching for 29
DoomImp searching for 9
DoomImp searching for 29
DoomImp searching for 8
DoomImp searching for 28
DoomImp searching for 8
DoomImp searching for 28
DoomImp searching for 8
DoomImp searching for 28
DoomImp searching for 8
DoomImp searching for 28
DoomImp searching for 8
DoomImp searching for 28
DoomImp searching for 8
DoomImp searching for 28
DoomImp searching for 8
DoomImp searching for 28
DoomImp searching for 7
DoomImp searching for 27
DoomImp searching for 7
DoomImp searching for 27
DoomImp searching for 7
DoomImp searching for 27
DoomImp searching for 7
DoomImp searching for 27
DoomImp searching for 7
DoomImp searching for 27
DoomImp searching for 7
DoomImp searching for 27
DoomImp searching for 7
DoomImp searching for 27
DoomImp searching for 6
DoomImp searching for 26
DoomImp searching for 6
DoomImp searching for 26
DoomImp searching for 6
DoomImp searching for 26
DoomImp searching for 6
DoomImp searching for 26
DoomImp searching for 6
DoomImp searching for 26
DoomImp searching for 6
DoomImp searching for 26
DoomImp searching for 6
DoomImp searching for 26
DoomImp searching for 5
DoomImp searching for 25
DoomImp searching for 5
DoomImp searching for 25
DoomImp searching for 5
DoomImp searching for 25
DoomImp searching for 5
DoomImp searching for 25
DoomImp searching for 5
DoomImp searching for 25
DoomImp searching for 5
DoomImp searching for 25
DoomImp searching for 5
DoomImp searching for 25
DoomImp searching for 4
DoomImp searching for 24
DoomImp searching for 4
DoomImp searching for 24
DoomImp searching for 4
DoomImp searching for 24
DoomImp searching for 4
DoomImp searching for 24
DoomImp searching for 4
DoomImp searching for 24
DoomImp searching for 4
DoomImp searching for 24
DoomImp searching for 4
DoomImp searching for 24
DoomImp searching for 3
DoomImp searching for 23
DoomImp searching for 3
DoomImp searching for 23
DoomImp searching for 3
DoomImp searching for 23
DoomImp searching for 3
DoomImp searching for 23
DoomImp searching for 3
DoomImp searching for 23
DoomImp searching for 3
DoomImp searching for 23
Zombieman switch to chasing
DoomImp searching for 3
DoomImp searching for 23
DoomImp searching for 2
DoomImp searching for 22
DoomImp searching for 2
DoomImp searching for 22
DoomImp searching for 2
DoomImp searching for 22
DoomImp searching for 2
DoomImp searching for 22
DoomImp searching for 2
DoomImp searching for 22
DoomImp searching for 2
DoomImp searching for 22
DoomImp searching for 2
DoomImp searching for 22
DoomImp searching for 1
DoomImp searching for 21
DoomImp searching for 1
DoomImp searching for 21
DoomImp searching for 1
DoomImp searching for 21
DoomImp searching for 1
DoomImp searching for 21
DoomImp searching for 1
DoomImp searching for 21
DoomImp searching for 1
DoomImp searching for 21
DoomImp searching for 1
DoomImp searching for 21
DoomImp searching for 0
DoomImp searching for 20
DoomImp searching for 0
DoomImp searching for 20
DoomImp searching for 0
DoomImp searching for 20
DoomImp searching for 0
DoomImp searching for 20
DoomImp searching for 0
DoomImp searching for 20
DoomImp searching for 0
DoomImp searching for 20
DoomImp searching for 0
DoomImp gave up the search
DoomImp searching for 20
DoomImp searching for 19
DoomImp searching for 19
DoomImp searching for 19
DoomImp searching for 19
DoomImp searching for 19
DoomImp searching for 19
DoomImp searching for 19
DoomImp searching for 18
DoomImp searching for 18
DoomImp searching for 18
DoomImp searching for 18
DoomImp searching for 18
DoomImp searching for 18
DoomImp searching for 18
DoomImp searching for 17
DoomImp searching for 17
DoomImp searching for 17
DoomImp searching for 17
DoomImp searching for 17
DoomImp searching for 17
DoomImp searching for 17
Picked up a health bonus.
DoomImp searching for 16
DoomImp searching for 16
DoomImp searching for 16
DoomImp searching for 16
DoomImp searching for 16
Picked up a health bonus.
DoomImp searching for 16
DoomImp searching for 16
DoomImp searching for 15
DoomImp searching for 15
DoomImp[A] found ally DoomImp[B]
...and shared intel with them!
DoomImp switch to chasing
DoomImp reacquired
Picked up a health bonus.
Picked up a health bonus.
Picked up a stimpack.
Picked up an armour bonus.
Picked up an armour bonus.
Picked up an armour bonus.
Picked up an armour bonus.
Supercharge!

I also notice that "DoomImp gave up the search" is in there. Relevant?

Also, side questions:
How will this mod sit with enemies on patrol paths?
What about enemies being given thing_hate instructions (possibly in combination with patrol paths).
Is there any way to exclude certain enemies from the improved AI (e.g. if they are supposed to not be very smart or maybe they can't/shouldn't talk to allies... or something).
User avatar
Enjay
Everyone is a moon, and has a dark side which he never shows to anybody. Twain
 
 
 
Joined: 15 Jul 2003
Location: Scotland

Re: Universal Enhanced AI

Postby Josh771 » Wed Oct 17, 2018 9:22 am

I have noticed rarely that a searching monster will not pick up new targets for whatever reason. I'll look over the code and try to establish why that might happen. As to your side questions:

• Enemies on patrol paths shouldn't break afaik, but maybe if their next patrol point is out of their LOS they'll start searching for it. I'm not sure.
• I'm not sure how that will play out. As long as they can see that thing, they shouldn't behave any differently than a vanilla Doom monster.
• Presently, no. If an actor has +ISMONSTER, it is force-fed the AI script item.
User avatar
Josh771
formerly known as SidDoyle
 
Joined: 03 Apr 2013
Location: Elsewhere.
Discord: josh771#7771

Re: Universal Enhanced AI

Postby Enjay » Wed Oct 17, 2018 9:42 am

Thanks for the replies.
Josh771 wrote:• I'm not sure how that will play out. As long as they can see that thing, they shouldn't behave any differently than a vanilla Doom monster.

Given that around half of the Thing_Hate parameters are something like "go after X without seeing them first", that may prove problematic. I'll have to see if I can find somewhere to test this more thoroughly.
User avatar
Enjay
Everyone is a moon, and has a dark side which he never shows to anybody. Twain
 
 
 
Joined: 15 Jul 2003
Location: Scotland

Re: Universal Enhanced AI

Postby armymen12002003 » Thu Oct 18, 2018 1:51 am

Thanks this is great been playing this with Kriegsland really brings the challenge.

EDIT:
one thing you could do is make it where the AI deliberately targets the explosive barrels when the player is near them.
User avatar
armymen12002003
Hostile!
 
Joined: 01 Jun 2011
Location: LV-426

Re: Universal Enhanced AI

Postby Pixel Eater » Thu Oct 18, 2018 3:59 am

armymen12002003 wrote:one thing you could do is make it where the AI deliberately targets the explosive barrels when the player is near them.

That would be awesome! Then inevitably someone will make a gorilla that throws more at you :mrgreen:
User avatar
Pixel Eater
I sense evil I fear it here today, Like a bad dream that never goes away -MBerry
 
 
 
Joined: 02 Aug 2017
Location: In between the Moon and you, between the buried and me.

Re: Universal Enhanced AI

Postby Doominer441 » Sat Oct 20, 2018 3:21 am

Is there a way, when adding custom enemies, to add an exception so this won't affect them?
User avatar
Doominer441
 
Joined: 24 Oct 2013

Re: Universal Enhanced AI

Postby Josh771 » Sun Oct 21, 2018 5:05 pm

Doominer441 wrote:Is there a way, when adding custom enemies, to add an exception so this won't affect them?

Not at present, no. I'm not even sure how I'd do that, but I'm pretty sure it's possible with ZScript. I think perhaps other mod developers have done something like this. I might investigate and see if anyone has any good ideas on how to implement something like that.
User avatar
Josh771
formerly known as SidDoyle
 
Joined: 03 Apr 2013
Location: Elsewhere.
Discord: josh771#7771

Re: Universal Enhanced AI

Postby Doominer441 » Mon Oct 22, 2018 7:13 pm

Also, I've noticed this makes dormant monsters wake up when nearby non-dormant monsters are triggered to start searching.

Never mind, this was just from my own stupidity.
User avatar
Doominer441
 
Joined: 24 Oct 2013

Previous

Return to Gameplay Mods

Who is online

Users browsing this forum: Vostyok and 9 guests