AI Compendium v 0.7.2 [all LoD offensive AIs/all classic AI]

Post here about all aspects of D2 mod making whether it's information, problems or whatever. Please specify whether your post is relating to Classic D2 or the Expansion.

Moderator: Nizari

0
No votes
 
Total votes: 0

User avatar
librarian
Junior Member
Champion of the Light
Posts: 356
Joined: Wed Dec 07, 2005 7:47 pm
Contact:

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by librarian » Thu Aug 17, 2006 2:12 pm

Heiho,

after some fiddling I'm pretty sure the 'attackrank' column in skills.txt (which isn't covered by the fileguide) is in fact a kind of attack ranking, which seems to be an early version of aggro management known in WoW.
Lowest number is 0 (as in Bone Wall), highest number is 10 (as in Bone Prison).

When I set out to Bloody Hills with a testing necro and cast Bone Wall it will lure monsters nearby, but they aren't that interested in the necro, even not in the Bone Wall itself. When I cast Bone Prison, the lured monsters will change targetting from some barbarian and target the necro, with immediate attacking of BP if it's in the way. When I set attackrank with Bone Wall also to 10 the monsters also change focus to the necro and Bone Wall segments.
When I curse them with AD (attackrank 10) they change focus to the necro. When I change attackrank AD to 0 they further happily slay away some barbarian.

It is not that academical kind of testing, and I'm not sure if other aspects are also controlled, further I'm not sure how long this attackrank appeal lasts (them barbarians do a 'self-attract' according to AIC, I don't know if they do it only when spawning or also during battle). From observation I'd say it lasts till a stronger (higher attackrank) attack occurs nearby. Fleeing slightly out of awareness radius doesn't seem to reset the attack ranking effect (provided you don't flee so far and long away the monster itself is resetted).

Anyway, since the 'why does BigD/Baal always focus on my little Zon and not on that fat Barbarian hacking away at him' question regularly arises, this may offer an explanation.
so long ...
librarian

current status: (re-)tired
vanilla FAQtoids

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains
Contact:

Hand-picked

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by Nefarius » Thu Aug 17, 2006 2:38 pm

which isn't covered by the fileguide
The skills.txt guide is extremely inaccurate in many places, I wouldn't use it as a source of info. I'm working on a comprehensive one, but finishing it will take a while.


These barbarians are constantly commanding nearby monsters to come and whack them. Even if they have a threat of 0.


---

PS: The update to the guide isn't "proof read" yet, so not everything in there is ''correct''.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
librarian
Junior Member
Champion of the Light
Posts: 356
Joined: Wed Dec 07, 2005 7:47 pm
Contact:

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by librarian » Thu Aug 17, 2006 3:10 pm

Heiho,

we haven't changed threat figures, so BW and BP both have 1 here. But a constantly casted 'self-attract' would explain some misbehavings when barbarians were nearby fighting .-)

For our purposes the fileguide may be good enough, so don't feel urged to work on a sequel.


Oh, and max number of Bone Wall 'monsters' will also affect Bone Prison. Don't change this one to high numbers, because prisoning won't work properly then (this is only very far AI related, but I felt like sharing it anyway ^^ )
so long ...
librarian

current status: (re-)tired
vanilla FAQtoids

User avatar
TrueMage
Hosted Forum Moderator
Principality
Posts: 2072
Joined: Thu Jun 24, 2004 7:58 am
Location: Elemental Conflux
Contact:
Russia

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by TrueMage » Fri Aug 18, 2006 4:46 am

librarian";p="284278" wrote:When I curse them with AD (attackrank 10) they change focus to the necro.
Is it actually so? I don't see this effect (with attackrank 10 on AD).

User avatar
librarian
Junior Member
Champion of the Light
Posts: 356
Joined: Wed Dec 07, 2005 7:47 pm
Contact:

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by librarian » Fri Aug 18, 2006 12:52 pm

Heiho,

as said, I'm pretty sure. One good thing about that barbarians is, they keep monsters busy. Commonly you'd get insta-attacked when you enter their awareness radius.
Now when I set out from Harrogath there is always a little group of two or three of that toadlike swordswinger monsters at the left side and one at the right side, and almost everytime there is a barbarian at both sides fighting them.

Now when I use Bone Wall they keep fighting each other. When I use Bone Prison, at least one of the toads will home at me.
Same is reproducable with AD and varying attackrank settings.

