Jump to content


Yoshimo wants to talk, but can't


  • Please log in to reply
16 replies to this topic

#1 -IvanGrozny-

-IvanGrozny-
  • Guest

Posted 22 March 2009 - 10:26 PM

I noticed the Yoshimo dialogues weren't happening, and eventually my character started facing Yoshimo as if a dialogue wanted to start, but couldn't. That's proven a bit...problematic, because the game thinks we're in the middle of a dialogue constantly, causing both Yoshimo and my main character to not be able to move very far without immediately stopping and facing each other again. This also means I can only save my game through leaving the screen.

Uninstalling the Yoshimo friendship allowed the first banter to pop up, but otherwise the problem remained. Yoshimo and I are trapped in what the game thinks is 'dialogue mode', only without being able to escape from said dialogue.

Here's my WEIDU file.

// Log of Currently Installed WeiDU Mods
// The top of the file is the 'oldest' mod
// ~TP2_File~ #language_number #component_number // [Subcomponent Name -> ] Component Name [ : Version]
~TUTUGUI/SETUP-TUTUGUI.TP2~ #0 #0 // Baldurs Gate I GUI for Tutu, SoA/ToB, or BGT
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #0 // BG2 Fixpack - Core Fixes: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #1 // BG2 Fixpack - Game Text Update: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #2 // Super Happy Fun Lucky Modder Pack: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #100 // Party Gets XP for Sending Keldorn to Reconcile With Maria: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #101 // Improved Spell Animations: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #102 // Cromwell's Forging Actually Takes a Day: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #103 // Mixed-Use Dagger Fixes: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #104 // Ghreyfain's Holy Symbol Fixes: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #106 // Giants Receive Penalties When Attacking Halflings, Dwarves, and Gnomes: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #107 // Remove Dual-Classing Restriction from Archers and Stalkers: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #108 // Remove Second Attribute Bonus for Evil Path in Wrath Hell Trial: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #109 // Corrected Summoned Demon Behavior: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #110 // Additional Script Fixes: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #111 // Bard Song Fixes: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #112 // Wizard Slayers Cause Miscast Magic on Ranged Attacks: v8
~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #113 // Additional Alignment Fixes: v8
~SETUP-BGT.TP2~ #0 #0 // Baldur's Gate Trilogy - Core: 1.07
~BG1UB/SETUP-BG1UB.TP2~ #0 #1 // The Mysterious Vial: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #2 // Additional Elminster Encounter: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #3 // Angelo Notices Shar-teel: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #4 // Finishable Kagain Caravan Quest: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #6 // Kivan and Tazok: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #7 // Branwen and Tranzig: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #8 // Safana the Flirt: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #9 // Appropriate Albert and Rufie Reward: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #10 // Place Entar Silvershield in His Home: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #15 // Flaming Fist Mercenary Reinforcements: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #16 // Creature Corrections: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #18 // Creature Name Restorations: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #20 // Audio Restorations: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #22 // Item Corrections and Restorations: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #24 // Permanent Corpses: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #25 // Elven Charm and Sleep Racial Resistance: 7
~BG1UB/SETUP-BG1UB.TP2~ #0 #27 // Sarevok's Diary Corrections: 7
~SETUP-ASCENSION.TP2~ #0 #0 // Ascension v1.41 (requires ToB)
~SETUP-ASCENSION.TP2~ #0 #1 // Tougher Abazigal (optional, requires ToB)
~SETUP-ASCENSION.TP2~ #0 #2 // Original Tougher Demogorgon (optional, requires ToB)
~SETUP-ASCENSION.TP2~ #0 #3 // Tougher Gromnir (optional, requires ToB)
~SETUP-ASCENSION.TP2~ #0 #5 // Tougher Yaga-Shura (optional, requires ToB)
~KELSEY.TP2~ #0 #0 // Kelsey v2.1: for BG2 - SoA
~KELSEY.TP2~ #0 #2 // Install Alternate Kelsey portrait set #1 by Karse Soze (regular Kelsey)?
~IEPBANTERS/SETUP-IEPBANTERS.TP2~ #0 #9 // Install Banter Accelerator? How much time would you like in between NPC banters in-game? -> 45 Minutes: 3.2
~SETUP-KELSEYTOB.TP2~ #0 #0 // Kelsey: ToB - Version 2
~SETUP-KELSEYTOB.TP2~ #0 #2 // Ascension-specific dialogue (Requires WeiDU Ascension, v1.4.12 or greater recommended)
~SETUP-KELSEYTOB.TP2~ #0 #3 // Install Default Kelsey portrait set by Wynne Lurty? (set 1 of 3)
~TXTMUSIC/TXTMUSIC.TP2~ #0 #0 // Restored Textscreen Music for BG1TuTu, EasyTutu, and BGT-WeiDU
~BG1NPC.TP2~ #0 #0 // The BG1 NPC Project: Required Modifications: v16
~BG1NPC.TP2~ #0 #1 // The BG1 NPC Project: Banters, Quests, and Interjections: v16
~BG1NPC.TP2~ #0 #2 // The BG1 NPC Project: Give Edwin his BG2 portrait.: v16
~BG1NPC.TP2~ #0 #3 // The BG1 NPC Project: Give Imoen her BG2 portrait.: v16
~BG1NPC.TP2~ #0 #4 // The BG1 NPC Project: Give Jaheira her BG2 portrait.: v16
~BG1NPC.TP2~ #0 #5 // The BG1 NPC Project: Give Minsc his BG2 portrait.: v16
~BG1NPC.TP2~ #0 #6 // The BG1 NPC Project: Give Viconia her BG2 portrait.: v16
~BG1NPC.TP2~ #0 #7 // The BG1 NPC Project: Kivan's "Kivan and Deheriana Companions" portrait: v16
~BG1NPC.TP2~ #0 #8 // The BG1 NPC Project: Add Non-Joinable NPC portraits to quests and dialogues: v16
~BG1NPC.TP2~ #0 #9 // The BG1 NPC Project: Ajantis Romance Core (teen content): v16
~BG1NPC.TP2~ #0 #10 // The BG1 NPC Project: Branwen's Romance Core (teen content): v16
~BG1NPC.TP2~ #0 #11 // The BG1 NPC Project: Coran's Romance Core (adult content): v16
~BG1NPC.TP2~ #0 #12 // The BG1 NPC Project: Dynaheir's Romance Core (teen content): v16
~BG1NPC.TP2~ #0 #13 // The BG1 NPC Project: Shar-Teel Relationship Core (adult content): v16
~BG1NPC.TP2~ #0 #14 // The BG1 NPC Project: Xan's Romance Core (teen content): v16
~BG1NPC.TP2~ #0 #15 // The BG1 NPC Project: Female Romance Challenges, Ajantis vs Xan vs Coran: v16
~BG1NPC.TP2~ #0 #17 // The BG1 NPC Project: Alora's Starting Location -> Alora Starts in the Hall of Wonders.: v16
~BG1NPC.TP2~ #0 #27 // The BG1 NPC Project: Bardic Reputation Adjustment: v16
~BG1NPC.TP2~ #0 #28 // The BG1 NPC Project: Cloakwood areas availability in Chapter One -> Open Cloakwood Lodge (first Cloakwood area only): v16
~BG1NPC.TP2~ #0 #30 // The BG1 NPC Project: Sarevok's Diary Adjustments -> SixofSpades Extended Sarevok's Diary: v16
~MAZZY/SETUP-MAZZY.TP2~ #0 #0 // Mazzy Friendship: 1
~IEPBANTERS/SETUP-IEPBANTERS.TP2~ #0 #0 // Extended NPC-NPC Interaction SoA: 3.2
~IEPBANTERS/SETUP-IEPBANTERS.TP2~ #0 #1 // Extended Minsc/Aerie Interaction ToB: 3.2
~IEPBANTERS/SETUP-IEPBANTERS.TP2~ #0 #2 // Imoen "Retrospection" dialogue for BGII: ToB: 3.2
~IEPBANTERS/SETUP-IEPBANTERS.TP2~ #0 #3 // Wake-Up dialogue for Anomen Romance (By David Gaider with additions from Kulyok): 3.2
~IEPBANTERS/SETUP-IEPBANTERS.TP2~ #0 #4 // NPC Conflict Revisions: 3.2
~YOSHIMO/YOSHIMO.TP2~ #0 #0 // Yoshimo Friendship Mod for BGII: SoA: 1

