Jump to content


Photo

General Discussion

mod npc djinni bg2 bg2ee

  • Please log in to reply
135 replies to this topic

#101 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 01 October 2016 - 04:50 AM

The Djinni Companion mod relies on a game variable which is not set in EET 1.0 RC6 or older.

You can install the following mod to fix this issue if you're playing EET. It can be installed any time before starting the ToB part of the game.
 

Download: Attached File  EET_ToB_Fix.zip   868.71K   235 downloads



#102 -ToTDGnoob-

-ToTDGnoob-
  • Guest

Posted 09 May 2017 - 07:24 AM

Encountered problem in EET Smuggler's cave

 

I have v2.2 installed in my EET test installation. I have not met the Djinni ever....but that is another story...

 

I encountered CtDs when entering AR5504 in ToB.

After much research and after eliminating anything else as a reason I found the issue in the ar5504.bcs.

 

When I removed the code that is added by your ar5504_top.baf, the problem was resolved.

 

Edit

I assume the problem is this in the first block

 FadeToColor([1.0], 0)

 

I always use

FadeToColor([30.0],0)
;;;;;;;
FadeFromColor([30.0],0)

 

I want to also report that I have encountered this error (as soon as I enter smugglers cave my game crashes). I am not sure how to go about editing the files as described here in the quote, but I was fearful of messing more things up if I changed anything in the .bcs files (especially since I appear to have multiple AR5504.bcs files!) so will leave this area for now. Must be due to me playing EET and an older version.



#103 The Imp

The Imp

    Not good, see EVIL is better. You'll LIVE.

  • Member
  • 5148 posts

Posted 09 May 2017 - 07:55 AM

in the .bcs files (especially since I appear to have multiple AR5504.bcs files!) so will leave this area for now. Must be due to me playing EET and an older version.

The game only uses the one that it does. Aka it's the one that's biffed or the one that is in the override folder(s)... as stated in the folder rules ... so basically the reason why you have multiple is that they aren't in use, but are mods files that are there to extend the one the game uses after they applied, displayed by using a WINDOWS search function in the folder, which is a mistake you have to learn to never use ever again.

Easy way to not get confused is to use a game editor like Near Infinity that only shows you the one in use, and NOT WINDOWS cheese wheel.


Edited by The Imp, 09 May 2017 - 08:00 AM.

Yep, Jarno Mikkola. my Mega Mod FAQ. Use of the BWS, and how to use it(scroll down that post a bit). 
OK, desert dweller, welcome to the sanity, you are free to search for the limit, it's out there, we drew it in the sand. Ouh, actually it was still snow then.. but anyways.


#104 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 09 May 2017 - 08:16 AM

The area script for the smuggler cave is somewhat tricky, especially if you also have Wheels of Prophecy installed. It never crashed on my test installations, so I can't really say what is causing this issue.

It might be a timing problem since there are two fade in/out instructions executed in short time. You could try entering the cave again. Maybe it was just a singular occurrence.

If you know how to use Near Infinity you could open the file AR5504.BCS, look for the script block starting with "Global("A7FirstTime","AR5504",0)" and remove the lines "FadeToColor([1.0],0)" and "FadeFromColor([30.0],0)" from the block. If you don't, then attach or upload this script file and I will do that for you. (You might have to register if you want to attach files to your posts.)


Edited by Argent77, 09 May 2017 - 08:17 AM.


#105 -ToTDGnoob-

-ToTDGnoob-
  • Guest

Posted 10 May 2017 - 01:10 AM

Hey The Imp and Argent77. Thank you so much for the information, haha duly noted about not using the windows search feature. It's amazing how much (or how little!) the search feature in windows has progressed since Windows 98! 

 

I have never used Near Infinity before but I will give it a go and try removing the lines you indicated. Fingers crossed it does the trick.

 

Thanks again for both replying and replying really quickly. It makes me happy knowing there is such a strong and active Baldur's gate community after all these years!



#106 -ToTDGnoob-

-ToTDGnoob-
  • Guest

Posted 10 May 2017 - 02:33 AM

Okay so I believe I followed your instructions in terms of removing both fade to color lines (exactly as you wrote them). However, the game still crashes as soon as I go in the smugglers cave. Here is the code from that file, is there is anything that looks odd or missing, feel free to let me know. Also sorry for the length of the code, not sure how to put it in the "spoiler" tab. :/

 

