Jump to content


Photo

Avery and Asalie's scripts are not running as intended


6 replies to this topic

#1 Ciswind

Ciswind
  • Member
  • 28 posts

Posted 09 August 2016 - 05:16 PM

This is my first time playing this mod so if I miss any details just tell me. 
Avery, an NPC (not joinable) in Nathaniel's romance, is supposed to initiate a conversation with PC. 
However, he keeps "has nothing to say" when met as this post mentioned. 
After checking with NI, the script of Avery [FHAvery.bcs] seems not running as intended: 
 
Spoiler
See("Nath")
InParty("Nath")
!StateCheck("Nath",CD_STATE_NOTVALID)
Global("TalkAvery","GLOBAL",0)
Global("FHSeeNath","GLOBAL",0)
CombatCounter(0)
THEN
RESPONSE #100
SetGlobal("FHSeeNath","GLOBAL",1)
StartDialogueNoSet(Player1)
END
 
In my game, all IF conditions are met but the SetGlobal("FHSeeNath","GLOBAL",1) doesn't run.
Hence no conversation can be fired as his dialogue requires the "FHSeeNath" global. 
Since I am not familiar with script language, can somebody tell me if there is any corrections needed on the IF conditions? 
Also, what quality should I look in NI to see if Nath08.cre is refered as "Nath" in the script?
The same situation goes for Asalie, another NPC of Nathaniel mod. The script doesn't work as intended so it's stuck. 
 
Any help/experience would be appreciated. 
 
Background: BG2 SOA+TOB, BGT (BiG World Setup), BG2 Fixpack installed, Nathaniel v4.3
 
Edit: Even the spoiler tags hate me. I suck at scripting. 

Edited by Ciswind, 09 August 2016 - 05:25 PM.


#2 The Imp

The Imp

    Not good, see EVIL is better. You LIVE.

  • Member
  • 3903 posts

Posted 09 August 2016 - 05:38 PM

Does the above script not have an IF at the start, aka is it not:

IF
See("Nath")
InParty("Nath")
!StateCheck("Nath",CD_STATE_NOTVALID)
Global("TalkAvery","GLOBAL",0)
Global("FHSeeNath","GLOBAL",0)
CombatCounter(0)
THEN
RESPONSE #100
SetGlobal("FHSeeNath","GLOBAL",1)
StartDialogueNoSet(Player1)
END

The NPCs .cre should have "Nath" as it's death variable(the NI's .cre view'er refers to it as "script name")... offset 0x0280. To enable seeing the offsets, you just Go to Options -> Show Hex Offsets ..

 

You probably will want to check the save game, so open the Save -> it's a bit weirdly named save folders -> BALDUR.GAM -> Nath should be one of the Player character's and you open those with double click, then view the CRE tab instead/not of the "Game stats". And find what their script name's are. Player generated chars have "None" in that spot.


Edited by The Imp, 09 August 2016 - 05:43 PM.

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.


#3 Ciswind

Ciswind
  • Member
  • 28 posts

Posted 09 August 2016 - 07:35 PM

Does the above script not have an IF at the start, aka is it not:
IF
See("Nath")
InParty("Nath")
!StateCheck("Nath",CD_STATE_NOTVALID)
Global("TalkAvery","GLOBAL",0)
Global("FHSeeNath","GLOBAL",0)
CombatCounter(0)
THEN
RESPONSE #100
SetGlobal("FHSeeNath","GLOBAL",1)
StartDialogueNoSet(Player1)
END

The NPCs .cre should have "Nath" as it's death variable(the NI's .cre view'er refers to it as "script name")... offset 0x0280. To enable seeing the offsets, you just Go to Options -> Show Hex Offsets ..

 

You probably will want to check the save game, so open the Save -> it's a bit weirdly named save folders -> BALDUR.GAM -> Nath should be one of the Player character's and you open those with double click, then view the CRE tab instead/not of the "Game stats". And find what their script name's are. Player generated chars have "None" in that spot.

The "IF" is there (inside the spoiler tag)

Death variable is named as "Nath"; offset as "3e4c h"

 

For the save game, Nathaniel is named as [*ATH08] (PC as [*HARNAME])

My guess is that 08 stands for the version of Nathaniel to determine its level when joining the party. 

Still the death variable has no 08 behind "NATH". 



#4 Roxanne

Roxanne

    Modder

  • Member
  • 2217 posts

Posted 09 August 2016 - 10:37 PM

What is your Global("NathRomanceActive","GLOBAL")?

 

This is not checked by the scripts, but just look at the additional triggers in FHAvery.dlg. You may have a condition that is not covered.


Edited by Roxanne, 09 August 2016 - 10:38 PM.

The Sandrah Saga

another piece of *buggy, cheesy, unbalanced junk*


#5 Ciswind

Ciswind
  • Member
  • 28 posts

Posted 10 August 2016 - 01:10 AM

What is your Global("NathRomanceActive","GLOBAL")?

 

This is not checked by the scripts, but just look at the additional triggers in FHAvery.dlg. You may have a condition that is not covered.

I remembered the RomanceActive global should be correct last trial. 

Avery's dialogue was fixed once I CLUAed in ("FHSeeNath","GLOBAL",1). 



#6 Roxanne

Roxanne

    Modder

  • Member
  • 2217 posts

Posted 10 August 2016 - 01:40 AM

What is your Global("NathRomanceActive","GLOBAL")?

 

This is not checked by the scripts, but just look at the additional triggers in FHAvery.dlg. You may have a condition that is not covered.

Sorry, that is not what I meant, there are globals like this

Global("FHBryceHere","GLOBAL") and

Global("FHTellAvery","GLOBAL") that are used by the quest and trigger Avery's responses.


The Sandrah Saga

another piece of *buggy, cheesy, unbalanced junk*


#7 Ciswind

Ciswind
  • Member
  • 28 posts

Posted 10 August 2016 - 01:45 AM

What is your Global("NathRomanceActive","GLOBAL")?

 

This is not checked by the scripts, but just look at the additional triggers in FHAvery.dlg. You may have a condition that is not covered.

Sorry, that is not what I meant, there are globals like this

Global("FHBryceHere","GLOBAL") and

Global("FHTellAvery","GLOBAL") that are used by the quest and trigger Avery's responses.

All are not existed unless I CLUA them in. 

Hence I suspect if the IF script is running as intended. 





Reply to this topic