Thanks in advance for any advice or help!

#2 Kaeloree

Kaeloree

    Head Molder

  • Administrator
  • 9198 posts

Posted 22 March 2009 - 11:51 PM

Can you check these variables for me in the CLUAConsole or in Shadowkeeper?

GetGlobal("I#Yoshimo_BY5","GLOBAL")
GetGlobal("I#YoshimoFriendTalks","GLOBAL")

That should help determine what's going on. If you have Near Infinity or Infinity Explorer, it'd be helpful if you could post the contents of the file "yoshimo.bcs". :)

#3 -IvanGrozny-

-IvanGrozny-
  • Guest

Posted 23 March 2009 - 02:11 AM

Is it possible for something to have happened that caused there to be no I#Yoshimo_BY5 or I#YoshimoFriendTalks? I'm checking Shadow Keeper and they don't appear to be there, though things like I#MAZZYFRIENDCHECK and such are there.

Here is what I could snatch from yoshimo.bcs. I think.

IF
InParty(Myself)
Global("SPRITE_IS_DEADYoshimo","GLOBAL",1)
THEN
RESPONSE #100
SetGlobal("SPRITE_IS_DEADYoshimo","GLOBAL",0)
END

IF
InParty(Myself)
AreaCheck("AR0300")
!Global("WorkingForBodhi","GLOBAL",1)
See(Player1)
!StateCheck(Player1,STATE_SLEEPING)
Global("YoshimoMentionsRenal","LOCALS",0)
THEN
RESPONSE #100
StartDialogueNoSet(Player1)
END