IFGlobal("RZAR5504","GLOBAL",0)
THEN
RESPONSE #100
SetGlobal("RZAR5504","GLOBAL",1)
Continue()
END


IF
Global("A7FirstTime","AR5504",0)
!Global("Enclave","GLOBAL",2)
THEN
RESPONSE #100
SetGlobal("A7FirstTime","AR5504",1)
RealSetGlobalTimer("A7Q5TremorTimer","AR5504",ONE_TURN)
SmallWait(1)
Continue()
END


IF
Global("A7FirstTime","AR5504",0)
Global("Enclave","GLOBAL",2)
THEN
RESPONSE #100
SetGlobal("A7FirstTime","AR5504",1)
Continue()
END


IF
Global("A7Quest5","GLOBAL",0)
Global("A7Q5AfaaqAppears","GLOBAL",0)
Global("A7AfaaqEnslaved","GLOBAL",0)
Global("A7AfaaqSummoned","GLOBAL",1)
!InActiveArea("A7Afaaq")
THEN
RESPONSE #100
Deactivate("A7Afaaq")
MoveGlobalObject("A7Afaaq",Player1)
Activate("A7Afaaq")
Continue()
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
Dead("abazigal") // Error
Dead("sendai") // Error
OR(2)
Dead("balth") // Error
Global("BalthazarFights","GLOBAL",1)
OR(4)
Global("DMWWSmugglerStatus","GLOBAL",0)
Global("DMWWSmugglerStatus","GLOBAL",2)
Global("DMWWSmugglerStatus","GLOBAL",4)
Global("DMWWSmugglerStatus","GLOBAL",8)
THEN
RESPONSE #100
FadeToColor([0.0],0)
ClearAllActions()
SetGlobal("DMWWSmugglerStatus","GLOBAL",5)
Wait(3)
FadeFromColor([20.0],0)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
Dead("abazigal") // Error
Dead("sendai") // Error
!Dead("balth") // Error
!Global("BalthazarFights","GLOBAL",1)
OR(3)
Global("DMWWSmugglerStatus","GLOBAL",0)
Global("DMWWSmugglerStatus","GLOBAL",2)
Global("DMWWSmugglerStatus","GLOBAL",4)
THEN
RESPONSE #100
FadeToColor([0.0],0)
ClearAllActions()
CreateCreature("AMSAEMON",[861.942],SW) // Error
CreateCreature("DEDSMUG",[527.817],S) // Error
CreateCreature("DEDSMUG",[900.724],E) // Error
CreateCreature("DEDSMUG",[882.1041],SWW) // Error
CreateCreature("DEDSMUG",[669.1002],S) // Error
CreateCreature("DEDSMUG",[802.450],NW) // Error
Wait(3)
FadeFromColor([20.0],0)
Wait(1)
SetGlobal("PlaceBodies","AR5504",1)
SetGlobal("DMWWSmugglerStatus","GLOBAL",7)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
OR(2)
Dead("abazigal") // Error
Dead("sendai") // Error
OR(2)
Global("DMWWSmugglerStatus","GLOBAL",2)
Global("DMWWSmugglerStatus","GLOBAL",4)
OR(2)
GlobalTimerExpired("ThfMonksGone","GLOBAL")
Global("SmugglerPlot","GLOBAL",2)
!Dead("balth") // Error
!Global("BalthazarFights","GLOBAL",1)
THEN
RESPONSE #100
FadeToColor([0.0],0)
ClearAllActions()
SetGlobal("DMWWSmugglerStatus","GLOBAL",7)
CreateCreature("AMSAEMON",[861.942],SW) // Error
CreateCreature("DEDSMUG",[527.817],S) // Error
CreateCreature("DEDSMUG",[900.724],E) // Error
CreateCreature("DEDSMUG",[882.1041],SWW) // Error
CreateCreature("DEDSMUG",[669.1002],S) // Error
CreateCreature("DEDSMUG",[802.450],NW) // Error
Wait(3)
FadeFromColor([20.0],0)
Wait(1)
SetGlobal("PlaceBodies","AR5504",1)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
Global("DMWWSmugglerStatus","GLOBAL",0)
THEN
RESPONSE #100
SetGlobal("DMWWSmugglerStatus","GLOBAL",1)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
Global("DMWWSmugglersHostile","GLOBAL",1)
OR(2)
Global("DMWWSmugglerStatus","GLOBAL",2)
Global("DMWWSmugglerStatus","GLOBAL",4)
THEN
RESPONSE #100
FadeToColor([0.0],0)
ClearAllActions()
Wait(3)
FadeFromColor([20.0],0)
SetGlobal("DMWWSmugglerStatus","GLOBAL",5)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
OR(2)
Global("DMWWSmugglerStatus","GLOBAL",2)
Global("DMWWSmugglerStatus","GLOBAL",4)
OR(2)
Dead("balth") // Error
Global("BalthazarFights","GLOBAL",1)
THEN
RESPONSE #100
SetGlobal("DMWWSmugglerStatus","GLOBAL",1)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
OR(2)
Global("DMWWSmugglerStatus","GLOBAL",2)
Global("DMWWSmugglerStatus","GLOBAL",4)
OR(2)
GlobalTimerExpired("ThievesScoot","AR5504")
GlobalTimerExpired("ThfMonksGone","GLOBAL")
THEN
RESPONSE #100
FadeToColor([0.0],0)
ClearAllActions()
SetGlobal("DMWWSmugglerStatus","GLOBAL",5)
Wait(3)
FadeFromColor([20.0],0)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
Global("DMWWSmugglerStatus","GLOBAL",2)
Global("SmugglerPlot","GLOBAL",2)
THEN
RESPONSE #100
SetGlobal("DMWWSmugglerStatus","GLOBAL",1)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
Global("DMWWSmugglerStatus","GLOBAL",2)
GlobalTimerNotExpired("ThfMonksGone","GLOBAL")
GlobalTimerNotExpired("ThievesScoot","AR5504")
THEN
RESPONSE #100
SetGlobal("DMWWSmugglerStatus","GLOBAL",1)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
Global("DMWWSmugglerStatus","GLOBAL",2)
GlobalTimerNotExpired("DMWWMonkFightTimer","GLOBAL")
THEN
RESPONSE #100
SetGlobal("DMWWSmugglerStatus","GLOBAL",1)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
Global("DMWWSmugglerStatus","GLOBAL",2)
THEN
RESPONSE #100
FadeToColor([0.0],0)
ClearAllActions()
Wait(1)
CreateCreature("AMMONK02",[682.1034],S) // Error
CreateCreature("AMMONK04",[541.1021],S) // Error
CreateCreature("AMMONK05",[559.951],S) // Error
CreateCreature("AMMONK06",[659.931],S) // Error
ActionOverride("AMMONK02",FaceObject("AMCARRAS"))
ActionOverride("AMMONK04",FaceObject("AMCARRAS"))
ActionOverride("AMMONK05",FaceObject("AMCARRAS"))
ActionOverride("AMMONK06",FaceObject("AMCARRAS"))
Wait(1)
FadeFromColor([20.0],0)
SetGlobal("DMWWSmugglerStatus","GLOBAL",3)
SetGlobalTimer("DMWWMonkFightTimer","GLOBAL",THREE_ROUNDS)
SetGlobal("SmugglerPlot","GLOBAL",1)
END


