eXistenZe Posted November 15, 2016 Share Posted November 15, 2016 Fixed. Thanks. How did you fix it? Maybe your solution is a candidate for the upcoming fixpack for EET? No no... Fixed with the file you sent. Weidu log errors: Y:\BGSeries\Baldur's Gate II Enhanced Edition\Data\00783>weidu.exe --log nul --change-log bg0125.bcs [weidu.exe] WeiDU version 23700 In state 1328, I expected one of these tokens: [36] PLUS [61] LT [74] MINUS [99] BASR [124] RPAREN [126] GT [139] BXOR [149] DIVIDE [181] BLSR [204] BOR [210] BLSL [230] QUESTION [233] TIMESTIMES [276] OR [294] AND [306] TIMES [314] EQUALSEQUALS [337] LTE [367] BAND [390] EQUALS [407] GTE [409] NOTEQUALS Parse error (state 1328) at ~~ [EET_CORE.TP2] PARSE ERROR at line 956 column 1-59 Near Text: ~%USER_DIRECTORY_EET%/save~ GLR parse error [EET_CORE.TP2] ERROR at line 956 column 1-59 Near Text: ~%USER_DIRECTORY_EET%/save~ Parsing.Parse_error ERROR: parsing [EET_CORE.TP2]: Parsing.Parse_error FATAL ERROR: Parsing.Parse_error Y:\BGSeries\Baldur's Gate II Enhanced Edition\Data\00783> Quote Link to comment
Jarno Mikkola Posted November 15, 2016 Share Posted November 15, 2016 (edited) Hmm... you know, that errors out. Y:\BGSeries\Baldur's Gate II Enhanced Edition\Data\00783>weidu.exe --log nul --change-log bg0125.bcs [weidu.exe] WeiDU version 23700 First of all, get yourself a weidu.exe that can actually work in the environment it's at. aka download the "Windows binary" from here. And unpack the weidu.exe from that to the 00783 -folder. Then ask this of it: mkdir change-logWeiDU.exe --log nul --change-log bg0125.bcs >change-log/change-log.txt --out change-log -with either a .bat file or just just like you were above instructed. And then go to the newly created folder, and check what is there. The new folder is, like you could assume:"change-log". Edited November 15, 2016 by Jarno Mikkola Quote Link to comment
Roxanne Posted November 15, 2016 Share Posted November 15, 2016 (edited) eXistenZe: The BG0125.BCS script you attached above is missing a block from the original BG1EE script (AR0125.BCS) that triggers when Sarevok's health = 1. Can you run "weidu.exe --log nul --change-log bg0125.bcs" in your game folder? Start Menu -> Run ... (or press Windows key + R key) Enter "cmd" and hit Enter Type "cd C:\BG2EE\" (or whatever your game folder path is) and hit Enter Type "weidu.exe --log nul --change-log bg0125.bcs > change.log" and hit Enter When it finishes, open the text file named "change.log" in the game folder and paste the contents here. This will show if any other mods changed that script. Not sure you are on the right track here - In EET what kills Sarevok is in Sarevok_.bcs The script Sarevo,cre has in EET. IF OR(2) HPLT(Myself,2) Die() THEN RESPONSE #100 ClearAllActions() MoveViewObject("Sarevok",INSTANT) AddexperienceParty(15000) Kill(Myself) END and IF Global("SarevokBehavior","GLOBAL",1) This is set after the Ducal Palace showdown THEN RESPONSE #100 SetGlobal("SarevokBehavior","GLOBAL",2) CreateCreature("Sarevo",[581.437],S) // Sarevok END The condition you look for is not in BG0125.bcs in EET. (Problem is that some tweak mods say they are compatible with EET while not being and not having been tested) Forgot to mention that the file posted by eXistenZe in the problem report is the UNTWEAKED EET file for BG0125 - which works perfectly unless you change OTHER files for that battle. I was just doing that battle yesterday more than a dozend times (to test my own mod addition to the scene.), so I can give you my word there is nothing wrong with the original. Edited November 15, 2016 by Roxanne Quote Link to comment
agb1 Posted November 15, 2016 Share Posted November 15, 2016 Update for first post: Tower of Deception v4.0.1 is now available from https://github.com/BiGWorldProject/TowerOfDeception/releases Quote Link to comment
Fouinto Posted November 15, 2016 Share Posted November 15, 2016 (edited) Final BG1EE fight bug : Sarevok unkillable Yet another old bug ? well, this time I don't think so. Reminder : I play with SCS, so, I need to kill the 4 mates before being able to kill Sarevok. In, the old bug, you just had to CLUA 1 (or 2) of the missing mates, kill the 4 mates, and then kill Sarevok. Here, everything goes as it should until the very end : - first time I hit Sarevok, He says he is invincible thanks to his 4 mates : "Oh, my foolish <PRO_BROTHERSISTER>... You have no power to harm me. Do you think I chose to confront you in this place through some sense of theater?" - as soon as I kill, one mate, he says I understood but it remains 3 mates : "A predictable ploy, <PRO_BROTHERSISTER>. And impressive, as well, but ultimately futile. I have three others..." - as soon as I have killed all 4 mates, he says "Does it end here, then, <PRO_BROTHERSISTER>? You have taken my acolytes, taken my shield from harm. Am I not to become a god?" But after that, I should be able to kill him ! I am not I think one "Action" is missing in the last dialog : there is only "SetGlobal("DMWWSarevokFight","GLOBAL",4)" But I've checked, only SAREVOK_.bcs is using this var : IF Global("DMWWSarevokFight","GLOBAL",4) !GlobalTimerNotExpired("castspell","LOCALS") HasItem("potn07",Myself) // Potion of Storm Giant Strength THEN RESPONSE #100 SetGlobalTimer("castspell","LOCALS",ONE_ROUND) UseItem("potn07",Myself) // Potion of Storm Giant Strength DisplayStringHead(Myself,278836) // Quaffs potion of storm giant strength ENDWell... nothing that will make him killable. I would be glad if someone could help me Edit : probably a SCS bug... but could not find something similar in SCS forum BG0125.ARE (renamed from AR0125.ARE in BG:EE) is the final BG1 temple area in EET. In BG:EE, that area script (AR0125.BCS) has a block that triggers Sarevok's final death: IF HP("sarevok",1) Dead("galdor") Dead("diarmi") Dead("semaj") Dead("tazok") THEN RESPONSE #100 Kill("sarevok") SetGlobalTimer("DeathOfSarevok","GLOBAL",3) END SCS #7250 (improved final BG1 battle) does not change that area script. So, after you saw the 'You have taken my acolytes' line, you had satisfied the 4 deaths condition and that block should finish him off once you lowered his health to 1. Removing the monhp1 amulet should not be necessary. Since that didn't happen, can you check what script is associated with BG0125.ARE in your game and see if that block is there? BG0125.BCS is the script associated with BG0125.ARE in my game, but, it has not the line you posted. According to change-log there is no mod that have changed BG0125.BCS (no mod in BG1EE part before EET no mod after EET). Edit : To be more clear, as Roxanne suggested, the bug is caused by an other file/change. Edited November 15, 2016 by Fouinto Quote Link to comment
Roxanne Posted November 15, 2016 Share Posted November 15, 2016 Final BG1EE fight bug : Sarevok unkillable Yet another old bug ? well, this time I don't think so. Reminder : I play with SCS, so, I need to kill the 4 mates before being able to kill Sarevok. In, the old bug, you just had to CLUA 1 (or 2) of the missing mates, kill the 4 mates, and then kill Sarevok. Here, everything goes as it should until the very end : - first time I hit Sarevok, He says he is invincible thanks to his 4 mates : "Oh, my foolish <PRO_BROTHERSISTER>... You have no power to harm me. Do you think I chose to confront you in this place through some sense of theater?" - as soon as I kill, one mate, he says I understood but it remains 3 mates : "A predictable ploy, <PRO_BROTHERSISTER>. And impressive, as well, but ultimately futile. I have three others..." - as soon as I have killed all 4 mates, he says "Does it end here, then, <PRO_BROTHERSISTER>? You have taken my acolytes, taken my shield from harm. Am I not to become a god?" But after that, I should be able to kill him ! I am not I think one "Action" is missing in the last dialog : there is only "SetGlobal("DMWWSarevokFight","GLOBAL",4)" But I've checked, only SAREVOK_.bcs is using this var : IF Global("DMWWSarevokFight","GLOBAL",4) !GlobalTimerNotExpired("castspell","LOCALS") HasItem("potn07",Myself) // Potion of Storm Giant Strength THEN RESPONSE #100 SetGlobalTimer("castspell","LOCALS",ONE_ROUND) UseItem("potn07",Myself) // Potion of Storm Giant Strength DisplayStringHead(Myself,278836) // Quaffs potion of storm giant strength ENDWell... nothing that will make him killable. I would be glad if someone could help me Edit : probably a SCS bug... but could not find something similar in SCS forum BG0125.ARE (renamed from AR0125.ARE in BG:EE) is the final BG1 temple area in EET. In BG:EE, that area script (AR0125.BCS) has a block that triggers Sarevok's final death: IF HP("sarevok",1) Dead("galdor") Dead("diarmi") Dead("semaj") Dead("tazok") THEN RESPONSE #100 Kill("sarevok") SetGlobalTimer("DeathOfSarevok","GLOBAL",3) END SCS #7250 (improved final BG1 battle) does not change that area script. So, after you saw the 'You have taken my acolytes' line, you had satisfied the 4 deaths condition and that block should finish him off once you lowered his health to 1. Removing the monhp1 amulet should not be necessary. Since that didn't happen, can you check what script is associated with BG0125.ARE in your game and see if that block is there? BG0125.BCS is the script associated with BG0125.ARE in my game, but, it has not the line you posted. According to change-log there is no mod that have changed BG0125.BCS (no mod in BG1EE part before EET no mod after EET). This is correct. While AR0125.are becomes BG0125.are in EET, the script for the area (i.e.BG0125.bcs) is NOT identical to BGEE because EET uses continuous characters and it uses the area of Sarevok's defeat for the transition into SoD. The script has been posted here http://gibberlings3.net/forums/index.php?showtopic=27741&page=29&do=findComment&comment=248398 already. It has no issues in itself, I have tested it extensively just yesterday in my playthrough. (The issue reported comes from mods that were designed for BGEE or the old BG1 and BGT. They have not been properly adjusted to EET and expect code that is not there.) Quote Link to comment
agb1 Posted November 15, 2016 Share Posted November 15, 2016 Roxanne, do you know where in the EET code that area script is changed from what is in BGEE? I don't see where that "HP("sarevok",1)" block gets removed. I agree with the conclusion, anyway - SCS #7250 expects the area script to kill Sarevok when HP = 1, as it did in BGEE and BGT. Quote Link to comment
Roxanne Posted November 15, 2016 Share Posted November 15, 2016 (edited) Roxanne, do you know where in the EET code that area script is changed from what is in BGEE? I don't see where that "HP("sarevok",1)" block gets removed. I agree with the conclusion, anyway - SCS #7250 expects the area script to kill Sarevok when HP = 1, as it did in BGEE and BGT. It is not really removed but the whole proceeding around Sarevok's defeat is revised by bg1_bcs.tph EET/temp/patch/bcs/BG0125.BAF EET/temp/patch/bcs/sarevok_.baf Sarevo,cre Not sure this is the whole list, probably K4thos knows some more. Edited November 15, 2016 by Roxanne Quote Link to comment
Azoth Posted November 16, 2016 Share Posted November 16, 2016 (edited) Roxanne, do you know where in the EET code that area script is changed from what is in BGEE? I don't see where that "HP("sarevok",1)" block gets removed. I agree with the conclusion, anyway - SCS #7250 expects the area script to kill Sarevok when HP = 1, as it did in BGEE and BGT. I think "kill Sarevok" is handled in Sarevok.bcs resp. Sarevok_.bcs in EET: Clean BGEE (only modmerge): IF OR(2) HPLT(Myself,2) Die() THEN RESPONSE #100 ClearAllActions() MoveViewObject("Sarevok",INSTANT) AddexperienceParty(15000) Kill(Myself) END Heavily modded EET: IF OR(2) HPLT(Myself,1) Die() THEN RESPONSE #100 ClearAllActions() SetGlobalTimer("DeathOfSarevok","GLOBAL",3) MoveViewObject("sarevok",INSTANT) END Does HPLT(xxx,1) vs HPLT(xxx,2) make a difference? I would say yes. With his MonHP1.itm amulet, the block never trigger in EET + SCS. Edited November 16, 2016 by Azoth Quote Link to comment
Roxanne Posted November 16, 2016 Share Posted November 16, 2016 (edited) Roxanne, do you know where in the EET code that area script is changed from what is in BGEE? I don't see where that "HP("sarevok",1)" block gets removed. I agree with the conclusion, anyway - SCS #7250 expects the area script to kill Sarevok when HP = 1, as it did in BGEE and BGT. It is not really removed but the whole proceeding around Sarevok's defeat is revised by bg1_bcs.tph EET/temp/patch/bcs/BG0125.BAF EET/temp/patch/bcs/sarevok_.baf Sarevo,cre Not sure this is the whole list, probably K4thos knows some more. Roxanne, do you know where in the EET code that area script is changed from what is in BGEE? I don't see where that "HP("sarevok",1)" block gets removed. I agree with the conclusion, anyway - SCS #7250 expects the area script to kill Sarevok when HP = 1, as it did in BGEE and BGT. I think "kill Sarevok" is handled in Sarevok.bcs resp. Sarevok_.bcs in EET: Clean BGEE (only modmerge): IF OR(2) HPLT(Myself,2) Die() THEN RESPONSE #100 ClearAllActions() MoveViewObject("Sarevok",INSTANT) AddexperienceParty(15000) Kill(Myself) END Heavily modded EET: IF OR(2) HPLT(Myself,1) Die() THEN RESPONSE #100 ClearAllActions() SetGlobalTimer("DeathOfSarevok","GLOBAL",3) MoveViewObject("sarevok",INSTANT) END Does HPLT(xxx,1) vs HPLT(xxx,2) make a difference? I would say yes. With his MonHP1.itm amulet, the block never trigger in EET + SCS. This is why I gave this solution to those who had the problem, an addition to bg0125.bcs IF Global("DMWWSarevokFight","GLOBAL",4) THEN RESPONSE #100 ActionOverride("Sarevok",DestroyItem("MONHP1")) SetGlobal("DMWWSarevokFight","GLOBAL",5) END It does nothing good or bad if the global is never set. However, if you have whatever mod making changes, then you have to fight and kill Sarevok's goons to trigger his final speech. Afterwards the global is 4, Sarevok destroys his minhp item and you can fight to kill him. Alternatively the same could be done in Sarevok's script but I propose to use the area script because the next best mod to "improve" Sarevok battle may tweak his script as well. Anyway it is like fighting windmills - it would be the responsibility of the mod tweaking the battle to implement a solution that makes the game playable (but this may forever remain wishful thinking). Edited November 16, 2016 by Roxanne Quote Link to comment
Jarno Mikkola Posted November 16, 2016 Share Posted November 16, 2016 (edited) Alternatively the same could be done in Sarevok's script but I propose to use the area script because the next best mod to "improve" Sarevok battle may tweak his script as well... Nope, not area script... I would rather have an invisible creature that lurks in a corner or outside the confinements of the closed space and checks things, like sarevoks HP. And commands him. Cause you can easily lock the area script to what ever, but a specific summoned .cre that does these and only these things is far harder to cheese the wheels off of. Just check the unkillable troll thread if you don't believe. Edited November 17, 2016 by Jarno Mikkola Quote Link to comment
agb1 Posted November 17, 2016 Share Posted November 17, 2016 BWFixpack update: Added Sellswords v5 patch - incorporated K4thos' EET-Patches-for-BG2EE patch for Sellswords & additional Enge's shop compatibility fix from micbaldur (not an issue for EET yet, I think, as Hubelpot is not compatible) Quote Link to comment
Roxanne Posted November 19, 2016 Share Posted November 19, 2016 Here http://gibberlings3.net/forums/index.php?showtopic=28161&page=45&do=findComment&comment=248474 is a small tweak that enables the EET-imported items from BG1 into BG2 to be accessible by the party. This is not really considered to be a mod, just an interim until some mod does the (a better) job for those players who suffer too much from the loss of their items.. Quote Link to comment
vanatos Posted November 20, 2016 Share Posted November 20, 2016 Hi, i am the coder for the Imoen Romance Mod. I have made changes to make it compatible with EET. As far as i understand, because Imoen Romance Mod is a BG2/BG2EE specific mod (not BG1) then the only changes i needed to make was for any global code around chapters. e.g. change GlobalGT("Chapter","GLOBAL",5) to GlobalGT("Chapter","GLOBAL",%bg2_chapter_5%) The mod uses its own version of candlekeep, with its own ARE, WED, MOS, TIZ etc files so this area shouldn't need any changes around it. I have not tested this mod in EET since i don't use that mod, i've installed it in normal BG2EE and the variables seem to have worked out fine. If anyone can test it on EET that would be great Quote Link to comment
agb1 Posted November 20, 2016 Share Posted November 20, 2016 vanatos: For EET compatibility, you also need to change the three GAME_IS ~bg2ee~ checks in the tp2 file to GAME_IS ~bg2ee eet~: ACTION_IF GAME_IS ~bg2ee~ BEGIN //EE rejoin. COMPILE ~imoenRomance/dialogues/SOA/Spellhold/ImRejoin.d~ ~imoenRomance/dialogues/SOA/Spellhold/ImRejoinEE.d~ END ACTION_IF GAME_IS ~bg2ee~ BEGIN //EE tree. COMPILE ~imoenRomance/dialogues/SOA/Suld/TreeEE.d~ ~imoenRomance/dialogues/SOA/Suld/TreeContent.d~ END ACTION_IF GAME_IS ~bg2ee~ BEGIN COMPILE ~imoenRomance/dialogues/TOB/FinalConversation/FinalConversationEE.d~ ~imoenRomance/dialogues/TOB/FinalConversation/FinalConversation.d~ END Quote Link to comment
Recommended Posts
Join the conversation
You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.