IF
GlobalTimerExpired("YoshimoRemindsRenal","GLOBAL")
InParty(Myself)
Global("TalkedToRenal","GLOBAL",0)
!Global("WorkingForBodhi","GLOBAL",1)
AreaType(OUTDOOR)
AreaType(CITY)
!AreaCheck("AR2000")
!Global("Chapter","GLOBAL",4)
!Global("Chapter","GLOBAL",5)
!Global("Chapter","GLOBAL",7)
See(Player1)
!StateCheck(Player1,STATE_SLEEPING)
GlobalLT("YoshimoReminder","LOCALS",2)
THEN
RESPONSE #100
StartDialogueNoSet(Player1)
END

IF
GlobalGT("AsylumPlot","GLOBAL",55)
Global("ButtPluggingCumBubble","GLOBAL",0)
THEN
RESPONSE #100
SetGlobal("ButtPluggingCumBubble","GLOBAL",1)
Kill(Myself)
LeaveParty()
END

IF
InParty(Myself)
InParty("Mazzy")
See("Mazzy")
!Dead("Mazzy")
!StateCheck("Mazzy",STATE_SLEEPING)
HPLT("Mazzy",20)
CombatCounter(0)
Global("BYoshimo1","LOCALS",0)
THEN
RESPONSE #100
Interact("Mazzy")
END

IF
InParty(Myself)
RealGlobalTimerExpired("YoshimoTalksPC","GLOBAL")
See(Player1)
!StateCheck(Player1,STATE_SLEEPING)
CombatCounter(0)
Global("BYoshimo3","LOCALS",0)
THEN
RESPONSE #100
Interact(Player1)
END

IF
InParty(Myself)
RealGlobalTimerExpired("I#YoshimoTalksPC2","GLOBAL")
Global("PCYosh","LOCALS",1)
See(Player1)
!StateCheck(Player1,STATE_SLEEPING)
CombatCounter(0)
Global("BYoshimo4","LOCALS",0)
THEN
RESPONSE #100
Interact(Player1)
END

IF
InParty(Myself)
InParty("Edwin")
Gender("Edwin",FEMALE)
Global("SetItOnce","LOCALS",0)
THEN
RESPONSE #100
SetGlobal("SetItOnce","LOCALS",1)
SetGlobalTimer("YoshimoMakesFun","GLOBAL",ONE_DAY)
END

IF
InParty(Myself)
GlobalTimerExpired("YoshimoMakesFun","GLOBAL")
InParty("Edwin")
Gender("Edwin",FEMALE)
See("Edwin")
!Dead("Edwin") // Edwin
!StateCheck("Edwin",STATE_SLEEPING)
CombatCounter(0)
Global("BYoshimo14","LOCALS",0)
THEN
RESPONSE #100
Interact("Edwin")
END