IF
OR(2)
Dead("abazigal") // Error
Dead("sendai") // Error
!Dead("balth") // Error
!Global("BalthazarFights","GLOBAL",1)
Global("DMWWSmugglerStatus","GLOBAL",6)
THEN
RESPONSE #100
FadeToColor([0.0],0)
ClearAllActions()
CreateCreature("AMSAEMON",[861.942],SW) // Error
CreateCreature("DEDSMUG",[527.817],S) // Error
CreateCreature("DEDSMUG",[900.724],E) // Error
CreateCreature("DEDSMUG",[882.1041],SWW) // Error
CreateCreature("DEDSMUG",[669.1002],S) // Error
CreateCreature("DEDSMUG",[802.450],NW) // Error
Wait(3)
FadeFromColor([20.0],0)
Wait(1)
SetGlobal("PlaceBodies","AR5504",1)
SetGlobal("DMWWSmugglerStatus","GLOBAL",7)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
Global("DMWWSmugglerStatus","GLOBAL",8)
OR(2)
Dead("balth") // Error
Global("BalthazarFights","GLOBAL",1)
THEN
RESPONSE #100
FadeToColor([0.0],0)
ClearAllActions()
Wait(3)
FadeFromColor([20.0],0)
SetGlobal("DMWWSmugglerStatus","GLOBAL",5)
END


