Please note that new user registrations disabled at this time.

Need your opinions on this...

This forum is to be used for all discussions pertaining to BioWare's Baldur's Gate II: Shadows of Amn.
User avatar
KensaiRyu
Posts: 622
Joined: Sat Feb 03, 2001 11:00 pm
Contact:

Need your opinions on this...

Post by KensaiRyu »

Ok While I am waiting for some more info from the folks at team bg , I have been working on my Improved AI Dragon Scripts.

For my newest improved AI Dragon Fix, the dragons utilize first a complex targeting routine and then a complex attacking routine in their scripts (My Newest dragon AI script is actually 3 different scripts and could use many more,depending on how advanced i want to make it (probably very)).

In the complex targeting routine the targets are organized and assigned priority from greatest to least as to their abilites and level (Note This is done via another script that runs when you first enter the dragons lair, so instead of having one really, really big script which would slow down performance, the script uses several other scripts by changing to them when they are needed), with the greatest priority targets being attacked first.Also I am using another variable to assign a threat level based on character level.

Here is an example of how the Dragon AI Fix works:

Your PC (a level 16 sorc) enters Firkagg's lair with Jan, Edwin,and Korgan.

Firkagg see's your party and looks at each person, thinks,"Hmm theres a fighter level 16 (priority 4,2), a mid level Mage/thief priority 2,3)a lvl 16 sorceror (priority1,2)and a level 16 Mage (priority2,2).

I should kill them in this order in order to disable their most devastating attack(spells).
____________________
Priority1.2 (Sorc)
Priority2.2 (edwin)
Priority2.3 (Jan)
Priority4.2 (Korgan)

(Priority 1.2) level 16 sorceror, hes the most powerful gotta take him out first.

Lemme think... Whats the best way to kill Sorcerors?"

His Script switches to one tailored specifically for killing sorcerors or mages.

He moves to your Sorc (moves around other Summoned creatures or NPCs to get to him (in worst case scenario this attacking one target to the exclusion of all others could be utilized against him so I am working on that)) and begins attacking/casting or doing whatever he needs to do to kill that target first, as he is the most important Target. (out of your party) Once the most important target is dead he moves onto the second most important in his priority list.

The above scenario would not happen however if your Character was a lvl 16 thief instead, cause thiefs are lower on the priority totem, (edwin would be the first on the priority list to kill).