IF
PartyHasItem("misc5m") // Inspector's Body
InParty(Myself)
See(Player1)
!StateCheck(Player1,STATE_SLEEPING)
OR(3)
!InParty("Keldorn")
Dead("Keldorn") // Fire Shield (Blue)
StateCheck("Keldorn",STATE_SLEEPING)
OR(3)
!InParty("Anomen")
Dead("Anomen")
StateCheck("Anomen",STATE_SLEEPING)
Global("FoundAegis","GLOBAL",0)
Global("FoundAegis2","LOCALS",0)
THEN
RESPONSE #100
SetGlobal("FoundAegis2","LOCALS",1)
StartDialogueNoSet(Player1)
END

IF
Allegiance(Myself,ENEMY)
!InParty(Myself)
Global("NPCFight","LOCALS",0)
THEN
RESPONSE #100
SetGlobal("NPCFight","LOCALS",1)
ChangeAIScript("yoshx",SPECIFICS)
ChangeAIScript("useitem",GENERAL)
ChangeAIScript("",DEFAULT)
SetDialog("")
Continue()
END

IF
Allegiance(Myself,NEUTRAL)
AttackedBy([GOODCUTOFF],DEFAULT)
THEN
RESPONSE #100
ChangeAIScript("yoshx",SPECIFICS)
ChangeAIScript("useitem",GENERAL)
ChangeAIScript("",DEFAULT)
Enemy()
Continue()
END

IF
!Allegiance(Myself,ENEMY)
!InParty(Myself)
Global("NPCFight","LOCALS",1)
THEN
RESPONSE #100
SetGlobal("NPCFight","LOCALS",0)
ChangeAIScript("",GENERAL)
ChangeAIScript("",SPECIFICS)
Continue()
END

IF
RealGlobalTimerExpired("YoshimoTalksPC3","GLOBAL")
InParty(Myself)
Global("I#Yoshimo_BY5","GLOBAL",1)
THEN
RESPONSE #100
SetGlobal("I#Yoshimo_BY5","GLOBAL",2)
RealSetGlobalTimer("I#YoshimoFriendTalksTimer","GLOBAL",TWELVE_HOURS)
SetGlobal("I#YoshimoFriendshipActive","GLOBAL",2)
SetGlobal("I#YoshimoFriendStart","GLOBAL",1)
END

IF
RealGlobalTimerExpired("YoshimoTalksPC3","GLOBAL")
InParty(Myself)
Global("I#Yoshimo_BY5","GLOBAL",2)
Global("BYoshimo5","LOCALS",0)
THEN
RESPONSE #100
Interact(Player1)
END

IF
InParty(Myself)
See(Player1)
!StateCheck("Myself",CD_STATE_NOTVALID)
!StateCheck(Player1,CD_STATE_NOTVALID)
RealGlobalTimerExpired("I#YoshimoFriendTalksTimer","GLOBAL")
CombatCounter(0)
!See([ENEMY])
OR(9)
Global("I#YoshimoFriendTalks","GLOBAL",1)
Global("I#YoshimoFriendTalks","GLOBAL",3)
Global("I#YoshimoFriendTalks","GLOBAL",5)
Global("I#YoshimoFriendTalks","GLOBAL",7)
Global("I#YoshimoFriendTalks","GLOBAL",9)
Global("I#YoshimoFriendTalks","GLOBAL",11)
Global("I#YoshimoFriendTalks","GLOBAL",13)
Global("I#YoshimoFriendTalks","GLOBAL",15)
THEN
RESPONSE #100
MoveToObject(Player1)
StartDialogueNoSet(Player1)
END

IF
InParty(Myself)
See(Player1)
RealGlobalTimerExpired("I#YoshimoFriendTalksTimer","GLOBAL")
OR(4)
Global("I#YoshimoFriendTalks","GLOBAL",2)
Global("I#YoshimoFriendTalks","GLOBAL",4)
Global("I#YoshimoFriendTalks","GLOBAL",6)
Global("I#YoshimoFriendTalks","GLOBAL",10)
THEN
RESPONSE #100
IncrementGlobal("I#YoshimoFriendTalks","GLOBAL",1)
END