IF
!Global("A7Quest5","GLOBAL",1)
InMyArea(Player1)
OR(4)
Global("DMWWSmugglerStatus","GLOBAL",2)
Global("DMWWSmugglerStatus","GLOBAL",4)
Global("DMWWSmugglerStatus","GLOBAL",6)
Global("DMWWSmugglerStatus","GLOBAL",8)
THEN
RESPONSE #100
IncrementGlobal("DMWWSmugglerStatus","GLOBAL",-1)
END


IF
Global("A7Q5Intro","AR5504",0)
Global("A7Quest5","GLOBAL",0)
Global("A7Q5AfaaqAppears","GLOBAL",0)
Global("A7AfaaqEnslaved","GLOBAL",0)
Global("A7AfaaqSummoned","GLOBAL",0)
PartyHasItem("A7DJLMPA") // Error
!Global("Enclave","GLOBAL",2)
THEN
RESPONSE #100
SetGlobal("A7Q5Intro","AR5504",1)
CreateCreature("A7Karim",[481.920],E) // Error
ActionOverride("A7Karim",FaceObject("AMCARRAS"))
ActionOverride("A7Karim",DestroyItem("A7RING01")) // Error
CreateCreature("A7Q5DJ01",[518.830],SE) // Error
ActionOverride("A7Q5DJ01",SetDialog("A7Q5DJ01"))
ActionOverride("A7Q5DJ01",FaceObject("AMCARRAS"))
ActionOverride("A7Q5DJ01",DestroyItem("A7RING01")) // Error
CreateCreature("A7Q5DJ05",[424.850],SEE) // Error
ActionOverride("A7Q5DJ05",SetDialog("A7Q5DJ05"))
ActionOverride("A7Q5DJ05",FaceObject("AMCARRAS"))
ActionOverride("A7Q5DJ05",DestroyItem("A7RING01")) // Error
ActionOverride("AMCARRAS",FaceObject("A7Karim"))
Wait(2)
ClearAllActions()
StartCutSceneMode()
StartCutScene("A7Q5ct1a")
END


IF
Global("A7Q5Intro","AR5504",0)
Global("A7Quest5","GLOBAL",0)
Global("A7Q5AfaaqAppears","GLOBAL",0)
Global("A7AfaaqEnslaved","GLOBAL",0)
Global("A7AfaaqSummoned","GLOBAL",1)
PartyHasItem("A7DJLMPA") // Error
!Global("Enclave","GLOBAL",2)
THEN
RESPONSE #100
SetGlobal("A7Q5Intro","AR5504",1)
CreateCreature("A7Karim",[481.920],E) // Error
ActionOverride("A7Karim",FaceObject("AMCARRAS"))
ActionOverride("A7Karim",DestroyItem("A7RING01")) // Error
CreateCreature("A7Q5DJ01",[518.830],SE) // Error
ActionOverride("A7Q5DJ01",SetDialog("A7Q5DJ01"))
ActionOverride("A7Q5DJ01",FaceObject("AMCARRAS"))
ActionOverride("A7Q5DJ01",DestroyItem("A7RING01")) // Error
CreateCreature("A7Q5DJ05",[424.850],SEE) // Error
ActionOverride("A7Q5DJ05",SetDialog("A7Q5DJ05"))
ActionOverride("A7Q5DJ05",FaceObject("AMCARRAS"))
ActionOverride("A7Q5DJ05",DestroyItem("A7RING01")) // Error
ActionOverride("AMCARRAS",FaceObject("A7Karim"))
Wait(2)
ActionOverride("A7Karim",StartDialogueNoSet("AMCARRAS"))
END


