grogerson Posted October 30, 2007 Share Posted October 30, 2007 Converting BG2 Tweak Pack's Happy Patch for my BG1 Tweak Pack, I noticed some patching of .dlg files for BGT installs. This has me wondering. Who fights with whom? Jahera/Khalid v. Xzar/Montaron I know, but who else? What triggers the fights? Is it dialogue triggered or a result of "reputation unhappiness?" Patching the happy.2da to stop the complaining and leaving is simple, but I want to also stop the possible loss of party members when they try to kill each other. I've looked at several .dlg files and have only found one (Edwin) that actually has a fight trigger. Link to comment
cmorgan Posted October 30, 2007 Share Posted October 30, 2007 Well, we can guess from WizWom's Fight Fix... The only BG1NPC Project added fights I know of are ones where the party does something really against NPC Characterization. Off the top of my head, there are a set of banters with Ajantis/Viconia that if unresoplved escalate to fighting. Kivan and Viconia also at one point (if your banter cards play correctly, these are random) as well as Kagain vs Yeslick. If the party attacks Dynaheir or Drizzt instead of helping, Ajantis goes postal; I think Minsc does too. Vanilla behavior is Minsc/Dy vs Edwin, I think. The fixes that WW included were ACTION_IF FILE_EXISTS_IN_GAME ~FW0100.are~ THEN BEGIN /* WizWom's Tutu NPC Battle fix: TUTU only, not compatible with BGT scripts */ COPY_EXISTING ~%EDWIN_BCS%.bcs~ ~override~ ~%ELDOTH_BCS%.bcs~ ~override~ ~%SHARTEEL_BCS%.bcs~ ~override~ ~%JAHEIRA_BCS%.bcs~ ~override~ ~%KAGAIN_BCS%.bcs~ ~override~ ~%KHALID_BCS%.bcs~ ~override~ ~%KIVAN_BCS%.bcs~ ~override~ ~%MINSC_BCS%.bcs~ ~override~ ~%MONTARON_BCS%.bcs~ ~override~ ~%QUAYLE_BCS%.bcs~ ~override~ ~%TIAX_BCS%.bcs~ ~override~ ~%VICONIA_BCS%.bcs~ ~override~ ~%DYNAHEIR_BCS%.bcs~ ~override~ DECOMPILE_BCS_TO_BAF REPLACE_TEXTUALLY ~MakeUnselectable(5000)~ ~MakeUnselectable(6) Continue()~ COMPILE_BAF_TO_BCS BUT_ONLY_IF_IT_CHANGES END As far as I can remember, anything Project-added gives you multiple ways out - it is actually difficult to roleplay and trigger the fights, but certainly possible. Most are dialogue responses. Quick example: Kivan finally has it out with Viconia, in X#VICONIA.D: CHAIN IF WEIGHT #-1 ~CombatCounter(0) %BGT_VAR% InParty("kivan") Global("P#KIVI5","GLOBAL",1) Global("X#VIKI3","GLOBAL",0) !See([ENEMY]) See("kivan") InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) !StateCheck("kivan",CD_STATE_NOTVALID)~ THEN ~%VICONIA_BANTER%~ VIKI3 @219 DO ~SetGlobal("X#VIKI3","GLOBAL",1)~ == ~%KIVAN_BANTER%~ @220 = @221 == ~%VICONIA_BANTER%~ @222 == ~%KIVAN_BANTER%~ @223 END ~%VICONIA_JOINED%~ VIKI3PC This means it takes a number of random banters firing before the setup for the fight is complete; branches from here include reputation dependent leaving and joining for each party, an option to kickl them both out until they have resolved it, or even a shutdown so they don't fight (depending on how you respond). Link to comment
grogerson Posted October 31, 2007 Author Share Posted October 31, 2007 Thanks, cmorgan. Though your references are for BGT, and I'm working vanilla BG1, you got me thinking there might be other .dlg files than the [NPC].dlg, [NPC]J.dlg and [NPC]P.dlg files. Found it. B[NPC].dlg. Now all I need to do is find out who the fighters are, I can add Kivan and Viconia. Who else? I'll have to look at Kagain and Edwin as well... Edit: After looking through the B*.dlg files, I've found the following: Ajantis will attack (I assume) CHARNAME if reputation drops too far (Attack([0.0.0.0.0.0.MASK_EVIL])), Dynaheir goes after Edwin, Kagain tries to silence Yeslick, Kivan wants to bury Viconia, Montaron seeks Khalid's demise, Shar-Teel wants to behead Eldoth, Tiax seeks Branwen's Quayle's death, and Xzar seeks the blood of Jahera. All combats occur if the first hits state 5 in their B*.dlg, except for Dynaheir with Edwin. Seems she goes with both state 5 and 11... Finally, in Edwin.dlg, state 20, he attacks Dynaheir. Link to comment
cmorgan Posted October 31, 2007 Share Posted October 31, 2007 My stuff ids for EasyTutu/Tutu v4 using the cross platform variables so it works on BGT as well; glad it helped! Hard for me to figure out what was vanilla and what was peppermint, to mix my metaphors... Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.