Jump to content

[Repaired v20] PC Dream Variables still off (BGT) version 19


onerous

Recommended Posts

I'm assuming you reworked the dream sequences for BGT so that BG1Dream=1 sets after the first dream (Candlekeep/flight with Gorion), BG2Dream=2 sets after second dream (Nashkel mines/Mulahey), etc.

 

I noticed after my first dream (Candlekeep) I don't get the talk with Imoen (she mentions thrashing about and you can crack a joke about her cooking). However, if I set BG1Dream=2 (it was 1 before) I get the dialog where I talk about my first dream about Candlekeep.

 

So the variables are not matching the correct talks. I'm not sure about romances though.

 

Here's the link to the old topic.

Link to comment

Revisiting this:

 

http://www.shsforums.net/topic/32590-bug-report-thread-bg1npc/page__view__findpost__p__504396

in BGT,

IF
 GlobalGT("Chapter","GLOBAL",2)
 Global("BG1Dream","GLOBAL",0)
 ReputationGT(Player1,9)
 Global("EndOfBG1","GLOBAL",0)
THEN
 RESPONSE #100
   TextScreen("DRMTXT-2")
   IncrementGlobal("BG1Dream","GLOBAL",1)
   SetGlobalTimer("BG1DreamReset","GLOBAL",1)
   ApplySpellRES("GOODDRM2",Player1)
   RestParty()
END

 

http://forums.gibberlings3.net/index.php?showtopic=17905&view=findpost&p=179759

 

Looking at the whole dialog, the responses talk about getting your first powers. So it is designed to run after the first getting of powers. This is linked to DRMTXT2.2da, and in BGT, this means Global("BG1Dream","GLOBAL",1).

 

In Tutu,

Global("%bgdreams%","GLOBAL",2) is the link.

 

So, if the pattern holds, Tutu 2 and 4 = bgt 1 and 3. Dammit.

 

OK, variablize again.

 

Global("%bgdreams%","GLOBAL",%bgdream1%)

 

BG Dream Variances Between TuTu and BGT
TuTu Variable Associated BGT
dream %bgdreams% player1d BG1Dream
2 %bgdream1% DRMTXT-2 has played 1
3 %bgdream2% DRMTXT-3 has played 2
4 %bgdream3% DRMTXT-4 has played 3
5 %bgdream4% DRMTXT-5 has played 4
6 %bgdream5% DRMTXT-6 has played 5
7 %bgdream6% DRMTXT-7 has played 6

 

 

(Holy cow, it is hard to parse tables now - I'll have to check on how that is happening... note to self; must include a table title, or the thing won't parse...))

Searching our code...

 

BG1NPC\bg1npc\phase1\baf\x#imoen1.baf (2 hits)

Line 155: Global("%bgdreams%","GLOBAL",2)

Line 184: Global("%bgdreams%","GLOBAL",4)

BG1NPC\bg1npc\phase1\baf\x#xzar1.baf (1 hits)

Line 33: GlobalGT("%bgdreams%","GLOBAL",1)

BG1NPC\bg1npc\phase3\ajrom\baf\x#ajrom.baf (6 hits)

Line 713: Global("%bgdreams%","GLOBAL",3)

Line 723: Global("%bgdreams%","GLOBAL",4)

Line 733: Global("%bgdreams%","GLOBAL",6)

Line 750: Global("%bgdreams%","GLOBAL",3)

Line 779: Global("%bgdreams%","GLOBAL",4)

Line 809: Global("%bgdreams%","GLOBAL",6)

BG1NPC\bg1npc\phase3\dyrom\baf\p#dyrom.baf (5 hits)

Line 449: Global("%bgdreams%","GLOBAL",3)

Line 480: Global("%bgdreams%","GLOBAL",4)

Line 509: Global("%bgdreams%","GLOBAL",5)

Line 538: Global("%bgdreams%","GLOBAL",6)

Line 568: Global("%bgdreams%","GLOBAL",7)