IF
Global("A7Q5Intro","AR5504",0)
Global("A7Quest5","GLOBAL",0)
Global("A7Q5AfaaqAppears","GLOBAL",0)
Global("A7AfaaqEnslaved","GLOBAL",1)
OR(2)
PartyHasItem("A7DJLMP") // Error
PartyHasItem("A7DJLMPA") // Error
!Global("Enclave","GLOBAL",2)
THEN
RESPONSE #100
SetGlobal("A7Q5Intro","AR5504",1)
CreateCreature("A7Karim",[481.920],E) // Error
ActionOverride("A7Karim",FaceObject("AMCARRAS"))
ActionOverride("A7Karim",DestroyItem("A7RING01")) // Error
CreateCreature("A7Q5DJ01",[518.830],SE) // Error
ActionOverride("A7Q5DJ01",SetDialog("A7Q5DJ01"))
ActionOverride("A7Q5DJ01",FaceObject("AMCARRAS"))
ActionOverride("A7Q5DJ01",DestroyItem("A7RING01")) // Error
CreateCreature("A7Q5DJ05",[424.850],SEE) // Error
ActionOverride("A7Q5DJ05",SetDialog("A7Q5DJ05"))
ActionOverride("A7Q5DJ05",FaceObject("AMCARRAS"))
ActionOverride("A7Q5DJ05",DestroyItem("A7RING01")) // Error
ActionOverride("AMCARRAS",FaceObject("A7Karim"))
Wait(2)
ActionOverride("A7Karim",StartDialogueNoSet("AMCARRAS"))
END


IF
Global("A7Q5Intro","AR5504",0)
Global("A7Quest5","GLOBAL",0)
Global("A7Q5AfaaqAppears","GLOBAL",1)
!Global("Enclave","GLOBAL",2)
THEN
RESPONSE #100
SetGlobal("A7Q5Intro","AR5504",1)
SetGlobal("A7Q5AfaaqAppears","GLOBAL",2)
CreateCreature("A7Karim",[481.920],E) // Error
ActionOverride("A7Karim",FaceObject("AMCARRAS"))
ActionOverride("A7Karim",DestroyItem("A7RING01")) // Error
CreateCreature("A7Q5DJ01",[518.830],SE) // Error
ActionOverride("A7Q5DJ01",SetDialog("A7Q5DJ01"))
ActionOverride("A7Q5DJ01",FaceObject("AMCARRAS"))
ActionOverride("A7Q5DJ01",DestroyItem("A7RING01")) // Error
CreateCreature("A7Q5DJ05",[424.850],SEE) // Error
ActionOverride("A7Q5DJ05",SetDialog("A7Q5DJ05"))
ActionOverride("A7Q5DJ05",FaceObject("AMCARRAS"))
ActionOverride("A7Q5DJ05",DestroyItem("A7RING01")) // Error
ActionOverride("A7Q5DJ05",SetName(478877)) // Error
ActionOverride("A7Q5DJ05",ApplySpellRES("A7Q5PIC1",Myself)) // Error
ActionOverride("A7Q5DJ05",SetGlobal("Afaaq","LOCALS",1))
ActionOverride("AMCARRAS",FaceObject("A7Karim"))
Wait(2)
ActionOverride("A7Karim",StartDialogueNoSet("AMCARRAS"))
END


IF
Global("A7Q5Intro","AR5504",0)
THEN
RESPONSE #100
SetGlobal("A7Q5Intro","AR5504",1)
SetGlobal("A7Quest5","GLOBAL",11)
END


IF
GlobalGT("A7Quest5","GLOBAL",0)
GlobalLT("A7Quest5","GLOBAL",10)
Global("A7Q5Permission","GLOBAL",1)
Global("A7Q5Protection","GLOBAL",1)
Global("A7EnablePool","AR5504",0)
THEN
RESPONSE #100
SetGlobal("A7EnablePool","AR5504",1)
TriggerActivation("A7InfoWater_1",FALSE)
TriggerActivation("A7InfoWater_2",TRUE)
END


IF
GlobalGT("A7Quest5","GLOBAL",0)
GlobalLT("A7Quest5","GLOBAL",10)
Global("A7Q5Permission","GLOBAL",1)
Global("A7Q5Protection","GLOBAL",0)
Global("A7EnablePool","AR5504",1)
THEN
RESPONSE #100
SetGlobal("A7EnablePool","AR5504",0)
TriggerActivation("A7InfoWater_2",FALSE)
TriggerActivation("A7InfoWater_1",TRUE)
END


IF
Global("A7Quest5","GLOBAL",10)
Global("A7Finalized","AR5504",0)
THEN
RESPONSE #100
SetGlobal("A7Finalized","AR5504",1)
AmbientActivate("A7Bubbles_1",FALSE)
AmbientActivate("A7Bubbles_2",FALSE)
AmbientActivate("A7Bubbles_3",FALSE)
AmbientActivate("A7Bubbles_4",FALSE)
AmbientActivate("A7Bubbles_5",FALSE)
AmbientActivate("A7Steam_1",FALSE)
AmbientActivate("A7Steam_2",FALSE)
AmbientActivate("A7Steam_3",FALSE)
AmbientActivate("A7Steam_4",FALSE)
AmbientActivate("A7Steam_5",FALSE)
TriggerActivation("A7InfoWater_2",FALSE)
TriggerActivation("A7InfoWater_1",TRUE)
END


