Jump to content

Coran Romance


Kristal

Recommended Posts

Glancing at the code, none of the romances seem to mind being booted or not. They do mind if you don't match their criteria, they all have dialog choices where they either say "bugger off" and shut down the romance (and even leave the party for good if you are really mean), and I think all of them shut down if you are actively romancing another NPC. On the male side, it is possible to run through the whole Branwen Romance and then romance Dynaheir, because I have done it, as have others - but I believe the other way around doesn't work because Dynaheir's romance goes all the way through/to/past the last screen of the game. You might check with berelinde on the optmal way to get the "romance conflict" between Ajantis and Xan and Coran; that has some really good writing in it.

 

I don't know about serially romancing the men. But booting any one of the NPCs does not have any effect on any of the others. And Safana does not block any on the romance. Be careful with Coran - he is chaotic (for real). You can play that romance many diofferent ways, and even if you choose exactly the same responses each time things might be different...

Link to comment

EDIT: Short Answer:

 

Safana entering the party and leaving the party will not damage the romance. If she is around, progress is blocked. If she is not around, progress resumes. If Coran joins after Safana, then when she leaves you will get the match variable (if you otherwise qualify).

 

 

 

Long Answer:

 

Wow, that's news to me... relooking at the code...

 

there are only a few blocks that relate to Safana:

phase3\corom\baf\p#corom.baf(8): !InParty("safana")

phase3\corom\baf\p#corom.baf(95): !InParty("safana")

phase3\corom\baf\p#corom.baf(145): !InParty("safana")

phase3\corom\baf\p#corom.baf(167): !InParty("safana")

phase3\corom\baf\p#corom.baf(196): !InParty("safana")

phase3\corom\baf\p#corom.baf(467): !InParty("safana")

phase3\corom\baf\p#corom.baf(541): !InParty("safana")

Each one only allows progress if Safana is not in the party, but none of them set a blocking variable. Looking further...

 

Searching for: SetGlobal("P#CoranRomanceInactive","GLOBAL",1)

phase3\challenge\dlg\x#challenge.d(105): IF ~~ THEN DO ~SetGlobal("X#MaleChallengeDone","GLOBAL",1) SetGlobal("X#AjantisCoranChallenge","GLOBAL",2) SetGlobal("P#CoranRomanceInactive","GLOBAL",1) ActionOverride("X#MASTE",EscapeArea()) ActionOverride("X#MASTE",DestroySelf()) RestParty()~ EXIT

phase3\challenge\dlg\x#challenge.d(115): IF ~~ THEN DO ~SetGlobal("X#MaleChallengeDone","GLOBAL",1) SetGlobal("X#AjantisCoranChallenge","GLOBAL",2) SetGlobal("P#CoranRomanceInactive","GLOBAL",1) SetGlobal("X#AjantisRomanceActive","GLOBAL",3) ActionOverride("X#MASTE",EscapeArea()) ActionOverride("X#MASTE",DestroySelf()) RestParty()~ EXIT

phase3\challenge\dlg\x#challenge.d(120): IF ~~ THEN DO ~SetGlobal("X#MaleChallengeDone","GLOBAL",1) SetGlobal("X#AjantisCoranChallenge","GLOBAL",2) SetGlobal("P#CoranRomanceInactive","GLOBAL",1) SetGlobal("X#AjantisRomanceActive","GLOBAL",3) ActionOverride("X#MASTE",EscapeArea()) ActionOverride("X#MASTE",DestroySelf()) RestParty()~ EXIT

phase3\challenge\dlg\x#challenge.d(125): IF ~~ THEN DO ~SetGlobal("X#MaleChallengeDone","GLOBAL",1) SetGlobal("X#AjantisCoranChallenge","GLOBAL",2) SetGlobal("P#CoranRomanceInactive","GLOBAL",1) SetGlobal("X#AjantisRomanceActive","GLOBAL",3) SetGlobal("X#XARomanceInactive","GLOBAL",1) ActionOverride("X#MASTE",EscapeArea()) ActionOverride("X#MASTE",DestroySelf()) RestParty()~ EXIT

