Jump to content

General Bugs Encountered in EET


Roxanne

Recommended Posts

Fouinto, please upload your save at the end of Irenicus Dungeon if you still have it. If not than any save that is made before you entered area with Spellhold Imoen. I will also need following files present in your game:

- CUT01.BCS

- TELE0700.BCS

- AR0603.ARE

With this I should be able to investigate it properly. Thanks in advance.

 

Question is, whether this is a bug in EET or rather consequential behaviour??

not intentional. This is the code that moves her via CUT01.BCS:

    ActionOverride("Imoen2",MoveGlobal("AR1512",Myself,[1857.1520]))
    ActionOverride("Imoen2",Face(SW))
    ActionOverride("Imoen2",ChangeAIScript("K#IMIMO2",OVERRIDE))

btw. moving NPCs before you enter the destination area will be probably changed in future. From what I see you can use DestroySelf() and later when you visit the area where the NPC should be found you can summon the reference via MoveGlobal (DestroySelf doesn't really remove global reference from the game, it is still there, just without current area entry). This should be more reliable than the current implementation.

MoveGlobal - Will this work in Imoen's case - there is more than one cre Imoen2 in the game (Imoen1.cre also has script name Imoen2 in the EE). Looking at my saves (I think only those will be checked??) then Imoen is ambiguous.

Link to comment

 

Big problem with EET and Ascension in Final ToB battle.

 

After some hours of fighting my way through ToB final battle (ar6200) I finally found the reason why I cannot win + finish the game ever.

 

The Ascension version for EET has replaced the detection of defeat of the Five from (e.g Illasera but same applies for the others.)

Example from BGT

 

IF

Dead("finilla")

Global("IllaseraDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("IllaseraDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",2)

END

 

This is what I have in EET

 

IF

StateCheck("finilla",STATE_SLEEPING | STATE_BERSERK | STATE_PANIC | STATE_STUNNED)

Global("IllaseraDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("IllaseraDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",2)

END

 

It comes from baf code like this

 

IF

StateCheck("finilla",15) // finilla

Global("IllaseraDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("IllaseraDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",2)

END

 

I have not seen such code ever before, seems to be new for BG2EE???

 

Anyway - it does not work. The death of none of the five is never detected. The whole script ar6200.bcs never is executed correctly (Mellisan never appears to join the fight - after I set all globals for her to appear she is undestructable - set globals again to correct that ---> a number of globals and locals for the final Solar talk are not set correctly....)

In short - it is a mess and not playable.

 

Any help for that?? Anyone else yet encountered the issue??

 

PS - I have Sarevok in party and I have convinced Balthasar to ally with me - but I think that is not related to those issues.

 

I will go and replace those code block by conventional ones and retry (may report about that later).

After I have changed all five code blocks for detection of having killed the Five summons to *old fashioned* IF Dead("finXXXX") everything in the final battle works fine.

 

Hi i was wondering if you could upload the changed files? I tried to edit them myself but couldn't get them to work.

Link to comment

Fouinto, please upload your save at the end of Irenicus Dungeon if you still have it. If not than any save that is made before you entered area with Spellhold Imoen. I will also need following files present in your game:

- CUT01.BCS

- TELE0700.BCS

- AR0603.ARE

With this I should be able to investigate it properly. Thanks in advance.

 

Question is, whether this is a bug in EET or rather consequential behaviour??

not intentional. This is the code that moves her via CUT01.BCS:

    ActionOverride("Imoen2",MoveGlobal("AR1512",Myself,[1857.1520]))
    ActionOverride("Imoen2",Face(SW))
    ActionOverride("Imoen2",ChangeAIScript("K#IMIMO2",OVERRIDE))

btw. moving NPCs before you enter the destination area will be probably changed in future. From what I see you can use DestroySelf() and later when you visit the area where the NPC should be found you can summon the reference via MoveGlobal (DestroySelf doesn't really remove global reference from the game, it is still there, just without current area entry). This should be more reliable than the current implementation.

Well... According to what write Roxanne above, I am not sure that it's still necessary :)

Just in case, here are the files.

Link to comment

 

 

Big problem with EET and Ascension in Final ToB battle.

 

After some hours of fighting my way through ToB final battle (ar6200) I finally found the reason why I cannot win + finish the game ever.

 

The Ascension version for EET has replaced the detection of defeat of the Five from (e.g Illasera but same applies for the others.)

Example from BGT

 

IF

Dead("finilla")

Global("IllaseraDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("IllaseraDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",2)

END

 

This is what I have in EET

 

IF

StateCheck("finilla",STATE_SLEEPING | STATE_BERSERK | STATE_PANIC | STATE_STUNNED)

Global("IllaseraDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("IllaseraDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",2)

END

 

It comes from baf code like this

 

IF

StateCheck("finilla",15) // finilla

Global("IllaseraDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("IllaseraDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",2)

END

 

I have not seen such code ever before, seems to be new for BG2EE???

 

Anyway - it does not work. The death of none of the five is never detected. The whole script ar6200.bcs never is executed correctly (Mellisan never appears to join the fight - after I set all globals for her to appear she is undestructable - set globals again to correct that ---> a number of globals and locals for the final Solar talk are not set correctly....)

In short - it is a mess and not playable.

 

Any help for that?? Anyone else yet encountered the issue??

 

PS - I have Sarevok in party and I have convinced Balthasar to ally with me - but I think that is not related to those issues.

 

I will go and replace those code block by conventional ones and retry (may report about that later).

After I have changed all five code blocks for detection of having killed the Five summons to *old fashioned* IF Dead("finXXXX") everything in the final battle works fine.

 

Hi i was wondering if you could upload the changed files? I tried to edit them myself but couldn't get them to work.

 

I put this into ar6200.bcs at a position prior to those blocks that have the StartCutScene("melcomes") action in them (there are several based on difficulty settings):

 

IF

Dead("Finilla")

Global("IllaseraDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("IllaseraDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",2)

END

 

IF

Dead("finabaz")

Global("AbazigalDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("AbazigalDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",1)

END

 

IF

Dead("finyaga")

Global("YagaDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("YagaDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",1)

END

 

IF

Dead("finsend")

Global("SendaiDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("SendaiDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",2)

END

 

IF

Dead("finbalth")

Global("BalthazarFights","GLOBAL",0)

Global("BalthDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("BalthDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",2)

END

 

IF

Dead("fingrom")

Global("BalthazarFights","GLOBAL",1)

DifficultyGT(EASY)

Global("GromnirDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("GromnirDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",1)

END

 

IF

Dead("finsarev")

Global("SarevokFights","GLOBAL",1)

Global("SarevokDead","AR6200",0)

THEN

RESPONSE #100

SetGlobal("SarevokDead","AR6200",1)

IncrementGlobal("FiveDead","AR6200",1)

END

 

Link to comment

One new bug (I don't remember having it before) : My Clerics Reach Level 24. He is supposed to get a gift from his God.

I got an removable invisible and unusable item (CDHLYSYM.ITM).

Changelog seems to indicate no change to the item... but I suppose the change could be in a BCS script...

Link to comment

One new bug (I don't remember having it before) : My Clerics Reach Level 24. He is supposed to get a gift from his God.

I got an removable invisible and unusable item (CDHLYSYM.ITM).

Changelog seems to indicate no change to the item... but I suppose the change could be in a BCS script...

did you install EET Tweaks "Remove junk from global scripts". If yes than something must be wrong with that optional component - I will look at it. If no than nothing is changed in EET compared to how it works in vanilla games, so dunno.

Link to comment

OK, below are the lines that are missing from my BALDUR.BCS and BALDUR25.BCS (only example with player 4, but these lines should exist for each players : 1 to 6).

As far as I understand, these lines are responsible for transforming CDHLYSYM into the ring (a ring named belt...) that fits Player4 alignment...

IF
	HasItem("CDHLYSYM",Player4) // No such index
	OR(4)
		Alignment(Player4,CHAOTIC_NEUTRAL)
		Alignment(Player4,NEUTRAL_EVIL)
		Alignment(Player4,CHAOTIC_EVIL)
		Kit(Player4,GODTALOS)
THEN
	RESPONSE #100
		ApplySpellRES("CDHLYSY2",Player4) // No. The djinn here are bound by an undying geas, powerful magic that prevents us from disobeying him. Were we not under this compulsion, we would have slaughtered him as one does a bull long ago.
		ActionOverride(Player4,TransformItem("CDHLYSYM","BELT14"))
END

IF
	HasItem("CDHLYSYM",Player4) // No such index
	!Kit(Player4,GODLATHANDER)
	OR(5)
		GlobalGT("CDWorkingForHelm","GLOBAL",0)
		Alignment(Player4,LAWFUL_NEUTRAL)
		Alignment(Player4,NEUTRAL)
		Alignment(Player4,LAWFUL_EVIL)
		Kit(Player4,GODHELM)
THEN
	RESPONSE #100
		ApplySpellRES("CDHLYSY2",Player4) // No. The djinn here are bound by an undying geas, powerful magic that prevents us from disobeying him. Were we not under this compulsion, we would have slaughtered him as one does a bull long ago.
		ActionOverride(Player4,TransformItem("CDHLYSYM","BELT13"))
END

IF
	HasItem("CDHLYSYM",Player4) // No such index
	!Kit(Player4,GODHELM)
	OR(3)
		GlobalGT("CDWorkingForLathander","GLOBAL",0)
		Alignment(Player4,MASK_GOOD)
		Kit(Player4,GODLATHANDER)
THEN
	RESPONSE #100
		ApplySpellRES("CDHLYSY2",Player4) // No. The djinn here are bound by an undying geas, powerful magic that prevents us from disobeying him. Were we not under this compulsion, we would have slaughtered him as one does a bull long ago.
		ActionOverride(Player4,TransformItem("CDHLYSYM","BELT12"))
END
Link to comment

OMFG ! I don't have the pocket plane ability :(

 

Just like there beside Melsan did appears...

sounds like some mod messed it up if it happened to both of you and he is playing on vanilla engine. Can't remember similar reports in the past. I've just did a solo speed run from the beginning of ToB up to Gromnir kill and couldn't reproduce it on a clean EET. Not sure how to help other than following what was said in that topic. Can you reproduce it if you load the earlier save or start new ToB game?

 

OK, below are the lines that are missing from my BALDUR.BCS and BALDUR25.BCS (only example with player 4, but these lines should exist for each players : 1 to 6).

As far as I understand, these lines are responsible for transforming CDHLYSYM into the ring (a ring named belt...) that fits Player4 alignment...

that's the point of this component - remove code from global script that can be handled in more efficient way.

 

I've just tested it and the tweak indeed no longer works as indented on EET (although still works on vanilla BG2:EE) :blush:

 

What you reported is a problem related to the recent change in EET to not use BALDUR25.BCS. EET_Tweaks has not been updated since this change was made and due to this it wasn't able to finish installing the component (you will also have problems with drow items in ToB). The change here probably won't be needed considering we can now change global script on the fly in patch 2.0, so there is nothing preventing us from still using BALDUR25.BCS. As a workaround please either uninstall the component or place these files in your Override: https://www.sendspace.com/file/lz4278

Thanks for the report.

Link to comment

 

OMFG ! I don't have the pocket plane ability :(

 

Just like there beside Melsan did appears...

sounds like some mod messed it up if it happened to both of you and he is playing on vanilla engine. Can't remember similar reports in the past. I've just did a solo speed run from the beginning of ToB up to Gromnir kill and couldn't reproduce it on a clean EET. Not sure how to help other than following what was said in that topic. Can you reproduce it if you load the earlier save or start new ToB game?

 

Easy to reproduce: I take my savegame at the VERY beginning of ToB. I do the first challange (after talking to/reviving Sarevok) and I get the pocket plane Ability. Save and reload. I don't have it anymore :( The other guy (from the post above), don't seem to use EET (he has not posted weidu.log but he said he used BWS...). So no EET related.

Very strange, according to NI, my char has SPIN649.SPL in my 1st savegame... it disapear when loading the save game... thus, it's not saved anymore...

 

OK, below are the lines that are missing from my BALDUR.BCS and BALDUR25.BCS (only example with player 4, but these lines should exist for each players : 1 to 6).

As far as I understand, these lines are responsible for transforming CDHLYSYM into the ring (a ring named belt...) that fits Player4 alignment...

that's the point of this component - remove code from global script that can be handled in more efficient way.

 

I've just tested it and the tweak indeed no longer works as indented on EET (although still works on vanilla BG2:EE) :blush:

 

What you reported is a problem related to the recent change in EET to not use BALDUR25.BCS. EET_Tweaks has not been updated since this change was made and due to this it wasn't able to finish installing the component (you will also have problems with drow items in ToB). The change here probably won't be needed considering we can now change global script on the fly in patch 2.0, so there is nothing preventing us from still using BALDUR25.BCS. As a workaround please either uninstall the component or place these files in your Override: https://www.sendspace.com/file/lz4278

Thanks for the report.

 

As usual, your fix works like a charm :)
Link to comment

Easy to reproduce: I take my savegame at the VERY beginning of ToB. I do the first challange (after talking to/reviving Sarevok) and I get the pocket plane Ability. Save and reload. I don't have it anymore :( The other guy (from the post above), don't seem to use EET (he has not posted weidu.log but he said he used BWS...). So no EET related.

You do know, that's ones per rest ability ? So you should rest outside the pocket Pl... and see if you still don't have it. Don't you ?
Link to comment

 

 

OMFG ! I don't have the pocket plane ability :(

 

Just like there beside Melsan did appears...

sounds like some mod messed it up if it happened to both of you and he is playing on vanilla engine. Can't remember similar reports in the past. I've just did a solo speed run from the beginning of ToB up to Gromnir kill and couldn't reproduce it on a clean EET. Not sure how to help other than following what was said in that topic. Can you reproduce it if you load the earlier save or start new ToB game?

 

Easy to reproduce: I take my savegame at the VERY beginning of ToB. I do the first challange (after talking to/reviving Sarevok) and I get the pocket plane Ability. Save and reload. I don't have it anymore :( The other guy (from the post above), don't seem to use EET (he has not posted weidu.log but he said he used BWS...). So no EET related.

Very strange, according to NI, my char has SPIN649.SPL in my 1st savegame... it disapear when loading the save game... thus, it's not saved anymore...

 

OK, below are the lines that are missing from my BALDUR.BCS and BALDUR25.BCS (only example with player 4, but these lines should exist for each players : 1 to 6).

As far as I understand, these lines are responsible for transforming CDHLYSYM into the ring (a ring named belt...) that fits Player4 alignment...

that's the point of this component - remove code from global script that can be handled in more efficient way.

 

I've just tested it and the tweak indeed no longer works as indented on EET (although still works on vanilla BG2:EE) :blush:

 

What you reported is a problem related to the recent change in EET to not use BALDUR25.BCS. EET_Tweaks has not been updated since this change was made and due to this it wasn't able to finish installing the component (you will also have problems with drow items in ToB). The change here probably won't be needed considering we can now change global script on the fly in patch 2.0, so there is nothing preventing us from still using BALDUR25.BCS. As a workaround please either uninstall the component or place these files in your Override: https://www.sendspace.com/file/lz4278

Thanks for the report.

 

As usual, your fix works like a charm :)

 

I am not sure if this observation is related to the pocket plane issue or not - but it seems that those particular special ability has some strange life of its own:

In my Sandrah RtF mod the game continues (optionally) after ToB end. For this part I remove the pocket plane/slayer abilities from player1 again - at least I try to. In my testing I have found that those removed spells re-appear after exiting and reloading the game, so I needed some extra code to assure the removal in those cases. Maybe what works in the one direction works in the other as well (i.e. in my case removed abilities re-appear, in your case gained abilities dis-appear???). Just a wild guess.

Link to comment

 

Easy to reproduce: I take my savegame at the VERY beginning of ToB. I do the first challange (after talking to/reviving Sarevok) and I get the pocket plane Ability. Save and reload. I don't have it anymore :( The other guy (from the post above), don't seem to use EET (he has not posted weidu.log but he said he used BWS...). So no EET related.

You do know, that's ones per rest ability ? So you should rest outside the pocket Pl... and see if you still don't have it. Don't you ?

 

Well, I am pretty sure it's not the case in vanilla and in Vanilla EE neither.

However, I did the tests (rest in and out PocketPlane) and nothing change.

 

I am not sure if this observation is related to the pocket plane issue or not - but it seems that those particular special ability has some strange life of its own:

In my Sandrah RtF mod the game continues (optionally) after ToB end. For this part I remove the pocket plane/slayer abilities from player1 again - at least I try to. In my testing I have found that those removed spells re-appear after exiting and reloading the game, so I needed some extra code to assure the removal in those cases. Maybe what works in the one direction works in the other as well (i.e. in my case removed abilities re-appear, in your case gained abilities dis-appear???). Just a wild guess.

I really don't know...
Link to comment

I am not sure if this observation is related to the pocket plane issue or not - but it seems that those particular special ability has some strange life of its own:

In my Sandrah RtF mod the game continues (optionally) after ToB end. For this part I remove the pocket plane/slayer abilities from player1 again - at least I try to. In my testing I have found that those removed spells re-appear after exiting and reloading the game, so I needed some extra code to assure the removal in those cases. Maybe what works in the one direction works in the other as well (i.e. in my case removed abilities re-appear, in your case gained abilities dis-appear???). Just a wild guess.

What do you do to remove the ability ? Asking cause I have made a way to regain innate spells, with timers. As an extension of the iispellsystemadjustment mod... and have and might still run into these. I simply use opcodes 171 and 172 to do that, something to this effect:

LPF ~ADD_SPELL_EFFECT~ INT_VAR opcode = 172 target = 1 timing = 1 resist_dispel = 2 probability1 = 100 STR_VAR resource = EVAL "%SOURCE_RES%" END
LPF ~ADD_SPELL_EFFECT~ INT_VAR opcode = 171 target = 1 timing = 4 resist_dispel = 2 duration = timer0 probability1 = 100 STR_VAR resource = EVAL "%SOURCE_RES%" END
Link to comment

Archived

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

×
×
  • Create New...