IF
OR(2)
Global("Enclave","GLOBAL",2)
Dead("AMCARRAS") // Error
Global("A7Q5Permission","GLOBAL",0)
THEN
RESPONSE #100
SetGlobal("A7Q5Permission","GLOBAL",1)
END


IF
Global("A7Quest5","GLOBAL",0)
GlobalLT("MONKSPAWNEDSMUGGLERPLOT","GLOBAL",3)
THEN
RESPONSE #100
SetGlobal("MONKSPAWNEDSMUGGLERPLOT","GLOBAL",3)
END


IF
GlobalGT("A7Quest5","GLOBAL",1)
Global("MONKSPAWNEDSMUGGLERPLOT","GLOBAL",3)
THEN
RESPONSE #100
SetGlobal("MONKSPAWNEDSMUGGLERPLOT","GLOBAL",0)
END


IF
Global("A7Q5Protection","GLOBAL",1)
!GlobalTimerNotExpired("A7Q5ProtectionWarnTimer","GLOBAL")
!GlobalTimerNotExpired("A7Q5ProtectionTimer","GLOBAL")
THEN
RESPONSE #100
SetGlobal("A7Q5Protection","GLOBAL",0)
SetGlobal("A7Q5ProtectionWarn","GLOBAL",1)
END


IF
!Global("A7Quest5","GLOBAL",10)
RealGlobalTimerExpired("A7Q5TremorTimer","AR5504")
RandomNum(50,1)
THEN
RESPONSE #100
RealSetGlobalTimer("A7Q5TremorTimer","AR5504",ONE_TURN)
PlaySound("EFF_P92")
ScreenShake([5.5],30)
END


IF
Global("w_mmaze","GLOBAL",2)
CombatCounter(0)
!RealGlobalTimerNotExpired("w_mmazet","GLOBAL")
THEN
RESPONSE #100
SetGlobal("w_mmaze","GLOBAL",0)
ApplySpellRES("W_MFREE","W_MULE") // Error
END


IF
InParty("CVSandr")
Global("PelligFollow","GLOBAL",1)
!InActiveArea("pellig")
!See("pellig")
!Dead("pellig") // Error
THEN
RESPONSE #100
MoveGlobalObject("Pellig","CVSandr")
END


IF
!Allegiance("Pellig",CONTROLLED)
InParty("CVSandr")
Delay(10)
THEN
RESPONSE #100
ChangeEnemyAlly("Pellig",CONTROLLED)
END


IF
Global("HaiassJumpOn","GLOBAL",1)
Global("HaiassSeUne","GLOBAL",1)
!InActiveArea("haiass")
!See("haiass")
!Dead("haiass")
THEN
RESPONSE #100
MoveGlobalObject("haiass",Protagonist)
END


IF
!Allegiance("haiass",CONTROLLED)
Delay(12)
THEN
RESPONSE #100
ChangeEnemyAlly("haiass",CONTROLLED)
END

 



#107 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 10 May 2017 - 03:56 AM

There is a Wiki for Near Infinity which also contains a "Getting Started" section. Also make sure to use a recent version of Near Infinity.

You can use [ spoiler ] hidden content... [ /spoiler ] (without spaces) to hide content.

Does it make a difference if you enter the cave with Afaaq inside or outside of the lamp? Btw, you mentioned using an older version of the mod. Which version is it?
 
I've attached several different variants of the area script. Can you unpack each one in turn into the game's override folder and test if it still crashes?

Attached Files



#108 -ToTDGnoob-

-ToTDGnoob-
  • Guest

Posted 10 May 2017 - 05:14 AM

There is a Wiki for Near Infinity which also contains a "Getting Started" section. Also make sure to use a recent version of Near Infinity.

You can use [ spoiler ] hidden content... [ /spoiler ] (without spaces) to hide content.

Does it make a difference if you enter the cave with Afaaq inside or outside of the lamp? Btw, you mentioned using an older version of the mod. Which version is it?
 
I've attached several different variants of the area script. Can you unpack each one in turn into the game's override folder and test if it still crashes?

 