phase3\corom\baf\p#corom.baf(43): SetGlobal("P#CoranRomanceInactive","GLOBAL",1)

phase3\corom\baf\p#corom.baf(56): SetGlobal("P#CoranRomanceInactive","GLOBAL",1)

phase3\corom\dlg\p#ciflirt.d(570): IF ~~ THEN DO ~SetGlobal("X#CoranHanaliRune","GLOBAL",10) SetGlobalTimer("X#CoranLonging","GLOBAL", THREE_DAYS) SetGlobal("P#CoranRomanceInactive","GLOBAL",1) RestParty()~ EXIT

phase3\corom\dlg\p#corlt.d(928): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(941): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(1106): ++ @421 DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(1801): ++ @681 DO~ RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(2213): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(2288): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(2317): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(2322): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(2394): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1) RestParty()~

phase3\corom\dlg\p#corlt.d(2609): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(2615): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(2621): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(2634): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(2640): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(2646): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(2652): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(2658): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(2664): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1) LeaveParty() EscapeArea()~

phase3\corom\dlg\p#corlt.d(2670): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(2676): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(3172): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(3177): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(3285): ++ @1197 DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1) ReputationInc(-2) RestParty()~ EXIT

phase3\corom\dlg\p#corlt.d(3318): ++ @1210 DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1) ReputationInc(-2) RestParty()~ EXIT

phase3\corom\dlg\p#corlt.d(3328): ++ @1216 DO ~SetGlobal("P#Co3Healer","GLOBAL",3) SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(3349): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~ EXIT

phase3\corom\dlg\p#corlt.d(3703): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(3709): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(3715): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(3728): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(3734): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(3740): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(3746): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(3752): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(3758): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1) LeaveParty() EscapeArea()~

phase3\corom\dlg\p#corlt.d(3764): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(3770): IF ~~ THEN DO ~RestParty() SetGlobal("P#CoranRomanceInactive","GLOBAL",1)~

phase3\corom\dlg\p#corlt.d(4578): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1) EscapeArea()~ EXIT

phase3\corom\dlg\p#crnpc.d(548): IF ~~ THEN DO ~SetGlobal("P#CoranRomanceInactive","GLOBAL",1) RestParty()~

phase3\xarom\dlg\x#xanlt.d(3560): ++ @1118 DO ~SetGlobal("X#XACoranBreak","GLOBAL",2) SetGlobal("P#CoranRomanceInactive","GLOBAL",1) RestParty()~ EXIT

phase3\xarom\dlg\x#xanlt.d(3561): ++ @1119 DO ~SetGlobal("X#XACoranBreak","GLOBAL",2) SetGlobal("X#XaRomanceInactive","GLOBAL",1) SetGlobal("P#CoranRomanceInactive","GLOBAL",1) RestParty()~ EXIT

Found 48 occurrence(s) in 6 file(s)

 

This means (unless I missed something) that you can add Safana and take her away at random. No romance will progress while she is in party, but I see nowhere that shuts down the romance permanently.

 

The actual match conditions

/* Romance Match */

IF %BGT_VAR%

Global("P#CoranMatch","GLOBAL",0)

Gender(Player1,FEMALE)

!Global("X#AjantisRomanceActive","GLOBAL",2)

!Global("X#XaRomanceActive","GLOBAL",2)

!Global("P#CoranRomanceInactive","GLOBAL",1)

!InParty("safana")

!Alignment(Player1,LAWFUL_EVIL)

OR(3)

Race(Player1,HUMAN)

Race(Player1,ELF)

Race(Player1,HALF_ELF)

ReputationGT(Player1,10)

CheckStatGT(Player1,12,CHR)

THEN

RESPONSE #100

SetGlobal("P#CoranMatch","GLOBAL",1)

END

should keep running over and over again, until the conditions are met :)

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...