Next idea would be a testing with two chars using different attackrank skills. We'll do that later on if necessary when other things are done, this is just a spinoff.
so long ...
librarian

current status: (re-)tired
vanilla FAQtoids

User avatar
Brother Laz
Forum Legend
Dominion
Posts: 6715
Joined: Mon Jun 03, 2002 10:06 am
Location: Fallen Like Lightning
Contact:

Hand-picked

Post by Brother Laz » Mon Oct 16, 2006 10:48 am

Notes:

DesertTurret wait params seem to start when the tower begins its S1 seq anim, not when it finishes. As a result, setting the delay too low causes the tower to repeat the first frames over and over, and never reach the trigger frame.

GargoyleTrap ai seems unable to shoot diagonally. (Unconfirmed)

Mosquito ai tends to hang, usually if par3 is 100 but also seems to occur with other values. The ai just stands there and attacks enemies within range, but never moves.
19.may.2007 | Adun Tori Laz.
Median XL released!
Flesyht sa ruobhgien yht etah.


y dont u play the game the way its supposta be played? -SlothNathan

User avatar
librarian
Junior Member
Champion of the Light
Posts: 356
Joined: Wed Dec 07, 2005 7:47 pm
Contact:

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by librarian » Sun Oct 29, 2006 11:50 pm

Heiho,

Minion baseID/AI (specific Act5 monster) seems to be attached to the Overseer Whip effect of transforming into SuicideMinion. Bloodlust works on other AIs, but if transforming chance is applied onto a Minion with replaced AI it will spawn an immobile Skeleton1 (1st entry in MonStats) and an invisible unit will attack you with the SuicideMinion explosion attack.
Nasty, and took some time to discover and, more so, to work around.
so long ...
librarian

current status: (re-)tired
vanilla FAQtoids

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains
Contact:

Hand-picked

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by Nefarius » Wed Nov 01, 2006 10:33 am

Nice, keep em comming, I'll finish up the guide in 2007.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
librarian
Junior Member
Champion of the Light
Posts: 356
Joined: Wed Dec 07, 2005 7:47 pm
Contact:

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by librarian » Wed Nov 01, 2006 9:27 pm

Heiho,

another one:
Both rogue2 and rogue3 baseIDs are not attacked by monsters, regardless of assigned AI, npc and sel settings and lots of other stuff I've tried. They'll die by AoE spells, accidentially.
Replacing baseID with, say, act5barb3, with Token still RG and the AI of your choice, and they get properly attacked. They need a comparably high threat, tough.

Also a minor info, velocity and run settings have different effects when you assign another AI and/or baseID to a unit.
That is,
1.) you assign Fetish AI and the same setting in run&velocity will cause faster movement of your unit than with Zombie AI.
2.) you assign act5barb3 baseID to a rogue2 unit (with SkeletonBow AI) instead of rogue2 baseID, and the Rogue will be faster than before (AI not changed).
so long ...
librarian

current status: (re-)tired
vanilla FAQtoids

User avatar
Cloud
Junior Member
Champion of the Light
Posts: 261
Joined: Sun Aug 08, 2004 11:20 pm
Contact:

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by Cloud » Sun Nov 26, 2006 9:13 pm

I have a little Question:
SuccubusWitch

When all parameters are 0, they will randomly walk and wander around. To me it doesn't seam as if par5 has any effect. When par3 succeeds, they will cast SK1....

Chance to attack (when within melee range)
Chance to approach (when outside par4-range)
Chance to escape (when within par4-range)
Radius (subtiles)
n/a
Delay (frames) [par2 fails]
n/a
Chance to use SK5
Is this parameter really for both, curse and escape?

edit: forget what was written here, I mixed something up...
but the above question is still in my mind...
did you just mix something up while writing or is par3 really for both?

btw, are you still working on that or don't you have time?
Last edited by Cloud on Sun Apr 08, 2007 4:13 pm, edited 1 time in total.
I'm not a signature I'm only tyding up here...

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains
Contact:

Hand-picked

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by Nefarius » Fri Apr 20, 2007 10:48 pm

EDIT: More results (note, I haven't had time to summarize analysis of individual Ais, but I've looked into most of them by now).


First of all, AiDel is used as far as I've seen only by a few Ais that don't have a stall parameter (SandRaiders etc), here the game reads the stall time from this column. However most monsters have hardcoded range and delay values.

