Jump to content

New Mod? bg1npc - BG2 /Flirt pack continuity


vtancredi

Recommended Posts

If we are talking templates, I'd start with EXTEND_BOTTOM/ADD_STATE_TRIGGERs on Minsc's or Imoen's (Imoen is probably better since you can't avoid talking to her) original dialogue with a couple-three new PC options that will allow the eligible player to express the fact that he did romance Dynaheir and how he felt about it, set Globals from there that will activate the rest of the content, if the options were chosen and optionally taking into account PC's mood/etc.

Link to comment

Yep, cool idea: I actually have the info squirreled away on these states to help these folks when they get writing; just giving them the basic idea so they start posting dialog. Just a big game of "finish the sentence", and they would have a good basis for what they want done :suspect:

 

EXTEND_BOTTOM  two joining dialogue states for Imoen;
IF ~~ THEN REPLY ~textHere~ DO ~SetGlobal("DyPCRomance","GLOBAL",1) GOTO DyPCJustFriends
EXTEND_BOTTOM  two joining dialogue states for Imoen;
IF ~~ THEN REPLY ~textHere~ DO ~SetGlobal("DyPCRomance","GLOBAL",2) GOTO DyPCRomantic
EXTEND_BOTTOM  two joining dialogue states for Imoen;
IF ~~ THEN REPLY ~textHere~ DO ~SetGlobal("DyPCRomance","GLOBAL",3) GOTO DyPCBrokeUp

 

Label Imoen's CHAINs recoded correctly above with states and conditions and then

 

I_C_T minsc's state EXTERN Minsc's 3 possible chains

I_C_T jaheira's state EXTERN Jaheira's 3 possible chains

conclude with SetGlobals to 4 either BAF or on InParty(imoen)(minsc)(jaheira) response

Link to comment