BG1NPC\bg1npc\phase3\xarom\baf\x#xarom.baf (2 hits)

Line 61: GlobalGT("%bgdreams%","GLOBAL",0)

Line 87: GlobalGT("%bgdreams%","GLOBAL",0)

 

So, first up, add the vars to the OUTER_SPRINT, then fix in .baf and .d.

 

BG1NPC\bg1npc\lib\g3_tutu_cpmvars.tpa, adding

   OUTER_SPRINT "bgdream1" "2"
   OUTER_SPRINT "bgdream2" "3"
   OUTER_SPRINT "bgdream3" "4"
   OUTER_SPRINT "bgdream4" "5"
   OUTER_SPRINT "bgdream5" "6"
   OUTER_SPRINT "bgdream6" "7"

 

BG1NPC\bg1npc\lib\g3_bgt_cpmvars.tpa, adding

   OUTER_SPRINT "bgdream1" "1"
   OUTER_SPRINT "bgdream2" "2"
   OUTER_SPRINT "bgdream3" "3"
   OUTER_SPRINT "bgdream4" "4"
   OUTER_SPRINT "bgdream5" "5"
   OUTER_SPRINT "bgdream6" "6"

 

and in project files, replacing those numbers with variables.

 

Done:

Search "%bgdreams%" (16 hits in 5 files)

BG1NPC\bg1npc\phase1\baf\x#imoen1.baf (2 hits)

Line 155: Global("%bgdreams%","GLOBAL",%bgdream1%)

Line 184: Global("%bgdreams%","GLOBAL",%bgdream3%)

BG1NPC\bg1npc\phase1\baf\x#xzar1.baf (1 hits)

Line 33: GlobalGT("%bgdreams%","GLOBAL",1)

BG1NPC\bg1npc\phase3\ajrom\baf\x#ajrom.baf (6 hits)

Line 713: Global("%bgdreams%","GLOBAL",%bgdream2%)

Line 723: Global("%bgdreams%","GLOBAL",%bgdream3%)

Line 733: Global("%bgdreams%","GLOBAL",%bgdream5%)

Line 750: Global("%bgdreams%","GLOBAL",%bgdream2%)

Line 779: Global("%bgdreams%","GLOBAL",%bgdream3%)

Line 809: Global("%bgdreams%","GLOBAL",%bgdream5%)

BG1NPC\bg1npc\phase3\dyrom\baf\p#dyrom.baf (5 hits)

Line 449: Global("%bgdreams%","GLOBAL",%bgdream2%)

Line 480: Global("%bgdreams%","GLOBAL",%bgdream3%)

Line 509: Global("%bgdreams%","GLOBAL",%bgdream4%)

Line 538: Global("%bgdreams%","GLOBAL",%bgdream5%)

Line 568: Global("%bgdreams%","GLOBAL",%bgdream6%)

BG1NPC\bg1npc\phase3\xarom\baf\x#xarom.baf (2 hits)

Line 61: GlobalGT("%bgdreams%","GLOBAL",0)

Line 87: GlobalGT("%bgdreams%","GLOBAL",0)

Xzar's talks trigger is aiming for a start any time after the first dream has played, so I am leaving that alone. He will start after dream 2 instead of dream 1 on BGT, but BGT installs are longer playing, and Xzar has a relatively small amount of content, so delaying it on a BGT install seems not a large variance.

 

Test install on TuTu shows no errors; NI of related blocks appears to be working as expected -

 

tutu version decompiled =

IF
Global("DREAM","GLOBAL",2)
Global("X#ImoenDreamResponse2","GLOBAL",0)
Global("Chapter","GLOBAL",2)
InParty(Myself)
CombatCounter(0)
!See([ENEMY])
!StateCheck(Player1,CD_STATE_NOTVALID)
!StateCheck(Myself,CD_STATE_NOTVALID)
THEN
RESPONSE #100
	SetGlobal("X#ImoenDreamResponse2","GLOBAL",1)
END

 

we should be good to go. Logging it repaired (again) in v20 and merging to github.

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...