AiDist is set to 35 when it is equal to 0, the highest value is 255 (or more likely 127), they don't check for negative values, so avoid setting it to >127 since it will likely lead to unpredictable results. The highest AiDist is 55, higher values are capped to 55.

Threat is only used by summons to evaluate whenever to attack a target or not, however threat isn't used properly. Blizzard only recognizes two threat levels, values <= 1 and values >1. The players threat is set to 14, but it has no effect.

The enemies pick a target by parsing the Node lists stored at ptGame + 0x10F8, each node chain starts with the player ptUnit (the first 8 do), and form a chain of all summons and hirelings associated with that player.

NodeList 9 is used for undefined purpose.

NodeList 10 overrides all other node lists, this is probably used for decoy and those barbs in act 5.

Allied and neutral enemies pick the nearest enemy unit with threat >1 in the current room and all adjacent rooms (9 screens), but they all have a hardcoded AiDist of 35, so blizzard is actually wasting cycles for no reason as nothing outside of the current room is usually picked due to the low AiDist.









First results from looking at the code:


AI Rolls: almost all AI rolls in Diablo II are simple rand()%100 (a random integer between 0 and 99), when the value provided in the parameter is below this number the roll succeeds otherwise the roll fails.

AI States: every AI can be in certain states, so far I've identified state 3 and state 19, these states are set to true when the monster takes a hit, they are used to override certain rolls or cause special retaliation behaviour.

Engaged / Alarmed: every AI can either be idle, alarmed or engaged, an AI that is currently engaged will usually use its combat routines, an AI being alarmed will usually use its approaching routines (if these fails it will use certain functions to make it look idle, but in fact it has already been triggered).

Target: the AI functions always treat the nearest enemy (the unit that activates the AI) as the target, they also recieve the distance to this target as a parameter.

Speed Modifiers: the AI code has support for a special member of the AI-data structure assigned to all monsters that modifies speed, this speed cannot be influenced by external sources (except for Decrepify, because there is a hardcoded check for Decrepify curse state to influence them), this special speed modification is for example used when monsters flee.

Steps: I'm tired of using the term subtiles, as this is rather inaccurate, the AI uses steps, that is the time it needs to reach a certain spot, the final placement is like on a chess board, but the movement itself is fluid. Since it is unclear as of yet how exactly these "steps" are calculated I'll simply call them steps, end of story. Blizzard also uses the word steps in their AI documentation so this also stays consistent with that.



ZOMBIE

ENGAGED
The zombie will always attack, when the zombie attacks it rolls AIPARAM4, when this roll succeeds ATTACK1 is used, otherwise ATTACK2 is used.

ALARMED
The zombie first checks whenever DISTANCE is less then AIPARAM2, if this is the case it rolls AIPARAM1, when this roll succeeds the zombie will approach the target. When AISTATE is 3 or 19, the zombie will approach no matter if the roll succeeded or not. Zombies ignore DISTANCE and always approach when they are encountered in level 17 (the Graveyard).




SKELETON

ENGAGED
The skeleton will first roll AIPARAM3, if this fails it will stall for AIPARAM2 frames. Otherwise it will roll AIPARAM4, when it succeeds ATTACK1 is used, otherwise ATTACK2 is used.

ALARMED
The skeleton will roll AIPARAM1, if this succeeds it will approach the target, otherwise it will stall for AIPARAM2 frames.



BIGHEAD

SPECIAL BEHAVIOUR
When the bighead is not engaged and AISTATE equals 3 or 19, it will always use ATTACK2 (the MISSILE) to retaliate. This behaviour only applies when the bighead is not engaged in combat.

NORMAL BEHAVIOUR
First the bighead will determine how much life it has left, this is done by calling D2COMMON.10677 which returns 100 * MIN_HITPOINTS / MAX_HITPOINTS. If the result is less then AIPARAM1 the bighead will use its DEFENSIVE_BEHAVIOUR, otherwise it will use its OFFENSIVE_BEHAVIOUR.

DEFENSIVE_BEHAVIOUR
If DISTANCE is less then 3 steps (note, the monster itself is larger then this radius so this never evaluates in vanilla) the bighead will attempt to flee (+50% speed) to a distance of 5 steps, if fleeing fails, it will attack the target using ATTACK2 (the missile) [this never fails].

