[REQz] Conjuration AI fix

Post » Thu May 12, 2011 6:55 pm

No mod I'm aware of has addressed the fundamental problem with summoning, which is that enemies are so damn stupid about choosing targets. I'm sure there must be a way to fix this, by periodically adjusting actor disposition while in combat or something like that. Can an experienced modder take a look at this, please?
User avatar
Rachell Katherine
 
Posts: 3380
Joined: Wed Oct 11, 2006 5:21 pm

Post » Thu May 12, 2011 11:27 am

Maybe. :whistling:
User avatar
Charlie Ramsden
 
Posts: 3434
Joined: Fri Jun 15, 2007 7:53 pm

Post » Thu May 12, 2011 11:37 pm

http://www.gamesas.com/index.php?/topic/1115641-relz-minionz-one-touch-command-system/

http://www.tesnexus.com/downloads/file.php?id=25335
User avatar
Lalla Vu
 
Posts: 3411
Joined: Wed Jul 19, 2006 9:40 am

Post » Fri May 13, 2011 12:38 am

Those have to do with the summoned creatures picking targets. Pretty sure the OP is referring to the fact that when you summon a zombie, all your enemies instantly ignore you (the guy throwing fireballs and bolts of lightning) in favor of this slowly shambling mound of extra hit points. It's painfully exploitable; spamming cheap conjuration spells can nearly make you invincible.

...and yeah, I've got some ideas on the subject that I need to test more extensively. They're actually several months old, I'm just easily distracted. :P
User avatar
Rudy Paint fingers
 
Posts: 3416
Joined: Sun Nov 11, 2007 1:52 am

Post » Fri May 13, 2011 2:04 am

Those have to do with the summoned creatures picking targets. Pretty sure the OP is referring to the fact that when you summon a zombie, all your enemies instantly ignore you (the guy throwing fireballs and bolts of lightning) in favor of this slowly shambling mound of extra hit points. It's painfully exploitable; spamming cheap conjuration spells can nearly make you invincible.

...and yeah, I've got some ideas on the subject that I need to test more extensively. They're actually several months old, I'm just easily distracted. :P

I'd say go for it. Anything that makes Oblivion less "exploitable" is good in my opinion.
User avatar
Ellie English
 
Posts: 3457
Joined: Tue Jul 11, 2006 4:47 pm

Post » Fri May 13, 2011 2:20 am

Those have to do with the summoned creatures picking targets. Pretty sure the OP is referring to the fact that when you summon a zombie, all your enemies instantly ignore you (the guy throwing fireballs and bolts of lightning) in favor of this slowly shambling mound of extra hit points. It's painfully exploitable; spamming cheap conjuration spells can nearly make you invincible.

...and yeah, I've got some ideas on the subject that I need to test more extensively. They're actually several months old, I'm just easily distracted. :P

I'd love to know your take on this, then. I've been working on a mod along the same lines for companions - to make enemies attack the player rather than the companion. It's extensible to horses and summons, though.

For those interested, I'm hoping to get it to a releasable state before Christmas. :user:

Eloise
User avatar
Yvonne
 
Posts: 3577
Joined: Sat Sep 23, 2006 3:05 am

Post » Fri May 13, 2011 3:56 am

Meanwhile you might have a look at how BG does it in his Racial Balance mod. My warrior got the Lesser Power: Draw Attention on self in combat. I have in fact not used it yet, but when I feel like playing a Tank i will try it out.

Hope to see yet an other tejon release soon :hehe:
User avatar
Eibe Novy
 
Posts: 3510
Joined: Fri Apr 27, 2007 1:32 am

Post » Fri May 13, 2011 12:53 am

I made a mod called Stickier Enemy Targeting. Link's in the signature. It doesn't make your enemies "smarter" though - it just makes sure that they attack you, under certain conditions. Might be what you're looking for, might not.
User avatar
Nomee
 
Posts: 3382
Joined: Thu May 24, 2007 5:18 pm

Post » Thu May 12, 2011 4:15 pm

I'd love to know your take on this, then. I've been working on a mod along the same lines for companions - to make enemies attack the player rather than the companion. It's extensible to horses and summons, though.