IF
InParty(Myself)
See(Player1)
!StateCheck("Myself",CD_STATE_NOTVALID)
!StateCheck(Player1,CD_STATE_NOTVALID)
RealGlobalTimerExpired("I#YoshimoFriendTalksTimer","GLOBAL")
Global("I#YoshimoFriendStart","GLOBAL",1)
OR(6)
AreaCheck("AR0300")
AreaCheck("AR0400")
AreaCheck("AR0500")
AreaCheck("AR0021")
AreaCheck("AR0313")
AreaCheck("AR0406")
THEN
RESPONSE #100
SetGlobal("I#YoshimoFriendTalks","GLOBAL",1)
IncrementGlobal("I#YoshimoFriendStart","GLOBAL",1)
END

IF
InParty(Myself)
See(Player1)
!StateCheck("Myself",CD_STATE_NOTVALID)
!StateCheck(Player1,CD_STATE_NOTVALID)
RealGlobalTimerExpired("I#YoshimoFriendTalksTimer","GLOBAL")
Global("I#YoshimoFriendTalks","GLOBAL",8)
GlobalGT("chapter","GLOBAL",2)
THEN
RESPONSE #100
IncrementGlobal("I#YoshimoFriendTalks","GLOBAL",1)
END

IF
InParty(Myself)
See(Player1)
!StateCheck("Myself",CD_STATE_NOTVALID)
!StateCheck(Player1,CD_STATE_NOTVALID)
RealGlobalTimerExpired("I#YoshimoFriendTalksTimer","GLOBAL")
Global("I#YoshimoFriendTalks","GLOBAL",12)
Global("LassalVampires","GLOBAL",3)
THEN
RESPONSE #100
IncrementGlobal("I#YoshimoFriendTalks","GLOBAL",1)
END

IF
InParty(Myself)
See(Player1)
!StateCheck("Myself",CD_STATE_NOTVALID)
!StateCheck(Player1,CD_STATE_NOTVALID)
Global("I#YoshimoFriendTalks","GLOBAL",14)
OR(3)
AreaCheck("AR1600")
AreaCheck("AR1602")
AreaCheck("AR1603")
THEN
RESPONSE #100
IncrementGlobal("I#YoshimoFriendTalks","GLOBAL",1)
SetGlobal("I#YoshBrynnlaw","GLOBAL",1)
RealSetGlobalTimer("I#YoshimoFriendTalksTimer","GLOBAL",TWO_HOURS)
END

IF
InParty(Myself)
See(Player1)
!StateCheck("Myself",CD_STATE_NOTVALID)
!StateCheck(Player1,CD_STATE_NOTVALID)
Global("I#YoshimoFriendTalks","GLOBAL",16)
AreaCheck("AR1515")
THEN
RESPONSE #100
IncrementGlobal("I#YoshimoFriendTalks","GLOBAL",1)
END

IF
InParty(Myself)
See(Player1)
!StateCheck("Myself",CD_STATE_NOTVALID)
!StateCheck(Player1,CD_STATE_NOTVALID)
Global("I#YoshimoFriendTalks","GLOBAL",17)
AreaCheck("AR1515")
THEN
RESPONSE #100
MoveToObject(Player1)
StartDialogueNoSet(Player1)
END



#4 Kaeloree

Kaeloree

    Head Molder

  • Administrator
  • 9198 posts

Posted 23 March 2009 - 02:58 AM

If they're not there, it means there's a problem with an earlier talk... not sure what's going on, but with any luck this'll fix things in your game. When I have time, I'll look into this further--if you have a moment, it'd be great if you could post your byoshim.dlg file, and maybe the yoshj.dlg file as well, so I can see what went wrong.

Set this in the CLUA console:
CLUAConsole: SetGlobal("I#Yoshimo_BY5","GLOBAL",1)

That should make the first friendship dialogue pop up after 12 ingame hours, and hopefully stop the stutterbug. If not I'll give you a list of variables to set which will definitely fix your game--but I'd rather try this first, since it's simpler. :)

#5 -Katee-

-Katee-
  • Guest

Posted 28 March 2009 - 05:03 AM