If DISTANCE is between 3 and 14 steps the bighead will first verify that it has a target, if it has a target it will roll AIPARAM4, if this succeeds it will attack using ATTACK2 (the missile), if this fails it will roll AIPARAM2, if this succeeds it will move to a random nearby spot [within 3 steps from the monster] ("circle behaviour"), if AIPARAM2 fails the bighead will stall for 10 frames.

If DISTANCE is greater then 14 steps the bighead will approach.

OFFENSIVE_BEHAVIOUR (ENGAGED)
The bighead will always attack using ATTACK1, this never fails.

OFFENSIVE_BEHAVIOUR (ALARMED)
When DISTANCE is greater then 14 steps the bighead will always approach, this never fails. Otherwise it will check whenever it has a target and then roll AIPARAM3, if this succeeds it will use ATTACK2 (the missile) to attack, if this fails it will approach.
Last edited by Nefarius on Thu Jun 07, 2007 7:59 am, edited 2 times in total.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
jbouley
Retired Admin
Virtue
Posts: 4692
Joined: Tue May 21, 2002 2:07 am
Location: Maine, USA
Contact:

Hand-picked

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by jbouley » Tue Dec 11, 2007 5:04 pm

Just an couple observations on Diablo's AI:

I've been using this AI for my more powerful dragons, and I like it a lot because I can set one or two skills with something like Fetish Shaman Inferno or Chain Lightning or Glacial Spike and get the effect of a breath attack, while also adding some more spell-like skills in other skill columns. Nice and lethal. But I think there might be an error in the AI Compendium.

According to the compendium, the Diablo AI will cast from SK1, SK3, SK4, and SK8 under certain conditions. I can confirm that 1, 3 and 4 are definitely the case, but I have yet to see anything from SK8 get cast. I filled the skill columns for #8 with various skills, but my dragons have never cast them. Might just be my bad luck or may be an error in the guide...but just sharing.

As a side note, I changed the mode on the skills of course since my dragons don't have sequences (I used SC mode instead), but I've found something interesting. My dragons periodically turn invisible. I think this is because of the Diablo Run skill. I set it to use the RN mode, thinking perhaps the dragons would use it to charge around, but I think that the Diablo Run skill may be hard coded to use a sequence no matter what, and thus without a sequence animation, my dragons go invisible for a time. Or if might be something else, but that's the only theory I have at the moment.

Oh, and bless you for creating the compendium to begin with, Nefarius...it's been a great resource as I work on my monsters.

EDIT:

Noted another inconsistency with the AI compendium. Despite exhaustive testing, I still see no results from using the SK8 columns.

However, I did notice occasional firewalls popping up. Rare, but it did occur. This belies the note in the compendium that says Diablo never uses SK6 (PrimeFirewall). None of my dragons had Fire Wall as a skill, so the only way they could have been casting it is if the Diablo AI does indeed access that column.

Doesn't seem to do it often, and I don't know if there's a specific trigger, but it does get used. (Unless for some reason the primeevil flag disables it; that would be the one major difference between Diablo and monsters using the Diablo AI.)
Last edited by jbouley on Tue Dec 11, 2007 7:18 pm, edited 1 time in total.
-Jeff Bouley
A riddle wrapped within a mystery surrounded by an enigma -- served with a heaping side order of fried conundrum and a tall glass of puzzlement.
(Download my SiC mod [for 1.09] and other goodies) ---- (Read Phrozen Forums terms of service)

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains
Contact:

Hand-picked

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by Nefarius » Tue Dec 11, 2007 7:30 pm

The usage of some skills is hardcoded to global events and certain lines. Like the diabloclone, which uses the Diablogeddon from SK8.

The AI code is full of hardcoded effects, like zombies always approaching in the graveyard lvl. This is why I didn't update it again. In-game observations, on which this guide is entirely based, are not accurate enough in most cases. In many cases AI params aren't read always also (etc).
Last edited by Nefarius on Tue Dec 11, 2007 7:33 pm, edited 1 time in total.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
jbouley
Retired Admin
Virtue
Posts: 4692
Joined: Tue May 21, 2002 2:07 am
Location: Maine, USA
Contact:

Hand-picked

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by jbouley » Tue Dec 11, 2007 7:54 pm

