Jump to content

Chapter and Journal Continuity in EET


Roxanne

Recommended Posts

 

THERE IS EXACTLY ONE INSTANCE OF THIS GLOBAL IN EET SerGlobal("EndofBG1","Global",2) when you transit to SoD.

So they make this change to the game without EVER making use of it themself - another sign of how much the bean dogs love the modders.

Every single mod that used this global to detect that you are now in BG2 is affected, they all will take SoD now as part of BG2, nobody has ever used EndofSod or EndofTob - it is another bad, bad joke.

hmm, not sure how often the variable is used in mods created with BGT in mind, but if ENDOFBG1 = 2 in such mods will trigger BG2 content during SoD in EET than maybe keeping it as it worked in BGT (variable set to 2 at the beginning of BG2 and 1 after killing Sarevok) would be a better approach compatibility wise. This could create possible future conflicts with SoD mods that follows Beamdog implementation though, so not sure which solution is better. If any modder has feedback regarding it please post here.

 

Just to give you an idea of the magnitude in BGT (this is probably the most used global in BGT apart from NumTimesTalkedTo)

Number of hits: 2670 in DLG files

Number of hits: 4837 in BCS files

 

 

Link to comment

huh, indeed problematic situation if mods uses it this often. In such case we will keep the BGT implementation to not create more headaches for modders.

 

This block in AR0125.BCS (BG0125.BCS in EET):

IF
  Dead("Sarevok")
  GlobalLT("EndOfBG1","GLOBAL",2)
THEN
  RESPONSE #100
    SaveGame(2)
    SmallWait(1)
    ClearAllActions()
    StartCutSceneMode()
    StartCutScene("BDSODTRN")
END

will be change to

IF
  Dead("Sarevok")
  Global("EndOfBG1","GLOBAL",0)
THEN
  RESPONSE #100
    SaveGame(2)
    SmallWait(1)
    ClearAllActions()
    StartCutSceneMode()
    StartCutScene("BDSODTRN")
END

and this line in BDSODTRN.BCS:

SetGlobal("EndOfBG1","GLOBAL",2)

to

SetGlobal("EndOfBG1","GLOBAL",1)

I will send a message to someone from Beamdog regarding it, maybe the same change could be implemented officially in SoD since it doesn't change anything for them, although hard to really blame Beamdog for the situation like you said Roxanne, considering this is a vanilla variable without any prefix, so it's not their job to follow how modders used it in the past.

 

edit: reference post updated.

Link to comment

huh, indeed problematic situation if mods uses it this often. In such case we will keep the BGT implementation to not create more headaches for modders.

 

This block in AR0125.BCS (BG0125.BCS in EET):

IF
  Dead("Sarevok")
  GlobalLT("EndOfBG1","GLOBAL",2)
THEN
  RESPONSE #100
    SaveGame(2)
    SmallWait(1)
    ClearAllActions()
    StartCutSceneMode()
    StartCutScene("BDSODTRN")
END

will be change to

IF
  Dead("Sarevok")
  Global("EndOfBG1","GLOBAL",0)
THEN
  RESPONSE #100
    SaveGame(2)
    SmallWait(1)
    ClearAllActions()
    StartCutSceneMode()
    StartCutScene("BDSODTRN")
END

and this line in BDSODTRN.BCS:

SetGlobal("EndOfBG1","GLOBAL",2)

to

SetGlobal("EndOfBG1","GLOBAL",1)

I will send a message to someone from Beamdog regarding it, maybe the same change could be implemented officially in SoD since it doesn't change anything for them, although hard to really blame Beamdog for the situation like you said Roxanne, considering this is a vanilla variable without any prefix, so it's not their job to follow how modders used it in the past.

 

edit: reference post updated.