Now I know this will make it very hard for some people to kill dragons which is why It will use the difficulty level settings to affect which script the dragon gets (on easy he will use script already in use by alot of people, the FIXEDBG2DRAGONSOFFSCREENAI.ZIP found on Kevin's site Baldurdash.) And also for people that dont want smarter AI they dont have to download my improved AI. And if they think it is too hard they could remove it from override.

So what classes/kits do you think should be given priority and in what order?

The priority is based on how dangerous the class/kit is to a dragon, INMO Spellcasters are the most dangerous, however I want to hear your opinions I might be wrong on this.

Heres the order im using so Far (in current analysis script):

1 Is Most Important 8 Least important, etc
______________
1.Sorceror
2.Any Single,Multi, or dual class Mage.
3.Any Single, Multi, or dual class cleric
4.Monk
5.Paladin/Ranger/Barbarian/Fighter
6.Druid (any single or dual)
7.Bard/thief (Any)
8.summoned monsters (with exceptions)

note that there could be more priority options than 8 however I don't see how this would help much as most class's are already covered. Also the more priority #'s to check, the longer (and possibly slower) the script.

[ 05-20-2001: Message edited by: KensaiRyu ]
Wizards Of Eregion Expansion Team Presents:
[url="http://www24.brinkster.com/manveru"]Dagor Laureland[/url]
[url="http://groups.yahoo.com/group/IEEAIS"]Infinity Engine Enemy AI Scriptors Council[/url]
User avatar
Craig
Posts: 4996
Joined: Fri Dec 29, 2000 11:00 pm
Location: England
Contact:

Post by Craig »

You could do something about the hps if there two mages
I'm Devious

This is my Gift. This is my Curse. Who am I? I'm SpiderCraig
User avatar
KensaiRyu
Posts: 622
Joined: Sat Feb 03, 2001 11:00 pm
Contact:

Post by KensaiRyu »

No one else has any ideas? I want suggestions on the order of who the most important target for the dragon is.If I dont get any responses I assume everyone thinks the order I am using is the best and will stick with it.
Wizards Of Eregion Expansion Team Presents:
[url="http://www24.brinkster.com/manveru"]Dagor Laureland[/url]
[url="http://groups.yahoo.com/group/IEEAIS"]Infinity Engine Enemy AI Scriptors Council[/url]
User avatar
koz-ivan
Posts: 830
Joined: Wed Mar 21, 2001 11:00 pm
Location: boston, ma, us
Contact:

Post by koz-ivan »

ok i'll take a stab at it...
(not exactlly the dragon killing expert though)

1. sorc or single class mage
2. multi mage
3. bard
4. tank types (pal, ran, ftr, barb)
4a. high level summoned creatues (demons / elementals spirit animals?)
4b. skeleton warriors
5. cleric / monk
6. thief / druid
6a. common fodder creatures

of this i'm not sure the multiclass mages "deserve" such a high ranking in your example isn't korgan more of a threat than jan?

and just because i love making lists here's another one equally valid to above.

1. single class mage / sorc.
2. bard
3. tanks / high level summons
4. monks
5. clerics / druids / skeleton warriors
6. multi mage
7. thief / common fodder

now a quick question - > is the dragon ai capable of learning what does & does not work?

i.e. will it try to use flame vs 100+ % fire resis?


that's all for now.
"all around you is tinder for the gods"
User avatar
KensaiRyu
Posts: 622
Joined: Sat Feb 03, 2001 11:00 pm
Contact:

Post by KensaiRyu »

_____________________________________________
of this i'm not sure the multiclass mages "deserve" such a high ranking in your example isn't korgan more of a threat than jan?
_____________________________________________

This is exactly what I want to hear, im not sure of the order and thats why i want opinions and more lists exactly like you posted, so i can get an idea of what everyone thinks is the most dangerous enemy for a dragon.
_____________________________________________
now a quick question - > is the dragon ai capable of learning what does & does not work?
_____________________________________________

The AI in the infinity engines is not capable of learning, however it can be scripted to appear to learn.

Also my AI will not use spells on you unless the criteria for using that spell is met (IE you dont have high MR, Saving Throws, or are immune to that spell school.)

It also wont use dragon breath if they are immune to it, as that is not smart AI.

However I am limited by the creature file itself. I mean I could make the dragons cast every spell in the game but then it would be cheese that the dragon won, not AI. So I am not changing anything about the dragon other than his Artifical Intelligence.

And everyone knows we dont need no more cheese tactics, especially for something with 25 str.
Wizards Of Eregion Expansion Team Presents:
[url="http://www24.brinkster.com/manveru"]Dagor Laureland[/url]
[url="http://groups.yahoo.com/group/IEEAIS"]Infinity Engine Enemy AI Scriptors Council[/url]
User avatar
Craig
Posts: 4996
Joined: Fri Dec 29, 2000 11:00 pm
Location: England
Contact:

Post by Craig »

Lvl im not sure if you mentionmed this but a 23 lvl bard can beat a lvl 17 mage so a lvl 11 bard would be near the bottem but a lvl 23 bard would be near the top

Also if it playing song it goes further down
I'm Devious

This is my Gift. This is my Curse. Who am I? I'm SpiderCraig
User avatar
MordorMan
Posts: 250
Joined: Mon Mar 26, 2001 11:00 pm
Location: Amsterdam, the Netherlands
Contact:

Post by MordorMan »

I have a question: How can the dragon know your classes / specializations /levels? Shouldn't the dragon cast some kind of identifaction spell first? I can understand you can tell characters apart by the way they dress and talk, but I don't think a dragon could know beforehand which enemy is the most dangerous to him.

If I were the dragon, I would cast some area affecting spells first to weaken everybody and then focus on the people that start waving their hands and mumbling funny stuff.

MM
Vi Dor e-Mordor ias i-Ndúath caedar
User avatar
koz-ivan
Posts: 830
Joined: Wed Mar 21, 2001 11:00 pm
Location: boston, ma, us
Contact:

Post by koz-ivan »

after some thought i still stick by my second list, although i might "bump" tanks to #2 (bards to 3)

and i suppose if you wanted the dragon to be completly hellish, you could set the ai to focus on the pc, regardless of class.

and slightly ot, it would be kinda fun to set the dragon's priorities based on personality.

ie a greedy dragon would kill thieves first.
pride could force a dragon to go after a tank first.
& a "really smart" dragon would go after mages ect. ect.
"all around you is tinder for the gods"
User avatar
KensaiRyu
Posts: 622
Joined: Sat Feb 03, 2001 11:00 pm
Contact:

Post by KensaiRyu »

Well I suppose that depends on the Dragon, Firkagg himself admits to taking an interest in the player character so maybe he hired out some mages to tell him everything about you.

Or since Firkagg is so old he knows how dangerous oppenents look.

Or that he assessed your skills based on how you cleared his dungeon.

Or his 'pet' mage cast some kind of spell to tell him.

You can come up with any number of reasons if you want to to justify his knowledge.

(Note for future posters: This post is not for debate over the nuances of hypothetical situations.

It is to provide me with a database to further the AI developments for my lastest AI fix for the dragons. If you want to debate about the validty (or lack therof) of dragon AI, please do so in another post, titled appropriately. Heck I might even debate with you, in another post of course)
Wizards Of Eregion Expansion Team Presents:
[url="http://www24.brinkster.com/manveru"]Dagor Laureland[/url]
[url="http://groups.yahoo.com/group/IEEAIS"]Infinity Engine Enemy AI Scriptors Council[/url]
User avatar
KensaiRyu
Posts: 622
Joined: Sat Feb 03, 2001 11:00 pm
Contact:

Post by KensaiRyu »

_____________________________________________
after some thought i still stick by my second list, although i might "bump" tanks to #2 (bards to 3)
and i suppose if you wanted the dragon to be completly hellish, you could set the ai to focus on the pc, regardless of class.
_____________________________________________

I appreciate the info koz-ivan.

The reason I do not target the PC is because this would place parties utilizing 5 (high level) mages and the PC at a great advantage.
As the dragon would ignore the 5 casters to focus on the PC. Thats why I am assigning priority from greatest to least.

_____________________________________________
and slightly ot, it would be kinda fun to set the dragon's priorities based on personality.
_____________________________________________


It would be fun, I wonder what adalons personality would dictate?

_____________________________________________
Lvl im not sure if you mentionmed this but a 23 lvl bard can beat a lvl 17 mage so a lvl 11 bard would be near the bottem but a lvl 23 bard would be near the top
_____________________________________________

Very well I will reorganize the current
priority chart to make use of this, thanks Craig.
Wizards Of Eregion Expansion Team Presents:
[url="http://www24.brinkster.com/manveru"]Dagor Laureland[/url]
[url="http://groups.yahoo.com/group/IEEAIS"]Infinity Engine Enemy AI Scriptors Council[/url]
User avatar
Nippy
Posts: 5085
Joined: Thu Nov 30, 2000 11:00 pm
Location: Reading, England
Contact:

Post by Nippy »

It's impossible to say how a real dragon acts as there are none but some dragons would be idiots others smarter. The idiots would probably kill anything that attacks them and the smarter would probably kill the most dangerous. Would the AI notice how much damage is caused by a tank say with Carsomyr/Crom Faeyr. If it did then the dragon would probably attck the tank rather than a spell caster.

Just my opinion
Perverteer Paladin
User avatar
KensaiRyu
Posts: 622
Joined: Sat Feb 03, 2001 11:00 pm
Contact:

Post by KensaiRyu »

_____________________________________________
Would the AI notice how much damage is caused by a tank say with Carsomyr/Crom Faeyr. If it did then the dragon would probably attck the tank rather than a spell caster.
_____________________________________________

I can do a check where if the dragons hitpoint difference was X between 2 time frames (say a round)something would occur.(For example if his hitpoints dropped by 30 in a round) something could occur.

Also I can add checks for damage taken in a certain quantity(say if he is hit for 20 or more dmg) but im not sure If I can use that information in targeting. I am checking on that now (writing a script). If thats the case it will be very helpful.

OK i wrote a script to test that and it works like this:

I can set Damage Values in a table and if someone hits the dragon for that amount it sets off an action.

Example: I get hit by 16 dmg from minsc, 6 dmg from Jan, and 20 Damage from PC. I attack the PC.

This is not because I am choosing who hit me with the most damage but because I have beem scripted to attack anyone that hits me with that much damage.

Also it will ignore the priority table to attack the PC, (cause he hit me with 20 damage if someone else had hit me with 20 dmg i would attack them instead.) and this could be used as a cheat, by having your PC attack him in melee while he ignored the spellcasters about to lower his resistance and bombard him with a barrage.

I think because the way this works it will not be much help.

[ 05-22-2001: Message edited by: KensaiRyu ]
Wizards Of Eregion Expansion Team Presents:
[url="http://www24.brinkster.com/manveru"]Dagor Laureland[/url]
[url="http://groups.yahoo.com/group/IEEAIS"]Infinity Engine Enemy AI Scriptors Council[/url]
User avatar
edguy
Posts: 66
Joined: Wed May 02, 2001 10:00 pm
Contact:

Post by edguy »

Originally posted by Nippy:
<STRONG>Would the AI notice how much damage is caused by a tank say with Carsomyr/Crom Faeyr.</STRONG>
I was thinking about the Dragonslayer longsword. If my memory does not fail me completely, the description of that sword said that dragons that knew about the whereabouts of such a weapon would be quite eager to put the wielder of such a sword to rest ASAP. IMO, maybe the presence of the Dragorslayer should alter the priorities of a dragon..
"Another day and more aimless stumbling about." - Eddie

"Hey, when you look this good, you don't have to know anything." - Fry
User avatar
KensaiRyu
Posts: 622
Joined: Sat Feb 03, 2001 11:00 pm
Contact:

Post by KensaiRyu »

_____________________________________________
I was thinking about the Dragonslayer longsword. If my memory does not fail me completely, the description of that sword said that dragons that knew about the whereabouts of such a weapon would be quite eager to put the wielder of such a sword to rest ASAP. IMO, maybe the presence of the Dragorslayer should alter the priorities of a dragon..
_____________________________________________


Another great idea that I will implement, a check to see if the target has that sword. And check for the halbred that does damage against dragons too.
Wizards Of Eregion Expansion Team Presents:
[url="http://www24.brinkster.com/manveru"]Dagor Laureland[/url]
[url="http://groups.yahoo.com/group/IEEAIS"]Infinity Engine Enemy AI Scriptors Council[/url]
User avatar
triface
Posts: 13
Joined: Tue Mar 20, 2001 11:00 pm
Contact:

Post by triface »

The monk should bee at the to because if i am not mistaken can kill him in 1 Hit with cvivering palm somthing
User avatar
triface
Posts: 13
Joined: Tue Mar 20, 2001 11:00 pm
Contact:

Post by triface »

i ment top
User avatar
koz-ivan
Posts: 830
Joined: Wed Mar 21, 2001 11:00 pm
Location: boston, ma, us
Contact:

Post by koz-ivan »

the quivering palm is a one trick pony really, a) the monk need to hit & iirc it still checks vs mr & saving throws it's not a real threat unless the player is willing to reload a bunch of times or be real lucky.