This is where I last left it. The script below is attached to a summoned creature.
ScN tejonArsSummonedCreatureScriptshort initlong indexarray_var eachref actorref selfref casterbegin GameMode	if (init == 0)		let init := 1		StopCombatAlarmOnActor;		let self := GetSelf;		let actor := playerRef;		while (actor);			if (actor != self);				ForEach each <- (actor.GetActiveEffectCodes);					let index := each["value"];					if (MagicEffectUsesCreatureC index);						let index := each["key"];						if (self == actor.GetNthAESummonRef index);							let caster := actor;							BREAK;						endif;					endif;				Loop;			endif;			if (caster);				BREAK;			elseif (actor == playerRef);				let actor := GetFirstRef 69 2;			else;				let actor := GetNextRef;			endif;		Loop;		if (caster);			let actor := GetFirstRef 69 2;			while (actor);				if (actor != self) && (actor != caster);					let index := (actor.GetDisposition caster) - (actor.GetDisposition self) + 5;					if (index > 0);						actor.ModDisposition self index;					endif;				endif;			let actor := GetNextRef;			Loop;		endif	endifend

You'll note that most of the script is commented out. That's because after some preliminary testing I found that just the StopCombatAlarmOnActor line gave pretty good results all by itself. The rest of the script loops over every loaded actor twice, which is a significant amount of processing and might be nice to avoid. More testing is needed, though.

StopCombatAlarmOnActor all by itself doesn't prevent anyone from attacking the summon, but it does re-shuffle their target priority list. Depending on positioning and whether the summon immediately attacks them, they might go right back to it -- but at least there's some AI involved, and it's not a sure thing. I kind of like this, but like I said, it needs more testing -- if it turns out to still be easily exploited, I'd want to use the heavier solution.

The first loop runs through every loaded actor (player first) looking for the summon effect to which it is attached. Believe it or not, this is the only way I know of to find a summon's caster -- Andalaybay actually borrowed the code for his Oblivion XP update.

The second loop runs through every actor again, forcing their disposition toward the summon to be 5 points higher than their disposition toward its caster. (Might need to be more than +5 depending on how distance figures in; that was just a preliminary number.) Again, this isn't a 100% guarantee that they'll never attack the summon, particularly if it starts wailing on them; but that strikes me as realistic behavior.
User avatar
joannARRGH
 
Posts: 3431
Joined: Mon Mar 05, 2007 6:09 am

Post » Fri May 13, 2011 4:16 am

I was going to say that I thought one mod had already been made to combat this, but I think the one I was thinking of was documn's http://tesnexus.com/downloads/file.php?id=25951.

I haven't tried the one above, because with my current character (which has been so for more than a year due to much modding and little playing), I just decided that Conjuration is way too cheezy due to this, so I just restricted myself from using any conjuration at all. I endorse any efforts to make conjuration a bit less overpowered (and thereby, in my eyes, useful) though.
User avatar
Darian Ennels
 
Posts: 3406
Joined: Mon Aug 20, 2007 2:00 pm

Post » Thu May 12, 2011 4:43 pm

Enemies should obviously tend to target the player rather than summons, but it's also important that an enemy has some sense of when it would be better to kill a much weaker summon first. I started this thread after taking on three of OOO's sylvan archermeres at level 4, by hiding behind a pillar while my summoned fire thingy killed them. The archers just fired at me the whole time, and I didn't even realize I was exploiting until the they were all dead. :P In that situation the enemies should have stopped for 2-3 seconds to kill anything I summoned.
User avatar
Emily Shackleton
 
Posts: 3535
Joined: Sun Feb 11, 2007 12:36 am

Post » Thu May 12, 2011 2:39 pm

Why should we assume that enemies would always know what was summoned and what jumped up unseen and is just as much a threat. Just because we as players are that jaded to the game mechanics.

I don't always go for taking the summoner out right away either sometimes those summons are a pain and I have to take out what I can handle or is fastest to end the battle. If I can't get to the summoner because of the summoned then down goes that critter.

Maybe having the targeting depend on what is the bigger perceived threat offset by intelligence.
User avatar
Glu Glu
 
Posts: 3352
Joined: Sun Apr 01, 2007 5:39 am

Post » Thu May 12, 2011 3:08 pm

Why should we assume that enemies would always know what was summoned and what jumped up unseen and is just as much a threat. Just because we as players are that jaded to the game mechanics.