Nefarius";p="370823" wrote:This is why I didn't update it again. In-game observations, on which this guide is entirely based, are not accurate enough in most cases. In many cases AI params aren't read always also (etc).
Makes perfect sense. Which is why I like that there's a sticky topic on this. Would be nice to see some more folks chime in from time to time with new observations at this thread, since having you update the file every time there's some new insight would be a pain in your backside and not very efficient.
-Jeff Bouley
A riddle wrapped within a mystery surrounded by an enigma -- served with a heaping side order of fried conundrum and a tall glass of puzzlement.
(Download my SiC mod [for 1.09] and other goodies) ---- (Read Phrozen Forums terms of service)

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains
Contact:

Hand-picked

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by Nefarius » Tue Dec 11, 2007 11:49 pm

As a side note on the skill-8 usage, he will only use the skill if it has a AuraState and this state is not present on him at the time of casting because it's designed for armageddon.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
Smiling Hobo
Junior Member
Champion of the Light
Posts: 414
Joined: Sat Feb 03, 2007 7:36 am
Location: A tall mountain, away from goats and peasants...
Contact:

Post by Smiling Hobo » Sun Feb 24, 2008 4:06 am

Is it just me, or are the descriptions of classic AIs no longer listted?... : /

Edit - Oh, wait, it's at the bottom of the post....hehe, uh, oops... >.>

*Nibbles on kitten*
Last edited by Smiling Hobo on Sun Feb 24, 2008 5:49 am, edited 1 time in total.

User avatar
GriffonSpade
Posts: 35
Joined: Wed Feb 21, 2007 10:04 pm

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by GriffonSpade » Thu Jul 03, 2008 1:58 am

Nerfarius's LOD ai info
SuccubusWitch

When all parameters are 0, they will randomly walk and wander around. To me it doesn't seam as if par5 has any effect. When par3 succeeds, they will cast SK1. SK2, SK3 and SK4 are unused. Likewise par5 and par7 seams to serve no purpose. Finally, par8 does not control the chance to cast Weaken, it controls the chance to use Blood Star (SK5). - This AI is a perfect example why I initially said Blizzards documentation is horrible.

Chance to attack (when within melee range)
Chance to approach (when outside par4-range)
Chance to escape (when within par4-range)
Radius (subtiles)
n/a
Delay (frames) [par2 fails]
n/a
Chance to use SK5



aip7 seems to be a control factor in which curse is chosen, when target hp% > aip7, it will ALWAYS use skill1 instead of 2, 3, or 4 (so if it was deleted and put at 0, it would always use skill1) I'm guessing(and testing) aip5 determines whether it should use skill2 or skill3/4(defense curse/blood mana)

Edit3: Seems that it starts replacing sk3/4 with sk2 at somewhere between 75% and 90% monster hp, regardless of par5's value(with par7 at 100)
Edit2: Further testing seems to show that i messed up somewhere, and isn't working as edit1 says
Edit1: aip5 seems to be somewhat the opposite of aip7, and only allows skill2 to be used when target hp% < aip5, but does not exclude skill3/4
[/quote]

User avatar
logswithmoss
Posts: 7
Joined: Fri Jul 11, 2008 1:11 am

Post by logswithmoss » Fri Jul 11, 2008 1:19 am

ty for this.

User avatar
mirecek
Dark Alliance Beta Test
Arch-Angel
Posts: 1218
Joined: Sun Sep 11, 2005 10:04 am

Post by mirecek » Mon Jul 14, 2008 11:05 pm

there is something about druidbear and druidwolf AI, but I cannot find whole explanation about all AI parameters. It would be good to post them here (and up, in the topic)

thanks
"Each of those few chords separated by complete silence feels like a knife wound to the heart"

There is no greater sorrow than to recall happiness in times of misery. Draconian

User avatar
GriffonSpade
Posts: 35
Joined: Wed Feb 21, 2007 10:04 pm

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic

Post by GriffonSpade » Mon Nov 03, 2008 10:53 am