Thank you!!! I tried zip 1 and it didn't work, crashed again, but zip 2 worked! I am in the smugglers cave Hoorah! haha! Also thank you for the spoiler block tip, I will use it for next time. 

 

Have a fantastic day/night (depending on what part of the world you hail from!) :)



#109 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 10 May 2017 - 05:21 AM

That's good to know. The second script variant only removed code that teleported Afaaq to the party if he's not present. If you could see the conversation between the party, Afaaq and the genies you can continue without having to worry about missing content.



#110 baum

baum
  • Member
  • 4 posts

Posted 21 July 2017 - 04:03 AM

Hi

 

I get some errors while installing the mod (in the mods log below) but it installed successfully and it works (I tested if I can get the djinn and he works fine in terms of conversation and other options, no combat or quests yet).

 

My configuration: Win 7 BG2EE 2.3.67.3 (GoG version) All the mods I installed have been patched using the newest fixpack and I used the mod install order BWS uses. I didnt use Modmerge.

 

More than what causes the problem (probably installing it after Atweaks or smth like that)  I'm interested if I can fix it manually, by editing the mod files (I have only very very basic knowledge of programming so a full instruction what to do would be wonderful) or maby its even simpler- by using the console during the game when a bug appears (in this case my question would be- what console command should I use)

 

I understand that what I'm asking could be a drag and you may have no time for it, but I would be very grateful for any help :)

 

 

My weidu log and debug for the djinni in the link below

 

Best Regards

 

 

Djinni debug: https://ufile.io/mfqj9

Weidu log: https://ufile.io/zlkdv


Edited by baum, 21 July 2017 - 04:04 AM.


#111 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 21 July 2017 - 04:36 AM

I get some errors while installing the mod (in the mods log below) but it installed successfully and it works (I tested if I can get the djinn and he works fine in terms of conversation and other options, no combat or quests yet).

The error messages appear to be a result of a stricter check in the latest WeiDU version (v242). They were not produced by the version shipped with the mod archive (v240).

The message itself is correct though. I'm using the wrong parameter type for a certain script action. However, it still compiles correctly and should cause no issues in the game, so you can continue your game without worries. I'll fix it in the next mod version (no release date yet).
 



#112 baum

baum
  • Member
  • 4 posts

Posted 21 July 2017 - 08:43 AM

Thanks so much for such a quick and precise reply :)

#113 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 25 August 2017 - 02:43 AM

Update: Afaaq, the Djinni Companion v2.5

Changes in v2.5:

  • Added another path to solve Afaaq's Underdark quest.
  • Improved Tweaks component name.
  • Added Elixir of Health to list of potions Afaaq may use.
  • Fixed a compatibility issue with SCS regarding an artifact for a quest.
  • Improved compatibility with 2.x patched BG2EE.
  • Added correction dialog option to Afaaq's quick menu.
  • Fixed several (cosmetic) scripting issues.
  • Fixed spelling errors.


#114 Periel

Periel
  • Member
  • 14 posts

Posted 31 January 2018 - 08:26 AM

Is it not possible to make this great-looking mod BGT compatible? I thought that would still be pretty much default compatability for all mods, even post EE. :/  Not everyone wants to pay more for a game they already have in pre-EE format...



#115 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 31 January 2018 - 09:07 AM

Is it not possible to make this great-looking mod BGT compatible? I thought that would still be pretty much default compatability for all mods, even post EE. :/  Not everyone wants to pay more for a game they already have in pre-EE format...

 

The Djinni Companion is fully compatible with (classic) BG2:ToB and BGT. I see that BGT isn't explicitly mentioned in the readme however. It'll be fixed.
 



#116 Periel

Periel
  • Member
  • 14 posts

Posted 31 January 2018 - 09:57 AM

Thanks for the confirmation. My mistake - I can see now in the TP2 header:

 

  REQUIRE_PREDICATE GAME_IS ~tob bgt bg2ee eet~
 



#117 Isewein

Isewein
  • Member
  • 98 posts

Posted 15 April 2018 - 02:01 PM

