diff --git a/ajantisbg1/Docs/Readme.ajantisbg1.English.txt b/ajantisbg1/Docs/Readme.ajantisbg1.English.txt index fd4ed9a..04f5f8a 100644 --- a/ajantisbg1/Docs/Readme.ajantisbg1.English.txt +++ b/ajantisbg1/Docs/Readme.ajantisbg1.English.txt @@ -44,7 +44,7 @@ For more information, please have a look at the files "BG1_Romance_Guide" (for t The file Translation_Guide.txt gives a list about which text lines are the same in BG1NPC Project, hopefully to save some translation time for the one mod or the other. -Please note: For Ajantis to react to game events in SoD accordingly, the main component (Tracking System, 2nd component) of "Road to Discovery" needs to be installed. +Please note: For Ajantis to react to game events in SoD accordingly, the main component (Tracking System, 2nd component) of "Road to Discovery" needs to be included in your install (independent of install order). INSTALLATION @@ -74,7 +74,7 @@ COMPATIBILITY The Ajantis BG1 Expansion Mod is coded using WeiDU, and it does not overwrite any files. The BG1 version patches all area scripts. It should be compatible with most other (WeiDU) mods. Install order is after BG1NPC Project. -Please note: For Ajantis to react to game events in SoD accordingly, the main component (Tracking System, 2nd component) of "Road to Discovery" needs to be installed. +Please note: For Ajantis to react to game events in SoD accordingly, the main component (Tracking System, 2nd component) of "Road to Discovery" needs to be included in your install (independent of install order). I want to thank all who have helped me making this mod. @@ -140,6 +140,12 @@ REDISTRIBUTION NOTE: The Ajantis BG1 Expansion Mod was created to be freely enjo HISTORY +Version 19.3: +-If BG1NPC Romance is installed, Friendship Path should not start for low rep. +-Reaction to three FF on the road should not lead to a stutter. +-Reaction to SoD romances should happen independent whether another ended already. +-Rephrased note about compatibility with Road to Discovery in the readme: RtD does not have to be installed before Ajantis Expansion. + Version 19.2: -Fixed install error for French version. -Corrected patching of scripts for compatibility with EndlessBG1 (no notable bug for players). diff --git a/ajantisbg1/Docs/Readme.ajantisbg1.German.txt b/ajantisbg1/Docs/Readme.ajantisbg1.German.txt index 5cfe85c..c35345a 100644 --- a/ajantisbg1/Docs/Readme.ajantisbg1.German.txt +++ b/ajantisbg1/Docs/Readme.ajantisbg1.German.txt @@ -133,6 +133,12 @@ REDISTRIBUTION NOTE: The Ajantis BG1 Expansion Mod was created to be freely enjo HISTORY +Version 19.3: +-If BG1NPC Romance is installed, Friendship Path should not start for low rep. +-Reaction to three FF on the road should not lead to a stutter. +-Reaction to SoD romances should happen independent whether another ended already. +-Rephrased note about compatibility with Road to Discovery in the readme: RtD does not have to be installed before Ajantis Expansion. + Version 19.2: -Fixed install error for French version. -Corrected patching of scripts for compatibility with EndlessBG1 (no notable bug for players). diff --git a/ajantisbg1/Friendship/Ajantis_friendship.baf b/ajantisbg1/Friendship/Ajantis_friendship.baf index d77b292..c39e4b2 100644 --- a/ajantisbg1/Friendship/Ajantis_friendship.baf +++ b/ajantisbg1/Friendship/Ajantis_friendship.baf @@ -1,32 +1,10 @@ /* APPEND ajantis.bcs for "friendship path". Universal baf for BG1 + Tutu/BGT */ -/* prevent friendship dialogues to start if PC could be romance material */ -/* failsave for low rep */ -IF %BGT_VAR% - Global("C#AjantisRomanceMatch_possible","GLOBAL",0) - Gender(Player1,FEMALE) - OR(4) - Alignment(Player1,MASK_GOOD) - Alignment(Player1,LAWFUL_NEUTRAL) - Alignment(Player1,NEUTRAL) - Class(Player1,DRUID_ALL) - OR(4) - Race(Player1,HUMAN) - Race(Player1,HALF_ELF) - Race(Player1,HALFLING) - Race(Player1,ELF) - !HasItemEquiped("%tutu_var%BELT05",Player1) //girdle of gender bender - !HasItemEquiped("%tutu_var%HELM02",Player1) //helmet of alignment -THEN - RESPONSE #100 - SetGlobal("C#AjantisRomanceMatch_possible","GLOBAL",1) -END - /* start friendship dialogues */ IF %BGT_VAR% InParty(Myself) - Global("X#AjantisRomanceMatch","GLOBAL",0) + Global("X#AjantisRomanceMatch","GLOBAL",0) Global("C#AjantisRomanceMatch_possible","GLOBAL",0) Global("C#AjanFP_NoPCTalks","GLOBAL",0) Global("C#AjantisPCTalk","GLOBAL",0) diff --git a/ajantisbg1/Friendship/Ajantis_friendship_bg1npcrom.baf b/ajantisbg1/Friendship/Ajantis_friendship_bg1npcrom.baf new file mode 100644 index 0000000..49a4fba --- /dev/null +++ b/ajantisbg1/Friendship/Ajantis_friendship_bg1npcrom.baf @@ -0,0 +1,22 @@ +/* prevent friendship dialogues to start if PC could be romance material */ +/* failsave for low rep */ +IF %BGT_VAR% + Global("C#AjantisRomanceMatch_possible","GLOBAL",0) + Gender(Player1,FEMALE) + ReputationLT(Player1,11) + OR(4) + Alignment(Player1,MASK_GOOD) + Alignment(Player1,LAWFUL_NEUTRAL) + Alignment(Player1,NEUTRAL) + Class(Player1,DRUID_ALL) + OR(4) + Race(Player1,HUMAN) + Race(Player1,HALF_ELF) + Race(Player1,HALFLING) + Race(Player1,ELF) + !HasItemEquiped("%tutu_var%BELT05",Player1) //girdle of gender bender + !HasItemEquiped("%tutu_var%HELM02",Player1) //helmet of alignment +THEN + RESPONSE #100 + SetGlobal("C#AjantisRomanceMatch_possible","GLOBAL",1) +END \ No newline at end of file diff --git a/ajantisbg1/Friendship/Tutu_Interjections.d b/ajantisbg1/Friendship/Tutu_Interjections.d index 8f23bf5..31ad4e2 100644 --- a/ajantisbg1/Friendship/Tutu_Interjections.d +++ b/ajantisbg1/Friendship/Tutu_Interjections.d @@ -45,7 +45,8 @@ I_C_T ~%tutu_var%FLAM5~ 0 C#AjantisFLAM5_0 END APPEND ~%AJANTIS_JOINED%~ -IF ~Global("C#AjantisFLAM5_0","GLOBAL",2)~ THEN flam5_dead +IF WEIGHT #-1 +~Global("C#AjantisFLAM5_0","GLOBAL",2)~ THEN flam5_dead SAY @17 /* ~What - what impertinent fools! Attacking the ones that are here to help their cause of stopping the bandit threat - attacking us, making us kill them! What an unfortunate cause of events.~ */ IF ~~ THEN DO ~SetGlobal("C#AjantisFLAM5_0","GLOBAL",3)~EXIT END diff --git a/ajantisbg1/Setup-AjantisBG1.tp2 b/ajantisbg1/Setup-AjantisBG1.tp2 index da4ac70..1526d67 100644 --- a/ajantisbg1/Setup-AjantisBG1.tp2 +++ b/ajantisbg1/Setup-AjantisBG1.tp2 @@ -14,7 +14,7 @@ AUTHOR ~Please post at G3 or Kerzenburgforum, refer to readme.~ //MODDER -VERSION ~19.2~ // +VERSION ~19.3~ // README ~AjantisBG1/docs/readme.ajantisbg1.%LANGUAGE%.txt~ ~AjantisBG1/docs/readme.ajantisbg1.english.txt~ @@ -187,9 +187,16 @@ ACTION_IF GAME_IS ~tutu tutu_totsc bgt bgee eet~ THEN BEGIN EXTEND_TOP ~%tutu_var%ajantis.bcs~ ~AjantisBG1/Friendship/Ajantis_friendship.baf~ EVALUATE_BUFFER -/* in case BG1NPC romance ends, Ajantis shouldn't start friendship track from the beginning */ -EXTEND_TOP ~%tutu_var%ajantis.bcs~ ~AjantisBG1/Friendship/Variable_transfer.baf~ + +/* compatibility with BG1NPC romance */ +ACTION_IF (MOD_IS_INSTALLED ~bg1npc.tp2~ ~20~) OR (MOD_IS_INSTALLED ~bg1npc.tp2~ ~21~) OR(MOD_IS_INSTALLED ~bg1npc.tp2~ ~22~) OR(MOD_IS_INSTALLED ~bg1npc.tp2~ ~23~) OR(MOD_IS_INSTALLED ~bg1npc.tp2~ ~24~) BEGIN +/* make sure friendshipt doesn't start because of too low rep for romance */ + EXTEND_TOP ~%tutu_var%ajantis.bcs~ ~AjantisBG1/Friendship/Ajantis_friendship_bg1npcrom.baf~ EVALUATE_BUFFER +/* in case BG1NPC romance ends, Ajantis shouldn't start friendship track from the beginning */ + EXTEND_TOP ~%tutu_var%ajantis.bcs~ ~AjantisBG1/Friendship/Variable_transfer.baf~ +EVALUATE_BUFFER +END END diff --git a/ajantisbg1/ajantissod/baf/bdajanti_patch.baf b/ajantisbg1/ajantissod/baf/bdajanti_patch.baf index 54630b7..49067f3 100644 --- a/ajantisbg1/ajantissod/baf/bdajanti_patch.baf +++ b/ajantisbg1/ajantissod/baf/bdajanti_patch.baf @@ -364,8 +364,6 @@ IF !Dead("Rasaad") GlobalGT("bd_RasaadRomance4","GLOBAL",0) Global("bd_rasaad_romanceactive","global",1) - Global("bd_voghiln_romanceactive","global",0) - Global("bd_corwin_romanceactive","global",0) OR(3) !RealGlobalTimerNotExpired("C#AjSoD_DialogReactionTimer","GLOBAL") GlobalGT("bd_plot","GLOBAL",349) @@ -387,9 +385,7 @@ IF Global("C#AjSoD_IgnoreRomances","GLOBAL",0) !Dead("Voghiln") GlobalGT("bd_VoghilnRomance3","GLOBAL",0) - Global("bd_rasaad_romanceactive","global",0) Global("bd_voghiln_romanceactive","global",1) - Global("bd_corwin_romanceactive","global",0) OR(3) !RealGlobalTimerNotExpired("C#AjSoD_DialogReactionTimer","GLOBAL") GlobalGT("bd_plot","GLOBAL",349) @@ -411,8 +407,6 @@ IF Global("C#AjSoD_IgnoreRomances","GLOBAL",0) !Dead("Corwin") GlobalGT("bd_CorwinRomance3","GLOBAL",0) - Global("bd_rasaad_romanceactive","global",0) - Global("bd_voghiln_romanceactive","global",0) Global("bd_corwin_romanceactive","global",1) OR(2) !RealGlobalTimerNotExpired("C#AjSoD_DialogReactionTimer","GLOBAL") @@ -424,7 +418,7 @@ THEN SetGlobal("C#AjSoD_RomanceConflict","GLOBAL",3) END -/* trigger for all in-group romance conflicts */ +/* Romance conflicts - Corwin, Rasaad, or Voghiln */ IF InParty(Myself) See(Player1) @@ -436,6 +430,20 @@ IF Global("C#AjSoD_RomanceConflict","GLOBAL",1) //Rasaad Global("C#AjSoD_RomanceConflict","GLOBAL",2) //Voghlin Global("C#AjSoD_RomanceConflict","GLOBAL",3) //Corwin +THEN + RESPONSE #100 + SetGlobal("C#AjSoD_RomanceConflict","GLOBAL",4) +END + +/* trigger for all in-group romance conflicts */ +IF + InParty(Myself) + See(Player1) + CombatCounter(0) + !See([ENEMY]) + !StateCheck(Myself,CD_STATE_NOTVALID) + !StateCheck(PLAYER1,CD_STATE_NOTVALID) + Global("C#AjSoD_RomanceConflict","GLOBAL",4) //Any of them THEN RESPONSE #100 RealSetGlobalTimer("C#AjSoD_DialogReactionTimer","GLOBAL",600) diff --git a/ajantisbg1/ajantissod/dialogue/dialogues_sod.d b/ajantisbg1/ajantissod/dialogue/dialogues_sod.d index 3d97cfc..50fbfb9 100644 --- a/ajantisbg1/ajantissod/dialogue/dialogues_sod.d +++ b/ajantisbg1/ajantissod/dialogue/dialogues_sod.d @@ -101,7 +101,11 @@ END /* Romance conflict: Rasaad */ -IF ~Global("C#AjSoD_RomanceConflict","GLOBAL",1)~ THEN rasaad_conflict +IF ~Global("C#AjSoD_RomanceConflict","GLOBAL",4) +GlobalGT("bd_RasaadRomance4","GLOBAL",0) +Global("bd_rasaad_romanceactive","global",1) +Global("bd_voghiln_romanceactive","global",0) +Global("bd_corwin_romanceactive","global",0)~ THEN rasaad_conflict SAY @38 /* [Ajantis]My love, I noticed that Rasaad seems to have taken a great liking to you. I think he is... romantically interested in you, . */ ++ @39 /* [PC Reply]I think you are right. I noticed it, too. */ + rasaad_conflict_01 ++ @40 /* [PC Reply]I'm not sure. He's a good friend, Ajantis. */ + rasaad_conflict_01 @@ -133,7 +137,11 @@ END /* Romance conflict: VOGHILN */ -IF ~Global("C#AjSoD_RomanceConflict","GLOBAL",2)~ THEN voghiln_conflict +IF ~Global("C#AjSoD_RomanceConflict","GLOBAL",4) +GlobalGT("bd_VoghilnRomance3","GLOBAL",0) +Global("bd_voghiln_romanceactive","global",1) +Global("bd_corwin_romanceactive","global",0) +Global("bd_rasaad_romanceactive","global",0)~ THEN voghiln_conflict SAY @48 /* [Ajantis]My love, I noticed that Voghiln seems to have taken a great liking to you. I think he is... romantically interested in you, . */ ++ @39 /* [PC Reply]I think you are right. I noticed it, too. */ + voghiln_conflict_01 ++ @49 /* [PC Reply]I'm not sure. He's fun to have around, Ajantis. */ + voghiln_conflict_01 @@ -164,7 +172,11 @@ END /* Romance conflict: Corwin */ -IF ~Global("C#AjSoD_RomanceConflict","GLOBAL",3)~ THEN corwin_conflict +IF ~Global("C#AjSoD_RomanceConflict","GLOBAL",4) +GlobalGT("bd_CorwinRomance3","GLOBAL",0) +Global("bd_corwin_romanceactive","global",1) +Global("bd_rasaad_romanceactive","global",0) +Global("bd_voghiln_romanceactive","global",0)~ THEN corwin_conflict SAY @51 /* [Ajantis]My love, I noticed that Corwin seems to have taken a great liking to you. I think she is... romantically interested in you, . */ ++ @39 /* [PC Reply]I think you are right. I noticed it, too. */ + corwin_conflict_01 ++ @52 /* [PC Reply]I'm not sure. She's a good friend, Ajantis. */ + corwin_conflict_01