mages who can screw up the dragons mr, protection spells & saving throws and follow it up w/ dammage spells s/b the primary threat.
"all around you is tinder for the gods"
User avatar
triface
Posts: 13
Joined: Tue Mar 20, 2001 11:00 pm
Contact:

Post by triface »

Well i killed him in 1 hit so i sopose i was lucky
User avatar
Tom
Posts: 605
Joined: Thu Mar 22, 2001 11:00 pm
Location: The Hundred Acre Wood
Contact:

Post by Tom »

First of all thanks KR for taking the trouple to improve the ai.

I agree that the mage is probably the most dangerous for the dragon and so should get priority.

There are how ever many strategies that have been discussed on this page on how to power play. Maybe it would be a good idear to put Fighter/mage and fighter/cleric second on the list?

I am sure that you ai covers most of the strategies for dealing with dragons but what about traps? I understand that you set the ai to go hostile if you set traps next to it. But it is possible to set alot of traps well avay from the dragon and then lure him into them. This might be seen as a non cheesy tactic and that we should not try to buildt in a counter to it in the ai but I think this wrong.

It should not be allowed to set up traps in the lair of a dragon without its knowledge.
After all a lair of a dragon is its inner sactuary and in most stories about dragons they seem to be extremly aware of what goes on in their lair even when they are sleeping.

one notable exception is drizzit and wulfgar killing icingbane.

Over to you... :)
I didn't really bounce Eeyore. I had a cough, and I happened to be behind Eeyore, and I said "Grrrr-oppp-ptschschschz."

Tigger
User avatar
velvetfreak
Posts: 184
Joined: Mon May 07, 2001 10:00 pm
Location: Melbourne, Australia
Contact:

Post by velvetfreak »

If I were thinking from the dragon's perspective I would want to get in as many wing buffets as possible. At least from the other side of having killed a couple of dragons the worst part was getting knocked out of action altogether. I don't think it's so important to try and recreate what a "real" dragon might do, as much as exploit what he's capable of. After all that's what we're doing with our PCs isn't it. And don't take my content literally but the concept, for all I know I'm an inept strategist and wing buffets aren't actually the worst attack.

I think what you're doing is admirable KR, and I can't promise I'll ever work with this level of scripting but I'll contribute what I can.
Check my profile for the Glaicas patch
Post Reply