If they're not there, it means there's a problem with an earlier talk... not sure what's going on, but with any luck this'll fix things in your game. When I have time, I'll look into this further--if you have a moment, it'd be great if you could post your byoshim.dlg file, and maybe the yoshj.dlg file as well, so I can see what went wrong.

Set this in the CLUA console:
CLUAConsole: SetGlobal("I#Yoshimo_BY5","GLOBAL",1)

That should make the first friendship dialogue pop up after 12 ingame hours, and hopefully stop the stutterbug. If not I'll give you a list of variables to set which will definitely fix your game--but I'd rather try this first, since it's simpler. :)


I'm having the same problem by the sound of it. I've had 2 of the Bioware dialogues (I cut him off in the second, don't know if that effects anything), but it seems like he's trying to initate the third (the timing seems right) and can't, getting us both stuck in this annoying stutterbug.

#6 Kulyok

Kulyok
  • Modder
  • 2450 posts

Posted 28 March 2009 - 07:58 AM

Folks, it's a very bad idea to use RealGlobalTimerExpired("I#YoshimoFriendTalksTimer","GLOBAL") in dialogue file - because if, Seldarine forbid, the timer sets itself at the wrong time, you'll never find the end of it, because you can't even debug it properly. I'd cut these conditions in all talks in dialogue file without delay.

As people start complaining it's Angelo(which is bad), I wanted to debug Yoshi's Friendship - but I can't get through the "TimerExpired" condition, alas. To be blunt, I'd
0) get rid of the "TimerExpired" condition in dialogue(neverevereveragain),
1) recode the thing in clean code,
2) make all "conditioned" talks trigger separately,
3) delete all unnecessary timers and vars, like"I#YoshBrynnlaw".

The dialogues are good, so it'd be a pity to leave a stuttering mod(not offering to help, mind. :) But it's an hour's work anyway).

#7 cmorgan

cmorgan
  • Modder
  • 2301 posts

Posted 28 March 2009 - 11:58 AM

When you strip out those extra RealGlobalTimerExpired("I#YoshimoFriendTalksTimer","GLOBAL") calls from the dialog, you might also want to reverse the SetGlobal and the RealSetGlobalTimer calls in the dialog.

We had some hassles with globals not setting when we initially moved to kulyok's "open variable in .baf <> close variable in .d" routine, and there was an expert or two who thought it might be because some things evaluate and clear out further actions. We were not able to confirm the whole deal, but I have been recommending <<all actions>> <<realsetglobaltimer>> just in case. We have not been able to confirm a difference between SetGlobalTimer (the ingame time) and RealSetGlobalTimer() (the realworld time), but the "hunch" is that there is a difference. Perhpas devSin or aAvenger or Avenger knows, or could throw an educated guess.

It looks like the change would be

// 5. The Shadow Thieves
IF WEIGHT #-2 ~Global("I#YoshimoFriendTalks","GLOBAL",9)~ y5
  SAY ~So...we are officially under the cloak of the Shadow.  What strange twists of fate happen in this age.~ [i#blank]
  ++ ~I wouldn't have thought you'd mind, Yoshimo.~ DO ~IncrementGlobal("I#YoshimoFriendTalks","GLOBAL",1) RealSetGlobalTimer("I#YoshimoFriendTalksTimer","GLOBAL",3600) ~ + y5.1

 <<snip>>

END
The "backup timers" Domi used in early work has been replaced by the open-in-baf-close-in-dialog pairing. Stuff hangs open until it gets cleared by dialog, so it doesn't need that "window" of time. So unless you really want to create a delay between the talk being available and the talk firing, you don't need the specific talking timers anyway - unless you are trying to avoid that big banter pileup when the party walks into a new area ? :)