It's not a question of being jaded IMO as it was the first thing I noticed when summoning. Generally, all enemies immediately switch from the PC to the summon, which just seems weird/unrealistic/immersion breaking IMO. It also leads to conjuration being overpowered, but that's also immediately noticeable so not a question of being an issue only for jaded long time players I'd guess. Anyway, it has annoyed me from the very first time my char used conjuration. Ideally, I guess it should be a decision based on several factors in each case. Meanwhile, Stickier Enemy Targeting works rather well dealing with the issue.
User avatar
anna ley
 
Posts: 3382
Joined: Fri Jul 07, 2006 2:04 am

Post » Thu May 12, 2011 8:02 pm

Well Jaded in the sense that I, the player, can instantly recognize a summoned creature. It doesn't help that mousing over the NPC and they are called conjurer or something. Plus the summoned have shaders that make them stand out.

Jaded in that each time I see it - it is not new or unique or challenging to take out the summoner first.

But I think it a mistake because the way summons are used against the player (bad implementation) means that the NPCs have these same reactions.

I'd hope that like most proposed game mechanic changes proposed the mechanics go both ways. Like have summons appear without a shader, or without fanfare of mystic swirls, or conjurers be more sneaky and hard to spot. Then the behavior of the NPCs as they are now would likely better match what the player would have to face ... "arghh where'd that thing come from!?!"
User avatar
lucy chadwick
 
Posts: 3412
Joined: Mon Jul 10, 2006 2:43 am

Post » Fri May 13, 2011 4:00 am

A bit off topic, but Psymon reminded me of a small pet peeve of mine. Why are the summoned creatures always labeled "Conjurer's scamp" or "Necromancer's skeleton", even if you didn't see them summon it? It would be nice if they didn't always have the summoner's name attached to their own, then you wouldn't always know instinctively which zombie is summoned and you should ignore it and focus on the necromancer and which one needs to be killed.
User avatar
Penny Flame
 
Posts: 3336
Joined: Sat Aug 12, 2006 1:53 am

Post » Fri May 13, 2011 1:43 am

A bit off topic, but Psymon reminded me of a small pet peeve of mine. Why are the summoned creatures always labeled "Conjurer's scamp" or "Necromancer's skeleton", even if you didn't see them summon it? It would be nice if they didn't always have the summoner's name attached to their own, then you wouldn't always know instinctively which zombie is summoned and you should ignore it and focus on the necromancer and which one needs to be killed.


This is per design. When you use the spelleffect summon X then X gets the prefix. That's the way it is.
User avatar
Jessica White
 
Posts: 3419
Joined: Sun Aug 20, 2006 5:03 am

Post » Thu May 12, 2011 11:16 pm

This is per design. When you use the spelleffect summon X then X gets the prefix. That's the way it is.

Um, yeah ... I know it is intentional game design. I didn't think it was a bug or anything. I wasn't questioning why the game adds the prefix to summoned monsters, I was questioning why this is so from an in-game logic point of view, and complaining about how easy this makes fighting conjurers and necromancers. I mean, how exactly does your player character always know a summon from a non-summoned monster?

But then I guess I might as well complain about your character always psychically knows the names of every person and building and abandoned fort he/she comes across as well if I wanna go there, auto-identifying summons is a small drop in the immersion-breaking bucket compared to that.
User avatar
Beth Belcher
 
Posts: 3393
Joined: Tue Jun 13, 2006 1:39 pm

Post » Fri May 13, 2011 5:18 am

Enemies should obviously tend to target the player rather than summons, but it's also important that an enemy has some sense of when it would be better to kill a much weaker summon first. I started this thread after taking on three of OOO's sylvan archermeres at level 4, by hiding behind a pillar while my summoned fire thingy killed them. The archers just fired at me the whole time, and I didn't even realize I was exploiting until the they were all dead. :P In that situation the enemies should have stopped for 2-3 seconds to kill anything I summoned.

Yeah, I agree, those archers were dumb. Were you using Stickier Enemy Targeting here, or did they do that without any help? Even if they killed your fire guys, they still would not have found a way to kill you, which I think is an issue that is just as important as fixing conjuration AI. (I guess maybe they would have killed you if they ran out of arrows and decided to go melee.)
User avatar
k a t e
 
