Jump to content

Companions won't initiate dialogue


Recommended Posts

I'm a novice modder and my first mod is about 80% complete but I'm having an issue during testing. There are a few cases where a companion is supposed to speak to the player after certain events, but either this doesn't trigger at all or it only triggers if the companion is force-talked. I've combed through a bunch of scripts from the game itself and from other modders and it seems like it should be working, but clearly I'm missing something. 

For example:

IF
InParty(Myself)
OR(2)
Global("PhaereInnuendo","GLOBAL",2)
Global("PhaereInnuendo","GLOBAL",3)
OR(2)
Global("RasaadRomanceActive","GLOBAL",1)
Global("RasaadRomanceActive","GLOBAL",2)
Global("OWR_phaere","GLOBAL",0)
THEN
RESPONSE #100
SetGlobal("OWR_phaere","GLOBAL",1)
END

IF
Global("OWR_phaere","GLOBAL",1)
THEN
RESPONSE #100
StartDialogueNoSet(Player1)
END

Basically: After visiting Phaere's chambers, a romanced Rasaad should initiate a dialogue. (This is something that can occur within the scope of the mod.) The first block seems to be functioning as the dialogue will trigger if I force-talk Rasaad.

In case it's relevant, this script is in the TP2 as: APPEND ~RASAAD.BCS~ ~OW#PHRAS.BAF~

Any help would be appreciated!

Link to comment

Well, your second block should definitely have InParty(Myself) as an additional condition; if you dismissed him after the first block ran but before the second (which, since they won't run on the same pass through that script, is at least possible), you'd stutter-bug him with forced dialogue that didn't change the conditions for its activation.

Wait, APPEND? Oh, that's your problem. That command simply appends your BAF script to the BCS file. Which makes that part of the file complete nonsense; here's what last few lines of rasaad.bcs look like before mods:

36OB
0 0 0 0 0 0 0 0 0 0 0 0 ""OB
OB
0 0 0 0 0 0 0 0 0 0 0 0 ""OB
OB
0 0 0 0 0 0 0 0 0 0 0 0 ""OB
0 0 0 0 0"" "" AC
RE
RS
CR
SC

BCS and BAF are not the same formats. You need to compile the BAF code as you add it in, not just stick it on unmodified. Use EXTEND_BOTTOM instead, which compiles the code as it adds it in.

Now, why did your first block appear to work? That, most likely, is an indication, that you didn't actually use "OWR_phaere" in the conditions for the addition you made to the dialogue file. You might need to look closer at that part too.

Link to comment
40 minutes ago, jmerry said:

Well, your second block should definitely have InParty(Myself) as an additional condition; if you dismissed him after the first block ran but before the second (which, since they won't run on the same pass through that script, is at least possible), you'd stutter-bug him with forced dialogue that didn't change the conditions for its activation.

Wait, APPEND? Oh, that's your problem. That command simply appends your BAF script to the BCS file. Which makes that part of the file complete nonsense; here's what last few lines of rasaad.bcs look like before mods:

36OB
0 0 0 0 0 0 0 0 0 0 0 0 ""OB
OB
0 0 0 0 0 0 0 0 0 0 0 0 ""OB
OB
0 0 0 0 0 0 0 0 0 0 0 0 ""OB
0 0 0 0 0"" "" AC
RE
RS
CR
SC

BCS and BAF are not the same formats. You need to compile the BAF code as you add it in, not just stick it on unmodified. Use EXTEND_BOTTOM instead, which compiles the code as it adds it in.

Now, why did your first block appear to work? That, most likely, is an indication, that you didn't actually use "OWR_phaere" in the conditions for the addition you made to the dialogue file. You might need to look closer at that part too.

You're a hero, jmerry! I changed APPEND to EXTEND_BOTTOM and suddenly everyone's very chatty. I also added InParty(Myself) and fixed something in the dialogue file so it's all triggering properly. Thank you a bunch, I was getting very frustrated.

Link to comment

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...