BP and drizzt/gnolls encounter in BG1
#1
Posted 08 April 2006 - 09:09 AM
Originally, although they are hostile, they're supposed to attack Drizzt, unless player characters come too close. Now the whole company (15-20 gnolls or so) charges at me instead...
(their scripts worked in my previous game installation w/o BP)
#2
Posted 08 April 2006 - 09:19 AM
Minor issue, seems that BP script conversion causes the gnolls in AR3100 to attack the party on sight.
Originally, although they are hostile, they're supposed to attack Drizzt, unless player characters come too close. Now the whole company (15-20 gnolls or so) charges at me instead...
(their scripts worked in my previous game installation w/o BP)
Well, I doubt highly that is the BGT code for the area--but I know where you mean.
Sounds like they may need a custom script instead--one that also accounts for Drizzt. The simplicity of the in-game scripts [See(NearestEnemy)//Attack(NearestEnemy)]--while zombie-like in intelligence/response, make this actually work.
Easier to write this script, than to implement it--TBH. I certainly wouldn't want every gnoll in every area to be looking for Drizzt.
#3
Posted 08 April 2006 - 09:52 AM
May be it could be done by making area script of this exact location to replace override level script for gnolls within this location with custom one?Easier to write this script, than to implement it--TBH. I certainly wouldn't want every gnoll in every area to be looking for Drizzt.
The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)
#4
Posted 08 April 2006 - 10:19 AM
May be it could be done by making area script of this exact location to replace override level script for gnolls within this location with custom one?
Perhaps; you can also add script referrences to actors in an ARE file. I just have to set this up so it only happens if BGT is installed. Remind me if I forget about doing this, before BPv177 is released--I'll make an annoucement when the new version is nearly ready (it's not even close, yet--still taking a modding break ).
#5
Posted 10 April 2006 - 02:54 AM
I have found another instance where BP has caused issues (SHOAL.cre)--but this is not one of them.
P.S: It's AR3100.are, FYI.
Edited by horred the plague, 10 April 2006 - 02:55 AM.
#6
Posted 10 April 2006 - 03:31 AM
IF
See("Drizzt") // ~Drizzt~
Global("DrizztFight","GLOBAL",1)
THEN
RESPONSE #100
Help()
Attack("Drizzt")
END
causes the gnolls to attack drizzt, but "DrizztFight" is set to 1 only once Drizzt is within line of sight (it "doesn't exist" until then).
In my case, I stopped to deal with several appeared gnolls before I saw Drizzt, and the rest of their pack (even those who were out of my line of sight) rushed on me.
#7
Posted 10 April 2006 - 03:40 AM
Ok, looks like this block in GNOLLDR.BCS:
IF
See("Drizzt") // ~Drizzt~
Global("DrizztFight","GLOBAL",1)
THEN
RESPONSE #100
Help()
Attack("Drizzt")
END
causes the gnolls to attack drizzt, but "DrizztFight" is set to 1 only once Drizzt is within line of sight (it "doesn't exist" until then).
In my case, I stopped to deal with several appeared gnolls before I saw Drizzt, and the rest of their pack (even those who were out of my line of sight) rushed on me.
Sounds like GNOLLDR.bcs needs a block like this:
IF Global("DrizztFight","GLOBAL",0) Detect([PC]) See("Drizzt") THEN RESPONSE #100 SetGlobal("DrizztFight","GLOBAL",1) Attack("Drizzt") ENDOr perhaps just a simpler one, like this:
IF Global("DrizztFight","GLOBAL",0) Detect([PC]) THEN RESPONSE #100 SetGlobal("DrizztFight","GLOBAL",1) END
#8
Posted 10 April 2006 - 04:01 AM
Sounds like GNOLLDR.bcs needs a block like this:
IF Global("DrizztFight","GLOBAL",0) Detect([PC]) See("Drizzt") THEN RESPONSE #100 SetGlobal("DrizztFight","GLOBAL",1) Attack("Drizzt") ENDOr perhaps just a simpler one, like this:IF Global("DrizztFight","GLOBAL",0) Detect([PC]) THEN RESPONSE #100 SetGlobal("DrizztFight","GLOBAL",1) END
Yes, that should do it!
Thanks Horred, and sorry for laying blame on BP, where it did not belong.
#9
Posted 10 April 2006 - 09:07 AM
I just checked the GNOLLD.cre file (the gnolls with Drizzt--it is an exclusive file for this area). BP is NOT causing whatever odd behaviors you are experiencing. These gnolls use a custom script already--GNOLLDR.bcs; and only this script. This script is entirely untouched by BP's AI system.
I have found another instance where BP has caused issues (SHOAL.cre)--but this is not one of them.
P.S: It's AR3100.are, FYI.
Tenya (Baldurs Gate bridge) has the same issue as Shoal (can't return to neutral).
Edited by UnholyAngel, 10 April 2006 - 09:11 AM.
#10
Posted 10 April 2006 - 11:55 AM
Tenya (Baldurs Gate bridge) has the same issue as Shoal (can't return to neutral).
Added to the list of "leave alone's", on your word.
Now, if these people suddenly give you a lousy fight in the next version of BP....