cmorgan Posted February 28, 2009 Share Posted February 28, 2009 BG1NPC v16 to v17 Differences so we can check and see if something got fixed when we don't have an install to search Note to project code folks: If a difference shows up on the workroom chart but does not show up in this list, it is because it is a whitespace issue, like changing {space}{space}{space} to {space} or {space}{space} in dialog files, following the internal grammar/punctuation summary. Usually this stuff resides in a workroom, but -JW- and erebusant, Ascension64, a bunch of folks have suggested code, so this open post gives them a check on their own edited installs without them having to run the diffs. Regular playing folks, pay no attention - this mod has a long and complete history of working well with many installations. This is just a behind-the-scenes look at what modders do with player feedback and reports . diff w bg1npc.tp2 bg1npc.tp2 5c5 < * Version 16, May 15, 2008 --- > * Version 17, February, 2009 18c18 < VERSION ~v16~ --- > VERSION ~v17~ 91c91 < PATCH_IF !(~%ks%~ STRING_EQUAL ~fail~) THEN BEGIN --- > PATCH_IF (~%ks%~ STR_CMP ~fail~) THEN BEGIN 101c101 < PATCH_IF ((~%sm%~ STR_CMP ~fail~) AND (smc = 0x11)) THEN BEGIN --- > PATCH_IF ((~%sm%~ STR_CMP ~fail~) AND ("smc" = 0x11)) THEN BEGIN 117c117 < PATCH_IF !(~%ms%~ STRING_EQUAL ~fail~) THEN BEGIN --- > PATCH_IF (~%ms%~ STR_CMP ~fail~) THEN BEGIN 126c126 < PATCH_IF !(~%el%~ STRING_EQUAL ~fail~) THEN BEGIN --- > PATCH_IF (~%el%~ STR_CMP ~fail~) THEN BEGIN 135c135 < PATCH_IF !(~%il%~ STRING_EQUAL ~fail~) THEN BEGIN --- > PATCH_IF (~%il%~ STR_CMP ~fail~) THEN BEGIN 145c145 < PATCH_IF !(~%is%~ STRING_EQUAL ~fail~) THEN BEGIN --- > PATCH_IF (~%is%~ STR_CMP ~fail~) THEN BEGIN 154a155 > 1000c1001 < COMPILE ~BG1NPC/Core/dlg/X#JFIX_TUTU.D~ --- > COMPILE EVALUATE_BUFFER ~BG1NPC/Core/dlg/X#JFIX_TUTU.D~ 1049a1051,1058 > /* Stop Viconia's Potential Script Stutter on Tutu */ > /* scripts */ > COPY_EXISTING ~%tutu_var%VICONIA.bcs~ ~override~ > DECOMPILE_BCS_TO_BAF > REPLACE_TEXTUALLY CASE_INSENSITIVE ~See("flamingfist2")~ ~See("flamingfist2") !Dead("flamingfist2")~ > COMPILE_BAF_TO_BCS > BUT_ONLY_IF_IT_CHANGES > 1063c1072,1093 < /* Disabling Coran's old leaving timer, to be replaced by X#CORWYV.BAF */ --- > /* Set Tazok sprite back to living before last chapter, and move triggers to another variable other than Dead() */ > EXTEND_BOTTOM ~%Undercity_BCS%.bcs~ ~bg1npc/core/baf/x#tazokarea.baf~ > EVALUATE_BUFFER > > /* Create Coran's Wyverns */ > COPY_EXISTING ~%tutu_var%WYVERN.CRE~ ~override/X#CORWYV.CRE~ > WRITE_ASCII 0x280 ~X#CoranWyvern~ #32 > BUT_ONLY_IF_IT_CHANGES > > /* put them in the Cave */ > COPY_EXISTING ~%CloakwoodWyverns_WyvernCave%.ARE~ ~override~ > READ_LONG 0x54 actors_off > READ_SHORT 0x58 actors_num > FOR (i = 0; i < %actors_num%; i += 1) BEGIN > READ_ASCII (%actors_off% + %i% * 0x110 + 0x80) actor_resref > PATCH_IF !(%actor_resref% STRING_COMPARE_CASE "WYVERN") BEGIN > WRITE_ASCII (%actors_off% + %i% * 0x110 + 0x80) X#CORWYV (8) > END > END > BUT_ONLY_IF_IT_CHANGES > > /* Changing Coran's old leaving timer */ 1067c1097 < ~GlobalTimerExpired("Coran","GLOBAL")~ ~GlobalTimerExpired("Coran","GLOBAL") Global("X#CoranWyvernDisable","GLOBAL",1)~ --- > ~GlobalTimerExpired("Coran","GLOBAL")~ ~False()~ 1073a1104 > /* the remainder of Coran's fixes are in core/dlg under Tutu and BGT .d files */ 2274,2275d2304 < EXTEND_BOTTOM ~%EarthChamber_BCS%.bcs~ ~BG1NPC/Phase2/baf/P#FW0510.BAF~ //yes, it is correct < EVALUATE_BUFFER 2279a2309,2313 > /* -JW-'s Edwin vs Denak fix */ > /* http:// forums.gibberlings3.net/index.php?s=&showtopic=15516&view=findpost&p=133308 */ > > EXTEND_BOTTOM ~%SpiderWood_BCS%.bcs~ ~BG1NPC/Phase2/baf/JW#FW3000.BAF~ > 2349c2383 < --- > /* Edwin */ 2410c2444 < WRITE_ASCIIE 0x248 ~%tutu_scriptw%TASIGHT~ #8 // override script --- > WRITE_ASCIIE 0x248 ~x#tqbh~ #8 // override script 2430c2464 < WRITE_ASCIIE 0x248 ~%tutu_scriptw%TASIGHT~ #8 // override script --- > WRITE_ASCIIE 0x248 ~x#tqbh~ #8 // override script 2450c2484 < WRITE_ASCIIE 0x248 ~%tutu_scriptw%TASIGHT~ #8 // override script --- > WRITE_ASCIIE 0x248 ~x#tqbh~ #8 // override script 2470c2504 < WRITE_ASCIIE 0x248 ~%tutu_scriptw%TASIGHT~ #8 // override script --- > WRITE_ASCIIE 0x248 ~x#tqbh~ #8 // override script 2481a2516 > COMPILE ~BG1NPC/Phase2/baf/x#tqbh.baf~ 2483c2518 < /* area Scripts */ --- > /* area scripts */ 2606c2641 < WRITE_EVALUATED_ASCII 0x0268 ~%tutu_scriptw%TASIGHT~ #8 // Creature script - Default --- > WRITE_EVALUATED_ASCII 0x0268 ~%tutu_scriptw%TARSGT~ #8 // Creature script - Default 4169c4204 < /*scipts */ --- > /* scripts */ 4669a4705 > WRITE_ASCII 0x280 ~andarthe~ #32 // death variable 4790a4827 > /* Make sure this is last in Quest additions for Phase 2 */ 6096a6134,6135 > APPEND ~trigger.ids~ ~0x40da HaveSpellParty(I:Spell*Spell)~ UNLESS ~HaveSpellParty~ > 6157a6197,6201 > /* Add BG2 movie for Xan Romance Dialog to EasyTutu distributions */ > ACTION_IF FILE_EXISTS_IN_GAME ~FW0100.are~ THEN BEGIN > COPY ~BG1NPC/core/mve/flythr03.mve~ ~override~ > END > 6160a6205 > 6174,6175c6219,6223 < COPY ~BG1NPC/Phase3/CHALLENGE/itm/X#AJR1.ARE~ ~override~ < --- > ACTION_IF FILE_EXISTS_IN_GAME ~FW0100.are~ THEN BEGIN > COPY ~BG1NPC/Phase3/CHALLENGE/itm/x#ajr1.are~ ~override/x#ajr1.are~ > END ELSE BEGIN > COPY ~BG1NPC/Phase3/CHALLENGE/itm/x#ajr1_bgt.are~ ~override/x#ajr1.are~ > END 6177c6225,6226 < COPY ~BG1NPC/Phase3/CHALLENGE/itm/X#AJR1.ARE~ ~override/X#CH11.ARE~ --- > ACTION_IF FILE_EXISTS_IN_GAME ~FW0100.are~ THEN BEGIN > COPY ~BG1NPC/Phase3/CHALLENGE/itm/x#ajr1.ARE~ ~override/x#ch11.are~ 6178a6228,6231 > END ELSE BEGIN > COPY ~BG1NPC/Phase3/CHALLENGE/itm/x#ch11_bgt.are~ ~override/x#ch11.are~ > WRITE_ASCII 0x94 ~X#AR6001~ #8 > END 6754c6807 < /* Aree Scripts for spawning */ --- > /* Area Scripts for spawning */ diff w bg1npc/tra/english/bg1npc_tmp.tra bg1npc/tra/english/bg1npc_tmp.tra 59,60c59,60 < @17 = ~Imoen had created *this* by reading from Tarnish's Spellbook.~ < @18 = ~Imoen had created *this* by reading from Tarnish's Spellbook. She is quite proud of her accomplishement, even if nobody is quite sure what exactly it can do.~ --- > @17 = ~Imoen had created *this* by reading from Tarnesh's Spellbook.~ > @18 = ~Imoen had created *this* by reading from Tarnesh's Spellbook. She is quite proud of her accomplishment, even if nobody is quite sure what exactly it can do.~ diff w bg1npc/tra/spanish/bg1npc_tmp.tra bg1npc/tra/spanish/bg1npc_tmp.tra 84,85c84,85 < @17 = ~Imoen ha creado *esto* tras leer el libro de hechizos de Tarnish.~ < @18 = ~Imoen ha creado *esto* tras leer el libro de hechizos de Tarnish. Está muy orgullosa de su creación, aunque nadie sabe qué hace.~ --- > @17 = ~Imoen ha creado *esto* tras leer el libro de hechizos de Tarnesh.~ > @18 = ~Imoen ha creado *esto* tras leer el libro de hechizos de Tarnesh. Está muy orgullosa de su creación, aunque nadie sabe qué hace.~ diff w bg1npc/lib/g3_bgt_cpmvars.tpa bg1npc/lib/g3_bgt_cpmvars.tpa 723a724 > OUTER_SPRINT "Undercity_BCS" "AR7223" diff w bg1npc/lib/g3_tutu_cpmvars.tpa bg1npc/lib/g3_tutu_cpmvars.tpa 694c694 < OUTER_SPRINT "EarthChamber_BCS" "_AR0510" --- > OUTER_SPRINT "EarthChamber_BCS" "_AR0507" 718a719 > OUTER_SPRINT "Undercity_BCS" "_AR0123" diff w bg1npc/bg1npc_docs/kivansquest.html bg1npc/bg1npc_docs/kivansquest.html 38c38 < h r e f = " h t t p : //www.dudleyville.com/bg1/ar0900.htm" > h t t p ://www.dudleyville.com/bg1/ar0900.htm</a> ) --- > h r e f = " h t t p : //www.forgottenwars.com/bg1/ar0900.htm" > h t t p ://www.forgottenwars.com/bg1/ar0900.htm</a> ) 46c46 < h r e f = " h t t p : //www.dudleyville.com/bg1/ar3100.htm" > h t t p ://www.dudleyville.com/bg1/ar3100.htm</a> ), --- > h r e f = " h t t p : //www.forgottenwars.com/bg1/ar3100.htm" > h t t p ://www.forgottenwars.com/bg1/ar3100.htm</a> ), diff w bg1npc/phase3/brrom/dlg/p#brlt.d bg1npc/phase3/brrom/dlg/p#brlt.d 185,191c185,191 < ++ @73 DO ~IncrementGlobal("P#BRLoveTalk","GLOBAL",1) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.1 < ++ @74 DO ~IncrementGlobal("P#BRLoveTalk","GLOBAL",1) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.7 < + ~InParty("sharteel")~ + @75 DO ~IncrementGlobal("P#BRLoveTalk","GLOBAL",1) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.2 < + ~!InParty("sharteel")~ + @75 DO ~IncrementGlobal("P#BRLoveTalk","GLOBAL",1) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.3 < ++ @76 DO ~IncrementGlobal("P#BRLoveTalk","GLOBAL",1) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.4 < ++ @77 DO ~IncrementGlobal("P#BRLoveTalk","GLOBAL",1) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.5 < ++ @78 + P#BRLT3.12 --- > ++ @73 DO ~SetGlobal("P#BRLoveTalk","GLOBAL",7) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.1 > ++ @74 DO ~SetGlobal("P#BRLoveTalk","GLOBAL",7) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.7 > + ~InParty("sharteel")~ + @75 DO ~SetGlobal("P#BRLoveTalk","GLOBAL",7) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.2 > + ~!InParty("sharteel")~ + @75 DO ~SetGlobal("P#BRLoveTalk","GLOBAL",7) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.3 > ++ @76 DO ~SetGlobal("P#BRLoveTalk","GLOBAL",7) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.4 > ++ @77 DO ~SetGlobal("P#BRLoveTalk","GLOBAL",7) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.5 > ++ @78 DO ~SetGlobal("P#BRLoveTalk","GLOBAL",7) RealSetGlobalTimer("P#BRLoveTalkTime","GLOBAL",BRROM_TIMER)~ + P#BRLT3.12 diff w bg1npc/tra/english/p#brlt.tra bg1npc/tra/english/p#brlt.tra 72c72 < @71 = ~I would gladly have become a scald of virtue, to sing ballads and inspire heroes, but 'tis unfitting to hail two deities at once.~ --- > @71 = ~I would gladly have become a skald of virtue, to sing ballads and inspire heroes, but 'tis unfitting to hail two deities at once.~ diff w bg1npc/tra/english/p#ciflirt.tra bg1npc/tra/english/p#ciflirt.tra 77c77 < @76 = ~What a sight for sore eyes and aching heart! Do not turn away, sweetling, it'll give me a melancholy.~ --- > @76 = ~What a sight for sore eyes and aching heart! Do not turn away, sweetling, it'll give me a... a... melancholy.~ diff w bg1npc/phase3/corom/baf/p#cral.baf bg1npc/phase3/corom/baf/p#cral.baf 10a11,12 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) 23a26,27 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) diff w bg1npc/phase3/corom/baf/p#crel.baf bg1npc/phase3/corom/baf/p#crel.baf 9a10,11 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) 24a27,28 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) diff w bg1npc/phase3/corom/baf/p#crfa.baf bg1npc/phase3/corom/baf/p#crfa.baf 12a13,14 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) 22a25,26 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) diff w bg1npc/phase3/corom/baf/p#crim.baf bg1npc/phase3/corom/baf/p#crim.baf 6a7,8 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) 22a25,26 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) diff w bg1npc/phase3/corom/baf/p#crsh.baf bg1npc/phase3/corom/baf/p#crsh.baf 12a13,14 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) 25a28,29 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) diff w bg1npc/phase3/corom/baf/p#crvi.baf bg1npc/phase3/corom/baf/p#crvi.baf 10a11,12 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) diff w bg1npc/phase3/corom/baf/p#crxz.baf bg1npc/phase3/corom/baf/p#crxz.baf 9a10,11 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) 19a22,23 > InParty("coran") > !StateCheck("coran",CD_STATE_NOTVALID) diff w bg1npc/readme-bg1npc.html bg1npc/readme-bg1npc.html 26,27c26,27 < <strong>Version 16 - <a h r e f = " h t t p : //www.gibberlings3.net/downloads/#bg1npc">Check for the most recent version</a></strong> <br /> < <strong>Languages:</strong> English<br /> --- > <strong>Version 17 - <a h r e f = " h t t p : //www.gibberlings3.net/downloads/#bg1npc">Check for the most recent version</a></strong> <br /> > <strong>Languages:</strong> English, Spanish<br /> 98c98 < <p> For <acronym title="Baldur's Gate Trilogy">BGT</acronym>, a discussion of install order and a list of compatible mods can be found by checking <a h r e f = " h t t p : //forums.spellholdstudios.net/index.php?showtopic=8122&hl=">Spellhold Studios forums</a> and looking for specific install order recommendations. </p> --- > <p> For <acronym title="Baldur's Gate Trilogy">BGT</acronym>, a discussion of install order and a list of compatible mods can be found by checking <a h r e f = " h t t p : //www.shsforums.net/index.php?showtopic=19539">Spellhold Studios forums: compatibility</a> and looking for specific install order recommendations elsewhere on the forums, notably <a h r e f = " h t t p : //www.shsforums.net/index.php?showforum=193">Mega Mod Help</a> and projects like BiG World Project (BWP). Even if you are not playing a Mega Mod install, these are the places where people have experimented with install orders using BG1NPC on BGT games.</p> 202,203c202 < <p><strong>The <acronym title="Baldur's Gate">BG1</acronym> <acronym title="Non-Player Character">NPC</acronym> Project: < Cloakwood areas availability in Chapter One<br /> --- > <p><strong>The <acronym title="Baldur's Gate">BG1</acronym> <acronym title="Non-Player Character">NPC</acronym> Project: Cloakwood areas availability in Chapter One <br /> 205,207c204,213 < <p><strong>The <acronym title="Baldur's Gate">BG1</acronym> <acronym title="Non-Player Character">NPC</acronym> Sarevok's < Diary Adjustments <br /> < </strong>This component installs either SixofSpades' Expanded Sarevok Diary, or the original <acronym title="Baldur's Gate">BG1</acronym> <acronym title="Non-Player Character">NPC</acronym> Project version which merely changes the dates to fit the <acronym title="Baldur's Gate">BG</acronym> storyline more closely. It also sets each as a book instead of a scroll. Not installing either means that you have the original diary, flagged as a scroll, with no content changes.</p> --- > <p><strong>The <acronym title="Baldur's Gate">BG1</acronym> <acronym title="Non-Player Character">NPC</acronym> Sarevok's Diary Adjustments</strong> <br /> > This component installs either SixofSpades' Expanded Sarevok Diary, or the original <acronym title="Baldur's Gate">BG1</acronym> <acronym title="Non-Player Character">NPC</acronym> Project version.<br /> > SixofSpades' Expanded Sarevok Diary adds content rationalizing in-game events as closely to the storyline as he could, and incorporates entries that give depth to roleplayers. It also sets the diary to a book instead of a scroll. It is more a comprehensive change than Unfinished Business.<br /> > BG1NPC's original version changes the dates in the diary to fit the <acronym title="Baldur's Gate">BG</acronym> storyline more closely. It is less agressive a change than Unfinished Business' version. <br /> > Not installing either means that you have the original diary, flagged as a scroll, with no content changes.<br /> > In order of extent of changes, from least to most, between Unfinished business and BG1NPC:<br /> > vanilla with the game,<br /> > "slightly" restored (just correcting the dates) in BG1NPC regular<br /> > "Rationalized and Updated" in SixofSpades' UB component<br /> > "dates and characterizations and entries extended" in SixofSpades' BG1NPC component<br /></p> 278c284 < <p> As of March, 2008, none of the above items have shown incompatibility problems in testing with both Tutu and <acronym title="Baldur's Gate Trilogy">BGT</acronym> standard mods installed in the recommended orders from the forums.</p> --- > <p> As of February, 2009, none of the above items have shown incompatibility problems in testing with both Tutu and <acronym title="Baldur's Gate Trilogy">BGT</acronym> standard mods installed in the recommended orders from the forums.</p> 370a377 > <li>-JW-: troubleshooter, coder </li> 518a526 > <a h r e f = " h t t p : //dev.gibberlings3.net/"><acronym title="Weimer Dialogue Utility">WeiDU</acronym> NotePad++ Highlighters </a> by mike 1072 and cmorgan <br /> 561a570,610 > <p><strong>Version 17 - February 28, 2009</strong></p> > <ul> > <li>Nythrun's updated creature fixer</li> > <li>Viconia "I See Dead People" fix for Flaming Fist when first joining</li> > <li>Adjustment for Branwen Joining with a scalp alredy in inventory</li> > <li>Ascension64's Coran's Wyvern Fix replacement</li> > <li>Tarnish/Tarnesh agreement across project</li> > <li>Coran InParty checks missing from some romance dialogs un-missing'ed</li> > <li>IncrementGlobal moved to SetGlobal for troubleshooting in some of Branwen's dialogs</li> > <li>Removed duplicate code in Ajantis romance</li> > <li>Repaired Viconia/Faldorn responses within Tiax's Quest</li> > <li>Repaired Dynaheir's Quest journal entry</li> > <li>Placed global closiure higher up on Dynaheir's journal conflict with Edwin</li> > <li>Ajantis Bhaal Talk repaired </li> > <li>Edwin Unavailable for Dialog loophole closed on Dynaheir's quest</li> > <li>Adjustment for Branwen Joining with a scalp alredy in inventory: no commentary allowed in joining area</li> > <li>Ajantis/Kivan banter will not play if Tazok has already been killed </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15876&view=findpost&p=138061">Xan Multiple Interjections on Ice Island repaired </a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=16013&view=findpost&p=138076">Tutu: Jaheira and Khalid sharing same coordinates in Elfsong, et al repaired</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15985&view=findpost&p=138080">SAY@ instances repaired to SAY @</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15866&view=findpost&p=138084">Coran flirt sentence malformation repaired</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15864&view=findpost&p=138087">Xan: loved -> laughed repaired</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15826&view=findpost&p=138089">Xan: token and grammar repair</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15561&view=findpost&p=138097">Documentation: Dudleyville links updated to ForgottenWars, all instances, all documents</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15765&view=findpost&p=138114">Adjust Romance Challenge Areas for names of BGT versions of distributed .wed files on BGT, and Tutu ones on Tutu for areas X#CH[11,12,13,14] and X#AJR1</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15890&view=findpost&p=138322">Xan leaving due to reputation though you are bonded with him repaired</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15314&view=findpost&p=138316">Updated and clarified relationship of BG1NPC and UB Sarevok's Diary components in documentation</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=16119&view=findpost&p=138325">Repaired inconsistent coding with SAY~ and DO~ missing spaces for easier code searches</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15516&view=findpost&p=138335"> -JW-'s repairs to the Edwin Ambush</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?showtopic=15480&st=0&gopid=138416entry138416">Documentation update, BGT compatibility and install order links at Spellhold Studios</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15407&view=findpost&p=138418">Kagain Quest Journal entries reshuffled to remove any but the last seen as valid</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15367&view=findpost&p=138423">Jaheira now no longer banters about Khalid with Shar-Teel and Montaron unless he is in the party</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15053&view=findpost&p=138538">Xan Checking for HaveSpellParty in Romance but player has an SoA install </a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?s=&showtopic=15180&view=findpost&p=138549"> Tiax Quest reweighting and scripts tweaks </a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?showtopic=15525&st=0&gopid=138436entry138436">Coran Romance (Briel error) I_C_T moved to I_C_T2</a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?showtopic=16588">maretha, beador, and andarthe, part 17. </a> </li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?showtopic=16141">BG1NPC, SCS, and SCSII: Killing Tazok given SPRITE_IS_DEAD resurrection in Undercity</a></li> > <li><a h r e f = " h t t p : //forums.gibberlings3.net/index.php?showtopic=16710&pid=144499&st=0entry144499">Xan Romance talk missing movie call on EasyTutu repaired</a></li> > <li>Updated to WeiDU v210</li> > <li>Other minor documentation updates, typos, grammar, etc. (multiple) - if you want the full changelog, please visit the forums.</li> > </ul> diff w bg1npc/bg1npc_docs/tiaxsquest.html bg1npc/bg1npc_docs/tiaxsquest.html 31c31 < building. http://www.dudleyville.com/bg1/ar1200.htm</p> --- > building. http://www.forgottenwars.com/bg1/ar1200.htm</p> diff w bg1npc/lib/tutu_area_script_assign.tph bg1npc/lib/tutu_area_script_assign.tph 444a445,453 > COPY_EXISTING ~FW0507.ARE~ ~override~ // TotSC: Durlag's Tower: Ice Chamber > ~FW0508.ARE~ ~override~ // TotSC: Durlag's Tower: Fire Chamber > ~FW0509.ARE~ ~override~ // TotSC: Durlag's Tower: Air Chamber > ~FW0510.ARE~ ~override~ // TotSC: Durlag's Tower: Earth Chamber > WRITE_ASCII 0x94 ~_AR0507~ #8 // area script > BUT_ONLY_IF_IT_CHANGES > END > > ACTION_IF FILE_EXISTS_IN_GAME ~FW1500.are~ THEN BEGIN // if TotSC is installed 452,455d460 < ~FW0507.ARE~ ~override~ // TotSC: Durlag's Tower: Ice Chamber < ~FW0508.ARE~ ~override~ // TotSC: Durlag's Tower: Fire Chamber < ~FW0509.ARE~ ~override~ // TotSC: Durlag's Tower: Air Chamber < ~FW0510.ARE~ ~override~ // TotSC: Durlag's Tower: Earth Chamber diff w bg1npc/phase1/dlg/x#ajantis.d bg1npc/phase1/dlg/x#ajantis.d 220c220 < CHAIN IF WEIGHT #-1 ~%BGT_VAR% Global("X#AjKI1","LOCALS",0) CombatCounter(0) InParty("kivan") !See([ENEMY]) See("kivan") !StateCheck(Myself,CD_STATE_NOTVALID) !StateCheck("kivan",CD_STATE_NOTVALID)~ THEN ~%AJANTIS_BANTER%~ AJKI1 --- > CHAIN IF WEIGHT #-1 ~%BGT_VAR% Global("X#AjKI1","LOCALS",0) CombatCounter(0) InParty("kivan") !See([ENEMY]) See("kivan") !StateCheck(Myself,CD_STATE_NOTVALID) !StateCheck("kivan",CD_STATE_NOTVALID) !Dead("tazok")~ THEN ~%AJANTIS_BANTER%~ AJKI1 diff w bg1npc/phase3/ajrom/dlg/x#ajantisaddlts_pr_notosc.d bg1npc/phase3/ajrom/dlg/x#ajantisaddlts_pr_notosc.d 41,48d40 < /* if PC made unfriendly decisions */ < /* GlobalGT("X#AjantisRomanceBadDecision","GLOBAL",4) */ < IF WEIGHT #-2 ~%BGT_VAR% Global("X#AjantisRomanceTooManyBD","GLOBAL",1)~ THEN too_many_baddecisions < SAY @2 < IF ~!Global("X#AjantisRomanceActive","GLOBAL",1)~ THEN DO ~SetGlobal("X#AjantisRomanceTooManyBD","GLOBAL",2)~ EXIT < IF ~Global("X#AjantisRomanceActive","GLOBAL",1)~ THEN DO ~SetGlobal("X#AjantisRomanceActive","GLOBAL",3) SetGlobal("X#AjantisRomanceInsult","GLOBAL",1) SetGlobal("X#AjantisRomanceTooManyBD","GLOBAL",2)~ EXIT < END < diff w bg1npc/tra/english/x#ajantisbhaallts.tra bg1npc/tra/english/x#ajantisbhaallts.tra 1c1 < @0 = ~<CHARNAME>, You... You are an offspring of *Bhaal*, the Lord of Murder?! What a frightening discovery! What an accursed heritage!~ --- > @0 = ~<CHARNAME>, you... you are an offspring of *Bhaal*, the Lord of Murder?! What a frightening discovery! What an accursed heritage!~ diff w bg1npc/tra/english/x#ajantisdreamlts.tra bg1npc/tra/english/x#ajantisdreamlts.tra 15c15 < @14 = ~That is true, <CHARNANE>. It is no wonder these happenings are giving you bad dreams. You haven't been trained to fight and kill evil enemies threatening your life. Even defeating Mulahey did not bring us the victory we might have expected. It only gave us the knowledge that there might be a bigger organisation behind it...~ --- > @14 = ~That is true, <CHARNAME>. It is no wonder these happenings are giving you bad dreams. You haven't been trained to fight and kill evil enemies threatening your life. Even defeating Mulahey did not bring us the victory we might have expected. It only gave us the knowledge that there might be a bigger organisation behind it...~ diff w bg1npc/phase2/dlg/x#ajint.d bg1npc/phase2/dlg/x#ajint.d 821c821,822 < IF ~~ THEN + bhaalknow_22 --- > IF ~!Global("X#AjantisRomanceActive","GLOBAL",2)~ THEN + bhaalknow_26 > IF ~Global("X#AjantisRomanceActive","GLOBAL",2)~ THEN + bhaalknow_27 832c833,834 < IF ~~ THEN + bhaalknow_22 --- > IF ~!Global("X#AjantisRomanceActive","GLOBAL",2)~ THEN + bhaalknow_26 > IF ~Global("X#AjantisRomanceActive","GLOBAL",2)~ THEN + bhaalknow_27 835,842c837 < IF ~~ THEN BEGIN bhaalknow_22 < SAY @180 < + ~!Global("X#AjantisRomanceActive","GLOBAL",2)~ + @158 + bhaalknow_25 < + ~Global("X#AjantisRomanceActive","GLOBAL",2)~ + @158 + bhaalknow_29 < + ~!Global("X#AjantisRomanceActive","GLOBAL",2)~ + @159 + bhaalknow_25 < + ~Global("X#AjantisRomanceActive","GLOBAL",2)~ + @159 + bhaalknow_29 < ++ @160 + bhaalknow_16 < END --- > /* IF ~~ THEN BEGIN bhaalknow_22 taken out */ diff w bg1npc/tra/english/x#ajint.tra bg1npc/tra/english/x#ajint.tra 133c133 < @132 = ~<CHARNAME>, You... You are an offspring of *Bhaal*, the God of Murder?!~ --- > @132 = ~<CHARNAME>, you... you are an offspring of *Bhaal*, the God of Murder?!~ diff w bg1npc/phase2/baf/x#andart.baf bg1npc/phase2/baf/x#andart.baf 4d3 < Detect([PC]) 8d6 < !StateCheck(Player1,CD_STATE_NOTVALID) 20d17 < !StateCheck(Player1,CD_STATE_NOTVALID) 29d25 < Detect([PC]) 33d28 < !StateCheck(Player1,CD_STATE_NOTVALID) 45d39 < !StateCheck(Player1,CD_STATE_NOTVALID) 55a50,51 > StartCutSceneMode() > CutSceneId(Player1) 63a60 > EndCutSceneMode() diff w bg1npc/core/dlg/x#bgreplace_bgt.d bg1npc/core/dlg/x#bgreplace_bgt.d 0a1,9 > /* Amarande Remove Escape Area*/ > ALTER_TRANS ~%tutu_var%AMARAN~ > BEGIN 3 5 END > BEGIN 0 END > BEGIN > "ACTION" ~SetGlobal("X#RemovedEscape","GLOBAL",1)~ > END > > 132,133c141,142 < ADD_TRANS_TRIGGER BKHALI 3 ~Global("X#BIOKH1","LOCALS",0)~ < ADD_TRANS_TRIGGER BKHALI 8 ~Global("X#BIOKH2","LOCALS",0)~ --- > ADD_STATE_TRIGGER BKHALI 3 ~Global("X#BIOKH1","LOCALS",0)~ > ADD_STATE_TRIGGER BKHALI 8 ~Global("X#BIOKH2","LOCALS",0)~ 146,149c155,158 < ADD_TRANS_TRIGGER BJAHEIR %BGTBJAHEIState0% ~Global("X#BIOJA1","LOCALS",0)~ < ADD_TRANS_TRIGGER BJAHEIR %BGTBJAHEIState3% ~Global("X#BIOJA2","LOCALS",0)~ < ADD_TRANS_TRIGGER BJAHEIR %BGTBJAHEIState6% ~Global("X#BIOJA4","LOCALS",0)~ < ADD_TRANS_TRIGGER BJAHEIR %BGTBJAHEIState7% ~Global("X#BIOJA5","LOCALS",0)~ --- > ADD_STATE_TRIGGER BJAHEIR %BGTBJAHEIState0% ~Global("X#BIOJA1","LOCALS",0)~ > ADD_STATE_TRIGGER BJAHEIR %BGTBJAHEIState3% ~Global("X#BIOJA2","LOCALS",0)~ > ADD_STATE_TRIGGER BJAHEIR %BGTBJAHEIState6% ~Global("X#BIOJA4","LOCALS",0)~ > ADD_STATE_TRIGGER BJAHEIR %BGTBJAHEIState7% ~Global("X#BIOJA5","LOCALS",0)~ 162,167c171,176 < ADD_TRANS_TRIGGER BGARRI 0 ~Global("X#BIOGA1","LOCALS",0)~ < ADD_TRANS_TRIGGER BGARRI 1 ~Global("X#BIOGA2","LOCALS",0)~ < ADD_TRANS_TRIGGER BGARRI 4 ~Global("X#BIOGA3","LOCALS",0)~ < ADD_TRANS_TRIGGER BGARRI 5 ~Global("X#BIOGA4","LOCALS",0)~ < ADD_TRANS_TRIGGER BGARRI 6 ~Global("X#BIOGA5","LOCALS",0)~ < ADD_TRANS_TRIGGER BGARRI 7 ~Global("X#BIOGA6","LOCALS",0)~ --- > ADD_STATE_TRIGGER BGARRI 0 ~Global("X#BIOGA1","LOCALS",0)~ > ADD_STATE_TRIGGER BGARRI 1 ~Global("X#BIOGA2","LOCALS",0)~ > ADD_STATE_TRIGGER BGARRI 4 ~Global("X#BIOGA3","LOCALS",0)~ > ADD_STATE_TRIGGER BGARRI 5 ~Global("X#BIOGA4","LOCALS",0)~ > ADD_STATE_TRIGGER BGARRI 6 ~Global("X#BIOGA5","LOCALS",0)~ > ADD_STATE_TRIGGER BGARRI 7 ~Global("X#BIOGA6","LOCALS",0)~ 177,180c186,189 < ADD_TRANS_TRIGGER BFALDO 0 ~Global("X#BIOFA1","LOCALS",0)~ < ADD_TRANS_TRIGGER BFALDO 1 ~Global("X#BIOFA2","LOCALS",0)~ < ADD_TRANS_TRIGGER BFALDO 2 ~Global("X#BIOFA3","LOCALS",0)~ < ADD_TRANS_TRIGGER BFALDO 3 ~Global("X#BIOFA4","LOCALS",0)~ --- > ADD_STATE_TRIGGER BFALDO 0 ~Global("X#BIOFA1","LOCALS",0)~ > ADD_STATE_TRIGGER BFALDO 1 ~Global("X#BIOFA2","LOCALS",0)~ > ADD_STATE_TRIGGER BFALDO 2 ~Global("X#BIOFA3","LOCALS",0)~ > ADD_STATE_TRIGGER BFALDO 3 ~Global("X#BIOFA4","LOCALS",0)~ 203,204c212,213 < ADD_TRANS_TRIGGER BEDWIN %BGTBEDWINState3% ~Global("X#BIOED1","LOCALS",0)~ < ADD_TRANS_TRIGGER BEDWIN %BGTBEDWINState14% ~Global("X#BIOED2","LOCALS",0)~ --- > ADD_STATE_TRIGGER BEDWIN %BGTBEDWINState3% ~Global("X#BIOED1","LOCALS",0)~ > ADD_STATE_TRIGGER BEDWIN %BGTBEDWINState14% ~Global("X#BIOED2","LOCALS",0)~ 210,216c219,225 < ADD_TRANS_TRIGGER BDYNA 0 ~Global("X#BIODY1","LOCALS",0)~ < ADD_TRANS_TRIGGER BDYNA 5 ~Global("X#BIODY2","LOCALS",0)~ < ADD_TRANS_TRIGGER BDYNA 6 ~Global("X#BIODY3","LOCALS",0)~ < ADD_TRANS_TRIGGER BDYNA 7 ~Global("X#BIODY4","LOCALS",0)~ < ADD_TRANS_TRIGGER BDYNA 12 ~Global("X#BIODY5","LOCALS",0)~ < ADD_TRANS_TRIGGER BDYNA 15 ~Global("X#BIODY6","LOCALS",0)~ < ADD_TRANS_TRIGGER BDYNA 16 ~Global("X#BIODY7","LOCALS",0)~ --- > ADD_STATE_TRIGGER BDYNA 0 ~Global("X#BIODY1","LOCALS",0)~ > ADD_STATE_TRIGGER BDYNA 5 ~Global("X#BIODY2","LOCALS",0)~ > ADD_STATE_TRIGGER BDYNA 6 ~Global("X#BIODY3","LOCALS",0)~ > ADD_STATE_TRIGGER BDYNA 7 ~Global("X#BIODY4","LOCALS",0)~ > ADD_STATE_TRIGGER BDYNA 12 ~Global("X#BIODY5","LOCALS",0)~ > ADD_STATE_TRIGGER BDYNA 15 ~Global("X#BIODY6","LOCALS",0)~ > ADD_STATE_TRIGGER BDYNA 16 ~Global("X#BIODY7","LOCALS",0)~ 226a236,242 > > /*wyverns fix */ > REPLACE_TRIGGER_TEXT %CORAN_JOINED% ~!Dead("Wyvern")~ ~!Dead("X#CoranWyvern")~ > REPLACE_STATE_TRIGGER %CORAN_JOINED% 0 ~Dead("X#CoranWyvern") Global("CoranReward","GLOBAL",0) Global("wyvernp","GLOBAL",0) PartyHasItem("%tutu_var%MISC52")~ > > ADD_STATE_TRIGGER %tutu_var%KELDDA 6 ~Dead("X#CoranWyvern")~ > 250,251c266,267 < ADD_TRANS_TRIGGER BBRANW 0 ~Global("X#BIOBR1","LOCALS",0)~ < ADD_TRANS_TRIGGER BBRANW 1 ~Global("X#BIOBR2","LOCALS",0)~ --- > ADD_STATE_TRIGGER BBRANW 0 ~Global("X#BIOBR1","LOCALS",0)~ > ADD_STATE_TRIGGER BBRANW 1 ~Global("X#BIOBR2","LOCALS",0)~ 258,262c274,278 < ADD_TRANS_TRIGGER BAJANT 0 ~Global("X#BIOAJ1","LOCALS",0)~ < ADD_TRANS_TRIGGER BAJANT 1 ~Global("X#BIOAJ2","LOCALS",0)~ < ADD_TRANS_TRIGGER BAJANT 2 ~Global("X#BIOAJ3","LOCALS",0)~ < ADD_TRANS_TRIGGER BAJANT 3 ~Global("X#BIOAJ4","LOCALS",0)~ < ADD_TRANS_TRIGGER BAJANT 4 ~Global("X#BIOAJ5","LOCALS",0)~ --- > ADD_STATE_TRIGGER BAJANT 0 ~Global("X#BIOAJ1","LOCALS",0)~ > ADD_STATE_TRIGGER BAJANT 1 ~Global("X#BIOAJ2","LOCALS",0)~ > ADD_STATE_TRIGGER BAJANT 2 ~Global("X#BIOAJ3","LOCALS",0)~ > ADD_STATE_TRIGGER BAJANT 3 ~Global("X#BIOAJ4","LOCALS",0)~ > ADD_STATE_TRIGGER BAJANT 4 ~Global("X#BIOAJ5","LOCALS",0)~ 271,274c287,290 < ADD_TRANS_TRIGGER BALORA 0 ~Global("X#BIOAL1","LOCALS",0)~ < ADD_TRANS_TRIGGER BALORA 1 ~Global("X#BIOAL2","LOCALS",0)~ < ADD_TRANS_TRIGGER BALORA 3 ~Global("X#BIOAL3","LOCALS",0)~ < ADD_TRANS_TRIGGER BALORA 4 ~Global("X#BIOAL4","LOCALS",0)~ --- > ADD_STATE_TRIGGER BALORA 0 ~Global("X#BIOAL1","LOCALS",0)~ > ADD_STATE_TRIGGER BALORA 1 ~Global("X#BIOAL2","LOCALS",0)~ > ADD_STATE_TRIGGER BALORA 3 ~Global("X#BIOAL3","LOCALS",0)~ > ADD_STATE_TRIGGER BALORA 4 ~Global("X#BIOAL4","LOCALS",0)~ diff w bg1npc/core/dlg/x#bgreplace_tutu.d bg1npc/core/dlg/x#bgreplace_tutu.d 0a1,7 > /* Amarande Remove Escape Area*/ > ALTER_TRANS ~%tutu_var%AMARAN~ > BEGIN 3 5 END > BEGIN 0 END > BEGIN > "ACTION" ~SetGlobal("X#RemovedEscape","GLOBAL",1)~ > END 139,140c146,147 < ADD_TRANS_TRIGGER ~_BKHALI~ 3 ~Global("X#BIOKH1","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BKHALI~ 8 ~Global("X#BIOKH2","LOCALS",0)~ --- > ADD_STATE_TRIGGER ~_BKHALI~ 3 ~Global("X#BIOKH1","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BKHALI~ 8 ~Global("X#BIOKH2","LOCALS",0)~ 153,156c160,163 < ADD_TRANS_TRIGGER ~_BJAHEI~ 0 ~Global("X#BIOJA1","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BJAHEI~ 3 ~Global("X#BIOJA2","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BJAHEI~ 6 ~Global("X#BIOJA4","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BJAHEI~ 7 ~Global("X#BIOJA5","LOCALS",0)~ --- > ADD_STATE_TRIGGER ~_BJAHEI~ 0 ~Global("X#BIOJA1","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BJAHEI~ 3 ~Global("X#BIOJA2","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BJAHEI~ 6 ~Global("X#BIOJA4","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BJAHEI~ 7 ~Global("X#BIOJA5","LOCALS",0)~ 169,174c176,181 < ADD_TRANS_TRIGGER ~_BGARRI~ 0 ~Global("X#BIOGA1","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BGARRI~ 1 ~Global("X#BIOGA2","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BGARRI~ 4 ~Global("X#BIOGA3","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BGARRI~ 5 ~Global("X#BIOGA4","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BGARRI~ 6 ~Global("X#BIOGA5","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BGARRI~ 7 ~Global("X#BIOGA6","LOCALS",0)~ --- > ADD_STATE_TRIGGER ~_BGARRI~ 0 ~Global("X#BIOGA1","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BGARRI~ 1 ~Global("X#BIOGA2","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BGARRI~ 4 ~Global("X#BIOGA3","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BGARRI~ 5 ~Global("X#BIOGA4","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BGARRI~ 6 ~Global("X#BIOGA5","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BGARRI~ 7 ~Global("X#BIOGA6","LOCALS",0)~ 184,187c191,194 < ADD_TRANS_TRIGGER ~_BFALDO~ 0 ~Global("X#BIOFA1","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BFALDO~ 1 ~Global("X#BIOFA2","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BFALDO~ 2 ~Global("X#BIOFA3","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BFALDO~ 3 ~Global("X#BIOFA4","LOCALS",0)~ --- > ADD_STATE_TRIGGER ~_BFALDO~ 0 ~Global("X#BIOFA1","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BFALDO~ 1 ~Global("X#BIOFA2","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BFALDO~ 2 ~Global("X#BIOFA3","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BFALDO~ 3 ~Global("X#BIOFA4","LOCALS",0)~ 214,215c221,222 < ADD_TRANS_TRIGGER ~_BEDWIN~ 3 ~Global("X#BIOED1","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BEDWIN~ 14 ~Global("X#BIOED2","LOCALS",0)~ --- > ADD_STATE_TRIGGER ~_BEDWIN~ 3 ~Global("X#BIOED1","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BEDWIN~ 14 ~Global("X#BIOED2","LOCALS",0)~ 222,228c229,235 < ADD_TRANS_TRIGGER ~_BDYNAH~ 0 ~Global("X#BIODY1","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BDYNAH~ 5 ~Global("X#BIODY2","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BDYNAH~ 6 ~Global("X#BIODY3","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BDYNAH~ 7 ~Global("X#BIODY4","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BDYNAH~ 12 ~Global("X#BIODY5","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BDYNAH~ 15 ~Global("X#BIODY6","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BDYNAH~ 16 ~Global("X#BIODY7","LOCALS",0)~ --- > ADD_STATE_TRIGGER ~_BDYNAH~ 0 ~Global("X#BIODY1","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BDYNAH~ 5 ~Global("X#BIODY2","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BDYNAH~ 6 ~Global("X#BIODY3","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BDYNAH~ 7 ~Global("X#BIODY4","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BDYNAH~ 12 ~Global("X#BIODY5","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BDYNAH~ 15 ~Global("X#BIODY6","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BDYNAH~ 16 ~Global("X#BIODY7","LOCALS",0)~ 238a246,252 > > /*wyverns fix */ > REPLACE_TRIGGER_TEXT %CORAN_JOINED% ~!Dead("Wyvern")~ ~!Dead("X#CoranWyvern")~ > REPLACE_STATE_TRIGGER %CORAN_JOINED% 0 ~Dead("X#CoranWyvern") Global("CoranReward","GLOBAL",0) Global("wyvernp","GLOBAL",0) PartyHasItem("%tutu_var%MISC52")~ > > ADD_STATE_TRIGGER %tutu_var%KELDDA 6 ~Dead("X#CoranWyvern")~ > 262,263c276,277 < ADD_TRANS_TRIGGER ~_BBRANW~ 0 ~Global("X#BIOBR1","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BBRANW~ 1 ~Global("X#BIOBR2","LOCALS",0)~ --- > ADD_STATE_TRIGGER ~_BBRANW~ 0 ~Global("X#BIOBR1","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BBRANW~ 1 ~Global("X#BIOBR2","LOCALS",0)~ 270,274c284,288 < ADD_TRANS_TRIGGER ~_BAJANT~ 0 ~Global("X#BIOAJ1","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BAJANT~ 1 ~Global("X#BIOAJ2","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BAJANT~ 2 ~Global("X#BIOAJ3","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BAJANT~ 3 ~Global("X#BIOAJ4","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BAJANT~ 4 ~Global("X#BIOAJ5","LOCALS",0)~ --- > ADD_STATE_TRIGGER ~_BAJANT~ 0 ~Global("X#BIOAJ1","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BAJANT~ 1 ~Global("X#BIOAJ2","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BAJANT~ 2 ~Global("X#BIOAJ3","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BAJANT~ 3 ~Global("X#BIOAJ4","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BAJANT~ 4 ~Global("X#BIOAJ5","LOCALS",0)~ 283,286c297,300 < ADD_TRANS_TRIGGER ~_BALORA~ 0 ~Global("X#BIOAL1","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BALORA~ 1 ~Global("X#BIOAL2","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BALORA~ 3 ~Global("X#BIOAL3","LOCALS",0)~ < ADD_TRANS_TRIGGER ~_BALORA~ 4 ~Global("X#BIOAL4","LOCALS",0)~ --- > ADD_STATE_TRIGGER ~_BALORA~ 0 ~Global("X#BIOAL1","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BALORA~ 1 ~Global("X#BIOAL2","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BALORA~ 3 ~Global("X#BIOAL3","LOCALS",0)~ > ADD_STATE_TRIGGER ~_BALORA~ 4 ~Global("X#BIOAL4","LOCALS",0)~ diff w bg1npc/phase1/dlg/x#branw.d bg1npc/phase1/dlg/x#branw.d 154c154 < CHAIN IF WEIGHT #-1 ~%BGT_VAR% CombatCounter(0) InParty("edwin") Global("P#Branwen_Edwin1","LOCALS",0) !See([ENEMY]) See("edwin") !StateCheck(Myself,CD_STATE_NOTVALID) !StateCheck("edwin",CD_STATE_NOTVALID)~ THEN ~%BRANWEN_BANTER%~ Edwin1Chain --- > CHAIN IF WEIGHT #-1 ~%BGT_VAR% CombatCounter(0) InParty("edwin") Global("P#Branwen_Edwin1","LOCALS",0) !See([ENEMY]) See("edwin") !StateCheck(Myself,CD_STATE_NOTVALID) !StateCheck("edwin",CD_STATE_NOTVALID) LevelGT("edwin",4)~ THEN ~%BRANWEN_BANTER%~ Edwin1Chain diff w bg1npc/phase2/dlg/x#brint.d bg1npc/phase2/dlg/x#brint.d 27a28 > IF ~Global("X#JaheiraZeke","GLOBAL",1)~ THEN GOTO X#JaheiraHitZeke 34a36,41 > > IF ~~ X#JaheiraHitZeke > SAY @12 > IF ~~ THEN DO ~EscapeArea()~ EXIT > END > diff w bg1npc/tra/english/x#brint.tra bg1npc/tra/english/x#brint.tra 58c58 < @57 = ~Ah, there's nothing like the smell of fresh blood to bring a tingle to the nose and a smile to the face. Ugh, this one could have stood to have washed his hair once a tenday.~ --- > @57 = ~Ah, there's nothing like the smell of fresh blood to bring a tingle to the nose and a smile to the face. Scalps make good trophies. Ugh, this one could have stood to have washed his hair once a tenday.~ diff w bg1npc/phase2/baf/x#brint2.baf bg1npc/phase2/baf/x#brint2.baf 68a69 > !AreaCheck("%NashkelCarnival%") 83a85 > !AreaCheck("%NashkelCarnival%") diff w bg1npc/phase2/baf/x#coint2.baf bg1npc/phase2/baf/x#coint2.baf 224c224 < /* Initiate: Coran, Coran, Entry to Durlag’s Tower */ --- > /* Initiate: Coran, Entry to Durlag’s Tower */ diff w bg1npc/phase1/baf/x#coran1.baf bg1npc/phase1/baf/x#coran1.baf 460c460 < /* Wyvern head */ --- > /* Wyvern head friendtalk */ 461a462 > Dead("X#CoranWyvern") 463a465 > Global("wyvernp","GLOBAL",0) diff w bg1npc/tra/english/x#coran1.tra bg1npc/tra/english/x#coran1.tra 1c1 < @0 = ~Coran had set aside money for child support~ --- > @0 = ~Coran had money set aside for child support~ diff w bg1npc/core/baf/x#corwyv.baf bg1npc/core/baf/x#corwyv.baf 0a1,2 > /* Restored Stock Coran Response to Killing Wyvern */ > /* closed by vanilla dialog, setting Global("CoranReward","GLOBAL",1) */ 1a4,26 > Dead("X#CoranWyvern") > Global("CoranReward","GLOBAL",0) > Global("wyvernp","GLOBAL",0) > PartyHasItem("%tutu_var%MISC52") > InParty(Myself) > CombatCounter(0) > !See([ENEMY]) > InMyArea(Player1) > !StateCheck(Player1,CD_STATE_NOTVALID) > !StateCheck(Myself,CD_STATE_NOTVALID) > THEN > RESPONSE #100 > Dialogue([PC]) > END > > /* Coran Warned Second Time Only If Not Romanced */ > IF %BGT_VAR% > Global("X#CoranWyvernWarning1","GLOBAL",1) > !Dead("X#CoranWyvern") > GlobalTimerExpired("coran","GLOBAL") > Global("X#CoranWyvernWarning2","GLOBAL",0) > Global("CoranReward","GLOBAL",0) > Global("wyvernp","GLOBAL",0) 5d29 < GlobalTimerExpired("coran","GLOBAL") 7,9c31,35 < !Dead("wyvern") < Global("X#CoranWyvernWarning1","GLOBAL",0) < Global("P#CoranWyvern","GLOBAL",0) --- > CombatCounter(0) > !See([ENEMY]) > InMyArea(Player1) > !StateCheck(Player1,CD_STATE_NOTVALID) > !StateCheck(Myself,CD_STATE_NOTVALID) 12,13c38 < SetGlobal("X#CoranWyvernWarning1","GLOBAL",1) < SetGlobal("P#CoranWyvern","GLOBAL",1) --- > SetGlobal("X#CoranWyvernWarning2","GLOBAL",1) 16a42 > /* Coran Warned Only If Not Romanced First Time */ 17a44,48 > !Dead("X#CoranWyvern") > GlobalTimerExpired("coran","GLOBAL") > Global("X#CoranWyvernWarning1","GLOBAL",0) > Global("CoranReward","GLOBAL",0) > Global("wyvernp","GLOBAL",0) 21d51 < GlobalTimerExpired("coran","GLOBAL") 23,25c53,57 < !Dead("wyvern") < Global("X#CoranWyvernWarning2","GLOBAL",0) < Global("P#CoranWyvern","GLOBAL",1) --- > CombatCounter(0) > !See([ENEMY]) > InMyArea(Player1) > !StateCheck(Player1,CD_STATE_NOTVALID) > !StateCheck(Myself,CD_STATE_NOTVALID) 28c60,61 < SetGlobal("X#CoranWyvernWarning2","GLOBAL",1) --- > SetGlobal("X#CoranWyvernWarning1","GLOBAL",1) > SetGlobal("P#CoranWyvern","GLOBAL",1) 30a64,65 > > diff w bg1npc/phase2/dlg/x#cosqu.d bg1npc/phase2/dlg/x#cosqu.d 337c337 < IF ~~ THEN DO ~TakePartyItem("X#CODYE1") TakePartyItem("X#CODYE2") SetGlobal("X#CoranSuccubus","GLOBAL",15) ActionOverride("coran",EscapeArea()) GiveItemCreate("X#COAMUL",Player1,1,0,0) EscapeArea() ActionOverride("natan",EscapeArea()) AddexperienceParty(8000)~ EXIT --- > IF ~~ THEN DO ~StartCutSceneMode() TakePartyItem("X#CODYE1") TakePartyItem("X#CODYE2") SetGlobal("X#CoranSuccubus","GLOBAL",15) ActionOverride("coran",EscapeArea()) GiveItemCreate("X#COAMUL",Player1,1,0,0) EscapeArea() ActionOverride("natan",EscapeArea()) AddexperienceParty(6400) EndCutSceneMode()~ EXIT 342c342 < IF ~~ THEN DO ~TakePartyItem("X#CODYE1") TakePartyItem("X#CODYE2") SetGlobal("X#CoranSuccubus","GLOBAL",16) GiveItemCreate("X#COAMUL",Player1,1,0,0) EscapeArea() AddexperienceParty(8000)~ EXIT --- > IF ~~ THEN DO ~StartCutSceneMode() TakePartyItem("X#CODYE1") TakePartyItem("X#CODYE2") SetGlobal("X#CoranSuccubus","GLOBAL",16) GiveItemCreate("X#COAMUL",Player1,1,0,0) EscapeArea() AddexperienceParty(6400) EndCutSceneMode()~ EXIT 369c369 < IF ~~ THEN DO ~TakePartyItem("X#CODYE1") TakePartyItem("X#CODYE2") SetGlobal("X#CoranSuccubus","GLOBAL",15) ActionOverride("coran",LeaveParty()) ActionOverride("coran",SetLeavePartyDialogFile()) ActionOverride("coran",ChangeAIScript("",DEFAULT)) EscapeArea() ActionOverride("coran",EscapeArea()) ActionOverride("natan",EscapeArea()) AddexperienceParty(8000)~ --- > IF ~~ THEN DO ~StartCutSceneMode() TakePartyItem("X#CODYE1") TakePartyItem("X#CODYE2") SetGlobal("X#CoranSuccubus","GLOBAL",15) ActionOverride("coran",LeaveParty()) ActionOverride("coran",SetLeavePartyDialogFile()) ActionOverride("coran",ChangeAIScript("",DEFAULT)) EscapeArea() ActionOverride("coran",EscapeArea()) ActionOverride("natan",EscapeArea()) AddexperienceParty(6400) EndCutSceneMode()~ 380c380 < IF ~~ THEN DO ~TakePartyItem("X#CODYE1") TakePartyItem("X#CODYE2") SetGlobal("X#CoranSuccubus","GLOBAL",16) GiveItemCreate("X#COAMUL",Player1,1,0,0) EscapeArea() AddexperienceParty(8000)~ --- > IF ~~ THEN DO ~StartCutSceneMode() TakePartyItem("X#CODYE1") TakePartyItem("X#CODYE2") SetGlobal("X#CoranSuccubus","GLOBAL",16) GiveItemCreate("X#COAMUL",Player1,1,0,0) EscapeArea() AddexperienceParty(6400) EndCutScenemode()~ 439c439 < IF ~~ THEN DO ~SetGlobal("X#CoranSuccubus","GLOBAL",12) GiveItemCreate("X#COAMUL",Player1,1,0,0) EscapeArea() ActionOverride("natan",DestroySelf()) AddexperienceParty(8000)~ --- > IF ~~ THEN DO ~SetGlobal("X#CoranSuccubus","GLOBAL",12) GiveItemCreate("X#COAMUL",Player1,1,0,0) EscapeArea() ActionOverride("natan",DestroySelf()) AddexperienceParty(6400)~ 457c457 < IF ~~ THEN DO ~SetGlobal("X#CoranSuccubus","GLOBAL",12) GiveItemCreate("X#COAMUL",Player1,1,0,0) EscapeArea() ActionOverride("natan",DestroySelf()) AddexperienceParty(8000)~ --- > IF ~~ THEN DO ~SetGlobal("X#CoranSuccubus","GLOBAL",12) GiveItemCreate("X#COAMUL",Player1,1,0,0) EscapeArea() ActionOverride("natan",DestroySelf()) AddexperienceParty(6400)~ diff w bg1npc/phase2/baf/x#dynaquest.baf bg1npc/phase2/baf/x#dynaquest.baf 264c264 < !Dead("edwin") --- > !StateCheck("edwin",CD_STATE_NOTVALID) 291c291 < !Dead("edwin") --- > !StateCheck("edwin",CD_STATE_NOTVALID) diff w bg1npc/phase2/dlg/x#dynaquest.d bg1npc/phase2/dlg/x#dynaquest.d 20,22c20,22 < ++ @2 DO ~AddJournalEntry(@225,QUEST)~ EXIT < ++ @3 DO ~AddJournalEntry(@225,QUEST)~ EXIT < ++ @4 DO ~AddJournalEntry(@225,QUEST)~ EXIT --- > ++ @2 DO ~AddJournalEntry(@223,QUEST)~ EXIT > ++ @3 DO ~AddJournalEntry(@223,QUEST)~ EXIT > ++ @4 DO ~AddJournalEntry(@223,QUEST)~ EXIT 340,341c340,341 < @121 < == ~%EDWIN_BANTER%~ @122 DO ~SetGlobal("X#EdwinReturnsDyJournal","GLOBAL",2)~ EXIT --- > @121 DO ~SetGlobal("X#EdwinReturnsDyJournal","GLOBAL",2)~ > == ~%EDWIN_BANTER%~ @122 EXIT 345c345 < @123 --- > @123 DO ~SetGlobal("X#EdwinStealsDyJournal","GLOBAL",2)~ 351c351 < == ~%EDWIN_BANTER%~ @129 DO ~SetGlobal("X#EdwinStealsDyJournal","GLOBAL",2)~ EXIT --- > == ~%EDWIN_BANTER%~ IF ~InParty("edwin") InMyArea("edwin") !StateCheck("edwin",CD_STATE_NOTVALID)~ THEN @129 EXIT diff w bg1npc/tra/english/x#dyronpc.tra bg1npc/tra/english/x#dyronpc.tra 262c262 < @261 = ~Dost thou imply that mine interest in <CHARNMAE> fuels thine and vice versa?~ --- > @261 = ~Dost thou imply that mine interest in <CHARNAME> fuels thine and vice versa?~ diff w bg1npc/phase2/dlg/x#edint.d bg1npc/phase2/dlg/x#edint.d 17,67c17,20 < INTERJECT ~%tutu_var%DENAK~ 0 X#EdwinAllies < == ~%tutu_var%EDWIN~ IF ~Global("X#EdwinReturn","GLOBAL",1) !InParty("edwin") See("denak")~ THEN < @1 < END < IF ~~ THEN DO ~SetGlobal("X#EdwinReturn","GLOBAL",2) < ActionOverride("denak",Enemy()) < ActionOverride("brendan",Enemy()) < ActionOverride("lasala",Enemy()) < ActionOverride("diana",Enemy()) < ActionOverride("edwin",Enemy())~ EXIT < < APPEND ~%tutu_var%EDWIN~ < < IF WEIGHT #-2 ~%BGT_VAR% Global("X#EdwinReturn","GLOBAL",1) !InParty("edwin")~ EdwinUnhappy < SAY @2 < IF ~~ THEN DO ~ < SetGlobal("X#EdwinReturn","GLOBAL",2) < CreateCreature("%tutu_var%FGOLEM",[-1.-1],0) < CreateCreature("%tutu_var%FGOLEM",[-1.-1],0) < ActionOverride("denak",Enemy()) < ActionOverride("brendan",Enemy()) < ActionOverride("lasala",Enemy()) < ActionOverride("diana",Enemy()) < Enemy()~ EXIT < END < < END < < APPEND ~%EDWIN_POST%~ < < IF WEIGHT #-2 ~%BGT_VAR% Global("X#EdwinReturn","GLOBAL",1) !InParty("edwin")~ EdwinUnhappy < SAY @2 < IF ~~ THEN DO ~ < SetGlobal("X#EdwinReturn","GLOBAL",2) < CreateCreature("%tutu_var%FGOLEM",[-1.-1],0) < CreateCreature("%tutu_var%FGOLEM",[-1.-1],0) < ActionOverride("denak",Enemy()) < ActionOverride("brendan",Enemy()) < ActionOverride("lasala",Enemy()) < ActionOverride("diana",Enemy()) < Enemy()~ EXIT < END < < END < < APPEND ~%tutu_var%DENAK~ < < IF WEIGHT #-2 ~GlobalGT("X#EdwinReturn","GLOBAL",0)~ EdwinDeath < SAY @3 < IF ~~ THEN DO ~SetGlobal("X#EdwinReturn","GLOBAL",3) < ActionOverride("denak",Enemy()) --- > /* Edwin and Denak, -JW-'s recode */ > CHAIN IF WEIGHT #-2 ~%BGT_VAR% GlobalGT("X#EdwinReturn","GLOBAL",0)~ THEN ~%tutu_var%DENAK~ X#EdwinAllies1 > @3 > DO ~ActionOverride("denak",Enemy()) 72,75c25,32 < Enemy()~ EXIT < END < < END --- > SetGlobal("X#EdwinReturn","GLOBAL",3)~ > == ~%EDWIN_POST%~ IF ~Global("X#EdwinReturn","GLOBAL",1) !Dead("Edwin") !InParty("edwin") !StateCheck("edwin",CD_STATE_NOTVALID) See("denak")~ THEN @1 > DO ~SetGlobal("X#EdwinReturn","GLOBAL",3)~ > == ~%EDWIN_POST%~ IF ~Global("X#EdwinReturn","GLOBAL",2) !Dead("Edwin") !InParty("edwin") !StateCheck("edwin",CD_STATE_NOTVALID) See("denak")~ THEN @2 > DO ~SetGlobal("X#EdwinReturn","GLOBAL",3) > CreateCreature("%tutu_var%FGOLEM",[-1.-1],0) > CreateCreature("%tutu_var%FGOLEM",[-1.-1],0)~ > EXIT diff w bg1npc/phase2/baf/x#edint2.baf bg1npc/phase2/baf/x#edint2.baf 53c53 < /* Edwin Goes to RW randezvous */ --- > /* Edwin Goes to RW rondezvous */ 58a59 > SetGlobalTimer("JW#Edwin","GLOBAL",28800) //four days diff w bg1npc/phase2/dlg/x#faint.d bg1npc/phase2/dlg/x#faint.d 294a295,300 > /* Faldorn Amarande with report but Jaheira Quest pretty much done */ > CHAIN IF WEIGHT #-1 ~%BGT_VAR% InParty("faldorn") InMyArea("faldorn") !StateCheck("faldorn",CD_STATE_NOTVALID) GlobalGT("X#JaheiraQuest","GLOBAL",0) GlobalGT("X#AmarantheAndarthe","GLOBAL",0) Global("X#ReportAmarande","GLOBAL",1) Global("FLOODED","GLOBAL",0)~ > THEN ~%tutu_var%AMARAN~ AmaranFaldLoopMine2 > @65 > == ~%FALDORN_BANTER%~ @63 > EXIT 297c303 < CHAIN IF WEIGHT #-3 ~%BGT_VAR% Global("X#ReportAmarande","GLOBAL",1) OR(2) Global("FLOODED","GLOBAL",1) Global("FLOODED","GLOBAL",2) InParty("faldorn")~ --- > CHAIN IF WEIGHT #-3 ~%BGT_VAR% Global("X#ReportAmarande","GLOBAL",1) OR(2) Global("FLOODED","GLOBAL",1) Global("FLOODED","GLOBAL",2) InParty("faldorn") InMyArea("faldorn") !StateCheck("faldorn",CD_STATE_NOTVALID)~ diff w bg1npc/tra/english/x#ict3.tra bg1npc/tra/english/x#ict3.tra 858c858 < @853 = ~<CHARNAME>, the one who mingles in slaves' affairs is lowering <PRO_HIMHER>self to their shameful station.~ --- > @853 = ~<CHARNAME>, the one who mingles in slavers' affairs is lowering <PRO_HIMHER>self to their shameful station.~ diff w bg1npc/phase1/dlg/x#jaheira.d bg1npc/phase1/dlg/x#jaheira.d 429c429 < CHAIN IF WEIGHT #-1 ~%BGT_VAR% CombatCounter(0) InParty("montaron") Global("X#JAMO1","LOCALS",0) !See([ENEMY]) See("montaron") !StateCheck("montaron",CD_STATE_NOTVALID) !StateCheck(Myself,CD_STATE_NOTVALID)~ THEN ~%JAHEIRA_BANTER%~ JAMO1 --- > CHAIN IF WEIGHT #-1 ~%BGT_VAR% CombatCounter(0) InParty("khalid") InParty("montaron") Global("X#JAMO1","LOCALS",0) !See([ENEMY]) See("montaron") !StateCheck("montaron",CD_STATE_NOTVALID) !StateCheck(Myself,CD_STATE_NOTVALID)~ THEN ~%JAHEIRA_BANTER%~ JAMO1 diff w bg1npc/phase2/dlg/x#jaint.d bg1npc/phase2/dlg/x#jaint.d 378c378 < I_C_T ~%tutu_var%BRIELB~ 14 X#JaheiraBrielbara --- > I_C_T2 ~%tutu_var%BRIELB~ 14 X#JaheiraBrielbara diff w bg1npc/phase2/dlg/x#jaqu.d bg1npc/phase2/dlg/x#jaqu.d 244a245,256 > /* Faldorn Amarande fix */ > CHAIN IF WEIGHT #-1 ~%BGT_VAR% InParty("faldorn") InMyArea("faldorn") !StateCheck("faldorn",CD_STATE_NOTVALID) GlobalGT("X#JaheiraQuest","GLOBAL",0) Global("X#ReportAmarande","GLOBAL",0) Global("FLOODED","GLOBAL",0)~ > THEN ~%tutu_var%AMARAN~ AmaranFaldLoopMine1 > @155 > == ~%JAHEIRA_JOINED%~ IF ~InParty("jaheira") InMyArea("jaheira") !StateCheck("jaheira",CD_STATE_NOTVALID) OR(2) Global("X#MarethaResBeadAlive","GLOBAL",2) Global("X#MarethaResBeadDead","GLOBAL",2)~ THEN @151 > == ~%FALDORN_JOINED%~ IF ~InParty("faldorn") InMyArea("faldorn") !StateCheck("faldorn",CD_STATE_NOTVALID)~ THEN @152 > == ~%tutu_var%AMARAN~ IF ~InParty("faldorn") InMyArea("faldorn") !StateCheck("faldorn",CD_STATE_NOTVALID)~ THEN @153 > == ~%FALDORN_JOINED%~ IF ~InParty("faldorn") InMyArea("faldorn") !StateCheck("faldorn",CD_STATE_NOTVALID)~ THEN @154 > == ~%tutu_var%AMARAN~ IF ~InParty("faldorn") InMyArea("faldorn") !StateCheck("faldorn",CD_STATE_NOTVALID)~ THEN @157 > DO ~SetGlobal("X#ReportAmarande","GLOBAL",1) SetGlobal("X#AmarantheAndarthe","GLOBAL",2)~ > EXIT > 246c258 < @157 DO ~SetGlobal("X#AmarantheAndarthe","GLOBAL",2) EscapeArea()~ --- > @157 DO ~SetGlobal("X#AmarantheAndarthe","GLOBAL",2)~ 248c260 < /* End result has no effect on Quest - if quest is in progress and Faldorn is there, he goes away. If not, he fights. If Party has encountered Maretha, he takes it into account. */ --- > /* End result has no effect on Quest - if quest is in progress and Faldorn is there, he stays put. If not, he fights. If Party has encountered Maretha, he takes it into account. */ 322c334 < IF ~~ THEN DO ~ActionOverride("jadruid6a",Enemy()) ActionOverride("jadruid6b",Enemy()) ActionOverride("jadruid6",Enemy()) ActionOverride("jadruid8a",Enemy()) ActionOverride("jadruid8b",Enemy()) ActionOverride("jadruid8b",Attack("beador"))~ EXIT --- > IF ~~ THEN DO ~StartCutSceneMode() CutSceneId(Player1) ActionOverride("jadruid6a",Enemy()) ActionOverride("jadruid6b",Enemy()) ActionOverride("jadruid6",Enemy()) ActionOverride("jadruid8a",Enemy()) ActionOverride("jadruid8b",Enemy()) ActionOverride("jadruid8b",Attack("beador")) EndCutSceneMode()~ EXIT 327c339 < IF ~~ THEN DO ~ActionOverride("jadruid6a",Enemy()) ActionOverride("jadruid6b",Enemy()) ActionOverride("jadruid6",Enemy()) ActionOverride("jadruid8a",Enemy()) ActionOverride("jadruid8b",Enemy()) ActionOverride("jadruid8b",Attack("beador"))~ EXIT --- > IF ~~ THEN DO ~StartCutSceneMode() CutSceneId(Player1) ActionOverride("jadruid6a",Enemy()) ActionOverride("jadruid6b",Enemy()) ActionOverride("jadruid6",Enemy()) ActionOverride("jadruid8a",Enemy()) ActionOverride("jadruid8b",Enemy()) ActionOverride("jadruid8b",Attack("beador")) EndCutSceneMode()~ EXIT 332c344 < IF ~~ THEN DO ~ActionOverride("faldorn",LeaveParty()) ActionOverride("faldorn",Enemy()) ActionOverride("jadruid6a",Enemy()) ActionOverride("jadruid6b",Enemy()) ActionOverride("jadruid6",Enemy()) ActionOverride("jadruid8a",Enemy()) ActionOverride("jadruid8b",Enemy()) ActionOverride("jadruid8b",Attack("beador"))~ EXIT --- > IF ~~ THEN DO ~StartCutSceneMode() CutSceneId(Player1) ActionOverride("faldorn",LeaveParty()) ActionOverride("faldorn",Enemy()) ActionOverride("jadruid6a",Enemy()) ActionOverride("jadruid6b",Enemy()) ActionOverride("jadruid6",Enemy()) ActionOverride("jadruid8a",Enemy()) ActionOverride("jadruid8b",Enemy()) ActionOverride("jadruid8b",Attack("beador")) EndCutSceneMode()~ EXIT 464c476 < IF ~~ THEN DO ~ActionOverride("andarthe",JumpToPoint([874.2175])) ActionOverride("andarthe",FaceObject(Player1)) ActionOverride("andarthe",Enemy()) ActionOverride("jadruid8a",Enemy()) ActionOverride("takiyah",Enemy()) CreateCreature("%tutu_scriptbg%WOLFDR",[-1.-1],0) CreateCreature("%tutu_scriptbg%WOLFDR",[-1.-1],0)~ EXIT --- > IF ~~ THEN DO ~SetGlobal("X#JaheiraQuestAAttack","GLOBAL",1)~ EXIT 469c481 < IF ~~ THEN DO ~ActionOverride("andarthe",JumpToPoint([874.2175])) ActionOverride("andarthe",FaceObject(Player1)) ActionOverride("andarthe",Enemy()) ActionOverride("jadruid8a",Enemy()) ActionOverride("takiyah",Enemy()) CreateCreature("%tutu_scriptbg%WOLFDR",[-1.-1],0) CreateCreature("%tutu_scriptbg%WOLFDR",[-1.-1],0)~ EXIT --- > IF ~~ THEN DO ~SetGlobal("X#JaheiraQuestAAttack","GLOBAL",1)~ EXIT 474c486 < IF ~~ THEN DO ~ActionOverride("andarthe",JumpToPoint([874.2175])) ActionOverride("andarthe",FaceObject(Player1)) ActionOverride("andarthe",Enemy()) ActionOverride("jadruid8a",Enemy()) ActionOverride("takiyah",Enemy()) CreateCreature("%tutu_scriptbg%WOLFDR",[-1.-1],0) CreateCreature("%tutu_scriptbg%WOLFDR",[-1.-1],0)~ EXIT --- > IF ~~ THEN DO ~SetGlobal("X#JaheiraQuestAAttack","GLOBAL",1)~ EXIT 479c491 < IF ~~ THEN DO ~ActionOverride("andarthe",JumpToPoint([874.2175])) ActionOverride("andarthe",FaceObject(Player1)) ActionOverride("andarthe",Enemy()) ActionOverride("jadruid8a",Enemy()) ActionOverride("takiyah",Enemy()) CreateCreature("%tutu_scriptbg%WOLFDR",[-1.-1],0) CreateCreature("%tutu_scriptbg%WOLFDR",[-1.-1],0)~ EXIT --- > IF ~~ THEN DO ~SetGlobal("X#JaheiraQuestAAttack","GLOBAL",1)~ EXIT diff w bg1npc/core/dlg/x#jfix_bgt.d bg1npc/core/dlg/x#jfix_bgt.d 1,6c1,16 < /* Adding Globals to Coran's Wyvern Misadventure */ < ADD_STATE_TRIGGER CORANJ %BGTCORANJState6% ~Global("X#CoranWyvernWarning1","GLOBAL",1)~ < ADD_TRANS_ACTION CORANJ BEGIN %BGTCORANJState6% END BEGIN END ~SetGlobal("X#CoranWyvernWarning1","GLOBAL",2)~ < ADD_STATE_TRIGGER CORANJ %BGTCORANJState5% ~Global("X#CoranWyvernWarning2","GLOBAL",1)~ < ADD_TRANS_ACTION CORANJ BEGIN %BGTCORANJState5% END BEGIN END ~SetGlobal("X#CoranWyvernWarning2","GLOBAL",2)~ < ADD_STATE_TRIGGER AJANTJ 0 ~Global("AjantisLeave","GLOBAL",0)~ --- > /* Coran and his Wyverns */ > /*wyverns fix */ > REPLACE_TRIGGER_TEXT %CORAN_JOINED% ~[dD][eE][aA][dD](\"[wW][yY][vV][eE][rR][nN]\")~ ~Dead("X#CoranWyvern")~ > > /* Replacing Globals in Coran's Wyvern Misadventure */ > REPLACE_STATE_TRIGGER %CORAN_JOINED% %BGTCORANJState6% ~Global("X#CoranWyvernWarning1","GLOBAL",1)~ > REPLACE_TRANS_ACTION %CORAN_JOINED% BEGIN %BGTCORANJState6% END BEGIN END ~SetGlobal("CoranWyvern","GLOBAL",1)~ ~SetGlobal("X#CoranWyvernWarning1","GLOBAL",2)~ > > REPLACE_STATE_TRIGGER %CORAN_JOINED% %BGTCORANJState5% ~Global("X#CoranWyvernWarning2","GLOBAL",1)~ > REPLACE_TRANS_ACTION %CORAN_JOINED% BEGIN %BGTCORANJState5% END BEGIN END ~SetGlobal("CoranWyvern","GLOBAL",2)~ ~SetGlobal("X#CoranWyvernWarning2","GLOBAL",2)~ > > ADD_STATE_TRIGGER KELDDA 6 ~Dead("X#CoranWyvern")~ > > ADD_STATE_TRIGGER AJANTJ 0 ~Global("AjantisLeave","GLOBAL",0) HappinessLT(Myself,-290)~ > > ADD_STATE_TRIGGER %XAN_POST% 3 ~!Global("X#XARomanceActive","GLOBAL",2)~ diff w bg1npc/core/dlg/x#jfix_tutu.d bg1npc/core/dlg/x#jfix_tutu.d 1,5c1,14 < /* Adding Globals to Coran's Wyvern Misadventure: */ < ADD_STATE_TRIGGER ~_CORANJ~ 6 ~Global("X#CoranWyvernWarning1","GLOBAL",1)~ < ADD_TRANS_ACTION ~_CORANJ~ BEGIN 6 END BEGIN END ~SetGlobal("X#CoranWyvernWarning1","GLOBAL",2)~ < ADD_STATE_TRIGGER ~_CORANJ~ 5 ~Global("X#CoranWyvernWarning2","GLOBAL",1)~ < ADD_TRANS_ACTION ~_CORANJ~ BEGIN 5 END BEGIN END ~SetGlobal("X#CoranWyvernWarning2","GLOBAL",2)~ --- > /* Coran and his Wyverns */ > /*wyverns fix */ > REPLACE_TRIGGER_TEXT %CORAN_JOINED% ~[dD][eE][aA][dD](\"[wW][yY][vV][eE][rR][nN]\")~ ~Dead("X#CoranWyvern")~ > > /* Replacing Globals in Coran's Wyvern Misadventure */ > REPLACE_STATE_TRIGGER %CORAN_JOINED% 6 ~Global("X#CoranWyvernWarning1","GLOBAL",1)~ > REPLACE_TRANS_ACTION %CORAN_JOINED% BEGIN 6 END BEGIN END ~SetGlobal("CoranWyvern","GLOBAL",1)~ ~SetGlobal("X#CoranWyvernWarning1","GLOBAL",2)~ > > REPLACE_STATE_TRIGGER %CORAN_JOINED% 5 ~Global("X#CoranWyvernWarning2","GLOBAL",1)~ > REPLACE_TRANS_ACTION %CORAN_JOINED% BEGIN 5 END BEGIN END ~SetGlobal("CoranWyvern","GLOBAL",2)~ ~SetGlobal("X#CoranWyvernWarning2","GLOBAL",2)~ > > ADD_STATE_TRIGGER _KELDDA 6 ~Dead("X#CoranWyvern")~ > > ADD_STATE_TRIGGER %XAN_POST% 3 ~!Global("X#XARomanceActive","GLOBAL",2)~ diff w bg1npc/phase2/dlg/x#kaqst.d bg1npc/phase2/dlg/x#kaqst.d 77,78c77,78 < IF ~~ THEN REPLY @32 DO ~SetGlobal("X#KagainCaravan","GLOBAL",5)~ JOURNAL @33 GOTO X#KAQUDISMISS < IF ~~ THEN REPLY @34 DO ~SetGlobal("X#KagainCaravan","GLOBAL",5)~ JOURNAL @35 GOTO X#KAQUREWARDALONE --- > IF ~~ THEN REPLY @32 DO ~EraseJournalEntry(@35) EraseJournalEntry(@44) SetGlobal("X#KagainCaravan","GLOBAL",5)~ JOURNAL @33 GOTO X#KAQUDISMISS > IF ~~ THEN REPLY @34 DO ~EraseJournalEntry(@33) EraseJournalEntry(@44) SetGlobal("X#KagainCaravan","GLOBAL",5)~ JOURNAL @35 GOTO X#KAQUREWARDALONE 110c110 < IF ~~ THEN DO ~LeaveParty() ChangeAIScript("",DEFAULT) SetGlobal("%KICKED_OUT%","LOCALS",1) SetLeavePartyDialogFile()~ JOURNAL @44 EXIT --- > IF ~~ THEN DO ~LeaveParty() ChangeAIScript("",DEFAULT) SetGlobal("%KICKED_OUT%","LOCALS",1) SetLeavePartyDialogFile() EraseJournalEntry(@33) EraseJournalEntry(@35)~ JOURNAL @44 EXIT 115,119c115,120 < IF ~InParty(Player1) InParty(Player2) !InParty(Player3) !InParty(Player4) !InParty(Player5) !InParty(Player6)~ THEN DO ~GiveGoldForce(15) JoinParty()~ JOURNAL @35 EXIT < IF ~InParty(Player1) InParty(Player2) InParty(Player3) !InParty(Player4) !InParty(Player5) !InParty(Player6)~ THEN DO ~GiveGoldForce(30) JoinParty()~ JOURNAL @35 EXIT < IF ~InParty(Player1) InParty(Player2) InParty(Player3) InParty(Player4) !InParty(Player5) !InParty(Player6)~ THEN DO ~GiveGoldForce(45) JoinParty()~ JOURNAL @35 EXIT < IF ~InParty(Player1) InParty(Player2) InParty(Player3) InParty(Player4) InParty(Player5) !InParty(Player6)~ THEN DO ~GiveGoldForce(60) JoinParty()~ JOURNAL @35 EXIT < IF ~InParty(Player1) InParty(Player2) InParty(Player3) InParty(Player4) InParty(Player5) InParty(Player6)~ THEN DO ~GiveGoldForce(75) JoinParty()~ JOURNAL @35 EXIT --- > IF ~InParty(Player1) InParty(Player2) InParty(Player3) InParty(Player4) InParty(Player5) InParty(Player6)~ THEN DO ~EraseJournalEntry(@33) EraseJournalEntry(@44) GiveGoldForce(75) JoinParty()~ JOURNAL @35 EXIT > IF ~InParty(Player1) InParty(Player2) InParty(Player3) InParty(Player4) InParty(Player5) !InParty(Player6)~ THEN DO ~EraseJournalEntry(@33) EraseJournalEntry(@44) GiveGoldForce(60) JoinParty()~ JOURNAL @35 EXIT > IF ~InParty(Player1) InParty(Player2) InParty(Player3) InParty(Player4) !InParty(Player5) !InParty(Player6)~ THEN DO ~EraseJournalEntry(@33) EraseJournalEntry(@44) GiveGoldForce(45) JoinParty()~ JOURNAL @35 EXIT > IF ~InParty(Player1) InParty(Player2) InParty(Player3) !InParty(Player4) !InParty(Player5) !InParty(Player6)~ THEN DO ~EraseJournalEntry(@33) EraseJournalEntry(@44) GiveGoldForce(30) JoinParty()~ JOURNAL @35 EXIT > IF ~InParty(Player1) InParty(Player2) !InParty(Player3) !InParty(Player4) !InParty(Player5) !InParty(Player6)~ THEN DO ~EraseJournalEntry(@33) EraseJournalEntry(@44) GiveGoldForce(15) JoinParty()~ JOURNAL @35 EXIT > IF ~InParty(Player1) !InParty(Player2) !InParty(Player3) !InParty(Player4) !InParty(Player5) !InParty(Player6)~ THEN DO ~EraseJournalEntry(@33) EraseJournalEntry(@44) GiveGoldForce(15) JoinParty()~ JOURNAL @35 EXIT diff w bg1npc/phase2/baf/x#miint2.baf bg1npc/phase2/baf/x#miint2.baf 408c408,435 < Dialog(Player1) --- > StartDialogNoSet(Player1) > END > > /* Minsc and the Slimes */ > IF %BGT_VAR% > Global("X#MinscDTSlimes","GLOBAL",0) > AreaCheck("%DurlagsTower_EarthChamber%") > InParty(Myself) > !StateCheck(Myself,CD_STATE_NOTVALID) > InMyArea(Player1) > !StateCheck(Player1,CD_STATE_NOTVALID) > THEN > RESPONSE #100 > SetGlobal("X#MinscDTSlimes","GLOBAL",1) > END > > IF > Global("X#MinscDTSlimes","GLOBAL",1) > AreaCheck("%DurlagsTower_EarthChamber%") > InParty(Myself) > !StateCheck(Myself,CD_STATE_NOTVALID) > InMyArea(Player1) > !StateCheck(Player1,CD_STATE_NOTVALID) > THEN > RESPONSE #100 > PlaySong(0) > PlaySound("minsc99") > StartDialogNoSet(Player1) diff w bg1npc/tra/english/x#montaron.tra bg1npc/tra/english/x#montaron.tra 109c109 < @108 = ~Montaron... what are doing to those poor things?~ --- > @108 = ~Montaron... what are you doing to those poor things?~ diff w bg1npc/phase3/wait/dlg/x#npcwait.d bg1npc/phase3/wait/dlg/x#npcwait.d 330,331c330 < IF ~~ DO ~SetGlobal("KickedOut","LOCALS",1) < EscapeAreaMove("FW2301",256,618,13)~ EXIT --- > IF ~~ DO ~SetGlobal("KickedOut","LOCALS",1) EscapeAreaMove("FW2301",277,670,9)~ EXIT 336,337c335 < IF ~~ DO ~SetGlobal("KickedOut","LOCALS",1) < EscapeAreaMove("FW0706",463,449,14)~ EXIT --- > IF ~~ DO ~SetGlobal("KickedOut","LOCALS",1) EscapeAreaMove("FW0706",463,449,14)~ EXIT diff w bg1npc/tra/english/x#pcinit_tmp.tra bg1npc/tra/english/x#pcinit_tmp.tra 3217c3217 < @3205 = ~*Your garments ride down your hips, as easily, as if they sense your impatience. Coran thrusts into you, and all the happenings in the world become trivial compared to the movements you make together.*~ --- > @3205 = ~*Your garments ride down your hips, as easily as if they sense your impatience. Coran thrusts into you, and all the happenings in the world become trivial compared to the movements you make together.*~ diff w bg1npc/phase2/baf/x#runcor.baf bg1npc/phase2/baf/x#runcor.baf 7a8,13 > TakePartyItem("X#CBABY") > TakePartyItem("X#CBOOK") > TakePartyItem("X#CMILK") > DestroyItem("X#CBABY") > DestroyItem("X#CBOOK") > DestroyItem("X#CMILK") diff w bg1npc/phase1/baf/x#shar1.baf bg1npc/phase1/baf/x#shar1.baf 227,228c227,228 < HPPercentGT(Player1,95) < HPPercentGT("sharteel",95) --- > HPPercentGT(Player1,80) > HPPercentGT("sharteel",80) diff w bg1npc/phase3/shrom/dlg/x#shrom.d bg1npc/phase3/shrom/dlg/x#shrom.d 139,143c139,143 < ++ @50 DO ~IncrementGlobal("X#SharInterestTalk","GLOBAL",1) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)~ + SHRO2.1 < ++ @51 DO ~IncrementGlobal("X#SharInterestTalk","GLOBAL",1) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)~ + SHRO2.2 < ++ @52 DO ~IncrementGlobal("X#SharInterestTalk","GLOBAL",1) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)~ + SHRO2.3 < ++ @53 DO ~IncrementGlobal("X#SharInterestTalk","GLOBAL",1) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)~ + SHRO2.4 < ++ @54 DO ~IncrementGlobal("X#SharInterestTalk","GLOBAL",1) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)~ + SHRO2.3A --- > ++ @50 DO ~SetGlobal("X#SharInterestTalk","GLOBAL",5) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)~ + SHRO2.1 > ++ @51 DO ~SetGlobal("X#SharInterestTalk","GLOBAL",5) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)~ + SHRO2.2 > ++ @52 DO ~SetGlobal("X#SharInterestTalk","GLOBAL",5) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)~ + SHRO2.3 > ++ @53 DO ~SetGlobal("X#SharInterestTalk","GLOBAL",5) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)~ + SHRO2.4 > ++ @54 DO ~SetGlobal("X#SharInterestTalk","GLOBAL",5) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)~ + SHRO2.3A diff w bg1npc/phase2/dlg/x#tiaxquest.d bg1npc/phase2/dlg/x#tiaxquest.d 421,432d420 < /* In case PC speaks to Karris before meeting Belgin */ < CHAIN IF WEIGHT #-2 ~%BGT_VAR% GlobalLT("X#TiaxQuest","GLOBAL",3)~ THEN ~X#KARRIS~ X#TiaxQuestKarrisNotYet < @173 < END < + ~Global("X#KarrisFirst","GLOBAL",0)~ + @174 DO ~SetGlobal("X#KarrisFirst","GLOBAL",1)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.1 < + ~Global("X#KarrisFirst","GLOBAL",1)~ + @175 DO ~SetGlobal("X#KarrisFirst","GLOBAL",2)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.2 < + ~Global("X#KarrisFirst","GLOBAL",2)~ + @176 DO ~SetGlobal("X#KarrisFirst","GLOBAL",3)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.3 < ++ @177 EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.4 < ++ @178 EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.4 < ++ @179 EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.5 < /* EXIT state = "X#KarrisFirst","GLOBAL",0-1-2-3 "X#TiaxQuest","GLOBAL",0 (repeats infinitely) */ < 453,463d440 < /* In case PC speaks to Karris again - before either selling Belgin out or proving Telliax's survival */ < CHAIN IF WEIGHT #-2 ~%BGT_VAR% Global("X#TiaxQuest","GLOBAL",4)~ THEN ~X#KARRIS~ X#TiaxQuestKarrisTwelve < @185 < END < + ~Global("X#KarrisFirst","GLOBAL",0)~ + @174 DO ~SetGlobal("X#KarrisFirst","GLOBAL",1)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.1 < + ~Global("X#KarrisFirst","GLOBAL",1)~ + @175 DO ~SetGlobal("X#KarrisFirst","GLOBAL",2)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.2 < + ~Global("X#KarrisFirst","GLOBAL",2)~ + @176 DO ~SetGlobal("X#KarrisFirst","GLOBAL",3)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.3 < ++ @186 EXTERN ~X#KARRIS~ X#TiaxQuestKarrisTwo < ++ @187 EXTERN ~X#KARRIS~ X#TiaxQuestKarrisSeven < ++ @188 EXTERN ~X#KARRIS~ X#TiaxQuestKarrisFour < /* EXIT state = "X#KarrisFirst","GLOBAL",0-1-2-3 "X#TiaxQuest","GLOBAL",4 (repeats infinitely) */ 465c442 < CHAIN IF WEIGHT #-2 ~%BGT_VAR% Global("X#TiaxQuest","GLOBAL",3)~ THEN ~X#KARRIS~ X#TiaxQuestKarris --- > CHAIN IF ~%BGT_VAR% Global("X#TiaxQuest","GLOBAL",3)~ THEN ~X#KARRIS~ X#TiaxQuestKarris 490a468,491 > /* In case PC speaks to Karris again - before either selling Belgin out or proving Telliax's survival */ > CHAIN IF ~%BGT_VAR% Global("X#TiaxQuest","GLOBAL",4)~ THEN ~X#KARRIS~ X#TiaxQuestKarrisTwelve > @185 > END > + ~Global("X#KarrisFirst","GLOBAL",0)~ + @174 DO ~SetGlobal("X#KarrisFirst","GLOBAL",1)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.1 > + ~Global("X#KarrisFirst","GLOBAL",1)~ + @175 DO ~SetGlobal("X#KarrisFirst","GLOBAL",2)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.2 > + ~Global("X#KarrisFirst","GLOBAL",2)~ + @176 DO ~SetGlobal("X#KarrisFirst","GLOBAL",3)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.3 > ++ @186 EXTERN ~X#KARRIS~ X#TiaxQuestKarrisTwo > ++ @187 EXTERN ~X#KARRIS~ X#TiaxQuestKarrisSeven > ++ @188 EXTERN ~X#KARRIS~ X#TiaxQuestKarrisFour > /* EXIT state = "X#KarrisFirst","GLOBAL",0-1-2-3 "X#TiaxQuest","GLOBAL",4 (repeats infinitely) */ > > /* In case PC speaks to Karris before meeting Belgin */ > CHAIN IF ~%BGT_VAR% GlobalLT("X#TiaxQuest","GLOBAL",3)~ THEN ~X#KARRIS~ X#TiaxQuestKarrisNotYet > @173 > END > + ~Global("X#KarrisFirst","GLOBAL",0)~ + @174 DO ~SetGlobal("X#KarrisFirst","GLOBAL",1)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.1 > + ~Global("X#KarrisFirst","GLOBAL",1)~ + @175 DO ~SetGlobal("X#KarrisFirst","GLOBAL",2)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.2 > + ~Global("X#KarrisFirst","GLOBAL",2)~ + @176 DO ~SetGlobal("X#KarrisFirst","GLOBAL",3)~ EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.3 > ++ @177 EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.4 > ++ @178 EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.4 > ++ @179 EXTERN X#KARRIS X#TiaxQuestKarrisNotYet.5 > /* EXIT state = "X#KarrisFirst","GLOBAL",0-1-2-3 "X#TiaxQuest","GLOBAL",0 (repeats infinitely) */ > 717c718 < == ~%FALDORN_BANTER%~ IF ~InParty("faldorn") InMyArea("faldorn") !StateCheck("faldorn",CD_STATE_NOTVALID)InParty("faldorn") InMyArea("faldorn") !StateCheck("faldorn",CD_STATE_NOTVALID)~ THEN @345 --- > == ~%FALDORN_BANTER%~ IF ~InParty("viconia") InMyArea("viconia") !StateCheck("viconia",CD_STATE_NOTVALID) InParty("faldorn") InMyArea("faldorn") !StateCheck("faldorn",CD_STATE_NOTVALID)~ THEN @345 diff w bg1npc/phase2/dlg/x#totsc.d bg1npc/phase2/dlg/x#totsc.d 506,507c506,507 < I_C_T ~%tutu_var%ANDRIS~ 1 X#XANANDRIS1a < == ~%XAN_JOINED%~ IF ~InParty("xan") InMyArea("xan") !StateCheck("xan",CD_STATE_NOTVALID)~ THEN @116 --- > I_C_T ~%tutu_var%ANDRIS~ 1 X#XANANDRIS1 > == ~%XAN_JOINED%~ IF ~InParty("xan") InMyArea("xan") !StateCheck("xan",CD_STATE_NOTVALID) Global("X#ANDRIS2","GLOBAL",0)~ THEN @116 514,515c514,515 < I_C_T ~%tutu_var%ANDRIS~ 3 X#XANANDRIS1c < == ~%XAN_JOINED%~ IF ~InParty("xan") InMyArea("xan") !StateCheck("xan",CD_STATE_NOTVALID)~ THEN @116 --- > I_C_T ~%tutu_var%ANDRIS~ 3 X#XANANDRIS1 > == ~%XAN_JOINED%~ IF ~InParty("xan") InMyArea("xan") !StateCheck("xan",CD_STATE_NOTVALID) Global("X#ANDRIS2","GLOBAL",0)~ THEN @116 518,519c518,519 < I_C_T ~%tutu_var%ANDRIS~ 4 X#XANANDRIS1d < == ~%XAN_JOINED%~ IF ~InParty("xan") InMyArea("xan") !StateCheck("xan",CD_STATE_NOTVALID)~ THEN @116 --- > I_C_T ~%tutu_var%ANDRIS~ 4 X#XANANDRIS1 > == ~%XAN_JOINED%~ IF ~InParty("xan") InMyArea("xan") !StateCheck("xan",CD_STATE_NOTVALID) Global("X#ANDRIS2","GLOBAL",0)~ THEN @116 583c583 < == ~%XAN_JOINED%~ IF ~InParty("xan") InMyArea("xan") !StateCheck("xan",CD_STATE_NOTVALID)~ THEN @116 --- > == ~%XAN_JOINED%~ IF ~InParty("xan") InMyArea("xan") !StateCheck("xan",CD_STATE_NOTVALID) Global("X#XANANDRIS1a","GLOBAL",0) Global("X#XANANDRIS1c","GLOBAL",0) Global("X#XANANDRIS1d","GLOBAL",0)~ THEN @116 diff w bg1npc/tra/english/x#totsc.tra bg1npc/tra/english/x#totsc.tra 147,149c147 < @2007 = ~Think of it as you will. You belong now. ~ < @11 = ~We're... we're trapped here? But... but it's so c-cold...! ~ < @116 = ~So, here we are, stranded on an iced speck in the middle of the ocean, with no food or proper shelter. Do you find it amusing, <CHARNAME>, that we are actually safer now than ever before? Or are you too busy planning how we should fight our way out of this safety, to our imminent doom?~ --- > @2007 = ~Think of it as you will. You belong now. ~ \ No newline at end of file diff w bg1npc/phase2/baf/x#tqkarris.baf bg1npc/phase2/baf/x#tqkarris.baf 2,8d1 < IF < Allegiance(Myself,ENEMY) < THEN < RESPONSE #100 < MoveToObject(NearestEnemyOf(Myself)) < AttackOneRound(NearestEnemyOf(Myself)) < END 34a28,29 > AttackedBy([GOODCUTOFF],DEFAULT) > Allegiance(Myself,NEUTRAL) 38d32 < AttackedBy([GOODCUTOFF],DEFAULT) 70a65,103 > /* Attacked by player without quest */ > IF %BGT_VAR% > AttackedBy([GOODCUTOFF],DEFAULT) > Allegiance(Myself,NEUTRAL) > !Global("X#TiaxQuest","GLOBAL",3) > !Global("X#TiaxQuest","GLOBAL",4) > THEN > RESPONSE #100 > Enemy() > ActionOverride("X#TQBH1",Enemy()) > ActionOverride("X#TQBH2",Enemy()) > ActionOverride("X#TQBH3",Enemy()) > ActionOverride("X#TQBH4",Enemy()) > END > > IF > See(NearestEnemyOf(Myself)) > !Range(NearestEnemyOf(Myself),5) > THEN > RESPONSE #100 > EquipRanged() > AttackReevaluate(NearestEnemyOf(Myself),30) > END > > IF > See(NearestEnemyOf(Myself)) > Range(NearestEnemyOf(Myself),5) > THEN > RESPONSE #100 > EquipMostDamagingMelee() > AttackReevaluate(NearestEnemyOf(Myself),30) > END > > IF > AttackedBy([ANYONE],DEFAULT) > THEN > RESPONSE #100 > AttackReevaluate(LastAttackerOf(Myself),30) > END \ No newline at end of file diff w bg1npc/tra/english/x#xaint.tra bg1npc/tra/english/x#xaint.tra 24c24 < @23 = ~I would have loved at his description of us, if foreboding had not gripped my heart... I foresee that his next step would be to summon these flesh-loving pets of his.~ --- > @23 = ~I would have laughed at his description of us, if foreboding had not gripped my heart... I foresee that his next step would be to summon these flesh-loving pets of his.~ diff w bg1npc/tra/english/x#xanlt.tra bg1npc/tra/english/x#xanlt.tra 114c114 < @113 = ~Still... CHARNAME>, I was meaning to ask for a while. Was Gorion your foster father, perhaps, since you are of different heritage? If so, your real parents might still be alive. Do you know who they were?~ --- > @113 = ~Still... <CHARNAME>, I have been meaning to ask for a while. Was Gorion your foster father, perhaps, since you are of different heritage? If so, your real parents might still be alive. Do you know who they were?~ diff w bg1npc/phase1/baf/x#yesli1.baf bg1npc/phase1/baf/x#yesli1.baf 209a210 > GlobalTimerExpired("X#YEKATIME","GLOBAL") 248,250d248 < OR(2) < Global("X#YeslickLeave","GLOBAL",1) < !Global("X#YeslickLeave","GLOBAL",1) 252d249 < !StateCheck("",CD_STATE_NOTVALID) diff w bg1npc/phase1/dlg/x#yeslick.d bg1npc/phase1/dlg/x#yeslick.d 261c261 < CHAIN IF WEIGHT #-2 ~Global("X#YEKA4","GLOBAL",1)~ THEN ~%YESLICK_BANTER%~ YEKA4starts --- > CHAIN IF WEIGHT #-2 ~Global("X#YEKA4","GLOBAL",1)~ THEN ~%YESLICK_JOINED%~ YEKA4starts 417c417 < DO ~SetGlobal("X#YEKA3","GLOBAL",1)~ --- > DO ~SetGlobal("X#YEKA3","GLOBAL",1) SetGlobalTimer("X#YEKATIME","GLOBAL",7200)~ diff w bg1npc/bg1npc_docs/xansquest.html bg1npc/bg1npc_docs/xansquest.html 31c31 < Xan's quest starts in the Basilisk area, code FW3500. <a h r e f = " h t t p : //www.dudleyville.com/bg1/ar3500.htm" > h t t p ://www.dudleyville.com/bg1/ar3500.htm</a> In the bottom left corner of the map, there are three merchants - Skodd, Gael, and Mazuri. They spawn only if Xan is already in party. Upon meeting the PC, they explain that their caravan was robbed, and they barely escaped becoming lawn ornaments. They seek only to be left in peace and to continue on their way.</p> --- > Xan's quest starts in the Basilisk area, code FW3500. <a h r e f = " h t t p : //www.forgottenwars.com/bg1/ar3500.htm" > h t t p ://www.forgottenwars.com/bg1/ar3500.htm</a> In the bottom left corner of the map, there are three merchants - Skodd, Gael, and Mazuri. They spawn only if Xan is already in party. Upon meeting the PC, they explain that their caravan was robbed, and they barely escaped becoming lawn ornaments. They seek only to be left in peace and to continue on their way.</p> 36c36 < <p>Read more about this area here: <a h r e f = " h t t p : //www.dudleyville.com/bg1/ar3000.htm" > h t t p ://www.dudleyville.com/bg1/ar3000.htm</a></p> --- > <p>Read more about this area here: <a h r e f = " h t t p : //www.forgottenwars.com/bg1/ar3000.htm" > h t t p ://www.forgottenwars.com/bg1/ar3000.htm</a></p> 42c42 < <p>The Friendly Arm Inn, FW2300 is located here: <a h r e f = " h t t p : //www.dudleyville.com/bg1/ar2300.htm" > h t t p ://www.dudleyville.com/bg1/ar2300.htm</a></p> --- > <p>The Friendly Arm Inn, FW2300 is located here: <a h r e f = " h t t p : //www.forgottenwars.com/bg1/ar2300.htm" > h t t p :/www.forgottenwars.com/bg1/ar2300.htm</a></p> Binaries Changed in v17: bg1npc\phase2\itm\x#cbaby.itm ADDED INTO v17: bg1npc\core\mve\flythr03.mve bg1npc\phase2\baf\jw#fw3000.baf bg1npc\phase3\challenge\itm\x#ajr1_bgt.are bg1npc\phase3\challenge\itm\x#ch11_bgt.are bg1npc\core\baf\x#tazokarea.baf bg1npc\phase2\baf\x#tqbh.baf REMOVED FROM v17: bg1npc\phase2\baf\p#fw0510.baf Link to comment
Taimon Posted March 1, 2009 Share Posted March 1, 2009 Did you have a chance to fix the IMOEN_BCS thing on BGT in the lib? By the way, I suggest using unified (-u) or at least context (-c) diffs. You can also do that recursively (-r) on two directory trees. Link to comment
cmorgan Posted March 1, 2009 Author Share Posted March 1, 2009 Nope, I didn't, but is because I need to do a specialized mega-install check before changing it - the problem is that we do this: END ELSE BEGIN /* BGT Versions */ /* Override Scripts addition */ COPY_EXISTING ~imoen1.cre~ ~override~ ~imoen2.cre~ ~override~ ~imoen4.cre~ ~override~ ~imoen61.cre~ ~override~ WRITE_ASCII 0x248 ~BGIMOEN2~ #8 // override script BUT_ONLY_IF_IT_CHANGES which means that the BG1NPC stuff becomes Imoen's early .cre (BG content) scripting exclusively. I need to do research on what other mods mess around with Imoen during BG content first, before I have a merged script - since it is working now, I didn't want to mess around with it until I get a chance to do that research and run some test installs (probably bugging Leomar and his crew for feedback ). [i do realize that it is working perfectly now because we end up bypassing all other mods which mess with Imoen's script during BG on a BGT install, which is contrary to project philosophy.] Thanks for the heads up, the information on diffs - this is why I don't mind posting this stuff out in the open. It is great to get additional eyes to recheck the work and see what we missed - need to follow up on! I will go tag this on the confirmed worklist. Link to comment
Guest Guest Posted March 2, 2009 Share Posted March 2, 2009 a couple of minor issues I noticed in v16 using NI (looks like these aren't dealt with in v17) 1. in x#andart.baf, there is a CreateCreature("%tutu_scriptbg%WOLFDR",[-1.-1],0), which evaluates to BGWOLFDR.cre in a bgt game. But such creature doesn't exist (not sure if this is a fault of bgt for not creating it but valid creature names for Dread Wolf in my install seems to be wolfd1.cre, wolfdr.cre and wolfdr01.cre). 2. in x#black.baf, x#storm.baf, x#zosya.baf, there is a MoveToObject("black"). If this move refers to Blackberry, then I think it should probably be MoveToObject("blackberry") because that's the name of the death variable. 3. the rumors dialog _RFRIED2 which is supposed to show up if you have Eldoth in the party and you talk to Bentley in FAI and order a few drinks is tutu-specific. 4. icons for items x#cofrro.itm (Red Roses) and x#cowiro.itm (Withered Roses) don't show up on the main screen when you place them in their quick item slot (0x76) i'll just post the other tutu-assigned name issues as code instead of describing them in words (they should have obviously have a %tutu_var% or %tutu_script% in front (and copied to override), but they were just local changes so i didn't bother) COPY ~bg1npc/phase2/cre/x#xzgu03.cre~ ~bg1npc/phase2/cre~ WRITE_ASCII 0x3C ~~ #8 // large portrait (was originally 088E.bmp which doesn't exist) BUT_ONLY COPY ~bg1npc/phase3/challenge/cre/x#ajanfi.cre~ ~bg1npc/phase3/challenge/cre~ WRITE_ASCII 0x34 ~AJANTISS~ #8 // small portrait WRITE_ASCII 0x3C ~AJANTISL~ #8 // large portrait BUT_ONLY COPY ~bg1npc/phase3/challenge/cre/x#corafi.cre~ ~bg1npc/phase3/challenge/cre~ WRITE_ASCII 0x34 ~CORANS~ #8 // small portrait WRITE_ASCII 0x3C ~CORANL~ #8 // large portrait BUT_ONLY COPY ~bg1npc/phase3/dyrom/cre/x#dfake1.cre~ ~bg1npc/phase3/dyrom/cre~ WRITE_ASCII 0x34 ~DYNAHEIS~ #8 // small portrait WRITE_ASCII 0x3C ~DYNAHEIL~ #8 // large portrait BUT_ONLY COPY ~bg1npc/phase2/itm/x#ansper.itm~ ~bg1npc/phase2/itm~ WRITE_ASCII 0x10 ~MISC56~ #8 // used-up item BUT_ONLY COPY ~bg1npc/phase2/itm/x#cofrro.itm~ ~bg1npc/phase2/itm~ WRITE_ASCII 0x76 ~IMISC1I~ #8 // icon BUT_ONLY COPY ~bg1npc/phase2/itm/x#cowiro.itm~ ~bg1npc/phase2/itm~ WRITE_ASCII 0x76 ~IMISC1I~ #8 // icon BUT_ONLY COPY ~bg1npc/phase1/itm/x#dex.spl~ ~bg1npc/phase1/itm~ WRITE_ASCII 0x10 ~CAS_M08~ #8 // casting sound WRITE_ASCII 0x3A ~SPWI415C~ #8 // spell icon WRITE_ASCII 0x76 ~SPWI415B~ #8 // ability #0 icon WRITE_ASCII 0xDE ~EFF_P07~ #8 // resource BUT_ONLY COPY ~bg1npc/phase1/itm/x#poly.spl~ ~bg1npc/phase1/itm~ WRITE_ASCII 0x10 ~CAS_M08~ #8 // casting sound WRITE_ASCII 0x3A ~SPWI415C~ #8 // spell icon WRITE_ASCII 0x76 ~SPWI415B~ #8 // ability #0 icon WRITE_ASCII 0xDE ~EFF_P07~ #8 // resource BUT_ONLY COPY ~bg1npc/phase2/itm/x#xzspl.spl~ ~bg1npc/phase2/itm~ WRITE_ASCII 0x10 ~CAS_M05~ #8 // casting sound WRITE_ASCII 0x3A ~SPWI509C~ #8 // spell icon WRITE_ASCII 0x76 ~SPWI509B~ #8 // ability #0 icon BUT_ONLY COPY ~bg1npc/phase2/itm/x#fried2.sto~ ~bg1npc/phase2/itm~ WRITE_ASCII 0x44 ~RFRIED2~ #8 // rumors dialog BUT_ONLY Link to comment
Leomar Posted March 2, 2009 Share Posted March 2, 2009 (probably bugging Leomar and his crew for feedback) Sure. You all make these great mods and we try to help where we can. Greetings Leomar Link to comment
cmorgan Posted March 8, 2009 Author Share Posted March 8, 2009 OK awesome stuff, teijumin... and a follow up on progress about that BGIMOEN.BCS vs BGIMOEN2.BCS. So far, I have not found any mods which modify BGIMOEN.bcs, but I am sure there are some and I am just missing a cool BGT conversion thing or something. (folks have tried to teach me this over and over, and I just for some reason don't "grok" it) what I (we) need to look for is any mod that deals with In BGT: imoen.cre = initial Candlekeep, uses bgimoen.bcs, with 2 blocks - IF StateCheck(Myself,STATE_STONE_DEATH) Global("IWasKickedOut","LOCALS",0) !NumTimesTalkedTo(0) GlobalLT("ENDOFBG1","GLOBAL",2) THEN RESPONSE #100 SetGlobal("IWasKickedOut","LOCALS",1) Continue() END IF Global("TalkedToGorion","GLOBAL",0) NumTimesTalkedTo(0) THEN RESPONSE #100 Dialogue([PC]) END . That .cre uses IMOEN.DLG, which is that entry level dialog. Basically, a pre-joined separate dialog file. Imoen2 is the DV. The remaining .cres gatherable in BG content in BGT use Imoen2 as the DV, IMOEN2.DLG as the dialog file, and BGIMOEN.BCS as the script. Gavin and BG1NPC use the same reassigned BGIMOEN2.BCS, so fixing this here and in Gavin may very well take care of the problem. We are looking for mods that add to, manipulate, or otherwise mess with Imoen's BG content adding blocks to BGIMOEN.BCS, or assigning her another script. I am going back through Ascension64's documentation to look again at what he does for compatibility with pre-BGT-installed mods, as these are the likeliest ones out there. So far, I have not found any, but any help would be appreciated! Link to comment
cmorgan Posted July 16, 2009 Author Share Posted July 16, 2009 Rechecking the list... 1. in x#andart.baf, there is a CreateCreature("%tutu_scriptbg%WOLFDR",[-1.-1],0), which evaluates to BGWOLFDR.cre in a bgt game. But such creature doesn't exist (not sure if this is a fault of bgt for not creating it but valid creature names for Dread Wolf in my install seems to be wolfd1.cre, wolfdr.cre and wolfdr01.cre). confirmed repaired: Search "WOLFDR" (3 hits in 2 files) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\bg1npc_docs\bg1npcvarindex.htm (1 hits) Line 594: <td>_WOLFDR</td> E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#andart.baf (2 hits) Line 57: CreateCreature("%tutu_var%WOLFDR",[-1.-1],0) Line 58: CreateCreature("%tutu_var%WOLFDR",[-1.-1],0) Search "%tutu_scriptbg%WOLFDR" (0 hits in 0 files) 2. in x#black.baf, x#storm.baf, x#zosya.baf, there is a MoveToObject("black"). If this move refers to Blackberry, then I think it should probably be MoveToObject("blackberry") because that's the name of the death variable. confirmed repaired: Search ""blackberry"" (7 hits in 4 files) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#black.baf (2 hits) Line 8: ActionOverride("storm",MoveToObject("blackberry")) Line 9: ActionOverride("zosya",MoveToObject("blackberry")) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#storm.baf (2 hits) Line 7: MoveToObject("blackberry") Line 21: MoveToObject("blackberry") E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#xzdqu.baf (1 hits) Line 127: !Exists("blackberry") E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#zosya.baf (2 hits) Line 7: MoveToObject("blackberry") Line 21: MoveToObject("blackberry") Search ""black"" (0 hits in 0 files) 3. the rumors dialog _RFRIED2 which is supposed to show up if you have Eldoth in the party and you talk to Bentley in FAI and order a few drinks is tutu-specific. confirmed repaired: bg1npc.tp2, lines 2698 - 2707 /* Eldoth FAI */ COPY ~BG1NPC/phase2/itm/X#FRIED2.STO~ ~override~ SAY STORE_NAME @624 SAY 0xA4 @52 SAY 0xb8 @53 SAY 0xcc @54 SAY 0xe0 @55 PATCH_IF (~%tutuorbgt%~ STRING_COMPARE_CASE ~BGT~ = 0) THEN BEGIN WRITE_ASCII 0x44 ~RFRIED2~ #8 // rumors dialog END 4. icons for items x#cofrro.itm (Red Roses) and x#cowiro.itm (Withered Roses) don't show up on the main screen when you place them in their quick item slot (0x76) COPY ~bg1npc/phase2/itm/x#cofrro.itm~ ~bg1npc/phase2/itm~ WRITE_ASCII 0x76 ~IMISC1I~ #8 // icon BUT_ONLY COPY ~bg1npc/phase2/itm/x#cowiro.itm~ ~bg1npc/phase2/itm~ WRITE_ASCII 0x76 ~IMISC1I~ #8 // icon BUT_ONLY repaired to WRITE_ASCII 0x76 ~X#COFRRO~ #8 // icon and WRITE_ASCII 0x76 ~X#COWIRO~ #8 // icon COPY ~bg1npc/phase2/cre/x#xzgu03.cre~ ~bg1npc/phase2/cre~ WRITE_ASCII 0x3C ~~ #8 // large portrait (was originally 088E.bmp which doesn't exist) BUT_ONLY incorporated: WRITE_ASCII 0x3C ~NONE~ #8 // large portrait COPY ~bg1npc/phase3/challenge/cre/x#ajanfi.cre~ ~bg1npc/phase3/challenge/cre~ WRITE_ASCII 0x34 ~AJANTISS~ #8 // small portrait WRITE_ASCII 0x3C ~AJANTISL~ #8 // large portrait BUT_ONLY confirmed: COPY ~BG1NPC/Phase3/CHALLENGE/cre/x#ajanfi.cre~ ~override/x#ajanfi.cre~ SAY NAME1 @519 SAY NAME2 @519 WRITE_LONG INITIAL_MEETING (BNOT 0x0) SAY MORALE @520 WRITE_LONG HAPPY (BNOT 0x0) WRITE_LONG UNHAPPY_ANNOYED (BNOT 0x0) WRITE_LONG UNHAPPY_SERIOUS (BNOT 0x0) WRITE_LONG UNHAPPY_BREAKING (BNOT 0x0) WRITE_LONG LEADER (BNOT 0x0) WRITE_LONG TIRED (BNOT 0x0) WRITE_LONG BORED (BNOT 0x0) SAY BATTLE_CRY1 @521 SAY BATTLE_CRY2 @522 SAY BATTLE_CRY3 @522 SAY BATTLE_CRY4 @522 SAY BATTLE_CRY5 @522 SAY ATTACK1 @523 SAY ATTACK2 @523 SAY DAMAGE @525 SAY DYING @526 SAY HURT @527 WRITE_LONG AREA_FOREST (BNOT 0x0) WRITE_LONG AREA_CITY (BNOT 0x0) WRITE_LONG AREA_DUNGEON (BNOT 0x0) WRITE_LONG AREA_DAY (BNOT 0x0) WRITE_LONG AREA_NIGHT (BNOT 0x0) SAY SELECT_COMMON1 @528 SAY SELECT_COMMON2 @529 SAY SELECT_COMMON3 @530 SAY SELECT_COMMON4 @531 SAY SELECT_COMMON5 @523 SAY SELECT_COMMON6 @523 SAY SELECT_ACTION1 @528 SAY SELECT_ACTION2 @532 WRITE_LONG SELECT_ACTION3 (BNOT 0x0) WRITE_LONG SELECT_ACTION4 (BNOT 0x0) WRITE_LONG SELECT_ACTION5 (BNOT 0x0) WRITE_LONG SELECT_ACTION6 (BNOT 0x0) WRITE_LONG SELECT_ACTION7 (BNOT 0x0) WRITE_LONG INTERACTION1 (BNOT 0x0) WRITE_LONG INTERACTION2 (BNOT 0x0) WRITE_LONG INTERACTION3 (BNOT 0x0) WRITE_LONG INTERACTION4 (BNOT 0x0) WRITE_LONG INTERACTION5 (BNOT 0x0) WRITE_LONG INSULT (BNOT 0x0) WRITE_LONG COMPLIMENT1 (BNOT 0x0) WRITE_LONG SPECIAL1 (BNOT 0x0) WRITE_LONG REACT_TO_DIE_GENERAL (BNOT 0x0) WRITE_LONG REACT_TO_DIE_SPECIFIC (BNOT 0x0) WRITE_LONG RESPONSE_TO_COMPLIMENT2 (BNOT 0x0) WRITE_LONG RESPONSE_TO_INSULT1 (BNOT 0x0) WRITE_LONG RESPONSE_TO_INSULT2 (BNOT 0x0) WRITE_LONG DIALOGUE_HOSTILE (BNOT 0x0) WRITE_LONG SELECT_RARE1 (BNOT 0x0) WRITE_LONG SELECT_RARE2 (BNOT 0x0) WRITE_LONG BIO (BNOT 0x0) WRITE_EVALUATED_ASCII 0x280 ~%SOURCE_RES%~ #32 // death variable WRITE_ASCII 0x2CC ~NONE~ #8 // dialog WRITE_EVALUATED_ASCII 0x248 ~%tutu_scriptw%TASIGHT~ #8 // override script WRITE_EVALUATED_ASCII 0x268 ~%tutu_var%DPLAYER~ #8 PATCH_IF (~%tutuorbgt%~ STRING_COMPARE_CASE ~BGT~ = 0) THEN BEGIN WRITE_ASCII 0x34 ~AJANTISS~ #8 // small portrait WRITE_ASCII 0x3C ~AJANTISL~ #8 // large portrait END COPY ~bg1npc/phase3/challenge/cre/x#corafi.cre~ ~bg1npc/phase3/challenge/cre~ WRITE_ASCII 0x34 ~CORANS~ #8 // small portrait WRITE_ASCII 0x3C ~CORANL~ #8 // large portrait BUT_ONLY confirmed; COPY ~BG1NPC/Phase3/CHALLENGE/cre/x#corafi.cre~ ~override~ SAY NAME1 @509 SAY NAME2 @509 SAY INITIAL_MEETING @510 SAY MORALE @511 WRITE_LONG HAPPY (BNOT 0x0) WRITE_LONG UNHAPPY_ANNOYED (BNOT 0x0) WRITE_LONG UNHAPPY_SERIOUS (BNOT 0x0) SAY UNHAPPY_BREAKING @511 WRITE_LONG LEADER (BNOT 0x0) WRITE_LONG TIRED (BNOT 0x0) WRITE_LONG BORED (BNOT 0x0) SAY BATTLE_CRY1 @510 SAY BATTLE_CRY2 @512 SAY BATTLE_CRY3 @512 SAY BATTLE_CRY4 @512 SAY BATTLE_CRY5 @512 SAY ATTACK1 @510 SAY ATTACK2 @512 SAY DAMAGE @513 SAY DYING @514 SAY HURT @515 WRITE_LONG AREA_FOREST (BNOT 0x0) WRITE_LONG AREA_CITY (BNOT 0x0) WRITE_LONG AREA_DUNGEON (BNOT 0x0) WRITE_LONG AREA_DAY (BNOT 0x0) WRITE_LONG AREA_NIGHT (BNOT 0x0) SAY SELECT_COMMON1 @516 SAY SELECT_COMMON2 @517 SAY SELECT_COMMON3 @518 SAY SELECT_COMMON4 @516 SAY SELECT_COMMON5 @516 WRITE_LONG SELECT_COMMON6 (BNOT 0x0) SAY SELECT_ACTION1 @510 SAY SELECT_ACTION2 @510 SAY SELECT_ACTION3 @510 SAY SELECT_ACTION4 @510 SAY SELECT_ACTION5 @510 SAY SELECT_ACTION6 @510 SAY SELECT_ACTION7 @510 WRITE_LONG INTERACTION1 (BNOT 0x0) WRITE_LONG INTERACTION2 (BNOT 0x0) WRITE_LONG INTERACTION3 (BNOT 0x0) WRITE_LONG INTERACTION4 (BNOT 0x0) WRITE_LONG INTERACTION5 (BNOT 0x0) WRITE_LONG COMPLIMENT1 (BNOT 0x0) WRITE_LONG COMPLIMENT2 (BNOT 0x0) WRITE_LONG COMPLIMENT3 (BNOT 0x0) WRITE_LONG REACT_TO_DIE_GENERAL (BNOT 0x0) WRITE_LONG REACT_TO_DIE_SPECIFIC (BNOT 0x0) WRITE_LONG RESPONSE_TO_COMPLIMENT2 (BNOT 0x0) WRITE_LONG RESPONSE_TO_INSULT1 (BNOT 0x0) WRITE_LONG RESPONSE_TO_INSULT2 (BNOT 0x0) WRITE_LONG DIALOGUE_HOSTILE (BNOT 0x0) WRITE_LONG SELECT_RARE1 (BNOT 0x0) WRITE_LONG SELECT_RARE2 (BNOT 0x0) WRITE_LONG BIO (BNOT 0x0) WRITE_EVALUATED_ASCII 0x280 ~%SOURCE_RES%~ #32 // death variable WRITE_EVALUATED_ASCII 0x2CC ~%SOURCE_RES%~ #8 // dialog WRITE_ASCIIE 0x248 ~%tutu_scriptw%TASIGHT~ #8 // override script PATCH_IF (~%tutuorbgt%~ STRING_COMPARE_CASE ~BGT~ = 0) THEN BEGIN WRITE_ASCII 0x34 ~CORANS~ #8 // small portrait WRITE_ASCII 0x3C ~CORANL~ #8 // large portrait END COPY ~bg1npc/phase3/dyrom/cre/x#dfake1.cre~ ~bg1npc/phase3/dyrom/cre~ WRITE_ASCII 0x34 ~DYNAHEIS~ #8 // small portrait WRITE_ASCII 0x3C ~DYNAHEIL~ #8 // large portrait BUT_ONLY confirmed; COPY ~BG1NPC/Phase3/DYROM/cre/x#dfake1.cre~ ~override~ SAY NAME1 @456 SAY NAME2 @456 SAY INITIAL_MEETING @457 WRITE_LONG MORALE (BNOT 0x0) WRITE_LONG HAPPY (BNOT 0x0) WRITE_LONG UNHAPPY_ANNOYED (BNOT 0x0) WRITE_LONG UNHAPPY_SERIOUS (BNOT 0x0) WRITE_LONG UNHAPPY_BREAKING (BNOT 0x0) WRITE_LONG LEADER (BNOT 0x0) WRITE_LONG TIRED (BNOT 0x0) WRITE_LONG BORED (BNOT 0x0) SAY BATTLE_CRY1 @458 SAY BATTLE_CRY2 @458 SAY BATTLE_CRY3 @458 SAY BATTLE_CRY4 @458 SAY BATTLE_CRY5 @458 SAY ATTACK1 @458 SAY ATTACK2 @458 SAY DAMAGE @459 SAY DYING @460 WRITE_LONG HURT (BNOT 0x0) WRITE_LONG AREA_FOREST (BNOT 0x0) WRITE_LONG AREA_CITY (BNOT 0x0) WRITE_LONG AREA_DUNGEON (BNOT 0x0) WRITE_LONG AREA_DAY (BNOT 0x0) WRITE_LONG AREA_NIGHT (BNOT 0x0) SAY SELECT_COMMON1 @461 SAY SELECT_COMMON2 @461 SAY SELECT_COMMON3 @461 SAY SELECT_COMMON4 @461 SAY SELECT_COMMON5 @461 SAY SELECT_COMMON6 @461 SAY SELECT_ACTION1 @461 SAY SELECT_ACTION2 @461 SAY SELECT_ACTION3 @461 SAY SELECT_ACTION4 @461 SAY SELECT_ACTION5 @461 SAY SELECT_ACTION6 @461 SAY SELECT_ACTION7 @461 WRITE_LONG INTERACTION1 (BNOT 0x0) WRITE_LONG INTERACTION2 (BNOT 0x0) WRITE_LONG INTERACTION3 (BNOT 0x0) WRITE_LONG INTERACTION4 (BNOT 0x0) WRITE_LONG INTERACTION5 (BNOT 0x0) WRITE_LONG INSULT (BNOT 0x0) WRITE_LONG COMPLIMENT1 (BNOT 0x0) WRITE_LONG COMPLIMENT3 (BNOT 0x0) WRITE_LONG SPECIAL1 (BNOT 0x0) WRITE_LONG REACT_TO_DIE_GENERAL (BNOT 0x0) WRITE_LONG REACT_TO_DIE_SPECIFIC (BNOT 0x0) WRITE_LONG RESPONSE_TO_COMPLIMENT2 (BNOT 0x0) WRITE_LONG RESPONSE_TO_COMPLIMENT3 (BNOT 0x0) WRITE_LONG RESPONSE_TO_INSULT1 (BNOT 0x0) WRITE_LONG SELECT_RARE1 (BNOT 0x0) WRITE_LONG SELECT_RARE2 (BNOT 0x0) WRITE_LONG BIO (BNOT 0x0) WRITE_ASCII 0x248 ~X#DYNA~ #8 // override script WRITE_ASCII 0x280 ~dynacutscene~ #32 // death variable WRITE_ASCII 0x2CC ~X#DYNA~ #8 // dialog PATCH_IF (~%tutuorbgt%~ STRING_COMPARE_CASE ~BGT~ = 0) THEN BEGIN WRITE_ASCII 0x34 ~DYNAHEIS~ #8 // small portrait WRITE_ASCII 0x3C ~DYNAHEIL~ #8 // large portrait WRITE_ASCII 0x268 ~DPLAYER~ #8 WRITE_ASCII 0x260 ~WTRUNSGT~ #8 END COPY ~bg1npc/phase2/itm/x#ansper.itm~ ~bg1npc/phase2/itm~ WRITE_ASCII 0x10 ~MISC56~ #8 // used-up item BUT_ONLY Confirmed: COPY ~BG1NPC/phase2/itm/x#ansper.itm~ ~override~ SAY NAME2 @378 SAY DESC @379 WRITE_ASCII 0x10 ~MISC56~ #8 // used-up item PATCH_IF (~%tutuorbgt%~ STRING_COMPARE_CASE ~BGT~ = 0) THEN BEGIN WRITE_ASCII 0x44 ~gsper01~ #8 END COPY ~bg1npc/phase1/itm/x#dex.spl~ ~bg1npc/phase1/itm~ WRITE_ASCII 0x10 ~CAS_M08~ #8 // casting sound WRITE_ASCII 0x3A ~SPWI415C~ #8 // spell icon WRITE_ASCII 0x76 ~SPWI415B~ #8 // ability #0 icon WRITE_ASCII 0xDE ~EFF_P07~ #8 // resource BUT_ONLY COPY ~bg1npc/phase1/itm/x#poly.spl~ ~bg1npc/phase1/itm~ WRITE_ASCII 0x10 ~CAS_M08~ #8 // casting sound WRITE_ASCII 0x3A ~SPWI415C~ #8 // spell icon WRITE_ASCII 0x76 ~SPWI415B~ #8 // ability #0 icon WRITE_ASCII 0xDE ~EFF_P07~ #8 // resource BUT_ONLY Confirmed (should be fine with BG2 resources): COPY ~BG1NPC/Phase1/ITM/NUTKIN.EFF~ ~override~ COPY ~BG1NPC/Phase1/ITM/X#DEX.SPL~ ~override~ WRITE_ASCII 0x10 ~CAS_M08~ #8 // casting sound WRITE_ASCII 0x3A ~SPWI415C~ #8 // spell icon WRITE_ASCII 0x76 ~SPWI415B~ #8 // ability #0 icon WRITE_ASCII 0xDE ~EFF_P07~ #8 // resource COPY ~BG1NPC/Phase1/ITM/X#POLY.SPL~ ~override~ WRITE_ASCII 0x10 ~CAS_M08~ #8 // casting sound WRITE_ASCII 0x3A ~SPWI415C~ #8 // spell icon WRITE_ASCII 0x76 ~SPWI415B~ #8 // ability #0 icon WRITE_ASCII 0xDE ~EFF_P07~ #8 // resource COPY ~bg1npc/phase2/itm/x#xzspl.spl~ ~bg1npc/phase2/itm~ WRITE_ASCII 0x10 ~CAS_M05~ #8 // casting sound WRITE_ASCII 0x3A ~SPWI509C~ #8 // spell icon WRITE_ASCII 0x76 ~SPWI509B~ #8 // ability #0 icon BUT_ONLY Integrated: /* Xzar's Dryad Quest */ /* items */ COPY ~BG1NPC/phase2/itm/X#XZSPL.SPL~ ~override~ SAY NAME1 @307 SAY NAME2 @307 WRITE_ASCII 0x10 ~CAS_M05~ #8 // casting sound WRITE_ASCII 0x3A ~SPWI509C~ #8 // spell icon WRITE_ASCII 0x76 ~SPWI509B~ #8 // ability #0 icon COPY ~bg1npc/phase2/itm/x#fried2.sto~ ~bg1npc/phase2/itm~ WRITE_ASCII 0x44 ~RFRIED2~ #8 // rumors dialog BUT_ONLY confirmed: /* Eldoth FAI */ COPY ~BG1NPC/phase2/itm/X#FRIED2.STO~ ~override~ SAY STORE_NAME @624 SAY 0xA4 @52 SAY 0xb8 @53 SAY 0xcc @54 SAY 0xe0 @55 PATCH_IF (~%tutuorbgt%~ STRING_COMPARE_CASE ~BGT~ = 0) THEN BEGIN WRITE_ASCII 0x44 ~RFRIED2~ #8 // rumors dialog END For docs, <li> <a href="http://forums.gibberlings3.net/index.php?s=&showtopic=16855&view=findpost&p=144623"> Temujin's mismapped resource references fixes </a> </li> <a href="http://forums.gibberlings3.net/index.php?s=&showtopic=16855&view=findpost&p=144623"> Druid dv mismatch in combat script </a></li> Link to comment
cmorgan Posted July 16, 2009 Author Share Posted July 16, 2009 Did you have a chance to fix the IMOEN_BCS thing on BGT in the lib? By the way, I suggest using unified (-u) or at least context (-c) diffs. You can also do that recursively (-r) on two directory trees. Hey - side question - I have been using WinMerge and creating a patch log for all these differences. On Vista x64, is there a program (I am not afraid of the command line) that will let me do the -c or -u diffs? Personally, I am using the colored highlighting in WinMerge. But reporting here with something closer to what you use, Taimon, and the BiG World folks use, would probably be less work and more effective... Link to comment
cmorgan Posted July 16, 2009 Author Share Posted July 16, 2009 ... oh, and confirmed reapir for BGT's Imoen .bcs assignment. It looks like we will not be messing with other folks. Search "BGIMOEN2" (2 hits in 2 files) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\bg1npc.tp2 (1 hits) Line 941: WRITE_ASCII 0x248 ~BGIMOEN2~ #8 // override script E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\lib\g3_bgt_cpmvars.tpa (1 hits) Line 186: OUTER_SPRINT "IMOEN_BCS" "BGIMOEN2" repaired to BGIMOEN For docs, <a href="http://forums.gibberlings3.net/index.php?s=&showtopic=16855&view=findpost&p=144623"> BGT Imoen script assignment remapped to correct file </a></li> Link to comment
Leomar Posted July 17, 2009 Share Posted July 17, 2009 Hey - side question - I have been using WinMerge and creating a patch log for all these differences. On Vista x64, is there a program (I am not afraid of the command line) that will let me do the -c or -u diffs? Personally, I am using the colored highlighting in WinMerge. But reporting here with something closer to what you use, Taimon, and the BiG World folks use, would probably be less work and more effective... Sorry, but we don't have Vista. We all use Windows. Perhaps Taimon knows a Vista x64 program... Greetings Leomar Link to comment
Guest Guest Posted July 17, 2009 Share Posted July 17, 2009 (...) the only thing I didn't understand is this: incorporated: WRITE_ASCII 0x3C ~NONE~ #8 // large portrait is there a particular reason using ~NONE~ is preferred as opposed to "WRITE_ASCII 0x3C ~~ #8"? because if you explicity mention the word 'NONE', then NI (and probably also the game) seems to look for a NONE.BMP file (and throws an error), whereas leaving it empty and filling it with 8 null characters won't give you any errors... of course, there is also the other built-in file NOPORTLG.BMP which may also be valid. found a couple more typos after another quick sweep with NI: 1. bg1npc/phase2/dlg/x#newmerch2.d IF ~~ THEN REPLY @1 DO ~StartStore("nsto4901",LastTalkedToBy())~ EXIT // (line 5) store nsto4901 doesn't exist. probably sto4901? 2. bg1npc/phase3/dyrom/dlg/x#dyronpc.d there are a number of ActionOverride("X#Dyna",___) being used but the DV is nonexistent... (it might be 'dynacutscene') 3. bg1npc/phase2/baf/x#xzint2.baf and bg1npc/phase2/baf/p#fw0112.baf See("zizi1") See("zizi2") See("zizi3") See("zizi4") script names all start with x#zizi1, x#zizi2, ... according to their CRE 4. bg1npc/phase2/baf/x#saint2.baf Dead("larriaz") // (line 3) script name for Larriaz is actually spelled 'larria' 5. bg1npc/phase2/baf/x#tqfw1200.baf Wait(3) Deactivate("belgin") // (line 18) END <snip> Activate("belgin") // (line 29) END script name is x#belgin according to x#belgin.cre 6. bg1npc/phase2/cre/x#jelly.cre and bg1npc/phase2/cre/x#slime.cre default script (0x268) has tutu name '_tasight' assigned 7. bg1npc/phase2/dlg/x#halbaz.d not really an issue, but any reason why both "_MISC47" and "MISC47" are used instead of good old "%tutu_var%MISC47" ? Link to comment
cmorgan Posted July 17, 2009 Author Share Posted July 17, 2009 the only thing I didn't understand is this: WRITE_ASCII 0x3C ~NONE~ #8 // large portrait is there a particular reason using ~NONE~ is preferred as opposed to "WRITE_ASCII 0x3C ~~ #8"? because if you explicity mention the word 'NONE', then NI (and probably also the game) seems to look for a NONE.BMP file (and throws an error), whereas leaving it empty and filling it with 8 null characters won't give you any errors... of course, there is also the other built-in file NOPORTLG.BMP which may also be valid. Well to tell you the truth, I think it is a holdover on my part from reading old posts that seemed to indicate that using ~~ had the effect of carrying over a value - something that I think was a. false and b. misleading, but just in case I thought it would be better to incorporate an explicit "none" that the game engine would ignore. Checking: I have the following examples in a set of mods decompiled, and striking out the *_CRE_ITEM results comes up with things like this - Search "~NONE~" (148 hits in 14 files) E:\BG2_NPC\absolestia\setup-abSolestia.tp2 (1 hits) Line 81: WRITE_ASCII_TERMINATE 0x268 ~NONE~ E:\BG2_NPC\ACBRE_43\Setup-ACBre_V4.tp2 (1 hits) Line 79: PATCH_IF ((~%DV%~ STRING_EQUAL ~~) OR (~%DV%~STRING_EQUAL_CASE ~none~)) BEGIN E:\BG2_NPC\DSotSC_v215\Setup-DSotSC.TP2 (8 hits) Line 1582: WRITE_ASCII 0x34 ~None~ //Portrait Line 1583: WRITE_ASCII 0x3c ~None~ //Portrait Line 1885: WRITE_ASCII 0x34 ~None~ //Portrait Line 1886: WRITE_ASCII 0x3c ~None~ //Portrait Line 1970: WRITE_ASCII 0x34 ~None~ Line 1971: WRITE_ASCII 0x3c ~None~ Line 2172: WRITE_ASCII 0x34 ~None~ Line 2173: WRITE_ASCII 0x3c ~None~ E:\BG2_NPC\GBThfKp_v2.18_\GBThfKp\GBThfKp.tp2 (43 hits) Line 242: WRITE_ASCII 0x258 ~None~ #8 // race script Line 243: WRITE_ASCII 0x260 ~None~ #8 // general script Line 249: WRITE_ASCII 0x258 ~None~ #8 // race script Line 250: WRITE_ASCII 0x260 ~None~ #8 // general script Line 256: WRITE_ASCII 0x258 ~None~ #8 // race script Line 257: WRITE_ASCII 0x260 ~None~ #8 // general script Line 263: WRITE_ASCII 0x258 ~None~ #8 // race script Line 264: WRITE_ASCII 0x260 ~None~ #8 // general script Line 270: WRITE_ASCII 0x258 ~None~ #8 // race script Line 271: WRITE_ASCII 0x260 ~None~ #8 // general script Line 277: WRITE_ASCII 0x258 ~None~ #8 // race script Line 278: WRITE_ASCII 0x260 ~None~ #8 // general script Line 284: WRITE_ASCII 0x258 ~None~ #8 // race script Line 285: WRITE_ASCII 0x260 ~None~ #8 // general script Line 290: WRITE_ASCII 0x250 ~None~ #8 // class script Line 291: WRITE_ASCII 0x258 ~None~ #8 // race script Line 292: WRITE_ASCII 0x260 ~None~ #8 // general script Line 297: WRITE_ASCII 0x250 ~None~ #8 // class script Line 298: WRITE_ASCII 0x258 ~None~ #8 // race script Line 299: WRITE_ASCII 0x260 ~None~ #8 // general script Line 304: WRITE_ASCII 0x250 ~None~ #8 // class script Line 305: WRITE_ASCII 0x258 ~None~ #8 // race script Line 306: WRITE_ASCII 0x260 ~None~ #8 // general script Line 336: WRITE_ASCII 0x248 ~None~ #8 // override script Line 338: WRITE_ASCII 0x258 ~None~ #8 // race script Line 339: WRITE_ASCII 0x260 ~None~ #8 // general script Line 340: WRITE_ASCII 0x268 ~None~ #8 // default script Line 353: WRITE_ASCII 0x248 ~None~ #8 // override script Line 355: WRITE_ASCII 0x258 ~None~ #8 // race script Line 356: WRITE_ASCII 0x260 ~None~ #8 // general script Line 357: WRITE_ASCII 0x268 ~None~ #8 // default script Line 369: WRITE_ASCII 0x248 ~None~ #8 // override script Line 371: WRITE_ASCII 0x258 ~None~ #8 // race script Line 372: WRITE_ASCII 0x260 ~None~ #8 // general script Line 373: WRITE_ASCII 0x268 ~None~ #8 // default script Line 399: WRITE_ASCII 0x258 ~None~ #8 // race script Line 400: WRITE_ASCII 0x260 ~None~ #8 // general script Line 401: WRITE_ASCII 0x268 ~None~ #8 // default script Line 407: WRITE_ASCII 0x248 ~None~ #8 // override script Line 410: WRITE_ASCII 0x248 ~None~ #8 // override script Line 413: WRITE_ASCII 0x248 ~None~ #8 // override script Line 416: WRITE_ASCII 0x248 ~None~ #8 // override script Line 419: WRITE_ASCII 0x248 ~None~ #8 // override script E:\BG2_NPC\Haiass_v2.1_\haiass\setup-haiass.tp2 (1 hits) Line 119: PATCH_IF (~%rsc%~ STRING_EQUAL_CASE ~none~ = 0) AND (~%rsc%~ STRING_EQUAL ~~ = 0) BEGIN //If not a null script E:\BG2_NPC\LCDS SoA V.01D\Severian\Setup-Severian.tp2 (1 hits) Line 342: WRITE_ASCII (~%triggOff%~ + ~%#ofTrigg%~ * 196 + 124) ~None~ //Associated Script - resref without extention E:\BG2_NPC\NTotSC_v171\Setup-NTotSCv171.tp2 (3 hits) Line 419: WRITE_ASCII (offset+0x7c) ~None~ //script Line 631: WRITE_ASCII (offset+0x7c) ~None~ //script Line 843: WRITE_ASCII (offset+0x7c) ~None~ //script E:\BG2_NPC\SoSv1.13\Setup-SOS.tp2 (4 hits) Line 791: WRITE_ASCII (offset+0x7c) ~None~ //script Line 1105: WRITE_ASCII (offset+0x7c) ~None~ //script Line 1384: WRITE_ASCII (offset+0x48) ~None~ //script Line 1626: WRITE_ASCII (offset+0x80) ~None~ //script and for ~~ usage, a zillion... heck, I won't list them, because it looks like the general rule is to use it the way you are suggesting. Sampling, though, finds 1232 hits in 56 files... and that is just 56 of the existing NPC-related .tp2's, we won't even go to the quest and fix mods. Side note - I wish folks would avail themselves of comments in sound lines, because I thought that this is where I picked up the idea that a blank entry could link wrong, but then again it is probably one of those minor quirks of mine that I should just shut up about. I just am saying here for the zillionth time to anyone building mods with soundrefs, that SAY BATTLE_CRY1 ~~ [myRef] //Aieeeeee! is a PITA for .cre check, and is not .tra'd out for completeness in the files for crosscheck; all it takes to make it work beautifully is to comment it like the way BioWare did originally in BG, like this: SAY BATTLE_CRY1 ~[myRef]~ [myRef] //Aieeeeee! or SAY BATTLE_CRY1 ~[MyCre_Battlecry]~ [myRef] //Aieeeeee! or SAY BATTLE_CRY1 ~[BATTLECRY1]~ [myRef] //Aieeeeee! or SAY BATTLE_CRY1 ~[A]~ [myRef] //Aieeeeee! and even blanking a reference can take advantage of .tra and make it easy for WeiDU to locate a completely matching strref. I think modern weidu makes sure to check the associated sound references, so that ~~ [sOUND1] does not get accidentally mapped to ~~ [sOUND2] - it has to, or all these folks using non-commented sounds would have failures and mismatched dying/damaged sounds. But seeing a blank and having to puch the sound in NI/DLTCEP could be avoided if folks would just comment, so when I see [C-ARN05] I know that it may be blank, but has the sound [C-ARN05] attached. I guess it is just a stupid cosmetic pet peeve of mine, and I should shut up and code. Sorry, sidetracked - temujin, back to the question at hand - since it throws NI errors that bug you, and I certainly understand pet peeves, and the fixpack uses it (samples) Line 27490: WRITE_ASCII 0x250 ~~ #32 // blanks all other script references Line 27491: WRITE_ASCII 0x2cc ~~ #8 // blanks dialog file Line 21900: WRITE_ASCII 0x10 ~~ #8 // blanks casting sound Line 26239: WRITE_ASCII ("%cont_off%" + 0x48 + ("%index%" * 0xc0)) ~~ #8 Line 9860: WRITE_ASCII 0x0250 ~~ #8 well, heck, I will roll through them in-project and do the same. Let me take a look: E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\bg1npc.tp2 Line 2657: WRITE_ASCII 0x0258 ~NONE~ #8 // Creature script - Race Line 2658: WRITE_ASCII 0x0260 ~NONE~ #8 // Creature script - General Line 2977: WRITE_ASCII 0x34 ~NONE~ #8 // small portrait Line 3053: WRITE_ASCII 0x3c ~NONE~ #8 // large portrait Line 3054: WRITE_ASCII 0x34 ~NONE~ #8 // small portrait Line 4658: WRITE_ASCII 0x3C ~NONE~ #8 // large portrait Line 6454: WRITE_ASCII 0x2CC ~NONE~ #8 // dialog Moving all of these to Line 2657: WRITE_ASCII 0x0258 ~~ #8 // Creature script - Race Line 2658: WRITE_ASCII 0x0260 ~~ #8 // Creature script - General Line 2977: WRITE_ASCII 0x34 ~~ #8 // small portrait Line 3053: WRITE_ASCII 0x3c ~~ #8 // large portrait Line 3054: WRITE_ASCII 0x34 ~~ #8 // small portrait Line 4658: WRITE_ASCII 0x3C ~~ #8 // large portrait Line 6454: WRITE_ASCII 0x2CC ~~ #8 // dialog 7. bg1npc/phase2/dlg/x#halbaz.d not really an issue, but any reason why both "_MISC47" and "MISC47" are used instead of good old "%tutu_var%MISC47" ? Yep - EasyTutu/Tutu v4 backwards compatibility. Tutu uses _MISC47, older versions of EasyTutu use MISC47, newer _MISC47 (or vice versa0 - there is at least one version of Tutu out there that uses the non-platform-matching resource, so we just look for both I am on the rest in a moment... Link to comment
cmorgan Posted July 17, 2009 Author Share Posted July 17, 2009 1. bg1npc/phase2/dlg/x#newmerch2.d IF ~~ THEN REPLY @1 DO ~StartStore("nsto4901",LastTalkedToBy())~ EXIT // (line 5) store nsto4901 doesn't exist. probably sto4901? yep - and the n must be a typo for _, which is now %tutu_var%. Search "sto4901" (3 hits in 3 files) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\bg1npc.tp2 (1 hits) Line 2909: COPY_EXISTING ~%tutu_var%STO4901.sto~ ~override~ E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\bg1npc_docs\bg1npcvarindex.htm (1 hits) Line 2997: <td>nsto4901</td> E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\dlg\x#newmerch2.d (1 hits) Line 5: IF ~~ THEN REPLY @1 DO ~StartStore("%tutu_var%sto4901",LastTalkedToBy())~ EXIT repaired to IF ~~ THEN REPLY @1 DO ~StartStore("nsto4901",LastTalkedToBy())~ 2. bg1npc/phase3/dyrom/dlg/x#dyronpc.d there are a number of ActionOverride("X#Dyna",___) being used but the DV is nonexistent... (it might be 'dynacutscene') checking: Search "ActionOverride("X#Dyna"" (13 hits in 1 files) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase3\dyrom\dlg\x#dyronpc.d (13 hits) Line 753: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) Line 761: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 761: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 769: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 769: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 777: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 777: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 789: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 789: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 799: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 799: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 809: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 809: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) checking for DV, because I think you are right - this should be the "false/illusionary" Dynaheir clone... ...and, as usual, you are right. Changing these entries to a DV = "dynacutscene" Confirming they are the only instances, Search ""x#dyna"" (13 hits in 1 files) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase3\dyrom\dlg\x#dyronpc.d (13 hits) Line 753: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) Line 761: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 761: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 769: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 769: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 777: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 777: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 789: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 789: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 799: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 799: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 809: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) Line 809: IF ~~ THEN DO ~ActionOverride("X#Dyna",EscapeArea()) SetGlobal("X#DynaheirRomanceInactive","GLOBAL",1) ActionOverride(Player1,LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("edwin",LeaveAreaLUA("%NEBaldursGate_BlushingMermaid_L1%","",[734.619],14)) ActionOverride("X#Dyna",DestroySelf()) OK, got it - all repaired. 3. bg1npc/phase2/baf/x#xzint2.baf and bg1npc/phase2/baf/p#fw0112.baf See("zizi1") See("zizi2") See("zizi3") See("zizi4") script names all start with x#zizi1, x#zizi2, ... according to their CRE OK, some mismatches; E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\p#fw0112.baf (26 hits) Line 11: Global("X#ZiziExists","GLOBAL",0) Line 12: !Exists("zizi1") Line 13: !Exists("zizi2") Line 14: !Exists("zizi3") Line 15: !Exists("zizi4") Line 18: SetGlobal("X#ZiziExists","GLOBAL",1) Line 19: CreateCreature("X#ZIZI1",[587.415],0) //1st location Line 20: CreateCreature("X#ZIZI2",[2205.376],0) //2nd location Line 21: CreateCreature("X#ZIZI3",[2164.1607],0) //3rd location Line 22: CreateCreature("X#ZIZI4",[524.1579],0) //4th location Line 39: Global("X#TalkedToZizi","GLOBAL",1) Line 52: Global("X#TalkedToZizi","GLOBAL",1) Line 70: Global("X#TalkedToZizi","GLOBAL",1) Line 89: Global("X#TalkedToZizi","GLOBAL",2) Line 102: Global("X#TalkedToZizi","GLOBAL",2) Line 120: Global("X#TalkedToZizi","GLOBAL",2) Line 139: Global("X#TalkedToZizi","GLOBAL",3) Line 152: Global("X#TalkedToZizi","GLOBAL",3) Line 171: Global("X#TalkedToZizi","GLOBAL",3) Line 190: Global("X#TalkedToZizi","GLOBAL",4) Line 203: Global("X#TalkedToZizi","GLOBAL",4) Line 222: Global("X#TalkedToZizi","GLOBAL",4) Line 243: InLine("zizi1","xzar") Line 244: InLine("zizi2","xzar") Line 245: InLine("zizi3","xzar") Line 246: InLine("zizi4","xzar") E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#xzint2.baf (4 hits) Line 223: See("zizi1") Line 224: See("zizi2") Line 225: See("zizi3") Line 226: See("zizi4") E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#zizi1.baf (4 hits) Line 8: Global("X#TalkedToZizi","GLOBAL",0) Line 11: SetGlobal("X#TalkedToZizi","GLOBAL",1) Line 20: Global("X#TalkedToZizi","GLOBAL",1) Line 27: GlobalGT("X#TalkedToZizi","GLOBAL",2) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#zizi2.baf (6 hits) Line 2: Global("X#TalkedToZizi","GLOBAL",0) Line 10: SetGlobal("X#TalkedToZizi","GLOBAL",3) Line 14: Global("X#TalkedToZizi","GLOBAL",3) Line 27: Global("X#TalkedToZizi","GLOBAL",1) Line 28: Global("X#TalkedToZizi","GLOBAL",2) Line 29: GlobalGT("X#TalkedToZizi","GLOBAL",4) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#zizi3.baf (6 hits) Line 7: Global("X#TalkedToZizi","GLOBAL",0) Line 11: SetGlobal("X#TalkedToZizi","GLOBAL",5) Line 19: Global("X#TalkedToZizi","GLOBAL",5) Line 28: Global("X#TalkedToZizi","GLOBAL",2) Line 29: Global("X#TalkedToZizi","GLOBAL",4) Line 30: GlobalGT("X#TalkedToZizi","GLOBAL",6) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#zizi4.baf (6 hits) Line 6: Global("X#TalkedToZizi","GLOBAL",0) Line 10: SetGlobal("X#TalkedToZizi","GLOBAL",7) Line 18: Global("X#TalkedToZizi","GLOBAL",7) Line 27: Global("X#TalkedToZizi","GLOBAL",2) Line 28: Global("X#TalkedToZizi","GLOBAL",4) Line 29: Global("X#TalkedToZizi","GLOBAL",6) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\p#fw0112.baf (6 hits) Line 11: Global("X#ZiziExists","GLOBAL",0) Line 18: SetGlobal("X#ZiziExists","GLOBAL",1) Line 19: CreateCreature("X#ZIZI1",[587.415],0) //1st location Line 20: CreateCreature("X#ZIZI2",[2205.376],0) //2nd location Line 21: CreateCreature("X#ZIZI3",[2164.1607],0) //3rd location Line 22: CreateCreature("X#ZIZI4",[524.1579],0) //4th location .tp2 = WRITE_EVALUATED_ASCII 0x280 ~%DEST_RES%~ #32 // death variable So, repairing E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#xzint2.baf (4 hits) Line 223: See("zizi1") Line 224: See("zizi2") Line 225: See("zizi3") Line 226: See("zizi4") and Line 243: InLine("zizi1","xzar") Line 244: InLine("zizi2","xzar") Line 245: InLine("zizi3","xzar") Line 246: InLine("zizi4","xzar") and Line 12: !Exists("zizi1") Line 13: !Exists("zizi2") Line 14: !Exists("zizi3") Line 15: !Exists("zizi4") to the matching x#zizi[#] DVs. 4. bg1npc/phase2/baf/x#saint2.baf Dead("larriaz") // (line 3) script name for Larriaz is actually spelled 'larria' repaired to /* Safana, Larriaz The Sirine - BG Harbor */ IF %BGT_VAR% Dead("larria") Global("X#SLTSBGH","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InMyArea(Player1) !StateCheck(Player1,CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY]) THEN RESPONSE #100 SetGlobal("X#SLTSBGH","GLOBAL",1) END 5. bg1npc/phase2/baf/x#tqfw1200.baf Wait(3) Deactivate("belgin") // (line 18) END <snip> Activate("belgin") // (line 29) END script name is x#belgin according to x#belgin.cre Search ""belgin"" (2 hits in 1 files) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#tqfw1200.baf (2 hits) Line 18: Deactivate("belgin") Line 29: Activate("belgin") Repaired to "x#belgin". Follow up searches to make sure nothing else mismatches: Search ""x#beldin"" (0 hits in 0 files) Search ""x#belgin"" (38 hits in 3 files) E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#tqfw1200.baf (4 hits) Line 6: CreateCreature("X#BELGIN",[1065.516],0) Line 16: // DisplayStringHead("x#belgin",@0) // in tra, @0 = ~Run away! Run away!~ // no tra set Line 18: Deactivate("x#belgin") Line 29: Activate("x#belgin") E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\baf\x#tqtiax.baf (5 hits) Line 30: !Dead("x#belgin") Line 58: !Dead("x#belgin") Line 73: !Dead("x#belgin") Line 98: !Dead("x#belgin") Line 99: !InMyArea("x#belgin") E:\BG1NPC_Workspace\bg1npc-v18_working\bg1npc_18_prerelease\phase2\dlg\x#tiaxquest.d (29 hits) Line 190: ++ @62 DO ~SetGlobal("X#BelginPlacement","GLOBAL",5) ActionOverride("x#belgin",Enemy()) ActionOverride("x#belgin",EscapeArea())~ JOURNAL @63 EXIT Line 190: ++ @62 DO ~SetGlobal("X#BelginPlacement","GLOBAL",5) ActionOverride("x#belgin",Enemy()) ActionOverride("x#belgin",EscapeArea())~ JOURNAL @63 EXIT Line 215: IF ~~ THEN DO ~SetGlobal("X#BelginPlacement","GLOBAL",5) ActionOverride("x#belgin",EscapeArea())~ JOURNAL @72 EXIT Line 262: IF ~~ THEN DO ~SetGlobal("X#BelginPlacement","GLOBAL",5) ActionOverride("x#belgin",GivePartyGold(500)) ActionOverride("x#belgin",EscapeArea())~ JOURNAL @106 EXIT Line 262: IF ~~ THEN DO ~SetGlobal("X#BelginPlacement","GLOBAL",5) ActionOverride("x#belgin",GivePartyGold(500)) ActionOverride("x#belgin",EscapeArea())~ JOURNAL @106 EXIT Line 279: IF ~~ THEN DO ~SetGlobal("X#TiaxQuestBlackmail","GLOBAL",1) ActionOverride("x#belgin",GivePartyGold(500)) SetGlobal("X#BelginPlacement","GLOBAL",7)~ JOURNAL @112 EXIT Line 322: ActionOverride("x#belgin",EscapeArea())~ Line 393: DO ~ActionOverride("x#belgin",GivePartyGold(1000))~ Line 403: ++ @167 DO ~SetGlobal("X#TiaxQuest","GLOBAL",20) ActionOverride("x#belgin",EscapeArea())~ EXIT Line 404: ++ @168 DO ~SetGlobal("X#TiaxQuest","GLOBAL",20) ActionOverride("x#belgin",EscapeArea())~ EXIT Line 406: ++ @170 DO ~SetGlobal("X#TiaxQuest","GLOBAL",20) ActionOverride("x#belgin",EscapeArea())~ EXIT Line 572: + ~!Dead("x#belgin") Global("X#TiaxQuestBlackmail","GLOBAL",0)~ + @249 DO ~SetGlobal("X#TiaxQuest","GLOBAL",5) SetGlobal("X#BelginPlacement","GLOBAL",11) SetGlobal("X#KarrisPlacement","GLOBAL",2) GiveGoldForce(1500)~ JOURNAL @250 EXIT Line 573: + ~!Dead("x#belgin") Global("X#TiaxQuestBlackmail","GLOBAL",0)~ + @374 DO ~SetGlobal("X#TiaxQuest","GLOBAL",5) SetGlobal("X#BelginPlacement","GLOBAL",11) SetGlobal("X#KarrisPlacement","GLOBAL",2) GiveGoldForce(1500)~ JOURNAL @250 EXIT Line 574: + ~Dead("x#belgin")~ + @249 DO ~SetGlobal("X#TiaxQuest","GLOBAL",5) SetGlobal("X#BelginPlacement","GLOBAL",11) SetGlobal("X#KarrisPlacement","GLOBAL",2) GiveGoldForce(1500)~ JOURNAL @251 EXIT Line 575: + ~Dead("x#belgin")~ + @249 DO ~SetGlobal("X#TiaxQuest","GLOBAL",5) SetGlobal("X#BelginPlacement","GLOBAL",11) SetGlobal("X#KarrisPlacement","GLOBAL",2) GiveGoldForce(1500)~ JOURNAL @374 EXIT Line 576: + ~!Dead("x#belgin") Global("X#TiaxQuestBlackmail","GLOBAL",1)~ + @249 DO ~SetGlobal("X#TiaxQuest","GLOBAL",5) SetGlobal("X#BelginPlacement","GLOBAL",11) SetGlobal("X#KarrisPlacement","GLOBAL",2) GiveGoldForce(1500)~ JOURNAL @252 EXIT Line 577: + ~!Dead("x#belgin") Global("X#TiaxQuestBlackmail","GLOBAL",1)~ + @374 DO ~SetGlobal("X#TiaxQuest","GLOBAL",5) SetGlobal("X#BelginPlacement","GLOBAL",11) SetGlobal("X#KarrisPlacement","GLOBAL",2) GiveGoldForce(1500)~ JOURNAL @252 EXIT Line 583: + ~!Dead("x#belgin") Global("X#TiaxQuestBlackmail","GLOBAL",0)~ + @249 DO ~SetGlobal("X#KarrisPlacement","GLOBAL",2) SetGlobal("X#TiaxQuest","GLOBAL",5)~ JOURNAL @254 EXIT Line 584: + ~!Dead("x#belgin") Global("X#TiaxQuestBlackmail","GLOBAL",0)~ + @374 DO ~SetGlobal("X#KarrisPlacement","GLOBAL",2) SetGlobal("X#TiaxQuest","GLOBAL",5)~ JOURNAL @254 EXIT Line 585: + ~!Dead("x#belgin") Global("X#TiaxQuestBlackmail","GLOBAL",1)~ + @249 DO ~SetGlobal("X#KarrisPlacement","GLOBAL",2) SetGlobal("X#TiaxQuest","GLOBAL",5)~ JOURNAL @255 EXIT Line 586: + ~!Dead("x#belgin") Global("X#TiaxQuestBlackmail","GLOBAL",1)~ + @374 DO ~SetGlobal("X#KarrisPlacement","GLOBAL",2) SetGlobal("X#TiaxQuest","GLOBAL",5)~ JOURNAL @255 EXIT Line 587: + ~Dead("x#belgin")~ + @249 DO ~SetGlobal("X#KarrisPlacement","GLOBAL",2) SetGlobal("X#TiaxQuest","GLOBAL",5)~ JOURNAL @256 EXIT Line 588: + ~Dead("x#belgin")~ + @374 DO ~SetGlobal("X#KarrisPlacement","GLOBAL",2) SetGlobal("X#TiaxQuest","GLOBAL",5)~ JOURNAL @256 EXIT Line 653: + ~!Dead("x#belgin")~ + @310 DO ~SetGlobal("X#TiaxQuest","GLOBAL",5) SetGlobal("X#KarrisPlacement","GLOBAL",2)~ JOURNAL @254 EXIT Line 655: + ~Dead("x#belgin")~ + @312 DO ~SetGlobal("X#TiaxQuest","GLOBAL",5) SetGlobal("X#KarrisPlacement","GLOBAL",2)~ JOURNAL @313 EXIT Line 679: IF ~Dead("X#BELGIN")~ THEN EXTERN ~%TIAX_JOINED%~ X#TiaxQuestTiaxCyricOne2 Line 680: IF ~!Dead("X#BELGIN")~ THEN EXTERN ~%TIAX_JOINED%~ X#TiaxQuestTiaxCyricOne1 Line 704: + ~Global("X#TiaxQuestBlackmail","GLOBAL",1) !Dead("x#belgin")~ + @337 EXIT Line 712: + ~Global("X#TiaxQuestBlackmail","GLOBAL",1) !Dead("x#belgin")~ + @337 EXIT 6. bg1npc/phase2/cre/x#jelly.cre and bg1npc/phase2/cre/x#slime.cre default script (0x268) has tutu name '_tasight' assigned repaired in .tp2, COPY ~BG1NPC/Phase2/cre/x#jelly.cre~ ~override/x#jelly.cre~ SAY NAME1 @39 SAY NAME2 @39 SAY BATTLE_CRY1 @40 SAY BATTLE_CRY2 @41 SAY BATTLE_CRY3 @40 SAY BATTLE_CRY4 @41 SAY BATTLE_CRY5 @40 SAY ATTACK1 @42 SAY ATTACK2 @43 SAY DAMAGE @44 SAY DYING @45 SAY SELECT_COMMON1 @46 SAY SELECT_COMMON2 @47 WRITE_ASCII 0x248 ~X#XZJELL~ #8// override script WRITE_ASCII 0x280 ~xzjelly~ #32// death variable WRITE_EVALUATED_ASCII 0x0268 ~%tutu_scriptw%TASIGHT~ #8 // Creature script - Default COPY ~BG1NPC/Phase2/cre/x#slime.cre~ ~override/x#slime.cre~ SAY NAME1 @39 SAY NAME2 @39 SAY BATTLE_CRY1 @40 SAY BATTLE_CRY2 @41 SAY BATTLE_CRY3 @40 SAY BATTLE_CRY4 @41 SAY BATTLE_CRY5 @40 SAY ATTACK1 @42 SAY ATTACK2 @43 SAY DAMAGE @44 SAY DYING @45 SAY SELECT_COMMON1 @46 SAY SELECT_COMMON2 @47 WRITE_ASCII 0x248 ~X#XZSLIM~ #8// override script WRITE_ASCII 0x280 ~xzslime~ #32// death variable WRITE_EVALUATED_ASCII 0x0268 ~%tutu_scriptw%TASIGHT~ #8 // Creature script - Default For docs: <li> <a href="http://forums.gibberlings3.net/index.php?s=&showtopic=16855&view=findpost&p=152451"> Temujin's Resource, DV, and typo repairs part II </a> </li> Link to comment
Guest temujin_ Posted July 17, 2009 Share Posted July 17, 2009 thanks for clarifying. since it throws NI errors that bug you, and i certainly understand pet peeves, and the fixpack uses it (samples) this pet peeve only began a few months back when i started using NI as a debugging tool and got shocked just looking at the thousands of warnings/corrupted resources/etc, and why no one else bothered to correct them. of course you don't have to fix them just because i mentioned it or if you feel things like these are not worth fixing (but cheers for doing it anyway). Link to comment
cmorgan Posted July 17, 2009 Author Share Posted July 17, 2009 Hells no - fixing is fixing The more we look at these things and fix 'em up, the more likely people are to get a clean, working game with everything going as the original folks planned. Even 'cosmetic' errors will throw enough chaff into the air to cloud and hide real problems. I will try running NI over the beta on Easytutu when i get a chance early next week, and ask around about translations, but it is looking like we have enough stuff done on v18 to justify a release. Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.