I just finished a BGT run with v1.7 of Afaaq, and I must say I'm impressed by your scripting skills. As far as I can tell, nobody had ever even explored the possibility of integrating a 7th party member by using the Familiar role before. That it works so flawlessly is nothing short of a revolution for IE modding! (I see there are Solaufein mods in the making adapting your technique already :D ) As it happened, my Familiar had died just shortly before acquiring Afaaq, so he filled that niche nicely (and who says epic level mages can't have Genies for Familiars, anyway?). I always wished Shadows of Amn had expanded more upon the Arabian Nights/ mediaeval Spain atmosphere of Amn, and having your very own Genie in a Bottle to follow you around really adds to that, especially for a Mage Charname.

 

The dialogue in this mod is a bit on the generic side, but by no means out of place or repetitively boring. The branching Quest design, however, is absolutely exemplary, to the point that a short, 10-minute subquest of one of the 5(?) main quests in this mod may have more scripting to it than some entire quest mods by other authors. It's a bit overkill, considering how short and trivial most of the quests here are, but hey, I'm not complaining! As an example: the Efreeti quest has this amazingly crafted area, multiple responses from all creatures and paths for all eventualities, yet the 'ideal' solution is really incredibly easy to achieve (by this point in the game, I had *all 3* of the required rare artifacts somewhere down my Bag of Holding...), essentially leaving the other routes only for completionism's sake. But ultimately, this should be read more as a complaint regarding other mods' quest design when compared to this one rather than an inherent flaw of yours. ;)

 

And hey, extra props for the probably first and only intended use of the Dimension Door spell in all of Baldur's Gate (that little island in the lava next to the Efreeti Lair) - although that the chest there contained yet another Demilich Skull really exacerbated what I described above. It's a sweet gimmick, but having the item to peacefully solve the quest so readily available in line of sight of the quest giver completely trivialises the challenge. I mean, are creatures from the Elemental Plane of Fire of all people not able to cross over to that little lava island? Seems unlikely...  

 

Oh, and I really wish you'd expand on the idea of entering his 'home'. As far as I can tell, there is absolutely nothing to interact with / no special dialogue there? Was really hoping for an opportunity to play a round of Chess, there. It seems like a Genie thing to do. :)


Edited by Isewein, 15 April 2018 - 02:05 PM.


#118 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 16 April 2018 - 12:27 AM

Thank you for your feedback.

I had to jump through many hoops to make a "7th party member" possible. It's definitely not something for a regular party member, since you can't access inventory or record screen that way.

I'm not very skilled in writing dialogs, so you won't see a lot of improvement in this area, I'm afraid. I have added a few more NPC banters though, that will be added by the next mod release.

The branchings in the quests are thorough, but are mainly just additional lines or journal entries. It was less work than it might look from the outside. (Actually, there are even branches the player will most likely never see at all. E.g. the drow leader of Afaaq's Underdark quest has extra dialog in case you manage to charm him.)

Heh, I never really expected someone opening the chest in the efreeti area. It is unreachable (except by teleport), the trap can't be disarmed and contains a nasty surprise, and the lock is unpickable (by normal means).

Yeah, Afaaq's home is just an easter egg. But maybe I can link it to another mini quest. We'll see.
 



#119 Isewein

Isewein
  • Member
  • 98 posts

Posted 16 April 2018 - 05:47 AM

You're welcome! True, it dawns on me that I never even checked his inventory. But he keeps himself well in the game just by relying on his scimitar (it's also incredibly useful to have his secondary, non-magic weapon at hand against Magic Golems!) and innate abilities (which hit the mark on balance and flavour, by the way).

 

A propos the Drow leader - I was a bit shocked to see that Adalon's guise could be so easily undone. It makes the whole of Ust Natha seem even more naive and incompetent, to be honest. I wonder if it would be possible to allow the group to remain undetected if they play their Drow roles really well / put on non-Detection spells? Would be nice to reward that effort in more than just words. :)

 

Regarding the chest, I suppose I simply couldn't pass up the opportunity to finally utilise Dimension Door. IIRC the trap had no effect (might have had magic resistance spells up?), and the lock gave way easily enough to a Knock spell. As a gimmick it's great, but I'd really suggest replacing the Skull & Book in the chest with some other nice loot then, for the reasons outlined above.



#120 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 16 April 2018 - 06:25 AM

I have always seen Drow as highly intelligent, who can't be fooled easily. The only excuse for Ust Natha's citizens not detecting the party's disguise is because they are too distracted by the war with the surface elves. (Btw, Matron Mother Ardulace almost calls your bluff.)







Also tagged with one or more of these keywords: mod, npc, djinni, bg2, bg2ee