Icewind Dale variables
moody_mage
Member Posts: 2,054
in Off-Topic
I'm playing a game of IWD and have come up against a slight problem in that Lysan the Aurelite Priestess is not showing up in her cave in order for me to be able to kill her for Kressilack.
I've gone through the usual fixes. I've double checked that I have agreed to kill her for Kressilack (I didn't choose the ambiguous answer). I spoke with her in the inn previously and she is now not there.
Does anyone know the variable which will allow me to kick this quest off? I'll be editing the game with DaleKeeper.
I've gone through the usual fixes. I've double checked that I have agreed to kill her for Kressilack (I didn't choose the ambiguous answer). I spoke with her in the inn previously and she is now not there.
Does anyone know the variable which will allow me to kick this quest off? I'll be editing the game with DaleKeeper.
0
Comments
It is strange that she isn't showing up, I admit, since you have done everything in the correct order. It might also be possible to create a script for the area, 3001, so that it checks the value of Kress_Quest and if it equals 3 then it creates Lysan but fixing her .cre in NI would be more straightforward.
Let me know how it works out.
Kress_Quest was set to 3 so no issue there. I have no experience with NI so will need to take a look and see if I can make sense of it. The creation of scripts is again nothing I have any experience with.
For example, if I wanted to apply a fix to the area I would make a blank AR3001.bcs file and say
IF
OnCreation()
Global("Kress_Quest","GLOBAL",3)
CreatureHidden("Lysan")
THEN
RESPONSE #100
ActionOverride("Lysan",HideCreature("Myself",FALSE))
END
and this should force her into becoming visible after taking the quest from Kresselack.
The "CreatureHidden" trigger may return false so removing it should always force Lysan to appear once the variable has a value of 3. If, for some truly bizarre reason, Lysan is not in this area at all then the script could be edited to include the following action:
CreateCreature("Lysan",[474.402],0)
which will put a new version of Lysan at her default location.
Scanning through the Lysan.cre files there seem to be three, one Lysanbar entry which is self-evident and two others. I wonder if it has simply confused itself somewhere along the way.
Appreciate the help though, I'll likely install NI just for the hell of it. Always good to get to grips with editing software.
IF
!Global("#save_loc_init","LOCALS",1)
THEN
RESPONSE #100
SetGlobal("#save_loc_init","LOCALS",1)
SaveObjectLocation("LOCALS","#saved_loc",Myself)
Continue()
END
IF
!Global("SPRITE_IS_DEADLYSAN","GLOBAL",0)
!StateCheck(Myself,STATE_REALLY_DEAD)
THEN
RESPONSE #100
DestroySelf()
END
IF
!Allegiance(Myself,ENEMY)
!Global("MAP_GROUP_HOSTILE1","MYAREA",0)
THEN
RESPONSE #100
Enemy()
Continue()
END
IF
Global("opened_boxes","LOCALS",0)
Global("KRESS_QUEST","GLOBAL",3)
THEN
RESPONSE #100
Unlock("BOX1")
Unlock("BOX2")
Unlock("BOX3")
Unlock("BOX4")
SetGlobal("opens_boxes","LOCALS",1)
Continue()
END
IF
Global("MAP_GROUP_HOSTILE1","MYAREA",0)
IsActive(Myself)
See(NearestEnemyOf(Myself))
THEN
RESPONSE #100
SetGlobal("MAP_GROUP_HOSTILE1","MYAREA",1)
Continue()
END
IF
!Allegiance(Myself,ENEMY)
!Global("MAP_GROUP_HOSTILE1","MYAREA",0)
THEN
RESPONSE #100
Enemy()
SetGlobal("MAP_GROUP_HOSTILE1","MYAREA",1)
Continue()
END
IF
!IsActive(Myself)
THEN
RESPONSE #100
NoAction()
END
IF
HaveSpell(CLERIC_BLESS)
!StateCheck(Myself,STATE_REALLY_DEAD)
HPPercentLT(Myself,75)
THEN
RESPONSE #100
Spell(Myself,CLERIC_BLESS)
Wait(2)
Continue()
END
IF
Global("MAP_GROUP_HOSTILE1","MYAREA",0)
AttackedBy([GOODCUTOFF],DEFAULT)
THEN
RESPONSE #100
SetGlobal("MAP_GROUP_HOSTILE1","MYAREA",1)
Enemy()
SetGlobal("MAP_GROUP_HOSTILE1","MYAREA",1)
Continue()
END
IF
HaveSpell(CLERIC_SILENCE_15_FOOT)
OR(9)
See([PC.0.0.CLERIC_MAGE])
See([PC.0.0.CLERIC_THIEF])
See([PC.0.0.FIGHTER_CLERIC])
See([PC.0.0.FIGHTER_MAGE])
See([PC.0.0.FIGHTER_MAGE_CLERIC])
See([PC.0.0.FIGHTER_MAGE_THIEF])
See([PC.0.0.CLERIC_RANGER])
See([PC.0.0.MAGE])
See([PC.0.0.CLERIC])
!StateCheck(LastSeenBy(Myself),STATE_SILENCED)
!Global("MAP_GROUP_HOSTILE1","MYAREA",0)
THEN
RESPONSE #100
Spell(LastSeenBy(Myself),CLERIC_SILENCE_15_FOOT)
Wait(2)
END
IF
HaveSpell(CLERIC_CHARM_PERSON)
OR(2)
See(NearestEnemyOf(Myself))
See([PC.0.0.FIGHTER])
!StateCheck(LastSeenBy(Myself),STATE_CHARMED)
!Global("MAP_GROUP_HOSTILE1","MYAREA",0)
THEN
RESPONSE #100
Spell(LastSeenBy(Myself),CLERIC_CHARM_PERSON)
Wait(2)
END
IF
!Global("MAP_GROUP_HOSTILE1","MYAREA",0)
See(NearestEnemyOf(Myself))
THEN
RESPONSE #100
Help()
AttackReevaluate(LastSeenBy(Myself),75)
END
IF
!Global("MAP_GROUP_HOSTILE1","MYAREA",0)
AttackedBy(NearestEnemyOf(Myself),DEFAULT)
THEN
RESPONSE #100
FaceObject(LastAttackerOf(Myself))
Continue()
END
IF
NumTimesTalkedTo(0)
IsActive(Myself)
See([PC])
!Allegiance(Myself,ENEMY)
!StateCheck(Myself,STATE_REALLY_DEAD)
THEN
RESPONSE #100
StartCutSceneMode()
ClearAllActions()
MultiPlayerSync()
StartDialogueNoSet([PC])
END
IF
!Allegiance(Myself,ENEMY)
ActionListEmpty()
THEN
RESPONSE #100
MoveToSavedLocationn("#saved_loc","LOCALS")
END
IF
Allegiance(Myself,ENEMY)
ActionListEmpty()
!See([PC])
THEN
RESPONSE #100
MoveToObject(Player1)
END
CLUAConsole:CreateCreature("#3001h6")
Also for uploading scripts - zip the file first.
Thanks in advance