The only use ever for this global was by mods and it only became relevant with introduction of BGT (a modder product) as prior to that there were only separate games with separate characters, scripts, and dialogue. Only with BGT came a need for NPCs to distinguish which part of the game they were in (since we did not have the chapter benefit you now introduce with EET). The vanilla games never had a use for this at all (just like SoD does not even use it. My guess is, they put it into SoD for modder's benefit but just did it at the wrong place...)

Link to comment

Maybe making a feature request out of this? Considering every BGT mod detecting BGII uses it, it migt make more sense for BeamDog to set "EndOfBG1" to 1 during SoD and to "2" in BGII. (Why did they set it to "2", anyway?) (They use GlobalLT("EndOfBG1","GLOBAL",2) in AR0125.bcs to trigger the transition to SoD. I really wonder why they didn't take "1", though.)

 

Because, if BeamDog does not change it, for compatibility reasons I'd prefer the mods would be changed. One way or the other, there will be mods that use BeamDog's way of variable numbering, so EET would have to deal with it, anyway?

Link to comment

Updated the first post of this thread

All but the final chapter is finished and tested.

The last chapter is written and coded but can only be fully tested with EET 1.0 (obviously it has to use Boareskyre Bridge from SoD for the Bhaal finale).

Link to comment

Updated the first post of this thread

All but the final chapter is finished and tested.

The last chapter is written and coded but can only be fully tested with EET 1.0 (obviously it has to use Boareskyre Bridge from SoD for the Bhaal finale).

 

Great to hear! Really looking forward to it =D

 

Hopefully K4thos will resurface soon with EET 1.0

 

...stupid RL getting in the way of our gaming!

Link to comment

huh, indeed problematic situation if mods uses it this often. In such case we will keep the BGT implementation to not create more headaches for modders.

 

This block in AR0125.BCS (BG0125.BCS in EET):

IF
  Dead("Sarevok")
  GlobalLT("EndOfBG1","GLOBAL",2)
THEN
  RESPONSE #100
    SaveGame(2)
    SmallWait(1)
    ClearAllActions()
    StartCutSceneMode()
    StartCutScene("BDSODTRN")
END
will be change to
IF
  Dead("Sarevok")
  Global("EndOfBG1","GLOBAL",0)
THEN
  RESPONSE #100
    SaveGame(2)
    SmallWait(1)
    ClearAllActions()
    StartCutSceneMode()
    StartCutScene("BDSODTRN")
END
and this line in BDSODTRN.BCS:
SetGlobal("EndOfBG1","GLOBAL",2)
to
SetGlobal("EndOfBG1","GLOBAL",1)
I will send a message to someone from Beamdog regarding it, maybe the same change could be implemented officially in SoD since it doesn't change anything for them, although hard to really blame Beamdog for the situation like you said Roxanne, considering this is a vanilla variable without any prefix, so it's not their job to follow how modders used it in the past.

 

edit: reference post updated.

What happened to this, btw? I was thinking, as long as these variables are introduced by OUTER_SPRINT variables, actually it doesn't matter what the numbers are (not if we talk about distinguishing between the different parts and EE vs. BGT).
Link to comment

There is still massive trouble with the setting of globals/chapters during SoD in EET with the way beandogs has implemented it vs how mods up to now have used it

 

Chapter 7a Coming out of Candlekeep Catacombs -------> Transition to SoD ==>>Global("ENDOFBG1","GLOBAL",0)
_______________________________________________________________________________
Chapter 7b (SoD) Clearing Sarevok's remains + Start of SoD quest ------> Leaving Baldur's Gate

and

==>>Global("ENDOFBG1","GLOBAL",1) THIS NO LONGER EXISTS instead the Global here is 2 and every script/dialogue using the global in the *old way* will be affected

Chapter 13a (SoD) Escaping from Baldur's Gate + Being captured by Irenicus

____________________________________________________________________________
Chapterr 13b Starting Irenicus Dungeon ==>>Global("ENDOFBG1","GLOBAL",2)

 

This way using EET Chapters as criteria does not work as 7 and 13 are split.

 

The only sensible solution would be to use Global=1 during SoD like k4thos had proposed.

Link to comment

What is Imoen's dialogue file for the part in Irenicus dungeon until her kidnapping for the case that you play the game through from BG1/SoD with the EET transition? I

 

I found it in ar0601.bcs in the Global("K#ImoenImport","AR0602",0) block, which sets it to Imoen10 (before joining party).

Will it change to ImoeMJ or Imoen2J when she joins?

Link to comment

How to interpret BDBanter.2da

 

My understanding is that this file defines the banters assigned to NPCs during SoD campaign.For some NPCs this is their normal banter file (even though Keldorn and Yoshimo etc appear in the list even if they are not in SoD??). Most BG1 NPCs have ***. Does it mean NO Banter file or NO CHANGE of banter file?

Link to comment
My understanding is that this file defines the banters assigned to NPCs during SoD campaign

 

correct

 

Most BG1 NPCs have ***

that's the way it works in vanilla BG:EE+SoD where BDBANTER.2DA is referenced in CAMPAIGN.2DA but the file doesn't exist which mean none of the vanilla NPCs have banter file assigned during SoD. Not sure why they didn't just assigned BG1 banter files there but since that was their choice than I've replicated it by assigning blank dialogue file for those particular NPCs (notice that everyone from BG1 is joinable during SoD even though only few NPCs are playable after Korlasz Tomb where most of them leaves the party).

 

For some NPCs this is their normal banter file (even though Keldorn and Yoshimo etc appear in the list even if they are not in SoD??)

 

that's just how finalise EET component works - it appends entries for NPCs not yet referenced in campaign related 2da files using other 2da files. This way you can patch for example only INTERDIA.2DA and the same entry will show up in all other banter files if you don't patch them before with unique entries.

Link to comment

Archived

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

×
×
  • Create New...