Roana Posted November 12, 2006 Posted November 12, 2006 Hello, For this: - Cutscene on Desharik’s stolen ship could break the game when the Gith were attacked by the player/party if AI was on The whole sequence is buggy, and I have also had some strange experiences with this every time, I played (I always choose this way, because I love the sahuagin-city, and won't miss it ). Finally I have reached this scene in my new game, and after almost half a day fixing and testing in different ways , I have now a final solution . The main-fault was in the AR1600.BCS, what I have sadly seen very late, so that I have had done some unnessecary testing (if I would have seen this earlier...). Well, this is a hard one and will be _very_ long, as I have to post almost all, to make (hopefully) clear, what I have done and why: Here are many files involved, but after a long research, I have only fixed the following: - AR1600.BCS - CUT41Q.BCS - CUT41ZF.BCS - PPSAEM3.DLG - PPSAEM2.BCS - PPSAEM3.CRE To make this all clear, I will post almost all, whats going on here - maybe, you find a better solution: AR1600.BCS: IF GlobalLT("AsylumPlot","GLOBAL",78) ----->added - caused problems, if you load a saved game in this Area just before the jouney, if it has not started through the dialogue, because Desharik died, before his dialogue could fire. In a loaded Savegame just before speaking with Saemon, the Area-script has reseted the Global set by the CUT41Q.BCS ("AsylumPlot",80) during the cutscene (please don't ask me why - I have accepted and fixed this after much testing) to the value below and so given Saemon a false trigger, which caused the cutscene running again from the beginning, if you talk to him on the ship. Dead("ppright") // Dunbar NumDeadGT("pppirate",2) // Pirat THEN RESPONSE #100 SetGlobal("AsylumPlot","GLOBAL",78) ActionOverride("ppdesh2",StartDialogueNoSet(Player1)) Continue() END PPSAEM3.CRE removed the undroppable-flag from the item in his inventory PPSAEM3.DLG: State 3: Global("AsylumPlot","GLOBAL",78) ---> the last dialog with him before the journey begins is staring here Action 18: GiveItemCreate("misc8u",LastTalkedToBy,0,0,0) ------> replaced with... GiveItem("misc8u",LastTalkedToBy) -----> ... which resolve the bug of receiving 2 blades (PPSAEM3.CRE has one in its inventory, from which I have removed the undroppable flag) StartCutSceneMode() StartCutScene("Cut41q") ----> missing the ClearAllActions() Command (see fix below in CUT41Q.BCS) Wait(1) ------> added DestroySelf() -----> added - caused the bug of reviewing the Area AR1600, if Saemon starts his first dialogue on the ship, because he is Actor in AR1607 and then existed twice, without removing him from AR1600. CUT41Q.BCS: IF True() THEN RESPONSE #100 CutSceneId(Player1) ClearAllActions() ----> added it here SetInterrupt(FALSE) ------> added this too... FadeToColor([20.0],0) Wait(1) LeaveAreaLUAPanic("AR1607","",[347.1823],3) LeaveAreaLUA("AR1607","",[347.1823],3) ActionOverride(Player2,LeaveAreaLUA("AR1607","",[262.1766],3)) ActionOverride(Player3,LeaveAreaLUA("AR1607","",[306.1721],3)) ActionOverride(Player4,LeaveAreaLUA("AR1607","",[490.1854],3)) ActionOverride(Player5,LeaveAreaLUA("AR1607","",[394.1873],3)) ActionOverride(Player6,LeaveAreaLUA("AR1607","",[514.1620],3)) MultiPlayerSync() TextScreen("SCRTXT05") --->....because of this, that I have moved a few lines above to.... FadeFromColor([20.0],0) Explore() SetInterrupt(TRUE) -----> ....set this after the textscreen, as Bioware have done in the last cutscene SetGlobal("AsylumPlot","GLOBAL",80) ----> on this Global Seamons DLG will (now after the fix directly) react EndCutSceneMode() SmallWait(1) ActionOverride("ppsaem3",StartDialogueNoSet(Player1)) ---> added after long testing, cause the only way, to avoid, that the whole scene could be broken here by Player-AI-Scripts, is to ActionOverride this dialogue-starting END PPSAEM2.BCS: IF Global("AsylumPlot","GLOBAL",80) Global("SaemInit1607","GLOBAL",0) THEN RESPONSE #100 SetGlobal("SaemInit1607","GLOBAL",1) StartDialogueNoSet(Player1) END ----> removed this block, as I was forced to ActionOverride this dialogue-starting in the CUT41Q.BCS, to fix the bug with the PlayerAI PPSAEM3.DLG: State 5: Global("AsylumPlot","GLOBAL",80) ------> he fires this State (he mentioned his sailors to be prepared for the ship to be entered) Action 10: SetGlobal("AsylumPlot","GLOBAL",90) -----> Saemons sets here already the Global on which his next State will fire StartCutSceneMode() StartCutScene("Cut41zf") -----> and start the the next cutscene, again without the ClearAllActions() Command... CUT41ZF.BCS: IF True() THEN RESPONSE #100 CutSceneId(Player1) ClearAllActions() -----> which I have added here SetInterrupt(FALSE) -----> and again added this MoveViewObject("ppgith99",INSTANT) Wait(2) ActionOverride("ppdie1",EquipRanged()) ActionOverride("ppdie1",Attack("ppgith99")) ActionOverride("ppgith99",ReallyForceSpell("ppdie2",WIZARD_AGANNAZAR_SCORCHER)) ActionOverride("ppdie2",Kill(Myself)) Wait(2) CreateVisualEffect("SPDIMNDR",[652.1670]) ActionOverride("ppgith97",JumpToPoint([652.1670])) ActionOverride("ppgith97",Face(0)) Wait(4) ActionOverride("ppgith97",ForceSpell("ppdie1",PSIONIC_EMOTION_KILL)) Wait(1) ActionOverride("ppdie1",DisplayStringHead(Myself,31868)) // Ich gebe auf ... Ich kann nicht mehr weiter machen ... Es hat keinen Sinn ... Ich muss sterben Wait(4) ActionOverride("ppgith99",ForceSpell("ppdie3",PSIONIC_MIND_BLAST)) Wait(1) ActionOverride("ppdie3",Kill(Myself)) Wait(2) ActionOverride("ppgith97",ForceSpell("ppdie4",FLASHY_4)) Wait(1) ActionOverride("ppdie4",Kill(Myself)) ActionOverride("ppsaem3",Face(12)) Wait(1) MoveViewPoint([349.1747],AS_FAST_WALKING) ActionOverride("ppgith99",MoveToPoint([390.1706])) ActionOverride("ppgith98",MoveToPoint([479.1675])) Wait(1) ActionOverride("ppgith90",MoveToPoint([453.1708])) ActionOverride("ppgith91",MoveToPoint([390.1773])) Wait(1) ActionOverride("ppgith92",MoveToPoint([601.1776])) Wait(1) ActionOverride("ppgith93",MoveToPoint([689.1781])) CreateVisualEffect("SPDIMNDR",[349.1747]) Wait(1) ActionOverride("ppgith",JumpToPoint([349.1747])) Wait(1) ActionOverride("ppgith",Face(0)) Wait(4) SetGlobal("AttackedGith","GLOBAL",1) -----> this is only for Simyaz dialog later in Underdark as a trigger used SetInterrupt(TRUE) ------> and certainly I added this ActionOverride("ppsaem3",StartDialogueNoSet(Player1)) ----> now Saemon starts again a dialog - this time with the githyanki-captain, where the mainchar is involved an he betrays her/him EndCutSceneMode() END PPSAEM3.DLG: State 4: Global("AsylumPlot","GLOBAL",90) ----->based on the variable, he has already set before the cutscene started Action 7: SetGlobal("MetGith","GLOBAL",1) ----->also only used as a trigger for Simyaz and Action 8: ChangeEnemyAlly(Myself,GOODBUTBLUE) SetGlobal("AsylumPlot","GLOBAL",81) ------> on this value, Saemon sets in Asylum-Plot, he should get a trigger, if you talk to him during the fight with the Githyanki SetGlobalTimer("GithTimer1","GLOBAL",10) -----> on this timer the AREA.BCS reacts PPSAEM3.DLG New State-Trigger 7 (assigned to State 59): Global("AsylumPlot","GLOBAL",81) ----->added this trigger to give him a true value, if you talk to him during the fight with the Githyanki. State 59 is also called from the PPSAILOR.DLG and followed by the Action 9: SetGlobal("AsylumPlot","GLOBAL",200) ApplySpell(Myself,DRYAD_TELEPORT) AR1607.BCS: IF GlobalTimerExpired("GithTimer1","GLOBAL") Global("sah","AR1607",0) THEN RESPONSE #100 SetGlobalTimer("GithTimer1","GLOBAL",100) ----->resets the timer and... DisplayStringHead(Player1,31879) // Das Schiff erzittert und gibt ein Ächzen von sich, das so klingt, als würde es gleich auseinander brechen. ScreenShake([5.5],5) SetGlobal("sah","AR1607",1) CreateCreature("ppsailor",[699.1467],0) // Seemann ----> spawns this Sailor, who is more important, than I first thought END PPSAILOR.DLG: State 0: NumTimesTalkedTo(0) Action 0: SetGlobal("AsylumPlot","GLOBAL",200) ----> as he sets the whole Asylum Plot to the really end (which is repeated by Saemon, if he is still alive and can answer to this one scentence), on which the AREA.BCS again reacts AR1607.BCS: IF Global("AsylumPlot","GLOBAL",200) THEN RESPONSE #100 SetGlobal("AsylumPlot","GLOBAL",201) Wait(1) ClearAllActions() StartCutSceneMode() StartCutScene("Cut41zg") -----> with the next cutscene (this time with ClearAllActions() Command) END CUT41ZG.BCS: IF True() THEN RESPONSE #100 CutSceneId(Player1) CreateCreatureDoor("ppsaha",[992.1440],0) // Sahuagin CreateCreatureDoor("ppsaha",[827.1362],0) // Sahuagin CreateCreatureDoor("ppsaha",[630.1460],0) // Sahuagin CreateCreatureDoor("ppsaha",[864.1581],0) // Sahuagin CreateCreatureDoor("ppsaha",[713.1551],0) // Sahuagin -----> spawns the sahuagin and.... SetGlobalTimer("GithTimer1","GLOBAL",10) -----> resets the timer - again. I have changed this from 5 to 10, to have a bit longer time, so that the player can see the Sahuagin, that are created, for a short time, before the last cutscene starts EndCutSceneMode() END GITHCHP4.BCS: IF See([0.0.0.0.SAHUAGIN]) ----> on the sahuagin the githyanki-captain reacts Name("ppgith",Myself) // Githyanki-Hauptmann Global("flee","LOCALS",0) THEN RESPONSE #100 SetGlobal("flee","LOCALS",1) StartDialogueNoSet(Player1) ------> with his last dialog-line before fleeing END AR1607.BCS: IF GlobalTimerExpired("GithTimer1","GLOBAL") ----> on the timer reacts - again - the AREA.BCS Global("lastcut","AR1607",0) THEN RESPONSE #100 SetGlobal("lastcut","AR1607",1) ScreenShake([100.100],100) ClearAllActions() StartCutSceneMode() StartCutScene("Cut41r") -----> with starting the last cutscene CUT41R.BCS, which runs correct END Well, the ship is on the ground of the sea, and you are arrived in the sahuagin-city. Why have I now to fix Seamons DLG and BCS? Well, first I have had it sometimes, that the whole cutscene is starting again, as I have tried to speak to Saemon again after his last dialog, caused by a missing state-trigger, that would return true on the Global value of AsylumPlot 81. Second, it is supposed, that you should have a chance to kill him for his betrayal. Aran have also some lines according to this, if you have managed to kill him. So I fixed his BCS, to make him enemy, if you attack him, instead of Githyanki (or talk to him). What have I done? Added a state trigger 8 to his DLG based on Global("AsylumPlot","GLOBAL",81) for the existing state 59, which have already only one answer and an action (see the fix also above). Added the reference in the script (PPSAEM2.BCS) for the short time on the ship, the player can act, to get Saemon react correctly, if he will be attacked by the Player, behind this block: PPSAEM2.BCS: IF GlobalTimerExpired("SaemonHasArrived","GLOBAL") GlobalLT("AsylumPlot","GLOBAL",11) THEN RESPONSE #100 DestroySelf() END added: IF Global("AsylumPlot","GLOBAL",81) !Allegiance(Myself,ENEMY) AttackedBy([GOODCUTOFF],DEFAULT) THEN RESPONSE #100 Enemy() END Well, as I said: all tested several times with different ways to act - and now the whole scene runs well in my game, as it was supposed to By the way: I have seen, that I have fixed the whole scene, when Irenicus leads the player through the spellhold, to get some Interjections of NPCs run better. There is not much room, and if the NPC doesn't see Irenicus, he will not say his mentions. Also: If you have Yoshimo on the 4th, 5th or 6th place in the party, sometimes Irenicus could not see him and didn't interact with Yoshimoas it was supposed. If you are interested in these, please say something, and I will post my changed scripts, but I don't want to bore you with my 'cosmetic' fixes . Regards Roana
Guest Guest Posted July 31, 2007 Posted July 31, 2007 After i had stolen the horn at Desharik's girlfriends home...i went to Seamon Havarian to leave the island. I talked to him, and Desherik showed up...he killed a woman, and i killed Dasherik...Then Saemon gave me the Silver Blade, and we sailed away. When the Githyankis attacked our ship, Saemon said the same thing to me (the same thing that he said before he gave me the blade)...and i ended up with a second Silver blade. my weidu.log ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #0 // BG2 Fixpack - Core Fixes ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #1 // BG2 Fixpack - Game Text Update ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #2 // Super Happy Fun Lucky Modder Pack ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #3 // BETA Core Fixes (please check the readme!) ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #100 // Party Gets XP for Sending Keldorn to Reconcile With Maria ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #101 // Improved Spell Animations ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #102 // Cromwell's Forging Actually Takes a Day ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #103 // Mixed-Use Dagger Fixes ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #104 // Ghreyfain's Holy Symbol Fixes ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #106 // Giants Receive Penalties When Attacking Halflings, Dwarves, and Gnomes ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #107 // Remove Dual-Classing Restriction from Archers and Stalkers ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #108 // Remove Second Attribute Bonus for Evil Path in Wrath Hell Trial ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #109 // Corrected Summoned Demon Behavior ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #110 // Additional Script Fixes ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #111 // Bard Song Fixes ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #112 // Wizard Slayers Cause Miscast Magic on Ranged Attacks ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #113 // Additional Alignment Fixes ~BG2FIXPACK/SETUP-BG2FIXPACK.TP2~ #0 #114 // Change Free Action to Protect Against Stun ~1PP/1PP.TP2~ #0 #0 // 1PP: Everything but Potions ~1PP/1PP.TP2~ #0 #1 // New Potion Graphics ~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 #4 // Tougher Illasera (optional, requires ToB) ~SETUP-ASCENSION.TP2~ #0 #5 // Tougher Yaga-Shura (optional, requires ToB) ~SETUP-UB.TP2~ #0 #1 // The Suna Seni/Valygar Relationship ~SETUP-UB.TP2~ #0 #2 // Kalah and What He Was Promised ~SETUP-UB.TP2~ #0 #3 // "Cat and Mouse" (Bodhi hunts you in Spellhold) by Ghreyfain ~SETUP-UB.TP2~ #0 #4 // Gorje Hilldark and the Extended Illithium Quest ~SETUP-UB.TP2~ #0 #5 // The Pai'Na/Spider's Bane Quest ~SETUP-UB.TP2~ #0 #6 // Restored Crooked Crane Inn ~SETUP-UB.TP2~ #0 #7 // Restored Encounters ~SETUP-UB.TP2~ #0 #8 // Artemis Entreri in Bodhi's Lair ~SETUP-UB.TP2~ #0 #9 // Corrected "Xzar's Creations" ~SETUP-UB.TP2~ #0 #10 // Restored Hell Minions, by SimDing0 ~SETUP-UB.TP2~ #0 #11 // Gorf the Squisher Fix, by Gebhard Blucher ~SETUP-UB.TP2~ #0 #12 // Item Restorations ~SETUP-UB.TP2~ #0 #13 // Yoshimo's Original Portrait ~SETUP-UB.TP2~ #0 #14 // Anomen's Original Portrait ~SETUP-UB.TP2~ #0 #15 // NPC Portrait Restorations ~SETUP-UB.TP2~ #0 #16 // Corrected BAMs and Scripts ~SETUP-UB.TP2~ #0 #17 // Corrected Character Names and Biographies ~SETUP-UB.TP2~ #0 #18 // Restored Minor Dialogs ~SETUP-UB.TP2~ #0 #19 // Restored Bhaalspawn Powers, by David Gaider ~SETUP-UB.TP2~ #0 #20 // Extended ToB Item Descriptions ~SETUP-UB.TP2~ #0 #21 // Throne of Bhaal Minor Restorations ~SETUP-UB.TP2~ #0 #22 // Justifier Kit ~SETUP-UB.TP2~ #0 #23 // Feralan Kit ~SETUP-UB.TP2~ #0 #24 // Sarevok's Remorse ~SETUP-VALHORN.TP2~ #0 #0 // Improved Horns of Valhalla v1.2 ~SETUP-ESERIES.TP2~ #0 #0 // eSeries v1.8 ~SETUP-GMINION.TP2~ #0 #0 // gMinion v1.8 ~SETUP-OVERSIGHT.TP2~ #0 #0 // Tougher Sendai (ToB Required) ~SETUP-OVERSIGHT.TP2~ #0 #1 // Alignment Correction ~SETUP-OVERSIGHT.TP2~ #0 #2 // Class Tweaks/Fixes ~SETUP-OVERSIGHT.TP2~ #0 #3 // Altered Spells ~SETUP-OVERSIGHT.TP2~ #0 #4 // Improved Continuity ~SETUP-OVERSIGHT.TP2~ #0 #5 // Cleric Kits ~SETUP-OVERSIGHT.TP2~ #0 #6 // Monk High Level Abilities ~SETUP-OVERSIGHT.TP2~ #0 #7 // Holy Liberator ~SETUP-D0TWEAK.TP2~ #0 #0 // Enhanced Goodberries ~SETUP-D0TWEAK.TP2~ #0 #1 // Corrected Summoned Demon Behaviour ~SETUP-D0TWEAK.TP2~ #0 #2 // Corrected Demon Animations ~SETUP-D0TWEAK.TP2~ #0 #3 // Reintroduce Dimension Door ~SETUP-D0TWEAK.TP2~ #0 #4 // Tweaked Weapon Enchantments ~SETUP-D0TWEAK.TP2~ #0 #5 // Additional Racial Enemies ~SETUP-D0TWEAK.TP2~ #0 #11 // Visual Ioun Stones ~SETUP-D0TWEAK.TP2~ #0 #13 // Kensai Ryu's Restored Drow Innate Abilities ~RR/SETUP-RR.TP2~ #0 #0 // Proper dual-wielding implementation for Thieves and Bards ~RR/SETUP-RR.TP2~ #0 #4 // Additional equipment for Thieves and Bards ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #60 // Weapon Animation Tweaks ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #70 // Icewind Dale Casting Graphics (Andyr) ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #110 // Icon Improvements ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #130 // Force All Dialogue to Pause Game ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #1040 // Improved Athkatlan City Guard ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #1080 // Add Bags of Holding ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #1150 // Shapeshifter Rebalancing ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #1170 // Bonus Merchants (Baldurdash) ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #1180 // Female Edwina ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #2151 // Wear Multiple Protection Items -> No Restrictions ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #2210 // True Grand Mastery (Baldurdash) ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #3080 // Unlimited Ammo Stacking ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #3090 // Unlimited Gem and Jewelry Stacking ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #3100 // Unlimited Potion Stacking ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #3110 // Unlimited Scroll Stacking ~BG2_TWEAKS/SETUP-BG2_TWEAKS.TP2~ #0 #3200 // Sellable Staffs, Clubs, and Slings (Icelus)
BigRob Posted August 4, 2007 Posted August 4, 2007 It's happened to me in the vanilla game long ago, or possibly with Baldurdash/Old G3 Tweaks installed. That being the case it may be something from one of the older fixes. I don't recall it making for any serious problems, except the fact that I had a spare blade.
Kulyok Posted August 4, 2007 Posted August 4, 2007 Yeah, I had the same stuff in the vanilla game. A variable is not closing somewhere, probably. What bothered me more, though, was that I identified the blade, then gave it to Githyanki, then killed them, and on their corpses, there was still an _unidentified_ blade, and I had to identify it all over again. Meh.
Bex Posted August 6, 2007 Posted August 6, 2007 I've seen this happen in so many games with so many different mod builds, I just ignore it every time. I don't think it used to happen before I got ToB, but that was a very long time ago, and I don't really trust my memory that far.
CamDawg Posted January 2, 2008 Posted January 2, 2008 I'm moving this to pending, as this whole sequence really needs to be reviewed. I've sailed away with Saemon, and when the cutscene starts, the screeen changes as it prompts the Saemon still back on the ship at the docks to speak, instead of the Saemon on the ship at sea.
Guest Guest Posted January 3, 2008 Posted January 3, 2008 I've sailed away with Saemon, and when the cutscene starts, the screeen changes as it prompts the Saemon still back on the ship at the docks to speak, instead of the Saemon on the ship at sea. I've had that happen when an over-eager area effect spell in the Desharik fight accidentally caught Saemon and turned him hostile just before Desharik died and the scene changed to the ship. I always found it funny to have hostile Saemon interject from back in Brynnlaw when Githyanki matters played out on the high seas. It never affected my play but it did confuse me a bit the first time it happened.
CamDawg Posted January 17, 2008 Posted January 17, 2008 OK, I'm so glad this is here because now I don't have to do it. Two variations from Roana's fixes--she changes Saemon's blade to droppable, and then changes GiveItemCreate to GiveItem. Net result of undroppable + GIC is the same as droppable + GI, so I left this pair of changes out. <<<<<<<<saemon.d // saemon brynnlaw -> sahuagin city sequence errors (8 changes) // see ppsaem3.dlg (x2), ppsailor.dlg, ar1600.bcs, cut41q.bcs, cut41zf.bcs, cut41zg.bcs, ppsaem2.bcs // last brynnlaw dialogue; destroyself() to avoid ar1600 saemon talking instead of ar1617 one ALTER_TRANS PPSAEM3 // file name BEGIN 70 END // state number (can be more than one) BEGIN 0 END // transition number (can be more than one) BEGIN // list of changes, see below for flags ACTION ~GiveItemCreate("misc8u",LastTalkedToBy,0,0,0) StartCutSceneMode() StartCutScene("Cut41q") Wait(1) DestroySelf()~ END // saemon brynnlaw -> sahuagin city sequence errors (8 changes) // see ppsaem3.dlg (x2), ppsailor.dlg, ar1600.bcs, cut41q.bcs, cut41zf.bcs, cut41zg.bcs, ppsaem2.bcs // give Saemon a true() trigger during gith attack ADD_STATE_TRIGGER PPSAEM3 59 ~Global("AsylumPlot","GLOBAL",81)~ // saemon brynnlaw -> sahuagin city sequence errors (8 changes) // see ppsaem3.dlg (x2), ppsailor.dlg, ar1600.bcs, cut41q.bcs, cut41zf.bcs, cut41zg.bcs, ppsaem2.bcs // if player talks to saemon during attack (saemon teleports away), then end dialogue here instead of handing to saemon EXTEND_BOTTOM PPSAILOR 1 IF ~Global("AsylumPlot","GLOBAL",200)~ THEN EXIT END >>>>>>>> COMPILE ~saemon.d~ So, two main dialogue changes. The first is the addition of a DestroySelf() to Saemon's last Brynnlaw dialogue, to prevent the engine from using this Saemon copy in the ensuing cutscenes. The other two changes give Saemon something to say if you talk to him during the Githyanki attack. PPSAILOR's change is to make sure he doesn't pass off dialogue to Saemon if this happens and he's already teleported away. // saemon brynnlaw -> sahuagin city sequence errors (8 changes) // see ppsaem3.dlg (x2), ppsailor.dlg, ar1600.bcs, cut41q.bcs, cut41zf.bcs, cut41zg.bcs, ppsaem2.bcs // add extra trigger so this won't fire twice COPY_EXISTING ~ar1600.bcs~ ~override~ DECOMPILE_BCS_TO_BAF REPLACE_TEXTUALLY ~Dead("ppright")~ ~GlobalLT("AsylumPlot","GLOBAL",78) Dead("ppright")~ COMPILE_BAF_TO_BCS BUT_ONLY_IF_IT_CHANGES This just makes sure the Brynnlaw area script doesn't try to fire Saemon's final Brynnlaw dialogue twice. // saemon brynnlaw -> sahuagin city sequence errors (8 changes) // see ppsaem3.dlg (x2), ppsailor.dlg, ar1600.bcs, cut41q.bcs, cut41zf.bcs, cut41zg.bcs, ppsaem2.bcs // many changes--clear actions, make uniterruptable, reorder textscreen, move saemon dialogue call here from ppsaem2.bcs COPY_EXISTING ~cut41q.bcs~ ~override~ DECOMPILE_BCS_TO_BAF REPLACE_TEXTUALLY ~CutSceneId(Player1)~ ~CutSceneId(Player1) ClearAllActions() SetInterrupt(FALSE)~ REPLACE_TEXTUALLY ~TextScreen("SCRTXT05")~ ~ActionOverride("ppsaem3",StartDialogueNoSet(Player1))~ REPLACE_TEXTUALLY ~MultiPlayerSync()~ ~MultiPlayerSync() TextScreen("SCRTXT05")~ REPLACE_TEXTUALLY ~Explore()~ ~Explore() SetInterrupt(TRUE)~ COMPILE_BAF_TO_BCS BUT_ONLY_IF_IT_CHANGES This is the initial cutscene after Saemon's final Brynnlaw dialogue that transfers the party to the ship in the ocean. It clears party actions (so their AI scripts won't interfere during the cutscene) and makes the player uninterruptable. Also moves the dialogue call from ppsaem2.bcs to the cutscene. The text screen order seems a bit cosmetic, but I'm more than willing to trust Roana here. // saemon brynnlaw -> sahuagin city sequence errors (8 changes) // see ppsaem3.dlg (x2), ppsailor.dlg, ar1600.bcs, cut41q.bcs, cut41zf.bcs, cut41zg.bcs, ppsaem2.bcs // clear actions, make uninterruptable COPY_EXISTING ~cut41zf.bcs~ ~override~ DECOMPILE_BCS_TO_BAF REPLACE_TEXTUALLY ~CutSceneId(Player1)~ ~CutSceneId(Player1) ClearAllActions() SetInterrupt(FALSE)~ REPLACE_TEXTUALLY ~SetGlobal("AttackedGith","GLOBAL",1)~ ~SetGlobal("AttackedGith","GLOBAL",1) SetInterrupt(TRUE)~ COMPILE_BAF_TO_BCS BUT_ONLY_IF_IT_CHANGES The cutscene where the Githyanki arrive; just clears the party actions again. // saemon brynnlaw -> sahuagin city sequence errors (8 changes) // see ppsaem3.dlg (x2), ppsailor.dlg, ar1600.bcs, cut41q.bcs, cut41zf.bcs, cut41zg.bcs, ppsaem2.bcs // add a bit more time for sahuagin attack COPY_EXISTING ~cut41zg.bcs~ ~override~ DECOMPILE_BCS_TO_BAF REPLACE_TEXTUALLY ~SetGlobalTimer("GithTimer1","GLOBAL",5)~ ~SetGlobalTimer("GithTimer1","GLOBAL",10)~ COMPILE_BAF_TO_BCS BUT_ONLY_IF_IT_CHANGES This gives a bit more time for a battle after the appearance of the Sahuagin. It's a nice touch, and it's been retained. // saemon brynnlaw -> sahuagin city sequence errors (8 changes) // see ppsaem3.dlg (x2), ppsailor.dlg, ar1600.bcs, cut41q.bcs, cut41zf.bcs, cut41zg.bcs, ppsaem2.bcs // false block for saemon initiating dialogue (moved to cut41q.bcs); add block to make saemon hostile if attacked COPY_EXISTING ~ppsaem2.bcs~ ~override~ DECOMPILE_BCS_TO_BAF REPLACE_TEXTUALLY ~Global("SaemInit1607","GLOBAL",0)~ ~False()~ APPEND_FILE ~bg2fixpack/baf/ppsaem2.baf~ COMPILE_BAF_TO_BCS BUT_ONLY_IF_IT_CHANGES So, two changes here. If you attack Saemon after the appearance of the Sahuagin, he goes hostile. Also, since a dialogue call has been moved to the cutscene script, one of the script blocks here is now redundant and gets False()d.
thewiseben Posted August 22, 2009 Posted August 22, 2009 My oh my this looks like a tough fix. I've tried to use the most recent patches and the g3 fixpack, but I still seem to be getting these errors. I'm kind of desperate to get into Sahuagin City to grab certain items... I don't think my party can handle certain lich-related encounters without it... Any ideas what a non-coding-savvy guy can do? I'm running BG with TOB installed on a Mac with OS X 10.5.8
Recommended Posts
Archived
This topic is now archived and is closed to further replies.