What you also want to do is to add checks for each options so that a female PC do not see these replies (I guess you don't really need the add_trigger here, ie

 

IF ~Gender(Player1,MALE) CheckStatGT(Player1,11, WIS) CheckStatGT(Player1,11, INT)~ THEN REPLY ~textHere~ DO ~SetGlobal("DyPCRomance","GLOBAL",1) GOTO DyPCJustFriends

Link to comment
What you also want to do is to add checks for each options so that a female PC do not see these replies (I guess you don't really need the add_trigger here, ie

 

IF ~Gender(Player1,MALE) CheckStatGT(Player1,11, WIS) CheckStatGT(Player1,11, INT)~ THEN REPLY ~textHere~ DO ~SetGlobal("DyPCRomance","GLOBAL",1) GOTO DyPCJustFriends

 

Couple of questions:

1. why do you check for the WIS and INT in your query above? Is that to match the original conditions of qualifying for Dynaheir's romance?

2. can you confirm what the end states were for the D romance? Are they as Cmorgan laid out above? It would help to define what text needs to be written.

Link to comment

Which brings up another branch option; female PC responding to best friend's death...

 

Folks, do you see why Domi is hesitant here? A good, simple idea, that can rapidly expand into a full fledged 10000+ hour rebuild mod, just to add a few lines! :suspect:

 

Still waiting for brave and interested souls to start playing with the text. Domi is way to busy, I stink at dialogue, and everyone else is around to help and comment, but this is your idea...

 

don't worry about the end states; write the dialogue you want the PC and actors to say. We will handle the integration and post here for you to tinker with. The point here is not to specifically match what globals were set, etc.... the player can do that by their reponse choice ("I wuvved her deeply, madly, truly" = 2, "Yo, Edwin was better all around" = 3, "I miss m' buddy"=1)

Link to comment
Is that to match the original conditions of qualifying for Dynaheir's romance?

 

I think so, but please, double-check, I wrote Shar, worked on Kivan, Valygar and seven original NPCs since Dyna, so my memory wavers :suspect: Alignment will be restricted also, I guess.

 

As Cmorgan said, there is no use in trying to match romance globals from BG1, because by definition you initiate the mod 'from scratch' in BG2, allowing PC to chose that the romance as, as opposite to transfering the information from BG1 during transition. What will be more useful for you is to register a prefix at BWL and use it for your Globals so you prevent any potential conflicts.

Link to comment
Is that to match the original conditions of qualifying for Dynaheir's romance?

 

I think so, but please, double-check, I wrote Shar, worked on Kivan, Valygar and seven original NPCs since Dyna, so my memory wavers :suspect: Alignment will be restricted also, I guess.

 

As Cmorgan said, there is no use in trying to match romance globals from BG1, because by definition you initiate the mod 'from scratch' in BG2, allowing PC to chose that the romance as, as opposite to transfering the information from BG1 during transition. What will be more useful for you is to register a prefix at BWL and use it for your Globals so you prevent any potential conflicts.

 

I'm working on this now, but I'd like to get minsc's dialogue from the first scene in BG2 to work from. Do you know where I could get that?

Link to comment

Imoen's beginning:

IF ~True()
~ THEN BEGIN 0 // from:
 SAY #19752 /* ~Wake up, you! Wake up! Come on, we have to get outta here!~ [IMOEN01] */
 IF ~~ THEN REPLY #19753 /* ~What... Imoen? What's going on?~ */ DO ~EraseJournalEntry(465)
ActionOverride("m05pcspy",DestroySelf())
~ JOURNAL #34089 /* ~Chapter 1

My old friend Imoen has rescued me from imprisonment.  I don't remember how I was brought here, and neither do I know who would wish us locked up.  My mind aches and my memory is a haze... what has happened?  Where am I?~ */ FLAGS 128 GOTO 1
 IF ~~ THEN REPLY #19754 /* ~Who... who are you?~ */ DO ~EraseJournalEntry(465)
ActionOverride("m05pcspy",DestroySelf())
~ JOURNAL #34089 /* ~Chapter 1

My old friend Imoen has rescued me from imprisonment.  I don't remember how I was brought here, and neither do I know who would wish us locked up.  My mind aches and my memory is a haze... what has happened?  Where am I?~ */ FLAGS 128 GOTO 3
 IF ~~ THEN REPLY #19756 /* ~Keep... keep your greaves on, I'll move when I'm ready.~ */ DO ~EraseJournalEntry(465)
ActionOverride("m05pcspy",DestroySelf())
~ JOURNAL #34089 /* ~Chapter 1

My old friend Imoen has rescued me from imprisonment.  I don't remember how I was brought here, and neither do I know who would wish us locked up.  My mind aches and my memory is a haze... what has happened?  Where am I?~ */ FLAGS 128 GOTO 4
END

IF ~~ THEN BEGIN 1 // from: 0.0
 SAY #19757 /* ~He messed with your head too, huh?  All I know is we were near Baldur's Gate and got jumped.~ */
 IF ~~ THEN GOTO 2
END

IF ~~ THEN BEGIN 2 // from: 5.0 1.0
 SAY #19758 /* ~I don't think I want to remember it all.  He's been... doing things... to us. <CHARNAME>, we have to get out of here!~ */
 IF ~~ THEN REPLY #19775 /* ~Can I trust you? I don't remember a thing.~ */ GOTO 6
 IF ~~ THEN REPLY #19776 /* ~Doing things? What do you mean?~ */ GOTO 7
 IF ~~ THEN REPLY #19777 /* ~Alright, I'm moving. I ache all over though.~ */ GOTO 8
 IF ~~ THEN REPLY #38472 /* ~I'm sorry, could you give me the long version of our history? It's like we just met.~ */ GOTO 19
END

IF ~~ THEN BEGIN 3 // from: 0.1
 SAY #19759 /* ~Who am I!?  He messed with your head too, huh?  I'm Imoen.  We lived in the same place for years.~ */
 IF ~~ THEN GOTO 5
END

IF ~~ THEN BEGIN 4 // from: 0.2
 SAY #19765 /* ~You'd better make yourself ready right quick, you goon!  Don't you remember getting dragged here?~ */
 IF ~~ THEN GOTO 5
END

IF ~~ THEN BEGIN 5 // from: 4.0 3.0
 SAY #19772 /* ~I guess I can't blame you for forgetting.  All I remember is us getting jumped near Baldur's Gate. It was quick...~ */
 IF ~~ THEN GOTO 2
END

IF ~~ THEN BEGIN 6 // from: 24.0 2.0
 SAY #19789 /* ~It must be because he's been messing with our heads.  I don't remember much, but I know it... it hurt.  <CHARNAME>, I just have to get out of here.~ */
 IF ~~ THEN REPLY #19819 /* ~We can't run around blindly. Who's behind this?~ */ GOTO 9
 IF ~~ THEN REPLY #19820 /* ~I heard you. A headache is no excuse for poor planning though.~ */ GOTO 10
 IF ~~ THEN REPLY #19821 /* ~We'll get out and then figure out what's going on.~ */ GOTO 11
 IF ~~ THEN REPLY #19831 /* ~How did you get free if our captor is so powerful?~ */ GOTO 12
END

IF ~~ THEN BEGIN 7 // from: 24.1 2.1
 SAY #19800 /* ~Come on, <CHARNAME>, don't make me think of it.  He did the same to you, I think. I heard you screaming like it, anyway.~ */
 IF ~~ THEN REPLY #19815 /* ~I want to know who's behind this. I owe them a debt of pain.~ */ GOTO 9
 IF ~~ THEN REPLY #19817 /* ~A little headache is not going to stop me.~ */ GOTO 10
 IF ~~ THEN REPLY #19818 /* ~We'll get out and then we'll figure out what's going on.~ */ GOTO 11
 IF ~~ THEN REPLY #19832 /* ~If we're in such danger, how did you get free?~ */ GOTO 12
END

IF ~~ THEN BEGIN 8 // from: 24.2 2.2
 SAY #19807 /* ~Yeah, me too, but my head hurts the most.  Yours too by the sound of the screaming.  We just have to get out of here.~ */
 IF ~~ THEN REPLY #19811 /* ~We'll go, but I must know who is behind this.~ */ GOTO 9
 IF ~~ THEN REPLY #19812 /* ~I'll not let a little headache get in my way.~ */ GOTO 10
 IF ~~ THEN REPLY #19814 /* ~We'll get free and then figure out what's going on.~ */ GOTO 11
 IF ~~ THEN REPLY #19833 /* ~How did you get free in the first place?~ */ GOTO 12
END

IF ~~ THEN BEGIN 9 // from: 8.0 7.0 6.0
 SAY #19886 /* ~Later! I'm sorry, but I'm not sure I could get loose again if he came back!  My head hurts so bad...~ */
 IF ~~ THEN GOTO 10
END

IF ~~ THEN BEGIN 10 // from: 12.0 11.0 9.0 8.1 7.1 6.1
 SAY #19915 /* ~It isn't like a normal pain.  <CHARNAME>, it's on the inside, like my bones made a little dagger and it won't go away.~ */
 IF ~~ THEN GOTO 18
END

IF ~~ THEN BEGIN 11 // from: 8.2 7.2 6.2
 SAY #19918 /* ~Good, because I don't know if I could get loose again if I had to. Not with the pain in my head...~ */
 IF ~~ THEN GOTO 10
END

IF ~~ THEN BEGIN 12 // from: 8.3 7.3 6.3
 SAY #19922 /* ~There was fighting... my cell was damaged.  I don't know if I could get out again.  The pain in my head is getting worse.~ */
 IF ~~ THEN GOTO 10
END

IF ~~ THEN BEGIN 13 // from: 25.0
 SAY #19929 /* ~I don't think it's our gear.  They probably sold our best stuff, but anything is better than nothing. Now let's go!~ */
 IF ~~ THEN DO ~JoinParty()
~ EXIT
END

IF ~~ THEN BEGIN 14 // from: 26.0
 SAY #19946 /* ~Good, I didn't want to go by myself. I need you around, <CHARNAME>.  Don't want to be here alone.~ */
 IF ~~ THEN DO ~

~ GOTO 25
END

IF ~~ THEN BEGIN 15 // from: 26.1
 SAY #19950 /* ~Stop being like that! I know it's just because he messed with your head, but that excuse only goes so far.~ */
 IF ~~ THEN GOTO 17
END

IF ~~ THEN BEGIN 16 // from: 26.2
 SAY #19953 /* ~I'm not going to step on your tail.  You've been the responsible one forever, and I don't plan on making changes here.~ */
 IF ~~ THEN DO ~

~ GOTO 25
END

IF ~~ THEN BEGIN 17 // from: 15.0
 SAY #25517 /* ~Come on!  I'll drag you out of here if I have to, just so long as we get out!  I can't go through any more.~ */
 IF ~~ THEN DO ~

~ GOTO 25
END

IF ~~ THEN BEGIN 18 // from: 10.0
 SAY #25518 /* ~Don't look at me like that, it just hurts, all right?  Must have been the noise.  There was a fight... assassins came after our captor, I think.~ */
 IF ~~ THEN GOTO 26
END

IF ~~ THEN BEGIN 19 // from: 2.3
 SAY #38474 /* ~Oh all right, but then we have to get going. It isn't safe here.~ */
 IF ~~ THEN GOTO 20
END

IF ~~ THEN BEGIN 20 // from: 19.0
 SAY #38475 /* ~We lived at Candlekeep.  It was the safest place, what with you having that Bhaal blood.  You were with Gorion.  I guess I came along later.~ */
 IF ~~ THEN GOTO 21
END

IF ~~ THEN BEGIN 21 // from: 20.0
 SAY #38480 /* ~I think they let us stay because Gorion had powerful friends.  I wish he had said where I was before that, but he thought it wasn't important, so I didn't worry too much.~ */
 IF ~~ THEN GOTO 22
END

IF ~~ THEN BEGIN 22 // from: 21.0
 SAY #38485 /* ~Gorion was like a father, but I preferred old Winthrop. He was the innkeep, and he taught me about keeping out of sight and such.~ */
 IF ~~ THEN GOTO 23
END

IF ~~ THEN BEGIN 23 // from: 22.0
 SAY #38486 /* ~We left when Sarevok killed Gorion.  I was sorry I couldn't help, but we got him in the end. Remember that?  That Sarevok turned out to be a child of Bhaal, like you?~ */
 IF ~~ THEN GOTO 24
END

IF ~~ THEN BEGIN 24 // from: 23.0
 SAY #38487 /* ~Anyway, now we're stuck in this place after getting captured by some creep that has been torturing us!  Now, can we please go?~ */
 IF ~~ THEN REPLY #38491 /* ~Can I trust you? I still don't really remember a thing.~ */ GOTO 6
 IF ~~ THEN REPLY #38492 /* ~Doing tests? Torturing? What do you mean?~ */ GOTO 7
 IF ~~ THEN REPLY #38493 /* ~Alright, I'm moving. I ache all over though.~ */ GOTO 8
END

IF ~~ THEN BEGIN 25 // from: 27.0 17.0 16.0 14.0
 SAY #47217 /* ~We should look in that room to the west first, west and just a bit north. I think I saw some weapons in there.  It's a room off the corner of this one.~ */
 IF ~~ THEN GOTO 13
END

IF ~~ THEN BEGIN 26 // from: 18.0
 SAY #56698 /* ~There's people dead all over and the fighting is still going on.  I could hear it.  Are you going to get moving or do I leave without you?~ */
 IF ~~ THEN REPLY #58642 /* ~Right you are. Let's go.~ */ GOTO 14
 IF ~~ THEN REPLY #58643 /* ~You seem awful quick to abandon me.~ */ GOTO 15
 IF ~~ THEN REPLY #58644 /* ~Fine, I'm moving, but I don't take kindly to your orders.~ */ GOTO 16
 IF ~~ THEN REPLY #61011 /* ~We won't get far on our own. Is there anyone here who can join with us?~ */ GOTO 27
END

IF ~~ THEN BEGIN 27 // from: 26.3
 SAY #61012 /* ~Minsc and Jaheira are just northeast of us, trapped in cells sorta like yours. We should free them and then find some gear.~ */
 IF ~~ THEN GOTO 25
END

 

 

Minsc's beginning:

BEGIN ~MINSCA~

IF ~NumTimesTalkedTo(0)
~ THEN BEGIN 0 // from:
 SAY #2306 /* ~AHHHH!! Minsc will be free!! These bonds will not hold my wrath! Butts will be liberally kicked in good measure!!~ [MINSC01] */
 IF ~~ THEN REPLY #2356 /* ~Minsc? Your mighty warrior spirit must find these bars unbearable!~ */ GOTO 1
 IF ~~ THEN REPLY #2357 /* ~Can you control your anger long enough to safely leave this place?~ */ GOTO 16
 IF ~~ THEN REPLY #2358 /* ~I remember traveling with you, but how did we get here?~ */ GOTO 17
 IF ~~ THEN REPLY #2371 /* ~If you've anything of value to say do it now, and without such wailing.~ */ GOTO 18
END

IF ~~ THEN BEGIN 1 // from: 0.0
 SAY #2364 /* ~Time is short for talk that is small! Release me! I will rain beatings down upon all who have dared touch me and... and... Dynaheir! She will be avenged!~ */
 IF ~~ THEN REPLY #2393 /* ~Calm yourself! We must keep our heads if we are to escape.~ */ GOTO 19
 IF ~~ THEN REPLY #2394 /* ~Dynaheir? There is another trapped here?~ */ GOTO 7
 IF ~~ THEN REPLY #2395 /* ~I grow weary of your outbursts! If you continue I will leave you here!~ */ GOTO 8
END

IF ~~ THEN BEGIN 2 // from: 16.0
 SAY #2373 /* ~NO! No control! No mercy! I will avenge... avenge... Dynaheir!~ */
 IF ~~ THEN REPLY #2397 /* ~We have to keep our heads if we are to escape this place.~ */ GOTO 19
 IF ~~ THEN REPLY #2516 /* ~You were watching over Dynaheir? Is she trapped here too?~ */ GOTO 7
 IF ~~ THEN REPLY #2517 /* ~I will leave you here if you do not compose yourself at once.~ */ GOTO 8
END

IF ~~ THEN BEGIN 3 // from: 17.0
 SAY #2381 /* ~I know not who has done this, but I will avenge most viciously the wrongs they... the wrongs... Dynaheir! I will cave their skulls for what they have done!~ */
 IF ~~ THEN REPLY #2518 /* ~We must maintain our heads if we are to exit here alive.~ */ GOTO 19
 IF ~~ THEN REPLY #2519 /* ~Dynaheir? Is she trapped here as well? I have not seen her.~ */ GOTO 7
 IF ~~ THEN REPLY #2520 /* ~I will leave you here if you do not compose yourself.~ */ GOTO 8
END

IF ~~ THEN BEGIN 4 // from: 18.0
 SAY #2382 /* ~I will continue my adventures with you and... and... those that do evil will pay dearly for their actions! So swears Minsc! On Dynaheir's grave, so swear I!~ */
 IF ~~ THEN REPLY #2521 /* ~We must maintain our heads if we are to exit here alive.~ */ GOTO 19
 IF ~~ THEN REPLY #2522 /* ~Dynaheir? Was she trapped here as well?~ */ GOTO 7
 IF ~~ THEN REPLY #2523 /* ~I will leave you behind if you do not gain control of yourself.~ */ GOTO 8
END

IF ~~ THEN BEGIN 5 // from: 19.0
 SAY #2383 /* ~I will exact penance from each and every wicked soul that dared lay a finger on...~ */
 IF ~~ THEN GOTO 20
END

IF ~~ THEN BEGIN 6 // from:
 SAY #2384 /* ~Will you help? We must join together once more, and our fury will be such that bards will run their quills dry! Yes, ink will be scarce where e'er we go!~ */
 IF ~~ THEN REPLY #2526 /* ~Join with me, but you better serve me better than you did Dynaheir.~ */ GOTO 21
 IF ~~ THEN REPLY #2527 /* ~Stand by my side, and our enemies will answer for what they have done.~ */ GOTO 22
 IF ~~ THEN REPLY #2528 /* ~Your very being here shows you are weak. I will leave you where you are.~ */ GOTO 24
 IF ~~ THEN REPLY #2529 /* ~I will release you, Minsc, but I think it best that we part ways. I've troubles of my own that must take precedence over your cause.~ */ GOTO 27
END

IF ~~ THEN BEGIN 7 // from: 4.1 3.1 2.1 1.1
 SAY #2411 /* ~Trapped?! Her spirit... her spirit is trapped in a cage created by my failure. I was to guard her, but she... she...~ */
 IF ~~ THEN GOTO 20
END

IF ~~ THEN BEGIN 8 // from: 4.2 3.2 2.2 1.2
 SAY #2524 /* ~Reconsider! I will rage as never before, and those in my path will fall left, right and 'round the back! Dynaheir is... she is dead, and I will not rest...~ */
 IF ~~ THEN GOTO 20
END

IF ~~ THEN BEGIN 9 // from: 21.0
 SAY #2525 /* ~If anything I shall be even more single-minded in my focus! Minsc is Minsc and it shall always be so. Come Boo, we are among friends again!~ */
 IF ~~ THEN REPLY #2545 /* ~Ahh, I see you still have that... rodent. Dare I ask how you have kept it hidden from our captors?~ */ GOTO 29
 IF ~~ THEN REPLY #2546 /* ~Are you talking to a... hamster?  What kind of a warrior are you?~ */ GOTO 30
END

IF ~~ THEN BEGIN 10 // from: 23.0
 SAY #2530 /* ~Come, we must go now. Yes, Minsc and Boo and you, together again. Beware villains! I will force justice down your evil, evil throats!~ */
 IF ~~ THEN REPLY #2548 /* ~Ahh, I see you still have that... rodent. Dare I ask how you have kept it hidden from our captors?~ */ GOTO 29
 IF ~~ THEN REPLY #2549 /* ~Are you talking to a... hamster?  What kind of a warrior are you?~ */ GOTO 30
END

IF ~~ THEN BEGIN 11 // from: 24.0
 SAY #2531 /* ~You are filth... that I called friend! Do not make me add your ass to the kicking list! I would do so reluctantly, but I will do it! Choose your path now!~ */
 IF ~~ THEN REPLY #2532 /* ~You are quite clearly insane. You shall stay right here.~ */ GOTO 26
 IF ~~ THEN REPLY #2533 /* ~I shall try and release you, but I don't know how your cage opens.~ */ GOTO 33
END

IF ~~ THEN BEGIN 12 // from: 28.0
 SAY #2540 /* ~Come Boo, we must go! What? Yes, of course. My hamster says he will miss you, Such loyalty you inspire, even in rodents. Be proud, as Minsc is.~ */
 IF ~~ THEN DO ~SetDialog("minscP")
SetGlobal("MinscMad","AR0602",1)
SetGlobal("KickedOut","LOCALS",1)
EscapeAreaMove("AR0406",1178,1386,0)
~ EXIT
END

IF ~~ THEN BEGIN 13 // from: 29.0
 SAY #2547 /* ~Minsc and Boo are Minsc and Boo, and we shall not be separated. Shall we go? The butts of evil await my bootprint!~ */
 IF ~~ THEN REPLY #2555 /* ~Whoah, I've changed my mind. Why don't you go on ahead without me and I'll, uh... catch up with you later. Yeah...~ */ GOTO 27
 IF ~~ THEN REPLY #2557 /* ~Right you are, Minsc! Where e're evil dost lay its dirty feet we shall mop the floor with its buttocks!~ */ GOTO 15
END

IF ~~ THEN BEGIN 14 // from: 31.0
 SAY #2550 /* ~Boo is the best purchase I ever made, and despite my head wound I could tell that his previous owner was good and honest. Boo is an asset to us all!~ */
 IF ~~ THEN REPLY #2558 /* ~Why don't you just head off on your own and we'll meet up again... later. Yeah.~ */ GOTO 27
 IF ~~ THEN REPLY #2566 /* ~Then let us be off, and woe be to those that dare to stand in our way.~ */ GOTO 15
END

IF ~~ THEN BEGIN 15 // from: 14.1 13.1
 SAY #2564 /* ~I have lost myself in your words but Boo thinks you're just ducky. Onward!~ */
 IF ~~ THEN DO ~AddExperienceParty(3000)
JoinParty()
~ EXIT
END

IF ~~ THEN BEGIN 16 // from: 0.1
 SAY #19989 /* ~My anger is under complete control! Complete! I will control it as I rip limb from limb, I will control it as I pound head after head, and I will control...~ */
 IF ~~ THEN GOTO 2
END

IF ~~ THEN BEGIN 17 // from: 0.2
 SAY #19990 /* ~Our travels are the stuff of legend! Our victories the subject of song! How could I not follow to find my friends after they disappeared?~ */
 IF ~~ THEN GOTO 3
END

IF ~~ THEN BEGIN 18 // from: 0.3
 SAY #19991 /* ~You speak as a trapped animal, words that I know well.  I hold you no grudge, for we have traveled long together, whether you choose to recall or not.~ */
 IF ~~ THEN GOTO 4
END

IF ~~ THEN BEGIN 19 // from: 4.0 3.0 2.0 1.0
 SAY #19992 /* ~I will not be the only one to lose my head here today! Dynaheir... My charge and friend... she is... she is dead and I am a failure as her guard!~ */
 IF ~~ THEN GOTO 5
END

IF ~~ THEN BEGIN 20 // from: 8.0 7.0 5.0
 SAY #19993 /* ~... They... they killed her as I watched, you see? I know not who they were, but... but I will redeem myself!~ */
 IF ~!IsValidForPartyDialog("Imoen")~ THEN GOTO 32
 IF ~IsValidForPartyDialog("Imoen")
~ THEN EXTERN ~IMOENJ~ 7
END

IF ~~ THEN BEGIN 21 // from: 42.0 6.0
 SAY #19998 /* ~My honor and competence is in question?! Oh, I assure you that nothing shall keep me from exacting my righteous wrath on those responsible for this!~ */
 IF ~~ THEN GOTO 9
END

IF ~~ THEN BEGIN 22 // from: 42.1 6.1
 SAY #20001 /* ~Answer they will, and my sword shall be the question! We shall have fistfuls of sweet, sweet justice, and our enemies will be stains beneath our feet!~ */
 IF ~~ THEN GOTO 23
END

IF ~~ THEN BEGIN 23 // from: 22.0
 SAY #20002 /* ~What... yes but... but... alright. Boo tells me that I am raving again. I did not notice a difference, but I shall heed his words nonetheless.~ */
 IF ~~ THEN GOTO 10
END

IF ~~ THEN BEGIN 24 // from: 38.2 37.2 36.1 34.0 32.2 6.2
 SAY #20003 /* ~You... you turn your back on those in need? You are abandoning me in my hour of shame? You... you are no better than those that killed Dynaheir!~ */
 IF ~~ THEN GOTO 11
END

IF ~~ THEN BEGIN 25 // from: 33.0
 SAY #20007 /* ~RRAAAAGHGHGH!!! I will smack your evil lips to the earth and stomp them with the boot heel of justice! I will...~ */
 IF ~~ THEN GOTO 26
END

IF ~~ THEN BEGIN 26 // from: 39.0 25.0 11.0
 SAY #20008 /* ~I will make sure you do not live long enough to abandon more friends! I will... I will... I will do all of this as soon as I get these bars open! RRAAAARRGH!!!~ */
 IF ~~ THEN DO ~Unlock("Cell02")
OpenDoor("Cell02")
StartDialogueNoSet([PC])
~ EXIT
END

IF ~~ THEN BEGIN 27 // from: 42.2 14.0 13.0 6.3
 SAY #20012 /* ~Then I will quest on my own, and we shall meet again when I am worthy of serving in the company of good and true people!~ */
 IF ~~ THEN GOTO 28
END

IF ~~ THEN BEGIN 28 // from: 27.0
 SAY #20013 /* ~And that we shall meet again I do not doubt, for wherever there is evil walking funny, there is Minsc's foot, doing the work of goodness!~ */
 IF ~~ THEN GOTO 12
END

IF ~~ THEN BEGIN 29 // from: 10.0 9.0
 SAY #20018 /* ~Don't ask questions better left to aged sages. Boo is quick and evasive and there is ever so much of Minsc to search; there is no hope of getting us apart.~ */
 IF ~!IsValidForPartyDialog("Imoen")
~ THEN GOTO 13
 IF ~IsValidForPartyDialog("Imoen")
~ THEN EXTERN ~IMOENJ~ 8
END

IF ~~ THEN BEGIN 30 // from: 10.1 9.1
 SAY #20019 /* ~I am the best kind of warrior! I am large and I carry nature's favor with me where e'er I go!~ */
 IF ~~ THEN GOTO 31
END

IF ~~ THEN BEGIN 31 // from: 30.0
 SAY #20020 /* ~Boo is my animal companion, and while some smaller rangers might compensate for their size by traveling with bears or wolves, I prefer the subtleties provided by a miniature giant space hamster! Yes, subtle!~ */
 IF ~!IsValidForPartyDialog("Imoen")
~ THEN GOTO 14
 IF ~IsValidForPartyDialog("Imoen")
~ THEN EXTERN ~IMOENJ~ 11
END

IF ~~ THEN BEGIN 32 // from: 43.0 20.0
 SAY #25066 /* ~Will you help me? We must join together once more, and our fury will be such that bards will run their quills dry! Yes, ink will be scarce where e'er we go!~ */
 IF ~~ THEN REPLY #25067 /* ~I will try and free you, but I don't know how to open your cell.~ */ GOTO 34
 IF ~~ THEN REPLY #25069 /* ~Yes, Minsc, I will do what I can. Don't get yourself excited.~ */ GOTO 36
 IF ~~ THEN REPLY #25070 /* ~Your being here shows you are weak. I will leave you where you are.~ */ GOTO 24
END

IF ~~ THEN BEGIN 33 // from: 11.1
 SAY #2534 /* ~You lie! You freed yourself, and now you will not free me! Such villainy! Boo sees what you are doing!~ */
 IF ~~ THEN GOTO 25
END

IF ~~ THEN BEGIN 34 // from: 32.0
 SAY #25071 /* ~I do not know either. The bars have no lock at all, they are smithed together. I am proud that they feared me enough to imprison me permanently!~ */
 IF ~~ THEN REPLY #25090 /* ~Are you insane? Perhaps it is best if I didn't release you.~ */ GOTO 24
 IF ~~ THEN REPLY #25091 /* ~Permanently? That's going to make this difficult.~ */ GOTO 38
END

IF ~~ THEN BEGIN 35 // from:
 SAY #25092 /* ~I know you will do it! I only travel with heroes!~ */
 IF ~~ THEN UNSOLVED_JOURNAL #34106 /* ~Find a way to release Minsc from his cell.

Minsc, too, is kept captive in the same room I was.  Obviously our captors fear his strength, as his cell is welded shut; there is no lock to pick and no key to find. I don't know how I will get him out.~ */ EXIT
END

IF ~~ THEN BEGIN 36 // from: 32.1
 SAY #25093 /* ~I can't help it. Freedom is to be mine, and even my permanently welded cell will not deter you! Yes, no lock at all! They feared me that much, and I am proud!~ */
 IF ~~ THEN REPLY #25094 /* ~Ok, Minsc, but it's going to be difficult if the bars are permanently closed.~ */ GOTO 38
 IF ~~ THEN REPLY #25095 /* ~Permanently...? This is not worth the trouble. I'm leaving you here.~ */ GOTO 24
END

IF ~OpenState("Cell02",FALSE)
~ THEN BEGIN 37 // from:
 SAY #25097 /* ~You return! And with the means to rescue me, no doubt! Haha... I see hope in your face! Dirt mostly, but hope is there too.~ [MINSC75] */
 IF ~~ THEN REPLY #25098 /* ~I cannot find a way to open your cell. There is no key or switch.~ */ GOTO 38
 IF ~~ THEN REPLY #25099 /* ~Yes, yes, I will keep looking. Don't get anxious on me.~ */ GOTO 39
 IF ~~ THEN REPLY #25100 /* ~This is not worth my time. I've decided to leave you here.~ */ GOTO 24
END

IF ~~ THEN BEGIN 38 // from: 37.0 36.0 34.1
 SAY #25101 /* ~But you will keep looking, of course! You would never give up, I know this! A hero always succeeds and a hero never stops short of his goal!~ */
 IF ~~ THEN REPLY #25102 /* ~He also needs the key or switch! I don't know where they are!~ */ GOTO 39
 IF ~~ THEN REPLY #25103 /* ~I said I would try and I will, but I will do it in my own time!~ */ GOTO 39
 IF ~~ THEN REPLY #25104 /* ~Blah blah, I've had enough. I'm leaving you here.~ */ GOTO 24
END

IF ~~ THEN BEGIN 39 // from: 38.1 38.0 37.1
 SAY #25105 /* ~You... have brushed me aside with your words. You won't help... Boo can see it now! You do not intend to cut my chains! You only intend to yank them!~ */
 IF ~~ THEN GOTO 26
END

IF ~OpenState("Cell02",TRUE)
~ THEN BEGIN 40 // from:
 SAY #25106 /* ~The bars! They bend and twist with my berserker strength! Minsc and Boo are free! Now you will... nuh... now...~ [MINSC76] */
 IF ~~ THEN DO ~EraseJournalEntry(34106)~ SOLVED_JOURNAL #47518 /* ~Find a way to release Minsc from his cell.

Minsc has freed himself with his anger-heightened strength, bursting from his cage.  Obviously our captor underestimated the wrath of a man and his hamster.~ */ GOTO 41
END

IF ~~ THEN BEGIN 41 // from: 40.0
 SAY #25107 /* ~Ooooh! Ohhh hoho... you are a smart one. I understand now! You said what you did just to get me mad! Mad enough to break free! Haha! You are as smart as Boo sometimes!~ [MINSC77] */
 IF ~~ THEN GOTO 42
END

IF ~~ THEN BEGIN 42 // from: 41.0
 SAY #25108 /* ~Now we can resume our adventures together! There are friends to avenge and villains to smack about the face and neck! Right Boo?~ */
 IF ~~ THEN REPLY #25109 /* ~Join with me, but you must serve me better than you did Dynaheir.~ */ GOTO 21
 IF ~~ THEN REPLY #25110 /* ~Together we shall make our enemies answer for our fallen.~ */ GOTO 22
 IF ~~ THEN REPLY #25111 /* ~Um... yeah. I think perhaps we should... split up.~ */ GOTO 27
END

IF ~~ THEN BEGIN 43 // from:
 SAY #38542 /* ~I won't cry for the dead! I won't! Ok, maybe a little, but I will staunch the flow of tears with righteous fury! Lullaby and goodnight, evil! Minsc will make you pay!~ */
 IF ~~ THEN GOTO 32
END

 

Jaheira's beginning:

BEGIN ~JAHEIRA~
//////////////////////////////////////////////////
// WARNING: this file contains non-trivial WEIGHTs
//////////////////////////////////////////////////

IF WEIGHT #0 ~NumTimesTalkedTo(0)
InPartySlot(LastTalkedToBy,0)
~ THEN BEGIN 0 // from:
 SAY #899 /* ~Quickly, we must get out of here before whoever did this returns. I swear, traveling with you is never dull.~ [JAHEIR01] */
 IF ~~ THEN REPLY #900 /* ~I may help, but refresh my memory as to who you are.~ */ GOTO 40
 IF ~~ THEN REPLY #901 /* ~You can't make demands of me. What authority do you think you have?~ */ GOTO 42
 IF ~~ THEN REPLY #902 /* ~I don't know why I am here. Perhaps you are to blame.~ */ GOTO 44
 IF ~~ THEN REPLY #903 /* ~Do you know why we are here? Any clue would be helpful.~ */ GOTO 45
 IF ~~ THEN REPLY #904 /* ~Have you any idea why we are here?~ */ GOTO 47
END

IF ~~ THEN BEGIN 1 // from: 41.0
 SAY #905 /* ~No, we have traveled together too long for such games, and I will answer plain and true if it will help.~ */
 IF ~~ THEN GOTO 48
END

IF ~~ THEN BEGIN 2 // from: 43.0
 SAY #906 /* ~I will detail our relationship if you wish, but it shall be nothing you do not already know.~ */
 IF ~~ THEN GOTO 48
END

IF ~~ THEN BEGIN 3 // from: 44.0
 SAY #907 /* ~Have you forgotten what we have done?  Perhaps your senses are addled.  I will remind you, but it will not give any new clues as to why we are here.~ */
 IF ~~ THEN GOTO 48
END

IF ~~ THEN BEGIN 4 // from: 46.0
 SAY #908 /* ~I will recount what led to this if you wish, though I think I have little to offer that you do not know already.~ */
 IF ~~ THEN GOTO 51
END

IF ~~ THEN BEGIN 5 // from: 47.0
 SAY #909 /* ~I will repeat what I believe led to our capture if I must, but I doubt it shall prove to be different than what is already known by you.~ */
 IF ~~ THEN GOTO 51
END

IF ~~ THEN BEGIN 6 // from: 48.0
 SAY #910 /* ~At the behest of your slain foster father, my husband Khalid and I have kept an interest in you, though you have proven to be your own person in all things.~ */
 IF ~~ THEN GOTO 49
END

IF ~~ THEN BEGIN 7 // from:
 SAY #911 /* ~******~ */
 IF ~~ THEN GOTO 52
END

IF ~~ THEN BEGIN 8 // from: 51.0
 SAY #912 /* ~Your... unique heritage has proven a magnet to adventure, for better or worse, and your foster father was right in directing us to watch over you.~ */
 IF ~~ THEN GOTO 49
END

IF ~~ THEN BEGIN 9 // from: 53.0 52.0 50.0
 SAY #921 /* ~Once we know, we will deal with them in due course, but for the time being it is more important we retrieve our friends and companions and leave this place.~ */
 IF ~OpenState("Cell01",FALSE)
!PartyHasItem("Misc4b")
~ THEN REPLY #922 /* ~I have no time for one as long-winded as you. Fare thee well, I'll not rescue you.~ */ GOTO 13
 IF ~OpenState("Cell01",FALSE)
!PartyHasItem("Misc4b")
~ THEN REPLY #923 /* ~I agree, but your cage seems to require a key of some magical nature.~ */ GOTO 58
 IF ~~ THEN REPLY #924 /* ~Where is Khalid now? He is not with you?~ */ GOTO 54
 IF ~~ THEN REPLY #925 /* ~They should be more careful if they are weak. Where is Khalid, anyway?~ */ GOTO 56
 IF ~~ THEN REPLY #933 /* ~Perhaps we'll find Khalid hiding under a bed along the way.~ */ GOTO 12
 IF ~OpenState("Cell01",FALSE)
PartyHasItem("Misc4b")
~ THEN REPLY #37799 /* ~Relax, I think I have found the key to release you.~ */ GOTO 38
 IF ~OpenState("Cell01",TRUE)
!PartyHasItem("Misc4b")~ THEN REPLY #37800 /* ~Well, I think I have opened your cage and there aren't any traps present.~ */ GOTO 33
END

IF ~~ THEN BEGIN 10 // from: 55.0
 SAY #926 /* ~You, however, look as though you have been treated most unfavorably, and I should not like to think of Khalid receiving the same.~ */
 IF ~~ THEN REPLY #946 /* ~I care not. In fact, I think I'll leave you to distract any guards.~ */ GOTO 13
 IF ~OpenState("Cell01",FALSE)
~ THEN REPLY #947 /* ~Such a chore to protect all these people from their own ineptitude.~ */ GOTO 15
 IF ~OpenState("Cell01",FALSE)
!PartyHasItem("Misc4b")
~ THEN REPLY #948 /* ~I will help, but your cage seems to be sealed magically.~ */ GOTO 58
 IF ~OpenState("Cell01",TRUE)
~ THEN REPLY #37802 /* ~Then we shall be quick to find him. Your cage is unbarred, let's go.~ */ GOTO 33
 IF ~OpenState("Cell01",FALSE)
PartyHasItem("Misc4b")~ THEN REPLY #37803 /* ~Then I will unlock your cage quickly. I think I found the key.~ */ GOTO 38
END

IF ~~ THEN BEGIN 11 // from: 57.0
 SAY #935 /* ~Enough of this, we have no time to bicker. We must find any of our companions that are trapped here and escape.~ */
 IF ~~ THEN REPLY #949 /* ~More baggage for me? I think I'll leave you all behind to distract the guards.~ */ GOTO 13
 IF ~OpenState("Cell01",FALSE)
!PartyHasItem("Misc4b")~ THEN REPLY #950 /* ~I will decide what course is best. First I shall see to your cage.~ */ GOTO 60
 IF ~OpenState("Cell01",FALSE)
!PartyHasItem("Misc4b")~ THEN REPLY #951 /* ~Of course, though the bars that bind you seem warded by a magic of some sort.~ */ GOTO 58
 IF ~OpenState("Cell01",TRUE)
~ THEN REPLY #37810 /* ~I will decide what course is best. I have already seen to your cage.~ */ GOTO 33
 IF ~OpenState("Cell01",FALSE)
PartyHasItem("Misc4b")
~ THEN REPLY #37811 /* ~I will decide what course is best. First I shall see to your cage. I think I have the key.~ */ GOTO 38
 IF ~OpenState("Cell01",TRUE)~ THEN REPLY #37813 /* ~Certainly. I have already seen to your cage. It is open and you are free.~ */ GOTO 33
 IF ~OpenState("Cell01",FALSE)
PartyHasItem("Misc4b")
~ THEN REPLY #37814 /* ~Certainly. I believe I have the key for your bars.~ */ GOTO 38
END

IF ~~ THEN BEGIN 12 // from: 9.4
 SAY #939 /* ~Indeed? Well, despite your... wit, he would be a great help in our escape.  Better that we make use of all our strengths, rather than pick apart our weaknesses.~ */
 IF ~~ THEN REPLY #952 /* ~I need neither them nor you. Your ceaseless prattle will only slow me down.~ */ GOTO 13
 IF ~OpenState("Cell01",FALSE)
!PartyHasItem("Misc4b")~ THEN REPLY #953 /* ~Ahh, he likes it. Now, have you found a way out of that cage?~ */ GOTO 58
 IF ~OpenState("Cell01",FALSE)
!PartyHasItem("Misc4b")~ THEN REPLY #954 /* ~Forgive my manner, you are right, of course. I will do what I can.~ */ GOTO 60
 IF ~OpenState("Cell01",TRUE)
~ THEN REPLY #37815 /* ~Ahh, he likes it. Cheer up, I've already seen to opening your cage.~ */ GOTO 33
 IF ~OpenState("Cell01",FALSE)
PartyHasItem("Misc4b")
~ THEN REPLY #37816 /* ~Ahh, he likes it. Cheer up, I believe I have the key to your cell.~ */ GOTO 38
 IF ~OpenState("Cell01",TRUE)
~ THEN REPLY #37817 /* ~Forgive my manner, you are right, of course. I have opened your cage. What now?~ */ GOTO 33
 IF ~OpenState("Cell01",FALSE)
PartyHasItem("Misc4b")
~ THEN REPLY #37818 /* ~Forgive my manner, you are right, of course. I have the key for your cell. What now?~ */ GOTO 38
END

IF ~~ THEN BEGIN 13 // from: 24.1 12.0 11.0 10.0 9.0
 SAY #940 /* ~You have changed in this place.  You would abandon your friends?  Whether you remember or not, we have shared the path here.  Is that to be forgotten?~ */
 IF ~~ THEN REPLY #942 /* ~Aye, and as quickly as possible. Goodbye, Jaheira... It's been swell.~ */ GOTO 62
 IF ~OpenState("Cell01",FALSE)
~ THEN REPLY #943 /* ~I am merely taking a new path, one that is better suited to my needs.~ */ GOTO 17
 IF ~OpenState("Cell01",FALSE)
!PartyHasItem("Misc4b")
~ THEN REPLY #944 /* ~Forgive my ill-timed jesting. I will free you as soon as possible.~ */ GOTO 15
 IF ~OpenState("Cell01",TRUE)
~ THEN REPLY #37806 /* ~I am merely taking a new path, one that is better suited to my needs.~ */ GOTO 28
 IF ~OpenState("Cell01",TRUE)
~ THEN REPLY #37807 /* ~Forgive my ill-timed jesting. Your cage is open. You appear to be free.~ */ GOTO 27
 IF ~OpenState("Cell01",FALSE)
PartyHasItem("Misc4b")
~ THEN REPLY #37808 /* ~Forgive my ill-timed jesting. I think I have the key to your cell. I will open it quickly.~ */ GOTO 38
END

IF ~~ THEN BEGIN 14 // from: 61.0 59.0
 SAY #945 /* ~It would be best to face the culprit another day on our own terms, so go and be quick. We must free ourselves soon.~ */
 IF ~~ THEN UNSOLVED_JOURNAL #34105 /* ~Find a way to release Jaheira from her cell.

Jaheira is kept captive in the same room that I was, in a cage closed with a magical lock.  It does not look as if it can be picked.  Perhaps there is a key elsewhere in the dungeon.~ */ EXIT
END

IF ~~ THEN BEGIN 15 // from: 13.2 10.1
 SAY #956 /* ~I neither understand nor appreciate such humor. If you are to effect my release, best you set to doing it.~ */
 IF ~~ THEN GOTO 60
END

IF ~~ THEN BEGIN 16 // from: 62.0
 SAY #957 /* ~Know you well that this will not be forgotten! You have turned as I thought you might, and will get what is deserved!~ */
 IF ~~ THEN DO ~SetGlobal("JaheiraJerk","GLOBAL",1)
~ EXIT
END

IF ~~ THEN BEGIN 17 // from: 63.0 13.1
 SAY #958 /* ~I do not recall you being so cold.  Perhaps I have had some memory loss myself, but this will not be forgotten.  If I live, I shall see you pay.~ */
 IF ~~ THEN DO ~SetGlobal("JaheiraJerk","GLOBAL",1)
~ EXIT
END

IF ~~ THEN BEGIN 18 // from: 64.0
 SAY #959 /* ~Do not get too close; if I could reach you, you would regret it.~ */
 IF ~~ THEN REPLY #992 /* ~There is nothing I want here. Goodbye.~ */ GOTO 19
 IF ~~ THEN REPLY #993 /* ~Perhaps I have come back to release you and ask forgiveness. Perhaps...~ */ GOTO 20
 IF ~~ THEN REPLY #994 /* ~I am truly sorry for what was said earlier. I do intend to rescue you.~ */ GOTO 21
 IF ~~ THEN REPLY #995 /* ~I'm not going to leave you here for long, just until I find the key for your chains.~ */ GOTO 22
END

IF ~~ THEN BEGIN 19 // from: 18.0
 SAY #996 /* ~You had best leave, and quickly. If I find my release from here I will have your head on a pike! It will be as I should have done long ago!~ */
 IF ~~ THEN EXIT
END

IF ~~ THEN BEGIN 20 // from: 18.1
 SAY #997 /* ~Do you think me so weak of mind as to believe you, or so weak of spirit as to beg you?  No, your choice is made clear and I will not indulge you further.~ */
 IF ~~ THEN REPLY #998 /* ~No matter. Goodbye Jaheira.~ */ GOTO 23
 IF ~~ THEN REPLY #999 /* ~Then we have nothing more to discuss.~ */ GOTO 22
 IF ~~ THEN REPLY #1000 /* ~Truly, my apologies. I will release you as soon as I am able.~ */ GOTO 21
END

IF ~~ THEN BEGIN 21 // from: 20.2 18.2
 SAY #1001 /* ~And I have cause to believe this? I think not. Prove your intent by actually carrying out the deed, and then we shall see if I must kill you or not.~ */
 IF ~~ THEN EXIT
END

IF ~~ THEN BEGIN 22 // from: 20.1 18.3
 SAY #1002 /* ~Do what you will, you have already proven as reliable as a tamed owlbear.~ */
 IF ~~ THEN EXIT
END

IF ~~ THEN BEGIN 23 // from: 20.0
 SAY #1003 /* ~I shall see you again, you had best count on that. There will be blood that pays for your lies.~ */
 IF ~~ THEN EXIT
END

IF WEIGHT #7 /* Triggers after states #: 33 38 64 65 72 73 even though they appear after this state */
~Global("JaheiraReleased","GLOBAL",0)
Global("JaheiraJerk","GLOBAL",0)
!PartyHasItem("misc4b")
~ THEN BEGIN 24 // from:
 SAY #1004 /* ~Hello again, I see you have not had much luck. Do keep trying. We should leave this place as soon as we are able.~ */
 IF ~~ THEN REPLY #1005 /* ~I'll do what I can. Don't worry, I'll be back soon.~ */ GOTO 25
 IF ~~ THEN REPLY #1006 /* ~I don't think there's much else I can do. I'm going to have to leave without you.~ */ GOTO 13
 IF ~~ THEN REPLY #1007 /* ~Yes, yes, I'm hurrying as fast as I can!~ */ GOTO 26
END

IF ~~ THEN BEGIN 25 // from: 24.0
 SAY #1008 /* ~I should hope so. If we stand about much longer we are sure to be caught once more.~ */
 IF ~~ THEN EXIT
END

IF ~~ THEN BEGIN 26 // from: 24.2
 SAY #1009 /* ~Do not think me overly domineering, I am just eager to leave. Please hurry.~ */
 IF ~~ THEN EXIT
END

IF ~~ THEN BEGIN 27 // from: 65.0 13.4
 SAY #1010 /* ~You have my gratitude, but I'll not look at you the same way again.  You should not indulge that side of yourself.  It does not honor the memory of Gorion.~ */
 IF ~~ THEN REPLY #1011 /* ~I have little memory of that past. Get on your way. I have no need of you.~ */ GOTO 28
 IF ~~ THEN REPLY #1012 /* ~Does my free will hinge on only doing just what you suggest?~ */ GOTO 66
 IF ~CheckStatGT(LastTalkedToBy,13,42)
~ THEN REPLY #1013 /* ~I make no apologies. Join or not; the choice is yours.~ */ GOTO 67
 IF ~~ THEN REPLY #1014 /* ~I was wrong to suggest leaving you here. Will you adventure at my side?~ */ GOTO 70
 IF ~CheckStatLT(LastTalkedToBy,14,42)~ THEN REPLY #1019 /* ~I make no apologies. Join or not; the choice is yours.~ */ GOTO 68
END

IF ~~ THEN BEGIN 28 // from: 62.1 36.0 33.3 27.0 13.3
 SAY #1015 /* ~So be it.  I thank you for my 'rescue'.  If we meet again I doubt it will be as pleasant as this.  Take care, you've certainly chosen a rocky path.~ */
 IF ~~ THEN DO ~SetGlobal("JaheiraReleased","GLOBAL",1)
SetGlobal("JaheiraHunt","GLOBAL",1)
EscapeArea()~ EXIT
END

IF ~~ THEN BEGIN 29 // from: 66.0
 SAY #1016 /* ~I must go.  I think it is best that I leave before our host returns.  Perhaps we will meet again, and perhaps it will be under favorable terms.  I doubt it.~ */
 IF ~~ THEN DO ~SetGlobal("JaheiraHunt","GLOBAL",1)
EscapeArea()~ EXIT
END

IF ~~ THEN BEGIN 30 // from: 67.0
 SAY #1017 /* ~No matter, as I will not be put off so easy. I will join, and follow as you see fit. See that we do not stray too far afield, lest I regret my decision.~ */
 IF ~~ THEN DO ~EraseJournalEntry(34105)
AddExperienceParty(3000)
JoinParty()
~ EXIT
END

IF ~~ THEN BEGIN 31 // from: 69.0
 SAY #1018 /* ~Perhaps we shall meet again, and perhaps we shall even both be on the side of right. Perhaps, though it does not look likely.~ */
 IF ~~ THEN DO ~SetGlobal("JaheiraHunt","GLOBAL",1)
EscapeArea()~ EXIT
END

IF ~~ THEN BEGIN 32 // from: 70.0
 SAY #1020 /* ~I still believe you will choose the right path, and I shall be at your side while you do.  I hope you do not disappoint, or make me regret my decision.~ */
 IF ~~ THEN DO ~EraseJournalEntry(34105)
AddExperienceParty(3000)
JoinParty()
~ EXIT
END

IF WEIGHT #3 /* Triggers after states #: 72 73 even though they appear after this state */
~Global("JaheiraReleased","GLOBAL",1)
Global("JaheiraJerk","GLOBAL",0)~ THEN BEGIN 33 // from: 12.5 12.3 11.5 11.3 10.3 9.6
 SAY #1021 /* ~Well that is a relief, and about time too. We should be going immediately. Not only might our 'host' come back, I simply must see the sun again in none too short a time. This dank place stifles me.~ */
 IF ~~ THEN REPLY #1022 /* ~We will leave immediately, and celebrate once we are out of this hole.~ */ DO ~EraseJournalEntry(34105)~ SOLVED_JOURNAL #47519 /* ~Find a way to release Jaheira from her cell.

I have freed Jaheira from her cell with the key I found.~ */ GOTO 34
 IF ~InPartySlot(LastTalkedToBy,0)
~ THEN REPLY #1023 /* ~You are welcome so long as you remember I am leader. We do as I will.~ */ DO ~EraseJournalEntry(34105)~ SOLVED_JOURNAL #47519 /* ~Find a way to release Jaheira from her cell.

I have freed Jaheira from her cell with the key I found.~ */ GOTO 35
 IF ~~ THEN REPLY #1024 /* ~Find your own way out. We have a greater chance of escape if we split up.~ */ DO ~EraseJournalEntry(34105)~ SOLVED_JOURNAL #47519 /* ~Find a way to release Jaheira from her cell.

I have freed Jaheira from her cell with the key I found.~ */ GOTO 36
 IF ~~ THEN REPLY #1025 /* ~'We' won't be going. I rescued you, but I neither need nor desire your company.~ */ DO ~EraseJournalEntry(34105)~ SOLVED_JOURNAL #47519 /* ~Find a way to release Jaheira from her cell.

I have freed Jaheira from her cell with the key I found.~ */ GOTO 28
END

IF ~~ THEN BEGIN 34 // from: 36.1 33.0
 SAY #1026 /* ~As you would have it, though there are other friends we must find as well. It is good to share your company again.~ */
 IF ~~ THEN DO ~SetGlobal("JaheiraReleased","GLOBAL",1)
EraseJournalEntry(34105)
AddExperienceParty(3000)
JoinParty()
~ EXIT
END

IF ~~ THEN BEGIN 35 // from: 33.1
 SAY #1027 /* ~This place has hardened your manner.  I do not remember you being so quick with a cold remark.  Lead on as you wish, but do tread carefully, will you?~ */
 IF ~~ THEN DO ~SetGlobal("JaheiraReleased","GLOBAL",1)
EraseJournalEntry(34105)
AddExperienceParty(3000)
JoinParty()
~ EXIT
END

IF ~~ THEN BEGIN 36 // from: 33.2
 SAY #1029 /* ~I would disagree with your logic.  Once noticed, would not smaller groups be more likely to be captured?  There is safety in the company of friends.~ */
 IF ~~ THEN REPLY #1030 /* ~I do not wish that company. I am sorry, but you must find your own way out.~ */ GOTO 28
 IF ~~ THEN REPLY #1031 /* ~You are right, of course. Join with me and we shall escape this place.~ */ GOTO 34
 IF ~~ THEN REPLY #1032 /* ~If a group is noticed, there is a good chance it will not be mine. Understand?~ */ GOTO 71
END

IF ~~ THEN BEGIN 37 // from: 71.0
 SAY #1033 /* ~An effective plan, but as cold and calculating as the walls that hold us.  So be it, but it won't be I that is captured.  Perhaps we will meet again.~ */
 IF ~~ THEN DO ~SetGlobal("JaheiraReleased","GLOBAL",1)
SetGlobal("JaheiraHunt","GLOBAL",1)
EscapeArea()~ EXIT
END

IF WEIGHT #4 /* Triggers after states #: 72 73 even though they appear after this state */
~Global("JaheiraReleased","GLOBAL",0)
PartyHasItem("misc4b")
~ THEN BEGIN 38 // from: 13.5 12.6 12.4 11.6 11.4 10.4 9.5
 SAY #17789 /* ~You've got the key that fits? Then open the door already. Must I hand-walk you through this?~ */
 IF ~~ THEN EXIT
END

IF ~~ THEN BEGIN 39 // from:
 SAY #20109 /* ~~ */
 IF ~~ THEN EXIT
END

IF ~~ THEN BEGIN 40 // from: 0.0
 SAY #20114 /* ~Refresh your...? Perhaps you've taken a knock or two to the head.~ */
 IF ~~ THEN GOTO 41
END

IF ~~ THEN BEGIN 41 // from: 40.0
 SAY #20118 /* ~At the least I would say that not remembering me is a symptom of some deeper problem, though I would not rule out a bad attempt at humor on your part.~ */
 IF ~~ THEN GOTO 1
END

IF ~~ THEN BEGIN 42 // from: 0.1
 SAY #20120 /* ~By what authority?  This is hardly the time to have a leadership debate, especially one that I have never questioned.  Not to any serious degree, at least...~ */
 IF ~~ THEN GOTO 43
END

IF ~~ THEN BEGIN 43 // from: 42.0
 SAY #20121 /* ~Perhaps this place has made you defensive, and I wouldn't blame you in the least, but your suspicions are better directed at strangers, not friends.~ */
 IF ~~ THEN GOTO 2
END

IF ~~ THEN BEGIN 44 // from: 0.2
 SAY #20124 /* ~And I do not know why I am here either, but I won't stoop to blame you.  Our history defers any suspicions, at least until we are out of immediate danger.~ */
 IF ~~ THEN GOTO 3
END

IF ~~ THEN BEGIN 45 // from: 0.3
 SAY #20125 /* ~I'm sure we could navel-gaze all day about what brought us here, but it shall certainly prove pointless if we do not remove ourselves from immediate danger.~ */
 IF ~~ THEN GOTO 46
END

IF ~~ THEN BEGIN 46 // from: 45.0
 SAY #20126 /* ~I know not who has entrapped us here either, but I would rather not find out simply waiting for them to return.  We are at a disadvantage in this place.~ */
 IF ~~ THEN GOTO 4
END

IF ~~ THEN BEGIN 47 // from: 0.4
 SAY #20128 /* ~No I do not, and I would rather we furthered the investigation at a time that was more in our favor. We have friends to find and, in time, enemies to punish.~ */
 IF ~~ THEN GOTO 5
END

IF ~~ THEN BEGIN 48 // from: 3.0 2.0 1.0
 SAY #18760 /* ~Jaheira is what I am called, as you should well know. We have traveled together for some time, and the places we have gone number too many to name.~ */
 IF ~~ THEN GOTO 6
END

IF ~~ THEN BEGIN 49 // from: 8.0 6.0
 SAY #20132 /* ~We remain in your company as friends more than guardians, and our exploits together have left the land for the better.~ */
 IF ~~ THEN GOTO 50
END

IF ~~ THEN BEGIN 50 // from: 49.0
 SAY #20136 /* ~We have earned many enemies, but we have dispatched them all.  Whoever has trapped us now is certainly powerful to have done this so easily.~ */
 IF ~~ THEN GOTO 9
END

IF ~~ THEN BEGIN 51 // from: 5.0 4.0
 SAY #20142 /* ~My husband Khalid and I have traveled with you for some seasons now, and the places we have seen number too many to name.~ */
 IF ~~ THEN GOTO 8
END

IF ~~ THEN BEGIN 52 // from: 7.0
 SAY #20145 /* ~******~ */
 IF ~~ THEN GOTO 9
END

IF ~~ THEN BEGIN 53 // from:
 SAY #20146 /* ~~ */
 IF ~~ THEN GOTO 9
END

IF ~~ THEN BEGIN 54 // from: 9.2
 SAY #20157 /* ~I do not know where he is and it worries me. No doubt he was taken as we were, though it seems we were all meant for different fates.~ */
 IF ~~ THEN GOTO 55
END

IF ~~ THEN BEGIN 55 // from: 54.0
 SAY #20159 /* ~From the state of my head I think I have been drugged, though I have been spared any serious physical mistreatment.~ */
 IF ~~ THEN GOTO 10
END

IF ~~ THEN BEGIN 56 // from: 9.3
 SAY #20172 /* ~You judge on appearances, but he has performed admirably more than once.  Hold your tongue, or at least reserve your quips for someone more likely to be amused.~ */
 IF ~~ THEN GOTO 57
END

IF ~~ THEN BEGIN 57 // from: 56.0
 SAY #20174 /* ~I am Khalid's wife after all, and despite his flaws he is a good person. Have you someone who will say likewise for you?~ */
 IF ~~ THEN GOTO 11
END

IF ~~ THEN BEGIN 58 // from: 12.1 11.2 10.2 9.1
 SAY #20176 /* ~I don't know. If you are of sufficient strength, it is possible the cage may be broken. If not, you may have to search for whatever key it might need.~ */
 IF ~~ THEN GOTO 59
END

IF ~~ THEN BEGIN 59 // from: 58.0
 SAY #20177 /* ~Do try to hurry, I wish to be out of here before the owner returns.  The ease of our capture suggests it may be beyond our power to resist.~ */
 IF ~~ THEN GOTO 14
END

IF ~~ THEN BEGIN 60 // from: 15.0 12.2 11.1
 SAY #20185 /* ~Perhaps you can break these locks? They seem quite strong, though it would not hurt to try. They look a bit odd as well. Perhaps they are magically warded.~ */
 IF ~~ THEN GOTO 61
END

IF ~~ THEN BEGIN 61 // from: 60.0
 SAY #20188 /* ~Then the key could be anything.  Whatever is done, it must be quick.  We were captured easily, and I do not want to be here when whoever did it returns.~ */
 IF ~~ THEN GOTO 14
END

IF ~~ THEN BEGIN 62 // from: 13.0
 SAY #955 /* ~Such callous disregard! We have fought together and traveled long! You would toss that aside like so much rubbish?!~ */
 IF ~OpenState("Cell01",FALSE)
~ THEN GOTO 16
 IF ~OpenState("Cell01",TRUE)~ THEN GOTO 28
END

IF ~~ THEN BEGIN 63 // from:
 SAY #20191 /* ~A well thought and calculated plan, though I do not recall you being so cold. Perhaps I have had some memory loss myself.~ */
 IF ~~ THEN GOTO 17
END

IF WEIGHT #5 /* Triggers after states #: 72 73 even though they appear after this state */
~Global("JaheiraReleased","GLOBAL",0)
Global("JaheiraJerk","GLOBAL",1)
~ THEN BEGIN 64 // from:
 SAY #20192 /* ~You have returned? Why? Something you need? Or do you wish to elaborate on your plan and once again assert that you are in the dominant position?~ */
 IF ~~ THEN GOTO 18
END

IF WEIGHT #6 /* Triggers after states #: 72 73 even though they appear after this state */
~Global("JaheiraReleased","GLOBAL",1)
Global("JaheiraJerk","GLOBAL",1)
~ THEN BEGIN 65 // from:
 SAY #20193 /* ~Well, I must say I did not expect you to come back.~ */
 IF ~~ THEN DO ~EraseJournalEntry(34105)~ SOLVED_JOURNAL #47519 /* ~Find a way to release Jaheira from her cell.

I have freed Jaheira from her cell with the key I found.~ */ GOTO 27
END

IF ~~ THEN BEGIN 66 // from: 27.1
 SAY #20198 /* ~You quote philosophy like a student who's read half of every book in school. Take your defensive stance as you will; I am sure it will let you sleep at night.~ */
 IF ~~ THEN GOTO 29
END

IF ~~ THEN BEGIN 67 // from: 27.2
 SAY #20208 /* ~You speak as though your intent is to offend. Do you wish to keep those that would be your friends at arms length? I wonder why this might be.~ */
 IF ~~ THEN GOTO 30
END

IF ~~ THEN BEGIN 68 // from: 27.4
 SAY #20209 /* ~Your words echo through these empty halls because they are just as hollow. If you would drive those who would be your friends away, so be it.~ */
 IF ~~ THEN GOTO 69
END

IF ~~ THEN BEGIN 69 // from: 68.0
 SAY #20210 /* ~However, I would be careful not to offend everyone you meet.  You will need help at some point.  You seem predisposed to trouble.~ */
 IF ~~ THEN GOTO 31
END

IF ~~ THEN BEGIN 70 // from: 27.3
 SAY #20213 /* ~An apology of a sort, though I will take it with a grain or two of salt.  It will take consistent action to prove your intent to me, but I am optimistic.~ */
 IF ~~ THEN GOTO 32
END

IF ~~ THEN BEGIN 71 // from: 36.2
 SAY #20223 /* ~I see. You are expecting me to be the convenient diversion then? You did not free a friend; you set loose a clay pigeon to draw the arrows of the hunters.~ */
 IF ~~ THEN GOTO 37
END

IF WEIGHT #2 /* Triggers after states #: 73 even though they appear after this state */
~NumTimesTalkedTo(0)
~ THEN BEGIN 72 // from:
 SAY #25474 /* ~Fellow prisoner that you must be, there is no time for idle chatter.  Get <CHARNAME> so we can work on getting out. I have to talk to <PRO_HIMHER>.~ */
 IF ~~ THEN DO ~SetNumTimesTalkedTo(0)
~ EXIT
END

IF WEIGHT #1 ~Name("Imoen",LastTalkedToBy)
NumTimesTalkedTo(0)
~ THEN BEGIN 73 // from:
 SAY #38536 /* ~Imoen! Quickly, child, bring <CHARNAME> to me. I would have words with <PRO_HIMHER> if <PRO_HESHE> is able.~ */
 IF ~~ THEN DO ~SetNumTimesTalkedTo(0)
~ EXTERN ~IMOENJ~ 6
END

IF ~~ THEN BEGIN 74 // from:
 SAY #38538 /* ~Of course, but if <CHARNAME> is here as well I should speak with <PRO_HIMHER>.~ */
 IF ~~ THEN EXIT
END

Link to comment

Well, you'll need to do the following: install NI (Near Infinity) and WeiDU. Use NI to browse characters and find the name for Minsc's first dialogue. Then, using WeiDU tutorial (included into the install) learn how to decompile DLG files into D files, what Dialogue States are and the dialogue structure. After that it will become self-evident :suspect:

Link to comment
Well, you'll need to do the following: install NI (Near Infinity) and WeiDU. Use NI to browse characters and find the name for Minsc's first dialogue. Then, using WeiDU tutorial (included into the install) learn how to decompile DLG files into D files, what Dialogue States are and the dialogue structure. After that it will become self-evident :suspect:

 

Beautiful, gentlemen, thanks. That's exactly what I was looking for C. I work with computers so I'm not afraid of techie stuff :down: When I can start on Phase II I'll being doing what you said there Domi.

Link to comment

Ladies and gentlemen, I think you'll find :suspect:.

 

AAAahh my mistake, Dominique! very sorry! <sheepish grin> Catch you all a little later.

 

Whew. Ok, I got something down. Here it is, what do you think?

 

So I’m thinking we’ll just insert a new conversation item after Minsc introduces Dynaheir as a topic of conversation (Minsc ‘if-then’ sections 1-4?), and if the player chooses the new thread, then we assume that they were a male PC and successfully romanced Dynaheir through the end of BG1. Any other scenario would already be covered by the existing game, and hopefully phase II will take care of platonic grief for a lost companion.

Additionally, Imoen and Jaheira were also companions of D and knew of the PC and D’s romance.

 

=============

Minsc: etc. etc. dynaheir is dead…

PC: What!? No! Minsc, are you sure? We must find her immediately!

Minsc: No <charname>! She is gone! Boo and I have seen her fall with our very eyes! We could not help her… we… STINKING EVIL!!

PC: We’ll simply take her to a temple. She must be here! Come, let us find her!

Imoen: <charname>…

Minsc: She is gone from us! No.. No longer will my witch help us put the boot into evil. My witch…

Imoen: <charname>… she… we couldn’t help her even if we could find her. I’m sorry.

Jaheira: She has gone to meet the Creator. There is nothing we can do for her now.

PC: What do you mean?! We’ve lost people before! Why is she different!

Imoen: …Jaheira?

Jaheira: <charname>, please try to understand. Sometimes one cannot be returned from Nature after she has called them to her. We have been held in this… prison for some a time now. Whoever captured us left her behind. They were cruel, <charname>. Even had we the chance to find her… body, we could not help her. I also grieve for her loss, <charname>.

PC: This cannot be happening! Wh-what did they do to her? Why her?

Jaheira: <charname>, we cannot dwell on this now. We must escape as soon as possible. You must control your pain.

PC: No! Tell me now! How am I to accept this? I love her!

Imoen: (Puts a hand on <charname>’s arm) I’m so sorry, <charname>. I’m so sorry.

Jaheira: They hurt her badly, <charname>. You have seen too many battles not to know when a wound is mortal. We could do nothing for her. (pause) She looks upon us from a better place now. It is Nature’s course. It is better this way.

Minsc: No! It is not better that Evil has taken Dynaheir from Minsc and Boo and <charname>! This is not right!

Jaheira: That is not what I meant, Minsc. I meant… I meant that she is happy now, in the Light. We will all join her there some day. But for now, it is better for her to watch us and smile upon us. We will find those who did this, Minsc.

PC: I c-can’t believe this. Not my Dynaheir. N-not my Dynaheir…

Imoen: (Hugs <charname>) I miss her too, <charname>.

Imoen: …please, <charname> can we go? We’ll find them later. We have to leave now. Please?

PC: …

PC: (whispers) You’re right, Imoen. You’re right..

PC: We need to leave. And then I need to find whoever did this… I will avenge you, my dearest.

=============

Link to comment

Cool start, but it assumes that Jaheira and imoen are both in the party. You might want to break it down so that Imoen (who doesn't take Imoen?!!??!) and Minsc carry the load, and Jaheira and Imoen only interact through Minsc. After all, you can pick up Jaheira, then Minsc, or you can pick up Minsc, then Jaheira, or you can just pick up Jaheira, or you can just pick up Minsc. The only person truly "forced" on you plot-wise is Imoen. To get an Idea of what I am saying, read the paragraph like this:

 

Minsc: etc. etc. dynaheir is dead...

PC: What!? No! Minsc, are you sure? We must find her immediately!

Minsc: No <charname>! She is gone! Boo and I have seen her fall with our very eyes! We could not help her... we... STINKING EVIL!!

PC: We'll simply take her to a temple. She must be here! Come, let us find her!

Imoen: <charname>...

Minsc: She is gone from us! No.. No longer will my witch help us put the boot into evil. My witch…

Imoen: <charname>... she... we couldn't help her even if we could find her. I'm sorry.

PC: What do you mean?! We've lost people before! Why is she different!

Imoen: ...Jaheira?

PC: This cannot be happening! Wh-what did they do to her? Why her?

PC: No! Tell me now! How am I to accept this? I love her!

Imoen: *Puts a hand on <charname>'s arm* I'm so sorry, <charname>. I'm so sorry.

Minsc: No! It is not better that Evil has taken Dynaheir from Minsc and Boo and <charname>! This is not right!

PC: I c-can't believe this. Not my Dynaheir. N-not my Dynaheir...

Imoen: (Hugs <charname>) I miss her too, <charname>.

Imoen: ...please, <charname> can we go? We'll find them later. We have to leave now. Please?

PC: ...

PC: *whispers* You're right, Imoen. You're right..

PC: We need to leave. And then I need to find whoever did this... I will avenge you, my dearest.

 

The thing that makes Domi the ArchMage of Character Development is not just her writing... it is constructing the chain so that if some of the people are present, the dialog works; if different people are present, it still works; and if all of the people are present, you have basically a fulll fledged movie scene.

Link to comment

Good point, I see what you are saying. I was sort of thinking of it as one of those cutscene kind of interactions, where you dont really have a choice, and the characters interject into the conversation. hmmm. I have to think about how to work it if we approach it like a normal choice based conversation.

 

Cool start, but it assumes that Jaheira and imoen are both in the party. You might want to break it down so that Imoen (who doesn't take Imoen?!!??!) and Minsc carry the load, and Jaheira and Imoen only interact through Minsc. After all, you can pick up Jaheira, then Minsc, or you can pick up Minsc, then Jaheira, or you can just pick up Jaheira, or you can just pick up Minsc. The only person truly "forced" on you plot-wise is Imoen. To get an Idea of what I am saying, read the paragraph like this:

 

Minsc: etc. etc. dynaheir is dead...

PC: What!? No! Minsc, are you sure? We must find her immediately!

Minsc: No <charname>! She is gone! Boo and I have seen her fall with our very eyes! We could not help her... we... STINKING EVIL!!

PC: We'll simply take her to a temple. She must be here! Come, let us find her!

Imoen: <charname>...

Minsc: She is gone from us! No.. No longer will my witch help us put the boot into evil. My witch…

Imoen: <charname>... she... we couldn't help her even if we could find her. I'm sorry.

PC: What do you mean?! We've lost people before! Why is she different!

Imoen: ...Jaheira?

PC: This cannot be happening! Wh-what did they do to her? Why her?

PC: No! Tell me now! How am I to accept this? I love her!

Imoen: *Puts a hand on <charname>'s arm* I'm so sorry, <charname>. I'm so sorry.

Minsc: No! It is not better that Evil has taken Dynaheir from Minsc and Boo and <charname>! This is not right!

PC: I c-can't believe this. Not my Dynaheir. N-not my Dynaheir...

Imoen: (Hugs <charname>) I miss her too, <charname>.

Imoen: ...please, <charname> can we go? We'll find them later. We have to leave now. Please?

PC: ...

PC: *whispers* You're right, Imoen. You're right..

PC: We need to leave. And then I need to find whoever did this... I will avenge you, my dearest.

 

The thing that makes Domi the ArchMage of Character Development is not just her writing... it is constructing the chain so that if some of the people are present, the dialog works; if different people are present, it still works; and if all of the people are present, you have basically a fulll fledged movie scene.

Link to comment

Archived

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

×
×
  • Create New...