Diablo
Another prime evil, another un-configurable AI. When the distance between Diablo and the foe is
about one screen (800x600) he will alternate between SK1, SK3, SK4 and SK8 (as long as he has those
skills!), about ¼ of the time he will charge at the player, using SK5 (which is basically only a sequence
AFAIK). When in melee range Diablo will first attempt to use SK2 to chill the player (or freeze a
summon/hireling) and then proceed to use A1 and A2, after a few swipes he might swap to use SK2
again. If the player opens a townportal, while outside of the radius he would follow you in (as long as
his LoS isn’t blocked by a wall), he will cast SK7 on the object if it hasn’t been blocked by a prison
yet) - he only does this if the player gets out of his LoS (at least my impression of it is that way). The
main fault of this AI, as with mephisto, is the stage. It is too large, and Diablo doesn’t follow
characters that are too far away. Note that the inferno-behavior is part of the skill function, so any
enemy that you give the DiabLight skill should be able to use it properly (that’s part of the reason why
players are unable to use that skill, unless modified!). Another note, Diablo never uses SK6.
Just noticed this, but I recall diablo using firewalls(sk4 & sk6) when you attempt to shoot him from another ds1(such as dropping meteors from the top right seal ds1 when it's the lava trough, and hes just barely on the high resoluation screen) since he won't follow you onto it(except when he charges).

Edit:after some testing his sk4(diabwall) is actually his firestorm, and he definately uses the (sk6) prime firewall when you attack him from outside his ds1.

Edit: I believe the Nihlathak AI's par4 chance to cast skill2 on living monster is limited to Minions. My deflier monster won't use impregnate on his undead minions, but when changed to minion1s he impregnates them.
Last edited by GriffonSpade on Fri Nov 14, 2008 6:34 am, edited 3 times in total.

User avatar
DistortGiygas
Posts: 46
Joined: Thu Jun 26, 2008 10:18 pm
Location: Spanaway, WA
Contact:

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic AI]

Post by DistortGiygas » Wed Apr 21, 2010 4:26 am

*notices there haven't been any posts in this thread for 2 years
*posts anyway

First of all, I'd like to thank Neffy for this AI reference, it's awesome.
Anyway, on to my post:
ZakarumPriest
When outside melee range this AI at times will wander around. Par2 take precedence over par3. The
delay determines the number of frames between individual uses of SK4. During the delay they will use
SK2 rather then SK4. When a unit gets injured within the par6-radius they will use SK1 on that unit.
When their own HP drops to about ½ (at least so it looked in my tests!) they will also cast SK1 on
themselves
, if it drops to a 3rd then they will use SK3 (teleport) and attempt to get out of melee
range that way.
1. Chance to attack (when target comes within melee range)
2. Chance to use SK4 (par4 succeeds)
3. Chance to use SK2 (par4 succeeds)
4. Chance to cast a spell (when target outside of melee range)
5. Delay (frames)
6. Radius (subtiles)
7. n/a
8. n/a
I love this AI, it's brilliant, and works perfectly for everything I'm trying to do.
There is one small issue though, I can't for the life of me get this AI to cast SK1 under the conditions specified in whateverthiscoloris, I've tried multiple skills, but he just refuses to use it... neither on himself or nearby units. Is this hardcoded in some way?
engineer_no1.wav

madmuffin
Posts: 1
Joined: Fri Aug 16, 2019 7:35 pm

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic AI]

Post by madmuffin » Fri Aug 16, 2019 8:15 pm

One thing I am not understanding about this compendium. If for example it says Par1 succeeds, it approaches, what is par1? Where do I look to find out what the exact % chance it approaches instead of not?

User avatar
Lady Isabelle
Hosted Forum Moderator
Champion of the Light
Posts: 326
Joined: Tue Jul 19, 2011 11:36 pm
United States of America

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic AI]

Post by Lady Isabelle » Fri Aug 16, 2019 8:51 pm

madmuffin wrote:
Fri Aug 16, 2019 8:15 pm
One thing I am not understanding about this compendium. If for example it says Par1 succeeds, it approaches, what is par1? Where do I look to find out what the exact % chance it approaches instead of not?
the (Artificial Intelligence Parameters) aip1-8 columns in monstats.txt is what you're looking for.

Gobo
Posts: 9
Joined: Tue Mar 12, 2019 10:00 pm

Re: AI Compendium v 0.7.2 [all LoD offensive AIs/all classic AI]

Post by Gobo » Fri Oct 16, 2020 9:32 pm

I believe theres an error with Diablo's Ai. In the compendium it says "Another note, Diablo never uses SK6" but we found that whenever you in the wings with the seals, an area that Diablo refuses to walk, he non stops spams SK6 at you

edit: I see someone else pointed out this. So I guess I'm not adding anything new here :D

Post Reply

Return to “General Mod Making”