Posts: 3378
Joined: Fri Jan 19, 2007 9:00 am

Post » Fri May 13, 2011 12:51 am

Yeah, I agree, those archers were dumb. Were you using Stickier Enemy Targeting here, or did they do that without any help? Even if they killed your fire guys, they still would not have found a way to kill you, which I think is an issue that is just as important as fixing conjuration AI. (I guess maybe they would have killed you if they ran out of arrows and decided to go melee.)

Just the default AI. I went into the fight expecting to die and reload, or run away. If they hadn't ignored my flame atronach (I never even had to resummon... less than a quarter of my magicka bar to kill three archermeres) the fight would have lasted long enough for them to work their way around and kill me. NPCs never run out of arrows, FYI.
User avatar
Nicole Kraus
 
Posts: 3432
Joined: Sat Apr 14, 2007 11:34 pm

Post » Fri May 13, 2011 7:44 am

This is an interesting thread. I'm certain I can make an NPC pick the right targets most of the time thanks to a helpful function called: GetCombatTarget. Unfortunatley, this does not work for the Player's target. So, now you see where I hit a road block.
User avatar
Glu Glu
 
Posts: 3352
Joined: Sun Apr 01, 2007 5:39 am

Post » Thu May 12, 2011 4:10 pm

Regarding multi-enemy fights: it should be possible to make at least one bad guy target you, while the rest choose a different target. Or make half the guys fight you, half fight others, etc . Again, it's not really making the AI smarter, but it might help them put up a better fight.

Also, are you familiar with the generic threat/aggro system used in most MMOs? Is that the kind of combat you would prefer to have in Oblivion?
User avatar
James Smart
 
Posts: 3362
Joined: Sun Nov 04, 2007 7:49 pm

Post » Fri May 13, 2011 1:14 am

Yes, it should be threat based.
User avatar
Eibe Novy
 
Posts: 3510
Joined: Fri Apr 27, 2007 1:32 am

Post » Fri May 13, 2011 4:30 am

Also, are you familiar with the generic threat/aggro system used in most MMOs? Is that the kind of combat you would prefer to have in Oblivion?
What is that? (I don't play MMO anything - and never have.)

Again a vote for whatever is developed to flow both ways so that the resulting behaviors of the NPCs can approximate what you would see from a PC as well.

I think summons are just as lame to face as they are to exploit when you use them. You always know it is a summon from the game mechanic signs and that is why I think the NPCs seem so off is because we expect them to behave as if seeing the same signs.
User avatar
Gemma Archer
 
Posts: 3492
Joined: Sun Jul 16, 2006 12:02 am

Post » Fri May 13, 2011 6:52 am

Again a vote for whatever is developed to flow both ways so that the resulting behaviors of the NPCs can approximate what you would see from a PC as well.

I think summons are just as lame to face as they are to exploit when you use them. You always know it is a summon from the game mechanic signs and that is why I think the NPCs seem so off is because we expect them to behave as if seeing the same signs.

It probably wouldn't be too hard for someone to make a mod that simply removes the summoner's name prefix from the summons name and any shaders they have. That way you would have to actually see the conjurer summon the monster and remember which one it was, and occasionally you would find yourself killing summons unintentionally, much like how the npcs always kill your summons.

Of course, that doesn't remedy them all stupidly changing targets from you to your summon the instant you cast a conjuration spell, but Stickier Enemy Targeting mostly fixes that. So if someone could make a mod that makes summons indistinguishable from normal monsters npc and player responses to summons would be much more similar, and I'd be pretty happy.
User avatar
Nikki Morse
 
Posts: 3494
Joined: Fri Aug 25, 2006 12:08 pm

Post » Fri May 13, 2011 3:47 am

The concept of "threat" is explained here:

http://www.wowwiki.com/Threat

Simplified said, the enemy NPC will attack the target, that makes the most damage to him. Normally you do most damage to the enemy NPC, but let`s say your summon does more, than the enemy NPC will switch to this summon. If your summon hits the enemy NPC first, the NPC will of course attack your summon, but switch to you, if you do more damage. Etc.
User avatar
Lil'.KiiDD
 
Posts: 3566
Joined: Mon Nov 26, 2007 11:41 am

Next

Return to IV - Oblivion