(cosmetic - I know everyone uses IncrementGlobal(), but I just have to put in a plug for setting the actual variable. You will cut down on bughuunting if you open up a "find in all files" in Notepad++ or TextPad or something, and search for "Global("I#YoshimoFriend" and then sort by number - you can track the opening, initiation, condition on the dialog, and closing is a nice neat little patternn that makes problems just leap off of the page).

Edited by cmorgan, 28 March 2009 - 12:01 PM.


#8 Kaeloree

Kaeloree

    Head Molder

  • Administrator
  • 9198 posts

Posted 14 April 2009 - 04:10 AM

I'll try to find some time in the next week to recode it--thanks for the suggestions, Kulyok and cmorgan. :)

Re: IncrementGlobal() vs. SetGlobal() I just find it easier to plug in Increment() rather than Set--it makes it quicker for me to code. (And for me, at least, I can easily see where any specific variable is at at any point in the script, so it's no real problem in that respect).

:cheers:

#9 Vlan

Vlan
  • Member
  • 194 posts

Posted 25 November 2013 - 08:13 AM

Has this problem ever been fixed?

 

Yoshimo Friendship is really acting strange.

 

Barters start immediately (first three in a row in Irenicus dungeon) after letting Yoshimo join the group and if you refuse to give answers to Yoshimos questions (I don't want to tell you anything), OP's problem kicks in (endless dialogue), otherwise, if you give him straight answers, he is behaving normal.


Edited by Vlan, 25 November 2013 - 08:16 AM.


#10 cmorgan

cmorgan
  • Modder
  • 2301 posts

Posted 25 November 2013 - 04:45 PM

If you currently have SCS on your install (and who doesn't) we have recently found that part of what the current version does is (accidentally) strip custom gtimes.ids entries from the game. So if you are using an older version (not 3.1) then you may be running into that - and you will find that a number of NPC mods use that convention.

If you have v3.1 on your game, then I would really like to see a save and a weidu.log, please - it would mean that what we *think* is the problme with the gtimes.ids timer solution may actually be something else entirely, and something that we very very much want to track down.

#11 Vlan

Vlan
  • Member
  • 194 posts

Posted 26 November 2013 - 04:09 AM

Am using v2.7.

 

thanks for the answer. Do hope that it will be updated in the BWS soon.



#12 cmorgan

cmorgan
  • Modder
  • 2301 posts

Posted 27 November 2013 - 09:55 AM

Just following up - if you are in the middle of a game and don't want to upgrade things way back in the stack, v28 of SCS works just fine with custom .ids entries. Modders should be able to continue to use gtimes.ids materials if they so choose.

#13 --Confused--

--Confused--
  • Guest

Posted 17 December 2013 - 02:58 PM

So, for the non-mod inclined, how do we accomplish adding v28 of SCS?

 

I ask because I am having this issue with Yoshimo now as well.

 

I used the BWS to install all my mods.  Do I just download v28 and let it install? 

 

Thanks for any help.  I'm not really computer savvy.



#14 The Imp

The Imp

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

  • Member
  • 5148 posts

Posted 17 December 2013 - 03:19 PM

I used the BWS to install all my mods.  Do I just download v28 and let it install?
No... you either make a complete reinstall with BWS and wait for the SCSv28 to be included in it, or you go with the old and more reliable SCSI & SCSII v21 combo ... if it's still there.
 
And yes, I have seen the AI jerking the NPC movement in the unmodified BGEE too... so.

Edited by The Imp, 18 December 2013 - 05:23 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.


#15 --Confused--

--Confused--
  • Guest

Posted 17 December 2013 - 05:16 PM

Okay... so is there anything I can do about it now that I have this issue in game?

 

Is there a command to just end the dialogue?

 

I tried the console command issued above and it did not work unless there is something else to it. 

 

I can't quicksave the game while this is going as it states something like: "cannot save while in dialogue mode"

and the movement of the party in general is a pain.

 

Or do I just get rid of Yoshimo and keep him out of any party until I choose to do a BWS reinstall?

 

Thanks



#16 The Imp

The Imp

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

  • Member
  • 5148 posts

Posted 18 December 2013 - 05:33 AM

Okay... so is there anything I can do about it now that I have this issue in game?
You can try setting the character AI(in the character record -> customize -> script) to None, and then resting, as if you succeed in that the character might just clear out it's intentions from the actions list and spontaneously start the actual dialog it was meant to. But of course you can't do that inside a dialog(mode).

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.


#17 --Confused--

--Confused--
  • Guest

Posted 21 December 2013 - 08:29 AM


Nope, still no good.  Changed the script, rested... still get the same issue.  Looking like I may have to ditch Yoshimo.

 

Any other suggestions?

 

Thanks.