Jump to content

Search the Community

Showing results for tags 'crossmod'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • General Discussion
    • G3 News and Announcements
    • Infinity Engine Modding News
    • General Mod Discussion
    • Fan Fiction
    • Noobermeet
  • Tools & Resources
    • DLTCEP
    • GemRB
    • The Gibberlings Three Debugging Suite for BG2
    • IESDP Updates and Info
    • Modding How-Tos and Tutorials
    • Modding Q&A
    • Multi-Install Tool
    • Widescreen Mod
  • Released Projects
    • Miscellaneous Released Mods
    • Ajantis
    • Alternatives
    • Amber
    • Angelo
    • Auren Aseph
    • BG1 NPC Project
    • Baldur's Gate Mini Quests and Encounters
    • The Beaurin Legacy
    • BG2 Fixpack - General Discussion
    • Calin
    • The Calling
    • Cirerrek's AI Scripts
    • Coran's Friendship Mod
    • Crossmod Banter Pack
    • Divine Remix
    • Enhanced Edition Trilogy
    • Evandra
    • Full Plate & Packing Steel
    • Garrick's Infatuation
    • Gavin
    • The Gibberlings Three Anniversary Mod
    • Icewind Dale Mod Roundup
    • Icewind Dale in Baldur's Gate II
    • Item Randomiser
    • Item Revisions
    • IWD2 NPC Project
    • IWDification
    • Keeping Yoshimo
    • Kivan and Deheriana Companions for BG2
    • Level One NPCs
    • Mur'Neth
    • NPC Kitpack
    • NPC Strongholds
    • NPC Tweak for BG2
    • Oversight
    • Romantic Encounters (BG)
    • Romantic Encounters (BG2)
    • Sarah
    • Song and Silence
    • Spell Revisions
    • Sword and Fist
    • Sword Coast Stratagems
    • Tweaks Anthology Forum
    • Tyris Flare
    • Vynd
    • Wheels of Prophecy
  • Unreleased Projects
    • Aklon
    • Baldur's Gate: Shadow Hand TC
    • Aran Whitehand
    • Delainy
    • IWD Tutu
    • Kit Revisions
    • Inactive Projects
  • NWN2 Modding
    • Miscellaneous Released Mods
    • Romance Pack for the NWN2 OC-MotB
  • Mod Workrooms

Categories

  • NPCs
  • Quests and Others
  • Tweaks & Fixes
  • Items/Kits/Spells
  • Portrait Packs
  • Mini Mods
  • Tools
  • In Progress

Categories

  • Fixes
  • Items
  • Kits
  • NPCs
  • Quests
  • Spells
  • Tweaks
  • Other
  • Tools

Product Groups

There are no results to display.


Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Discord


Website URL


Skype


AIM


MSN


ICQ


Yahoo


Jabber


Location


Interests


Mods Worked On

Found 20 results

  1. Note: I expect that K'aeloree will create another darned good and simple-to-follow tutorial on this in the relatively near future, correctly outlined, and hopefully he will loot and pillage this attempt in the process. These materials are a consolidation and reference on the subject often passed quickly through on the way to getting dialog in the game. As a side benefit, they provide cut & paste template materials as "code shortcuts". -cmorgan There are many different dialog files the engine calls on when the game is unfolding. There are some great tutorials out there, but since I like to prep stuff beforehand, perhaps this breakdown will be a useful addition and save some folks some work coding their mods. Preparation Tutorial links useful to follow before/while/after reading this investigation of dialog file usage: The Road to Banter - by Blue, the Immortal Bard gives you a clue about some of the dialog files and their use, WeiDU Basics - by Japheth you basic IF THEN END states, a series of short tutorials/examples by Kulyok on PPG and several other sites gives you basic examples, and Definitions, Tools and Resources, NPC Creation Series, part 1, by berelinde and the follow up parts 2 and 3 give you a solid basis for all NPC creation including dialog files. A follow up with Theaceface's Ace's very long NPC creation guide should give you a crosscheck on ideas, so that you can get a handle on much of the syntax. Check out K'aeloree's new materials on SHS as well for follow-up and step-by-step breakdowns on things like "What is CD_STATE_NOTVALID and how do I use it?" or "Coding Interjections" or "Coding Friendships and Romances". If you are looking for item dialogs before I get there, there already is a great tutorial available on that: Easy Item Dialogs, for BG2 SoA and ToB by Smoketest. To organize the basic concepts, check out NPC Dialogue 101 by Ghreyfain, also found in a repost at SHS. This tutorial is an expansion of Ghreyfain's original work. After you have finished this tutorial, I suggest a quick visit to a pair of posts/tutorials, for the folks struggling with the whole "why does the order of states in a file matter" thing (or "why does my dialog not play correctly") which often has to do with the order that the engine 'sees' the various states in order to evaluate whether they are true or false. Weights - State Weights - by Japheth and the follow-up Another look at WEIGHT, by JCompton. So now you have some basics down, let's review again exactly what a state is, and what a dialog file is. Introduction: A review of States and Dialog Files Primary concept: dialog files are lists of states. At the most elementary logic level, a dialog file is no more than a list of possible text lines for the game to present. IF ~some_condition_exists~ THEN PRINT_TO_SCREEN ~some_text_with_or_without_additional_links~ END IF ~some_other_condition_exists~ THEN PRINT_TO_SCREEN ~some_text_with_or_without_additional_links~ END IF ~no_condition~ THEN PRINT_TO_SCREEN ~some_text_with_or_without_additional_links~ END Brought into the game by WeiDU reading in the file myMod.tp2, a dialog state is added when WeiDU compiles an IF THEN END code block through a ".d file" into a new or existing game resource designated by the extension .dlg Examples of usage in myMod.tp2: COMPILE ~myMod/c-aran.d~ COMPILE EVALUATE_BUFFER ~myMod/dlg/AnyNameYouwWant.d~ Reminder: when WeiDU compiles a .d file, it does not automatically add or start or set up references, or create a .dlg file. WeiDU still needs entries in the .tp2 file and .d file to set this into the game. So /* standard .d file with dialog */ COMPILE ~myMod/c-aran.d~ /* "evaluated" .d file with dialog and in-file variables that need to be evaluated before adding strings to the dialog.tlk */ COMPILE EVALUATE_BUFFER ~myMod/dlg/AnyNameYouwWant.d~ does not add the dialog files c-aran.dlg AnyNameYouwWant.dlg it just processes those files to find out what you *do* want added to the game. To add specific dialogs to the game, the .d file needs to have some entries. Why don't we start with adding a .dlg file so that the game will recognize a valid dialog: in myMod.tp2: COMPILE ~myMod/c-aran.d~ in the related c-aran.d: BEGIN ~c-aran~ So that gives the i.e. engine a chance at identifying and reading a new .dlg. Let's go on and add three states to c-aran.d. To keep things separated and simplified, we have begun a .dlg, and now we are going to add states to that .dlg - to "append" new materials to the existing file. BEGIN ~c-aran~ APPEND ~c-aran~ END The APPEND block contains all of the states that relate to a single dialog file, "c-aran". Now we add some actual states: BEGIN ~c-aran~ APPEND ~c-aran~ IF ~NumTimesTalkedTo(0)~ THEN BEGIN c-aranstarts SAY ~Aye, welcome, then. This is a fine day on Trade Way." IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(1)~ THEN BEGIN c-aranagain SAY ~I do remember you - we talked before, didn't we..." IF ~~ THEN GOTO c-aranends END IF ~~ c-aranends SAY ~No matter. Welcome again, then. This is a fine day on Trade Way." IF ~~ THEN EXIT END END The only difference in the above three states is what brings them up to the engine's "use this now" list. While that's a whole other topic, we can shortcut to the following breakdown; When the game engine looks in the .dlg file c-aran, and begins evaluating each state in order. It checks agains State 1, and if it finds the condition NumTimesTalkedTo(0) is true, it fires off State 1 - and in the dialog box in-game, the player sees the text string "Aye, welcome, then. This is a fine day on Trade Way". If it finds State 1 is false (for example, if this is the second time we have called on the dialog file "c-aran.dlg"), then the engine skips State 1 and moves to State 2. It tries again; if it finds " number of times talked to = 1", then state 2 is fired, and the player sees the text string "I do remember you - we talked before, didn't we...". If this is the third time we have talked to the NPC assigned the .dlg "c-aran", then we have a problem. State 1 evaluates false and is skipped, state 2 evaluates false and is skipped, and state 3 has no condition - it literally cannot be evaluated. State 3 can only be linked from another state (in this case it is linked from State 2), so the dialog fails. What happens at this point depends on several factors not for discussion in this tutorial. For now, let's go back and fix this so there is no chance of failure: BEGIN ~c-aran~ APPEND ~c-aran~ IF ~NumTimesTalkedTo(0)~ THEN BEGIN c-aranstarts SAY ~Aye, welcome, then. This is a fine day on Trade Way." IF ~~ THEN EXIT END IF ~NumTimesTalkedToGT(0)~ THEN BEGIN c-aranagain SAY ~I do remember you - we talked before, didn't we..." IF ~~ THEN GOTO c-aranends END IF ~~ c-aranends SAY ~No matter. Welcome again, then. This is a fine day on Trade Way." IF ~~ THEN EXIT END END Now, either State 1 or State 2 will always be true, and we can look at the reply section of State 2. It creates a direct link to State 3. So the game evaluates State 2, then follows the reply, and we get two separate dialog boxes: I do remember you - we talked before, didn't we... No matter. Welcome again, then. This is a fine day on Trade Way. For great information on how to use and manipulate states, there are a large number of in-depth and beginner-friendly tutorials. So let's move on to the subject of this tutorial, which is more about organizing groups of states and forming and manipulating dialog file references. Here, we contextualize states, and break down what .dlg files are - what they do for our NPC.
  2. berelinde

    Gavin NPC for BG

    Version v14

    155,881 downloads

    Gavin is an NPC mod for Tutu, BG:EE, and the BG portion of BGT and EET. He is a Morninglord of Lathander and can be found outside the Song of the Morning Temple, near Beregost. Learn more about the mod View the Readme Visit the Forum
  3. Grim Squeaker

    Crossmod Banter Pack for BG2

    Version v19

    89,905 downloads

    The Crossmod Banter Pack is a collaborative effort to add banters between NPC's from mods that add content to Shadows of Amn and Throne of Bhaal. Learn more about the mod View the Readme Visit the Forum
  4. G3's Crossmod Banter Pack for Baldur's Gate II has updated to v15 and is now available for download. Packages for Windows, OS X, and Linux are ready and installable on BG2:SoA, BG2:ToB, BGT, BG2:EE, and EET. The Crossmod Banter Pack is a collaborative effort to add banters between NPCs from mods that add content to Shadows of Amn and Throne of Bhaal. The current release covers Adrian, by Rhaella; Ajantis (BG2, ToB), by Jastey; Alassa, by SimDing0; Amber, by Meira & Darios; Angelo, by Sister Vigilante; Aran Whitehand, by cmorgan; Arath, by K'aeloree; Auren, by Theacefes; Branwen, by Kulyok; Coran, by Kulyok; Dace, by Tess & K'aeloree; Darian, by Tempest; Fade, by Mistress Elysia; Faren, by Feuille & Miss Sakaki; Gavin (BG2, ToB), by Berelinde; Goo, by Ghreyfain; HaerDalis Romance, by Aeryn; Haldamir, by Berelinde; Homeward Bound, by Berelinde; Hubelpot, by Bookwyrme; Ilyos, by K'aeloree; Isra, by Rhaella; Iylos, by K'aeloree; Kari the Kobold, by Moongaze; Kelsey, by JCompton; Keto, by JCompton & Blue the Immortal Bard; Kido, by Deathsangel/Moongaze; Kindrek, by Nethrin; Kitanya, by Rastor; Kivan of Shilmista, by Domi; Laufey's Edwin Romance, by Laufey; Nathaniel, by Feuille & Miss Sakaki; Neh'taniel, by Skye & kitanna; Nephele, by K'aeloree; Ninde, by Deva & Rhaella; Petsy Chattertone, by Lava Del'Vortel; Saerileth, by Nethrin & Sillara; Sarah, by Theacefes; Solaufein, by Weimer; Tales of the Deep Gardens, by Lava Del'Vortel; Tashia, by Bri & Lord Ernie; The Longer Road (Irenicus), by Dorotea; The Luxleys, by Feuille & Miss Sakaki; Tiax, by Kulyok; Tsujatha, by Nethrin & Sillara; Wikaede, by Moongaze; Willie Bruce; Xan, by Kulyok; Xulaye, by K'aeloree, Riviera, & Bookwyrme; Yasraena, by Nethrin & Sillara; Yoshimo Romance, by Lava Del'Vortel; and Yvette, by Lava Del'Vortel. Version 15's changelog can be found in the readme, with notable inclusions of traification for foreign language support, utf8 string encoding for BG2:EE installs, and a large amount of new content. Learn more about the mod ReadMe Visit the Forum Download
  5. We have found out in other threads that some "awareness" of things presented in mod-added content can be scripted directly into your mod without any troubles. For example, Aran can reference any existing DV, so !Inparty("mynpc") checks will not fail on install, and the strings referenced will be available if the mod-added NPC shows up in-game later on, regardless of install order. This works with globals, too, so in other threads progress to certain points in other mods allows "side talk" - not directly bantering with an NPC or using an item, but acknowledging their presence, either by use of <PLAYER3> tokens in dialog, or with direct checks for globals and DVs. Any way we cut this, we are still talking about having Aran (or your NPC) having some of his talks and paths refer to outside events created by other mods, and being able to install that content as part of Aran's mod. The presence of the global variable or DV being active in a game then "activates" that content passively - no need for messing about with other folk's files, etc. We have taken this a step further with looking at player responses by mod-added kit, in the thread regarding "what happens when..."; here, we found that when Divine Remix was not installed and we wanted to reference the kits added, we had a problem. Compiling a reference to a non-pre-existing kit left the engine with only one choice, "0". Which caused all sorts of problems if DR was not installed, and even worse had no "repair" effect on installed files - unlike GTIMES.IDS or other "engine lookup by handle" things, KIT.IDS references have to be built *after* the kits have been placed on an install, because of the way the files are created and referenced. We get around that by creating an independent "patch", ARAN_AWARE, which so far just swaps "dummy" variables that will compile at install but never be triggered (a very old idea in terms of shutting down content, the equivalent of adding False() to a trigger so a dialog will never play, except reversing a False() is a PITA, whereas setting a never-reached variable to 1 is a much more compatibility - friendly way of coding it - a SetGlobal, and the original block plays.) with the wanted content using good old fashioned REPLACE_TEXTUALLY operation: /* HEARTWARDER OF SUNE - Sune Firehair, Lady Firehair : Global("c-heartwarder","GLOBAL",1) */ ACTION_IF FILE_EXISTS_IN_GAME nmsune.2da BEGIN ACTION_FOR_EACH ~dialog_file~ IN ~c-aranj.dlg~ ~c-aranp.dlg~ ~c-arn25j.dlg~ ~c-arn25a.dlg~ BEGIN ACTION_IF FILE_EXISTS_IN_GAME ~%dialog_file%~ THEN BEGIN COPY_EXISTING ~%dialog_file%~ ~override~ DECOMPILE_DLG_TO_D REPLACE_TEXTUALLY ~Global("c-heartwarder","GLOBAL",1)~ ~Kit(Player1,NMSUNE) OR(6) Class(Player1,CLERIC) Class(Player1,FIGHTER_CLERIC) Class(Player1,CLERIC_MAGE) Class(Player1,CLERIC_THIEF) Class(Player1,FIGHTER_MAGE_CLERIC) Class(Player1,CLERIC_RANGER)~ REPLACE_TEXTUALLY ~Global("c-aranheartwarder","GLOBAL",1)~ ~Kit("c-aran",NMSUNE) OR(6) Class("c-aran",CLERIC) Class("c-aran",FIGHTER_CLERIC) Class("c-aran",CLERIC_MAGE) Class("c-aran",CLERIC_THIEF) Class("c-aran",FIGHTER_MAGE_CLERIC) Class("c-aran",CLERIC_RANGER)~ COMPILE_D_TO_DLG BUT_ONLY_IF_IT_CHANGES END END END So far so good. We know that using this after Divine Remix is installed means that the correct reference gets swapped into Aran's files. If a player installs the "patch" mod, the new content is activated. If they don't their game still works, and there is no problem. So, what else would need this kind of handling?
  6. /* SoA Banters: Aran<>ninde : Flirting : cmorgan and Rhaella */ CHAIN IF ~Global("c-aran1ninde","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("ninde") InMyArea("ninde") !StateCheck("ninde",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB c-aran1nindetalk ~[ARAN] Now, that outfit o' yours be a right fine one, I do say. Th' way th' curves just flow right into...~ DO ~SetGlobal("c-aran1ninde","GLOBAL",1)~ == BLK#NIND ~Eyes up here, darling. And don't waste your breath. I've heard it all before... and from far more silvered tongues than yours.~ == C-ARANB ~[ARAN] It be mine to waste. O' course, there be some nice ways o' practicin' holdin' my breath, but they do involve some cooperation on your part, you know.~ == BLK#NIND ~[NINDE] Tempting... but no. As much as I might enjoy wrapping a piece of silk around your lovely throat, I doubt that our brave leader would appreciate the picture come morning. A pity.~ = ~But at least you have no quaint notions of chivalry and romance. You go straight for the heart of the matter.~ == C-ARANB ~[ARAN] I believe in takin' my chances when I can, eh?~ == BLK#NIND ~[NINDE] If only you were trainable. And rich. And much more aesthetically pleasing. Grime, grit, gristle, gaffe... too many rough edges for me, I'm afraid. Do be a dear and press your... attentions... on some tavern wench.~ == C-ARANB ~[ARAN] Pity. I was right willin' to overlook th' whole death-worshipin' necromantic baggage, on account o' those curves. I can be right pleasurable, you know.~ == BLK#NIND ~[NINDE] Alas, it pains me so that I shall never have the opportunity to experience your deep and abiding eroticism.~ == C-ARANB ~[ARAN] I take it that be what they call 'sarcasm'?~ == BLK#NIND ~[NINDE] Live and learn, sweetpea.~ EXIT /* SoA Banters: ninde<>Aran : Tricks : cmorgan and Rhaella */ CHAIN IF ~Global("c-ninde1aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN BLK#NIND c-ninde1arantalk ~[NINDE] Do pick that up for me, Aran. I seem to have some difficulty keeping hold of everything.~ DO ~SetGlobal("c-ninde1aran","GLOBAL",1)~ == C-ARANB ~[ARAN] Sune's Caress, I have enough o' my own gear. Am I supposed to carry mine an' yours both?~ == BLK#NIND ~[NINDE] You really can be most tiresome, Aran. I suppose it is too much to ask that a big, strong man such as yourself give a lady a hand? It is nothing heavy, and it would help me ever so much.~ == C-ARANB ~[ARAN] Well, you could... err... ~ == C-ARANB ~[ARAN] Oh, hells. Fine. I'll blighted carry it for you.~ == BLK#NIND IF ~!InParty("imoen2") InParty("jaheira")~ THEN ~[NINDE] And *that*, Jaheira, is how it is done. Slightly lowered lashes, a careful disarray of one's clothing, showing a small amount extra of cleavage, a bit of flattery, and a slight pout of the lip.~ == BJAHEIR IF ~!InParty("imoen2") InParty("jaheira")~ THEN ~[JAHEIRA] I did not say that it would not work. I said that it was unnecessary to twist his will using Nature's power.~ == BLK#NIND IF ~InParty("imoen2")~ THEN ~[NINDE] And *that*, Imoen, is how it is done. Slightly lowered lashes, a careful disarray of one's clothing, showing a small amount extra of cleavage, a bit of flattery, and a slight pout of the lip.~ == BIMOEN2 IF ~InParty("imoen2")~ THEN ~[iMOEN] Awww... Aran, you fell for it. I never thought that would work. You know how Ninde plays about with you.~ == BJAHEIR IF ~InParty("jaheira")~ THEN ~[JAHEIRA] Nature has a way of clouding anyone's mind when it comes to attraction.~ == BLK#NIND IF ~!InParty("imoen2") !InParty("jaheira") ~ THEN ~[NINDE] And *that* is how it is done. Slightly lowered lashes, a careful disarray of one's clothing, showing a small amount extra of cleavage, a bit of flattery, and a slight pout of the lip.~ == BVICONI IF ~InParty("viconia)~ THEN ~[VICONIA] Mildly amusing, darthiir. Perhaps with more practice you will become truly adept at it, yes?~ == BLK#NINDE IF ~InParty("viconia)~ THEN ~[NINDE] Hmph. I would like to see you do better... especially with this one. Isn't he still running away whenever you walk by, darling?~ == C-ARANB ~[ARAN] I feel a mite bit dirty, I do. Used an' tossed aside like an old rag, one might think.~ == BLK#NIND ~[NINDE] Oh, you know you love it.~ == C-ARANB ~[ARAN] Heh.~ EXIT /* SoA Banters: Aran<>ninde : Flattery : cmorgan and Rhaella */ CHAIN IF ~Global("c-aran2ninde","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("ninde") InMyArea("ninde") !StateCheck("ninde",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB c-aran2nindetalk ~[ARAN] Do you have to walk that way, right in front o' me? You could harm a lad, you know.~ DO ~SetGlobal("c-aran2ninde","GLOBAL",1)~ == BLK#NIND ~[NINDE] Try not to trip over your own feet, Aran. That would be most unseemly, even for you.~ == C-ARANB ~[ARAN] I... well, hells, it be natural to react, is all.~ == BLK#NIND ~[NINDE] So utterly predictable. And you wonder why I prefer to study the dead.~ == C-ARANB ~[ARAN] Walkin' that way, you might just be able to raise 'em, whether they be alive or dead.~ == BLK#NIND ~[NINDE] Flattery will get you nowhere, darling.~ EXIT /* SoA Banters: ninde<>Aran : Of Mice and Men : cmorgan */ CHAIN IF ~Global("c-ninde2aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN BLK#NIND c-ninde2arantalk ~[NINDE] What, no comment? No leering? Are you ill, Aran?~ DO ~SetGlobal("c-ninde2aran","GLOBAL",1)~ == C-ARANB ~[ARAN] No, I be naught in th' way o' sick. You done made it clear that even friendly flirtin' were to be shut down right proper.~ == BLK#NIND ~[NINDE] Oh, come now. That is not how the game is played. Don't you want to flirt a little?~ == C-ARANB ~[ARAN] You done said that...~ == BLK#NIND ~[NINDE] Did I? I might be under a slightly different impression.~ == C-ARANB ~[ARAN] Now you know I don't rightly want to intrude where I'm not wanted.~ == BLK#NIND ~[NINDE] And I gave you the impression thet I didn't... want you?~ == C-ARANB ~[ARAN] I thought... well, I were sure that...~ == C-ARANB ~[ARAN] Sune's Blessin's, you done got me right confused.~ == BLK#NIND ~[NINDE] Ah, much better. All is right with the world, then.~ == C-ARANB ~[ARAN] Somehow I feel I am one o' those toys what cats play wi' before devourin'. Mice, I think they call 'em.~ == BLK#NIND ~[NINDE] Mice, men... what's in a name, anyways?~ EXIT /* SoA Banters: Aran<>Ninde : Husband Hunting : cmorgan */ CHAIN IF ~Global("c-aran3ninde","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("ninde") InMyArea("ninde") !StateCheck("ninde",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB c-aran3nindetalk ~[ARAN] So, still not found that rich husband o' your dreams?~ DO ~SetGlobal("c-aran3ninde","GLOBAL",1)~ == BLK#NIND ~[NINDE] They seem to be practically leaping out of my path. It would injure my pride, if I did not know what they are missing.~ == C-ARANB ~[ARAN] It might be th' whole 'Wander Toril an' th' Planes In Search Of Adventure' thing. You have little in th' way o' findin' what you want roamin' about killin' things an' changin' th' world.~ == BLK#NIND ~[NINDE] Perhaps. It would explain so many things. I was beginning to think it might be your presence, driving more eligible suitors away. I was contemplating killing you and raising you as an undead slave, to ensure you were not a distraction.~ == C-ARANB ~[ARAN] I feel practically dead already.~ EXIT /* ToB Banters: Ninde<>Aran : Nature Wins Again : cmorgan */ CHAIN IF ~Global("c-ninde3aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN BLK#NIN25 c-ninde3arantalk ~[NINDE] Oh, do pick that up for me, Aran, dear.~ DO ~SetGlobal("c-ninde3aran","GLOBAL",1)~ == C-ARN25B ~[ARAN] Oh, no. You won't blighted get me that way again, eh? It may have been a long time ago, but I remember. "That be th' way it's done", she says, "a pout o' th' lip an' a fine bit o' cleavage, an' they be putty in your hands."~ == BLK#NIND ~[NINDE] You really can be most tiresome, Aran. I supose it is too much to ask that big, strong you give a lady a hand? It is nothing heavy, and it would help me every so much.~ == C-ARANB ~[ARAN] Well, you could... err... ~ == C-ARANB ~[ARAN] Oh, hells. Fine. I'll blighted carry it for you.~ == BLK#NIN25 ~[NINDE] About time. If I revealed much more, I might have no modesty left at all.~ == C-ARN25B ~[ARAN] Sune's Left Breast!~ == BLK#NIN25 ~[NINDE] Oh, I am sure they are not as good as a Goddesses. Then again, I have never had the chance to compare.~ == C-ARN25B ~[ARAN] Hells, I feel a right fool.~ == BLK#NIN25 ~[NINDE] Oh, don't take it so hard, Aran. You are not that big of a fool. I simply refuse to play fairly.~ EXIT /* ToB Banters: Aran<>Ninde : Trust : cmorgan */ CHAIN IF ~Global("c-aran4ninde","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("ninde") InMyArea("ninde") !StateCheck("ninde",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARN25B c-aran4nindetalk ~[ARAN] You know, I think we may need some o' your necromantic services after all. Mayhap you could enchant some o' these dragons an' liches an' such an' put them on our side.~ DO ~SetGlobal("c-aran4ninde","GLOBAL",1)~ == BLK#NIN25 ~[NINDE] I suppose I could. I am probably powerful enough. It would take some time, and be very dangerous, but it could be done.~ == C-ARN25B ~[ARAN] So do you think it would be a good idea?~ == BLK#NIN25 ~[NINDE] Poor choice of moral alignment, there. It would be definitely not good, but it might be possible. But have you thought of how having an undead Dragon wandering about the campsite every night, creaking and moaning, his bones rattling, might disturb your sleep?~ == BLK#NIN25 ~[NINDE] Besides, you would have to trust me...~ == C-ARN25B ~[ARAN] Hells, forget I asked.~ EXIT
  7. One of my favorite NPCs - all these are by me, but hopefully Bri or Lord Ernie will wander by and make changes or suggestions. File: aranw_aware\aranaware_tashia_SoAbanters.d /* SoA Banters: Tashia<>Aran : High Spirits : cmorgan */ CHAIN IF ~Global("c-tashia1aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN BTASHIA tashia1arantalk ~[TASHIA] Rather gloomy, aren't you?~ DO ~SetGlobal("c-tashia1aran","GLOBAL",1)~ == C-ARANB ~[ARAN] Aye, then, lass, I think you have a mite bit o' th' truth there. Down just a little, I think.~ == BTASHIA ~[TASHIA] So, how about a riddle?~ == C-ARANB ~[ARAN] No, not now, as I got naught for spirited talk. You seem a mite down yourself, there. You got an interestin' familiar, some tough magic, an' you be travelin' with us. What's th' matter wi' you, to bring you so far down?~ == BTASHIA ~[TASHIA] Well, that's really no one's concern but mine. Personal matters... you understand, I'm sure.~ == C-ARANB ~[ARAN] Sure. I understand. Here, lass... have a nip from this flask. It may not solve anythin', but it will warm up your insides.~ == BTASHIA ~[TASHIA] I would think so... I can smell it from here!~ == C-ARANB ~[ARAN] Sometimes a nip o' somthin' what can kick a lad or lass will do wonders. Spirits for to raise your spirits, eh?~ == BTASHIA ~[TASHIA] I don't know...~ == C-ARANB ~[ARAN] Well, suit yourself. Th' offer's always available.~ EXIT [code] And now for a little moe fun - let's play with the blanket idea that Tashia has between Jaheira and Aerie, only throwing a slightly different light on thins - a riff in the key of flirt, if Tashia and Aerie are in the party with Aran: [code] APPEND C-ARANB /* SoA Banters: Aran<>Tashia : no romance with PC with either Aran or Tashia, and even better if you have both Tashia and Aerie in the party... : cmorgan */ IF ~!Global("TashiaRomanceActive","GLOBAL",2) !Global("c-aranrom","GLOBAL",2) Global("c-aran1tashia","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("tashia") InMyArea("tashia") !StateCheck("tashia",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN BEGIN c-aran1tashiatalk SAY ~[ARAN] Oh, nice an' soft... just th' right sort o' thing. I'll just be packin' this up, an'...~ IF ~~ THEN DO ~SetGlobal("c-aran1tashia","GLOBAL",1)~ EXTERN BTASHIA c-aran1tashiastart END IF ~~ c-aran1tashiafour SAY ~[ARAN] Now, I doubt that would end so well for me. I done learned a long time ago that pleasin' a woman be a full time occupation, an' splittin' forces leads to disaster.~ IF ~~ THEN EXTERN BTASHIA c-aran1tashiaseven END IF ~~ c-aran1tashiafive SAY ~[ARAN] Now, while that be a right entertainin' thought, I was actually talkin' to you, Tashia.~ IF ~~ EXTERN BTASHIA c-aran1tashiaseven END IF ~~ c-aran1tashiasix SAY ~[ARAN] Now, while that be a right entertainin' thought, I was actually talkin' to you, Aerie.~ IF ~~ EXTERN BAERIE c-aran1tashiaeight END END CHAIN C-ARANB c-aran1tashiaone ~[ARAN] Well, I might be in a right fine position to share it wi' you...~ == BTASHIA ~[TASHIA] Are you suggesting what I think you are suggesting?~ == C-ARANB ~[ARAN] Now, you be a woman o' th' world, an' a beautiful one at that. Why should I not ask?~ END IF ~~ THEN EXTERN BTASHIA c-aran1tashiaseven CHAIN BAERIE c-aran1tashiatwo ~[AERIE] No, that is mine! How did we get these all mixed up?~ == C-ARANB ~[ARAN] Well, I might be in a right fine position to share it wi' you...~ == BTASHIA ~[TASHIA] Are you suggesting what I think you are suggesting?~ == BAERIE ~[AERIE] Wh- what is he suggesting?~ == C-ARANB ~[ARAN] Now, you be a woman o' th' world, an' a beautiful one at that. Why should I not ask?~ == BAERIE ~[AERIE] Aran, are you talking to me, or to her? Ask what?~ END IF ~~ THEN EXTERN BTASHIA c-aran1tashiathree APPEND BTASHIA IF ~~ c-aran1tashiastart SAY ~[TASHIA] Hey! That's my blanket you're taking!~ IF ~InParty("aerie") InMyArea("aerie") StateCheck("aerie",CD_STATE_NOTVALID)~ THEN EXTERN BAERIE c-aran1tashiatwo IF ~OR(3) !InParty("aerie") !InMyArea("aerie") StateCheck("aerie",CD_STATE_NOTVALID)~ THEN EXTERN C-ARANB c-aran1tashiaone END IF ~~ c-aran1tashiathree SAY ~[TASHIA] For all we know, he might be talking to us both.~ IF ~RandomNum(3,3)~ THEN EXTERN C-ARANB c-aran1tashiafour IF ~RandomNum(3,2)~ THEN EXTERN C-ARANB c-aran1tashiafive IF ~RandomNum(3,1)~ THEN EXTERN C-ARANB c-aran1tashiasix END END CHAIN BTASHIA c-aran1tashiaseven ~[TASHIA] I see someone has a growing appreciation for the possibility of female companionship.~ == C-ARANB ~[ARAN] Do you be usin' some sort o' sorcerous ways to see right through these clothes o' mine?~ == BTASHIA ~[TASHIA] No, no... I just know the way men's minds work.~ == BTASHIA ~[TASHIA] Nice try, Aran, but I have my Peanelian to keep me warm.~ == C-ARANB ~[ARAN] I do admit he can do that right well, but I might have some more ways o' pleasin' you, you know.~ == BTASHIA ~[TASHIA] Oh, I don't know...~ == C-ARANB ~[ARAN] You can't be naught in th' way o' serious.~ == BTASHIA ~[TASHIA] Hehe... You should see your face!~ == C-ARANB ~[ARAN] You might think on it a bit, you know, all jokin' aside. You be a fine lookin' lass.~ EXIT CHAIN BAERIE c-aran1tashiaeight ~[AERIE] I... Oh. You are... You are?~ == C-ARANB ~[ARAN] I have been admirin' you for some time now, Aerie. I wouldn't speak so bold if I hadn't seen your eyes come my direction more than a few times, eh?~ == BTASHIA ~[TASHIA] I see someone has a growing appreciation for the possibility of female companionship.~ == C-ARANB ~[ARAN] Do you be usin' some sort o' sorcerous ways to see right through these clothes o' mine?~ == BTASHIA ~[TASHIA] No, no... I just know the way men's minds work.~ == BAERIE ~[AERIE] You... you were talking to me.~ == BTASHIA ~[TASHIA] Now I can't decide which of you two is blushing brighter. Should I just leave you two lovebirds alone?~ == BAERIE ~[AERIE] NO! No... I mean, please don't go. I... I don't think Aran is suggesting...~ == BTASHIA ~[TASHIA] Believe me, he is.~ == C-ARANB ~[ARAN] Belive me, I am.~ == BAERIE ~[AERIE] Oh! Oh my!~ == BTASHIA ~[TASHIA] Was her grabbing the blanket and running off hiding her face in it part of your master plan, loverboy?~ == C-ARANB ~[ARAN] Sune's Sweet Smile, I thought I was makin' time right well. Damnation on my blighted tongue.~ == BTASHIA ~[TASHIA] Sometimes a girl does like attention. Just don't go overboard.~ EXIT installed and tested.
  8. A tough one to write for. /* SoA Banters: Aran<>Tsujatha : What are you... : cmorgan */ CHAIN IF ~Global("c-aran1tsujatha","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("TSUJATH") InMyArea("TSUJATH") !StateCheck("TSUJATH",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB c-aran1tsujathatalk ~[ARAN] What in th' nine hells are you? I never did see a Tel'Quessirim so tall. An' you don't rightly look natural.~ DO ~SetGlobal("c-aran1tsujatha","GLOBAL",1)~ == BTSUJAT ~[TSJUATHA] I am a necromancer. I do manipulate death. And this serves me well. It serves <CHARNAME> also.~ == C-ARANB ~[ARAN] You blighted well know that be naught in th' way o' an answer. An' don't try that cold stare wi' me. I have seen th' worst o' death, an' I don't rightly scare easily.~ == BTSUJAT ~[TSJUATHA] Have you walked the planes, brought animation to the dead, and weilded the powers of a Prime?~ == C-ARANB ~[ARAN] Well, seein' as I don't rightly know what two out o' th' three o' those really mean, mayhap not.~ == BTSUJAT ~[TSJUATHA] You have much to learn, then, before you can truly fear me.~ == C-ARANB ~[ARAN] You are a strange one, Tsjuatha. I don't know if havin' you around be a blessin' or damnation for us all.~ == BTSUJAT ~[TSJUATHA] I have embraced damnation with open arms--and open eyes.~ == C-ARANB ~[ARAN] Well, I blighted well haven't.~ EXIT /* SoA Banters: Tsujatha<>Aran : Pride and Prejudice : cmorgan */ CHAIN IF ~Global("c-tsujatha1aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("TSUJATH") InMyArea("TSUJATH") !StateCheck("TSUJATH",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN BTSUJAT c-tsujatha1arantalk ~[TSJUATHA] You are a sword for hire, and a commoner of this land, Master Whitehand?~ DO ~SetGlobal("c-tsujatha1aran","GLOBAL",1)~ == C-ARANB ~[ARAN] Sellsword, aye. Commoner, well... common enough. Mayhap there be a bit o' social distinction between us non-nobles around these parts, but th' adventurin' an' sellsword life pulls to th' bottom o' th' heap most times.~ == C-ARANB ~[ARAN] Put it this way; a merchant's son you can bring home to th' family. A sellsword, well... you have a nice little affair, some kissin' an' sparkin' in th' bedchamber. Then you smarten up an' go find some nice boy o' th' settlin' down type to actually marry.~ == C-ARANB ~[ARAN] What about you? Do they all be so dark an' nihilistic where you be from?~ == BTSUJAT ~[TSJUATHA] I was born the only son of an ancient and proud house, one of the noble houses amongst the Fair Elves. Before my second century I was Prince of the Golden Desert.~ == C-ARANB ~[ARAN] I have naught in th' way o' experience talkin' wi' no Prince, let alone some sandy gold-lovin' plane-travelein' one. But I have had plenty o' experience dealin' wi' braggarts an' those what think they are superior.~ == BTSUJAT ~[TSJUATHA] (A smirk crosses his face at Aran's quaint phrasing, but his eyes are serious as he responds.)~ == BTSUJAT IF ~GlobalGT("NaliaTsujathaTalk","GLOBAL",1)~ THEN ~[TSUJATHA] I believe that I have said this to Mistress Nalia...~ == BTSUJAT ~[TSJUATHA] It would be best for your health if you gave up these assumptions. I am of higher birth than you are, but it hurts your pride to think so.~ == C-ARANB ~[ARAN] Higher birth on account o' you bein' not from this plane, on account o' you bein' born an elf, on account o' your family's bloodline, or on account o' you bein' a wizard what studies death?~ == BTSUJAT ~[TSJUATHA] All four of these. And none of the four.~ == C-ARANB ~[ARAN] Th' thing is, you talk a right fine game. You act an' look colder than death, mincin' about superiour to us poor blighted inhabitants o' this backwater plane. But you stay here, desperately pickin' fights an' pushin' at others around you so's to see yourself in th' reflections o' their conversations. So you want to live, that be sure, no matter how much you play wi' words n' shadow.~ == BTSUJAT ~[TSJUATHA] I would not recommend mocking those whose power exceeds your own.~ == C-ARANB ~[ARAN] It were naught in th' way o' mockery. An' there you go again, bein' all dark an' threatenin'. There be comfort an' strength in bein' part o' a group o' "lesser powers". I might not touch you one on one. But get a few o' my mates together, an' death magic or no, we'd balance you out right fine.~ EXIT This second one needs to be revisited. It is part of the way that Tsujatha is written that he is smarter, darker, wiser, and more angsty than anyone else in the party. He *always* wins, and other NPCs *always* admit he is right, albeit sometimes grudgingly. Even in the limited Crossmod Banter Project entries, NPCs discussing things with him are kind to him. Do I like this? No. Do I care deeply? No - this is fiction, and they are both toys. Do people like this? Yes - he is downloaded and played even today. SO... I should probably keep the banters in character with Tsujatha's character, and make sure he has a suitably dark comeback. I'll log it on the to-do list, after I have read more about him.
  9. Now, with the Granddaddy of All Mods, Solaufein, there is an added difficulty. We can (and I have) create two fun banters, and install them. file: aranw_aware\aranaware_solaufein_SoAbanters.d /* SoA Banters: Aran<>Solaufein : cmorgan */ CHAIN IF ~Global("c-aran1solaufein","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("SOLA") InMyArea("SOLA") !StateCheck("SOLA",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB c-aran1solaufeintalk ~[ARAN] So I hear you be a "good" Drow.~ DO ~SetGlobal("c-aran1solaufein","GLOBAL",1)~ == SOLA ~[sOLAUFEIN] Yes, it would appear so.~ == C-ARANB ~[ARAN] Didn't know there were any such thing.~ == SOLA ~[sOLAUFEIN] I assure you, I am. I exist, and I am not alone.~ == C-ARANB ~[ARAN] Well, I suppose you might find a rose on a dungheap, but I'd be thinkin' it would be a right easier thing to find a "good" demon servin' tea at Hareshom's o' Waterdeep.~ == SOLA ~[sOLAUFEIN] Perhaps you are correct. But the followers of Eilistraee, Lady Silverhair, must be discreet if we are to guide our brothers and sisters to a lighter path.~ == C-ARANB ~[ARAN] This Ellyartrie...~ == SOLA ~[sOLAUFEIN] Eilistraee.~ == C-ARANB ~[ARAN] Look, do there be many followers o' Her particular brand o' Drowdom?~ == SOLA ~[sOLAUFEIN] Very few, I am afraid.~ == C-ARANB ~[ARAN] Actually, that makes me a mite bit happier. I'd rather not be rethinkin' every single Drow bastard I personally put down. Chances are, none o' them be ones where I should o' hesitated.~ == SOLA ~[sOLAUFEIN] Ah, my friend, for a brief moment I thought that you would see past your prejudice rather that rationalize your past actions. I will sing a prayer to Lady of the Dance.~ EXIT /* SoA Banters: Solaufein<>Aran : cmorgan */ CHAIN IF ~Global("c-solaufein1aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("'c-aran") InMyArea("'c-aran") !StateCheck("'c-aran",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN SOLA c-solaufein1arantalk ~[sOLAUFEIN] Ah, my prejudiced fellow traveller - speech is a mirror of the soul. As a man speaks, so is he. I ask you now: who is Aran?~ DO ~SetGlobal("c-solaufein1aran","GLOBAL",1)~ == C-ARANB ~[ARAN] I don't rightly understand th' question. Wait... mayhap I do. Do you be sayin' th' way a man speaks be a good indication o' his personality, his habits, an' so forth?~ == SOLA ~[sOLAUFEIN] Why, yes. I think that is a fair assessment.~ == C-ARANB ~[ARAN] That be a right interestin' idea. But I don't think it applies to me. You want to know me, you look at how I write, an' ignore th' language.~ == SOLA ~[sOLAUFEIN] I do not think that will be a fair picture. With your scribing, you have time to think, to craft your ideas. In your speech, there is an immediacy that shows a raw truth.~ == C-ARANB ~[ARAN] Mayhap. Or mayhap we have to agree to disagree, eh?~ == SOLA ~[sOLAUFEIN] I can convince you with a simple example, if you would like.~ == C-ARANB ~[ARAN] Aye, then, go ahead an' try.~ == SOLA ~[sOLAUFEIN] Have you ever known a Drow to communicate through poetry and song?~ == C-ARANB ~[ARAN] Point taken. An' I have to admit; mayhap I be wrong about th' only good Drow bein' a dead Drow. Mayhap there be one or two what be reasonable bein's.~ EXIT Now comes the interesting part. As written above, Aran's initiated banter will play, but on the vast majority of installs, Solaufein's will not. Why? Well... for one thing, Solaufein does not have a banter file. Oh, he does - but he doesn't. Because Back In The Day™, in the very first mods, the same file was used for both banter and for joined file, and the NPC script switched things around. And for a second thing, the RPG Solaufein Flirt pack adds a PID-style flirt to SOLA, so even if we call it, it will never play, as he flirts will superceed it in evaluation order. Actually, they might - the flirts are set on Player1 being the gabber, but if the folks there add the !Gabber(Player1) blocks I use, then they will have a wall - and someone, sometime, is going to build a proper PID for the lad. In a regular install, players will use the "obvious", and install Solaufein, then the RPG Flirt pack. Two traditional ways to fix this - play around with weighting, moving the banter higher up in the order. Tricky, risks Weimer's work being blocked, and subject to install order problems. Yuck. (actually, an additional one - start messing about with Solaufein's .bcs. Double-triple-yuck). Or take the cheap way out - and don't have Solaufein actually start the banter - have it triggered from Aran's file. Since I have control of Aran's stuff, and not Solaufein's, I'm going "cheap, cheap, cheap", to quote Meilcamp! Changed file entry - /* SoA Banters: Solaufein<>Aran : cmorgan */ CHAIN IF ~Global("c-solaufein1aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("SOLA") InMyArea("SOLA") !StateCheck("SOLA",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB c-solaufein1arantalk == C-ARANB ~[ARAN] Blighted stone. Got one in my boot, I do.~ DO ~SetGlobal("c-solaufein1aran","GLOBAL",1)~ == SOLA ~[sOLAUFEIN] Ah, my prejudiced fellow traveller - speech is a mirror of the soul. As a man speaks, so is he. I ask you now: who is Aran?~ == C-ARANB ~[ARAN] I don't rightly understand th' question. Wait... mayhap I do. Do you be sayin' th' way a man speaks be a good indication o' his personality, his habits, an' so forth?~ == SOLA ~[sOLAUFEIN] Why, yes. I think that is a fair assessment.~ == C-ARANB ~[ARAN] That be a right interestin' idea. But I don't think it applies to me. You want to know me, you look at how I write, an' ignore th' language.~ == SOLA ~[sOLAUFEIN] I do not think that will be a fair picture. With your scribing, you have time to think, to craft your ideas. In your speech, there is an immediacy that shows a raw truth.~ == C-ARANB ~[ARAN] Mayhap. Or mayhap we have to agree to disagree, eh?~ == SOLA ~[sOLAUFEIN] I can convince you with a simple example, if you would like.~ == C-ARANB ~[ARAN] Aye, then, go ahead an' try.~ == SOLA ~[sOLAUFEIN] Have you ever known a Drow to communicate through poetry and song?~ == C-ARANB ~[ARAN] Point taken. An' I have to admit; mayhap I be wrong about th' only good Drow bein' a dead Drow. Mayhap there be one or two what be reasonable bein's.~ EXIT And that, as they say, is that
  10. The Authorship stuff is always a PITA in this community, with a long history of oddities. But in general, I am using "authorized" to mean "the original author and I wrote up sketches and worked together", and "unauthorized" to cover "the original author did not participate". Many modders have said that they welcome additional crossmod content but are no longer in the community; others have said "no way I am not going to have anyone write lines for my NPC whether I am around or not". Bigger discussion at The Sensuous Permission-Free Crossmod Banter Author, By Mr. C . To be completely honest, as I have said before in other posts, I'm with Nythrun on the silliness of "authorizing" and "unauthorizing" content built by unauthorized extrapolation of characters created for and registered to BioWare™. But I am not going to go out of my way and poke modders with definitive views that are different than my own, because (after all) hey, it's a game, and it isn't worth making someone all upset over writing a few lines of dialog. So, for instance, I know Theacefes is a person who prefers not to have other folks write lines for her character. I'll poke about and bug her, and with any luck we'll come up with some fun stuff, all "authorized", if she likes and has time. Why tick her off by writing stuff for Sarah? On the "unauthorized=not original modder" front, under my definition, Taisha and Kivan fall into the category even though each of their authors has given blanket permission for other folks to write banters for those characters. Domi has even worked up one - but the other, i went ahead and created something on my own that I thought she would like. In this case, the whole discussion is moot, as I expect I can bribe/beg/plead with Domi to take a look and either say "sure" or give edits. So, Kivan SoA content. To be blunt, Kivan and Aran in ToB are not likely to have much to be chatting about; if something pops up, we can always add it. Two banters in SoA file: aranw_aware_kivan_SoAbanters.d /* SoA Banters: Aran<>Kivan : Domi and cmorgan */ CHAIN IF ~Global("c-aran1kivan","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("p#kivan") InMyArea("p#kivan") !StateCheck("p#kivan",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB c-aran1kivantalk ~[ARAN] Blighted elves.~ DO ~SetGlobal("c-aran1kivan","GLOBAL",1)~ == BP#KIV ~[KIVAN] What?!~ == C-ARANB ~[ARAN] It be bad enough you live for several lifetimes.~ == BP#KIV ~[KIVAN] I have lost the ability to see my long life as a blessing, human.~ == C-ARANB ~[ARAN] Aye, an' add all that broodin' angst...~ == BP#KIV ~[KIVAN] How--~ == C-ARANB ~[ARAN] Hells, there be no chance for us fireflies wi' our own womenfolk, eh?~ == BP#KIV ~[KIVAN] Who can understand those humans?~ == C-ARANB ~[ARAN] Corellon's Sword, give it a shot, eh, or you might catch yourself some rough explainin'.~ EXIT /* SoA Banters: Aran<>Kivan : cmorgan (don't blame Domi if it sucks, and when she gets time she might fix it up ) */ CHAIN IF ~Global("c-kivan1aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN BP#KIV c-kivan1arantalk ~[KIVAN] No, no... 'ah-MIN hi-RAE-tha'.~ DO ~SetGlobal("c-kivan1aran","GLOBAL",1)~ == C-ARANB ~[ARAN] 'ayahaMin hiRAYtah'.~ == BP#KIV ~[KIVAN] 'ah-MIN hi-RAE-tha'.~ == C-ARANB ~[ARAN] 'ayaha-MIN hi-RAYtah'.~ == BP#KIV ~[KIVAN] For the hundredth time, you must let the syllables sing. Gutteral harshness, amin uuma merna ta.~ == C-ARANB ~[ARAN] Blighted tongue. Serves me right for tryin' to speak a language what takes half a Xvim-kissed century to learn. It be a fair amount easier to write this than to speak it, eh?~ == BP#KIV ~[KIVAN] Perhaps in your case, that would be best.~ == C-ARANB ~[ARAN] Aye. What be th' chance I am actually goin' to say 'I'm sorry' in elven anyways, or any other language for that matter. Hey... how do you say 'take me to your bedchamber'?~ == BP#KIV ~[KIVAN] Shevarash, tua amin! Amin lava.~ EXIT Installed and tested.
  11. Finalized with Sister V, ready for inclusion with the AranW_Aware mod (if this post goes away due to forum stuff, no problems - it will be backed up at GitHub this weekend when the "aranw_aware" mod is cleared to be placed on the install after the current unreleased beta - my browser is showing "offline but I can still apparently post...) When there is an active modder it is a blast to play "build the banters" with them. Way cool fun. And Sister V even voiced Angelo's stuff, which ups the ante for me... Here are the ones Sister V and I came up with via PM, after suggestions in other threads: Two banters for ToB File: aranaware_angelo_ToBbanters.d /* ToB Banters: Aran<>Angelo : Wine and Travel Story Swap : by Sister V and cmorgan */ CHAIN IF ~Global("c-aran3angelo","GLOBAL",0) InParty("ADAngel") InMyArea("ADAngel") !StateCheck("ADAngel",CD_STATE_NOTVALID) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY]) ~ THEN C-ARN25B c-aran3angelotalk ~[ARAN] Cyric's Black Heart, this travelin' about builds up a powerful thirst. Give a lad a story, eh? Tell me what be th' best drink you ever did have.~ DO ~SetGlobal("c-aran3angelo","GLOBAL",1)~ == BADANG25 ~[ANGELO] Well, in Maztica, there is a concoction they call the Blood of the Serpent God. Refreshingly literal; it's a gods-damned viper stopped up in a bottle of ale. They say the trace of venom makes you see the face of Ao. Bought some of a peddler, and happen I saw Her face. Didn't you know She's a woman? Most beautiful lass you ever saw. And I understood why She made it all, you know; out of love, and I loved Her...the worst drink followed the best. On the third bottle, the face became my dam's, telling me what a disappointment I'd always been till the early morning hours. ~ == BADANG25 ~[ANGELO] That's how it goes. Anyway, what's yours?~ == C-ARN25B ~[ARAN] Well, th' best drink I ever did have were some right smart tastin' meade from up Moonshae ways. O' course, I didn't know it were stronger than most, an' I fell to drinkin' wi' a nice lass. She seemed to get prettier th' more I drank, an' th' more I drank she drank, an' soon enough we fell to sparkin'. It were one hells o' a night.~ == BADANG25 ~[ANGELO] Mayhap I sense a common theme. What of the morning to follow? ~ == C-ARN25B ~[ARAN] I done learned my lesson. I woke up wi' a Kossoth-kissed hangover, no coinpurse, an' somehow half o' my clothin' were missin' as well. That were a long walk back to barracks, that were. I never did know how cold a winter sea-breeze could be until I tried it wi' very little to protect me from th' waist down.~ == BADANG25 ~[ANGELO] Without the bitter aftertaste, I reckon, we'd not know the medicine worked. ~ == C-ARN25B ~[ARAN] Aye. That be a right powerful truth.~ EXIT /* ToB Banters: Angelo<>Aran: heartsick */ CHAIN IF ~Global("c-angelo4aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY]) ~ THEN BADANG25 c-angelo4arantalk ~[ANGELO] Gods, all this killing makes me heartsick. Happen I think there's nothing more beautiful than a farmer maid singing to herself, hanging out the laundry as night falls... ~ DO ~SetGlobal("c-angelo3aran","GLOBAL",1)~ == C-ARN25B ~[ARAN] Now, that do sound right pretty. But on my account, swap in some red-tressed, nip-an'-tuck waisted, green-eyed slip o' a barmaid, an' I think I'd like that right proper.~ == BADANG25 ~[ANGELO] To each his own.~ == C-ARN25B ~[ARAN] Turnin' soft in your old age, eh? You done figured out what th' rest of us knew long ago. Welcome to th' human race.~ == BADANG25 ~[ANGELO] I may not join the rest of you yet. I'd still have the advantage of yon imagined farmer maid.~ == C-ARN25B ~[ARAN] Blighted sure, on any account. Not while she be singin', though, on account o' you won't want it to end. No tears shed on proper sparkin'.~ == BADANG25 ~[ANGELO] But while the song lasts, it is enough to make a man cry.~ == C-ARN25B ~[ARAN] But a man never cries, does he?~ == BADANG25 ~[ANGELO] Nay. Never.~ EXIT Four banters for SoA File: aranaware_angelo_SoAbanters.d /* SoA Banters: Aran<>Angelo : Orders are Orders : by Sister V and cmorgan */ CHAIN IF ~Global("c-aran1angelo","GLOBAL",0) InParty("ADAngel") InMyArea("ADAngel") !StateCheck("ADAngel",CD_STATE_NOTVALID) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB c-aran1angelotalk ~[ARAN] So... you wanted to kill <PRO_HIMHER>?~ DO ~SetGlobal("c-aran1angelo","GLOBAL",1)~ == BADANGEL ~[ANGELO] Orders are orders.~ == C-ARANB ~[ARAN] True.~ == BADANGEL ~[ANGELO] Things were different.~ == C-ARANB ~[ARAN] Heh. I weren't there.~ == BADANGEL ~[ANGELO] Good thing. I would have taken you out first.~ == C-ARANB ~[ARAN] Scared o' me?~ == BADANGEL ~[ANGELO] Just can't stand your breath.~ == C-ARANB ~[ARAN] Yeah, screw you, too.~ == BADANGEL ~[ANGELO] Thanks, but I prefer women.~ == C-ARANB ~[ARAN] Heh.~ EXIT /* SoA Banters: Angelo<>Aran : Manners : by Sister V and cmorgan */ CHAIN IF ~Global("c-angelo1aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN BADANGEL c-angelo1arantalk ~[ANGELO] Aran, you curse like a Calimshite sailor. Show some respect. ~ DO ~SetGlobal("c-angelo1aran","GLOBAL",1)~ == C-ARANB ~[ARAN] Ha! This unwashed, whorin' drunkard thinks t' teach me a lesson in manners? ~ == BADANGEL ~[ANGELO] A gentleman can whore and drink, and be a gentleman still. That's the Sembian way. ~ == C-ARANB ~[ARAN] Well, th' Sembian way be a mite bit strange. But it don't rightly matter, on account o' I never did be no gentleman.~ == BADANGEL ~[ANGELO] How incisive. ~ EXIT /* SoA Banters: Aran<>Angelo : Using Drugs : by Sister V and cmorgan */ CHAIN IF ~Global("c-aran2angelo","GLOBAL",0) InParty("ADAngel") InMyArea("ADAngel") !StateCheck("ADAngel",CD_STATE_NOTVALID) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB c-aran2angelotalk ~[ARAN] Usin' again?~ DO ~SetGlobal("c-aran2angelo","GLOBAL",1)~ == BADANGEL ~[ANGELO] Aye, happen I am.~ == C-ARANB ~[ARAN] You are a blighted Cyric-buggerin' bastard.~ == BADANGEL ~[ANGELO] And worse.~ == C-ARANB ~[ARAN] It's goin' to kill you. An' probably me. Mayhap <PRO_HIMHER>, too.~ == BADANGEL ~[ANGELO] Aye.~ == C-ARANB ~[ARAN] Goin' to be able to quit forever?~ == BADANGEL ~[ANGELO] Nay.~ == C-ARANB ~[ARAN] ... ~ == BADANGEL ~[ANGELO] But I'm not using today.~ == C-ARANB ~[ARAN] Good.~ == BADANGEL ~[ANGELO] Who are you, my father?~ == C-ARANB ~[ARAN] Nope. But for all I know, you are mine, you soddin' philanderin' bugger.~ == BADANGEL ~[ANGELO] Cheers to that thought.~ EXIT /* SoA Banters: Angelo<>Aran : le soldat : by Sister V and cmorgan */ CHAIN IF ~Global("c-angelo2aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN BADANGEL c-angelo2arantalk ~[ANGELO] Aran? I wanted to say, I appreciate having a soldier at my back. ~ DO ~SetGlobal("c-angelo2aran","GLOBAL",1)~ == C-ARANB ~[ARAN] Flattery? What do you be wantin' o' me now? ~ == BADANGEL ~[ANGELO] Why, nothing but your company. Be <CHARNAME>'s other companion's ever-so-talented, nothing beats old-fashioned army discipline.~ == C-ARANB ~[ARAN] An' adventurin' company beats th' blighted hells out o' army life any day, as far as food an' coin go.~ == BADANGEL ~[ANGELO] Don't I know it. Let's have a drink to that, eh? ~ EXIT
  12. SoA: Two banters, plus one Underdark Banter File: aranaware_saerileth_SoAbanters.d /* SoA Banters : Aran-Saerileth */ CHAIN IF ~Global("c-aran1saerileth","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("Saerileth") InMyArea("Saerileth") !StateCheck("Saerileth",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB c-aran1saerilethbanter ~[ARAN] Lady Paladin, I'd be a might happier if you would take th' time to answer me a question, beggin' my impertinence.~ DO ~SetGlobal("c-aran1saerileth","GLOBAL",1)~ == BSAERILE ~[sAERILETH] Speak on, Aran.~ == C-ARANB IF ~!Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[ARAN] <CHARNAME>'s rightly leader here, an' I expect has reason to have so young a lass on th' front lines. I was workin' trade costers m'self at your age, so I got no problem wi' that. But you seem a bit more focused on what be right an' wrong than what be practical.~ == C-ARANB IF ~Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[ARAN] <CHARNAME>'s rightly leader here, an' I expect has reason to have so young a lass on th' front lines. I was workin' trade costers m'self at your age, so I got no problem wi' that. But you both seem a mite bit more than just comrades in arms.~ == BSAERILE IF ~!Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[sAERILETH] Which would thou choose when the choice must be made: goodness or utility? There is but one answer.~ == BSAERILE IF ~Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[sAERILETH] I am his love, and he is mine own.~ == C-ARANB ~[ARAN] An' this answer serves Tyr, on account o' you bein' his Chosen an' all?~ == BSAERILE IF ~!Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[sAERILETH] My life is, and hath ever been, Tyr's only. I shall follow his will so long as I have breath.~ == BSAERILE IF ~Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[sAERILETH] My life is, and hath ever been, Tyr's. I shall follow his will so long as I have breath. <CHARNAME> knows this. He will understand the depth of my faith.~ == C-ARANB ~[ARAN] I'm not sure I understand that kind o' faith, is all. I never did.~ EXIT /* SoA Banters : Saerileth-Aran */ CHAIN IF ~Global("c-saerileth1aran","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN BSAERILE c-saerileth1aranbanter ~[sAERILETH] Why dost thou reject the gods? The foul-mouthed oaths thou dost speak do disservice to all.~ DO ~SetGlobal("c-saerileth1aran","GLOBAL",1)~ == C-ARANB ~[ARAN] Come, now, Saerileth. There must o' been a time when you were not so tight-ar... err... no, I suppose you never did let your hair down, so to speak. You haven't had enough time in life yet.~ == BSAERILE ~[sAERILETH] Thy jesting is misplaced, and I am not amused.~ == C-ARANB ~[ARAN] Now, don't you be gettin' all offended, lass. There be a place for a harmless bit o' language, sometimes. An' Tymora seems to be fine wi' me playin' fast an' loose.~ == C-ARANB IF ~OR(2) Class("c-aran",PALADIN_ALL) Class("c-aran",CLERIC_ALL)~ THEN ~[ARAN] How about we not get our respective gods into no minor squabble just on account o' my blasphemin', eh?~ == C-ARANB IF ~!Class("c-aran",PALADIN_ALL) !Class("c-aran",CLERIC_ALL)~ THEN ~[ARAN] I know I am no champion o' virtue. I done lost that in a card game when I... never you mind that. But I try to back <CHARNAME>, an' you back <CHARNAME>, so that has to count for somethin', eh?~ == BSAERILE IF ~OR(2) Class("c-aran",PALADIN_ALL) Class("c-aran",CLERIC_ALL)~ THEN ~[sAERILETH] I do pity thee that thou knowest not yet the wishes of thy god. Foul-mouthed blasphemy will forfeit the good will of all of the gods.~ == BSAERILE IF ~!Class("c-aran",PALADIN_ALL) !Class("c-aran",CLERIC_ALL)~ THEN ~[sAERILETH] I do pity thee that thou knowest not yet the power of worshiping one god above all others. Foul-mouthed blasphemy will forfeit the good will of all of the gods.~ == C-ARANB ~[ARAN] Is this somethin' where you are likely to raise a sword against me if I curse a mite here an' there?~ == BSAERILE ~[sAERILETH] As long as thou dost tread the path of good, I will sojourn with thee. But I warn thee... curb thy language.~ == C-ARANB ~[ARAN] You know, hearin' those words from a little slip o' a girl not even out o' apprentice age might be laughable in some circumstances. But seein' as you can hold your own in combat an' healin', I will take you right serious. At least, as far as I can. Hard to break old habits.~ EXIT /* SoA UD Banters : Aran-Saerileth */ CHAIN IF ~Global("c-drow","GLOBAL",1) Global("c-aranudsaerileth","GLOBAL",0) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InParty("Saerileth") InMyArea("Saerileth") !StateCheck("Saerileth",CD_STATE_NOTVALID) CombatCounter(0) !See([ENEMY])~ THEN C-ARANB AranSaerUDBanter ~[ARAN] I know I don't rightly take you serious all th' time. You be a fine companion, though a mite bit stubborn an' mayhap a bit fanatical. But here, I can see why a lad might follow in your footsteps a mite. This place deserves to be eradicated.~ DO ~SetGlobal("c-aranudsaerileth","GLOBAL",1)~ == BSAERILE ~[sAERILETH] 'Twould be false in me to deny that the continued existence of this place doth trouble me.~ == C-ARANB ~[ARAN] I'd think it be time to call forth a holy crusade, an' clear 'em off out o' here. Mayhap destroy evey last one o' them.~ == BSAERILE ~[sAERILETH] Our mortal lives do oft seem full of injustice, but if our lots are here unjust, we may rest assured that the Maimed Tyr will not deny us justice when he doth judge us. But all of these creatures have chosen to serve evil. Their judgment hath been wrought, their lot decided, and eventually they shall fall to the power of Tyr.~ == C-ARANB ~[ARAN] I don't suppose there be some who might follow a good cause down here, eh? Mayhap one or two redeemed souls, trapped alongside all this scurryin' evil?~ == BSAERILE ~[sAERILETH] Forgive me. My zeal oft overcomes my discretion. In this matter, I spoke hastily; Tyr is the Judge, and I am his Champion. Perhaps there are a few souls the Maimed One would have me spare. It is not my decision to make.~ == C-ARANB ~[ARAN] Well, now you done got me worried. Usually, you be th' one takin' things to extremes. I was about to suggest we just send 'em all Tyr's way, an' let him figure out who goes where. I think down here, I be a might bit more comfortable wi' "guilt by association".~ EXIT SoA: comment on romance File: aranaware_saerileth_SoAcomment.baf /* Saerileth Commentary SoA : Are you sure about this romance? : Activate */ IF InParty("Saerileth") InMyArea("Saerileth") !StateCheck("Saerileth",CD_STATE_NOTVALID) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) CombatCounter(0) Global("SaerilethRomanceActive","GLOBAL",2) Global("c-aranpcsaerrom","GLOBAL",0) THEN RESPONSE #100 SetGlobal("c-aranpcsaerrom","GLOBAL",1) END /* Saerileth Commentary SoA : Are you sure about this romance? : Initiate */ IF GlobalTimerExpired("c-aransmalltalk","GLOBAL") // Timer (game-time) has expired Global("c-silencearan","GLOBAL",0) // a PID - set "silencer" for folks who hate unsolicited comments Global("c-aranpcsaerrom","GLOBAL",1) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) !StateCheck(Player1,CD_STATE_NOTVALID) THEN RESPONSE #100 StartDialogNoSet(Player1) END File: aranaware_saerileth_SoAdialog.d APPEND C-ARANJ /* Saerileth Commentary SoA : Are you sure about this romance? : Dialog */ IF WEIGHT #-1 ~Global("c-aranpcsaerrom","GLOBAL",1)~ THEN BEGIN carsar1 SAY ~[ARAN] Now, this be naught in th' way o' my business. But I have to ask... are you an' Saerileth gettin' serious?~ ++ ~[PC] Of course not. That is a ridiculous suggestion.~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + carsar2 ++ ~[PC] What do you think?~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + carsar3 ++ ~[PC] Yes.~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + carsar4 ++ ~[PC] Are we holding hands and kissing occasionally? Yes, I think we are. Are we getting serious? I am not sure.~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + carsar4 ++ ~[PC] Do I ask you about your dalliances with half of Faerun?~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + carsar3 ++ ~[PC] Speak of this to me again, and you will be looking for a new line of work. And perhaps searching for your missing head.~ + carsar10 END IF ~~ carsar2 SAY ~[ARAN] You must be blighted blind, then. Th' lass looks at you wi' th' intensity o' first love, an' th' passions o' a full grown woman. You'd best be careful around her, on account o' she might get th' wrong idea - or worse, th' right one.~ ++ ~[PC] I don't really need to be careful. I think I am falling for her.~ + carsar4 ++ ~[PC] Are we holding hands and kissing occasionally? Yes, I think we are. Are we getting serious? I am not sure.~+ carsar8 ++ ~[PC] Do I ask you about your dalliances with half of Faerun?~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + carsar3 ++ ~[PC] Speak of this to me again, and you will be looking for a new line of work. And perhaps searching for your missing head.~ + carsar10 END IF ~~ carsar3 SAY ~[ARAN] Look, <CHARNAME>, I love th' way women move, th' way they speak, th' way they smell, th' way they smile... hells, I just love women. But me an' someone what wears th' flower be a mite different than what you are talkin' about. First off, we all have th' age o' consent. Second off, if I tick off th' lady in question, she may box my ears, kick me, get me thrown into th' street, or mayhap carve me up a little, as be her choice. With Saerileth...~ IF ~~ THEN GOTO carsar8 END IF ~~ carsar4 SAY ~[ARAN] Do you be kiddin' wi' me? A lass what has seen less than sixteen winters? Give her a year to come o' age a' make her own chices, an' mayhap I wouldn't kick her out o' my b... err... well, she is pretty an' all, I guess. But she don't know squat about livin', let alone havin' a serious relationship. Tyr's Blasted Buttocks, don't send a child to do adult's work, <CHARNAME>. Love isn't just for play.~ ++ ~[PC] Take one look into her eyes, and tell me that she does not love me.~ + carsar5 ++ ~[PC] She is the Chosen of Tyr. She is strong enough, wise enough, and driven enough to know her own mind. Do you really think we would be together if she was not set on having it that way?~ + carsar6 ++ ~[PC] What, are you jealous? I did not know you were in love with her too.~ + carsar7 ++ ~[PC] It is a passing crush, and I intend to have as much fun with her as her religious views will allow.~ + carsar8 ++ ~[PC] So now you are an expert on serious relationships? That is a laugh. You don't even remember the barmaid's name the next morning.~ + carsar3 END IF ~~ carsar5 SAY ~[ARAN] Aye, she does. That be even more dangerous.~ IF ~~ THEN GOTO carsar9 END IF ~~ carsar6 SAY ~[ARAN] Mayhap you are right. Mayhap she be older than her years, an' wiser than a sage; mayhap she be mature enough to understand that relationships be work as well as fun. But all that wisdom an' such be packed into a body what be still growin' an' changin'.~ IF ~~ THEN GOTO carsar9 END IF ~~ carsar7 SAY ~[ARAN] Jealous? No possibility o' that, boyo. She scares me half to death.~ IF ~~ THEN GOTO carsar9 END IF ~~ carsar9 SAY ~[ARAN] Look, <CHARNAME>, I love th' way women move, th' way they speak, th' way they smell, th' way they smile... hells, I just love women. But me an' someone what wears th' flower be a mite different than what you are talkin' about. First off, we all have th' age o' consent, meanin' we can make our own choices. Second off, if I tick off th' lady in question, she may box my ears, kick me, get me thrown into th' street, or mayhap carve me up a little, as be her choice. With Saerileth...~ IF ~~ THEN GOTO carsar8 END IF ~~ carsar8 SAY ~[ARAN] You know how 'hell hath no fury like a woman scorned'? Well, take one look at her an' all you see is slim little hips, curves to die for, an' lips beggin' to be kissed - not one bit o' th' hells about her. Take a look in her eyes, though, an' you see an intensity an' a devotion that be downright scary. Now picture her if you hurt her. There won't be any place on any o' th' Planes where you could hide from her wrath. She'll rip you in half wi' her bare hands, then heal you up just so she can do it again.~ ++ ~[PC] You are taking this too seriously. I am much more powerful than she is. She will never be able to defeat me.~ + carsar10 ++ ~[PC] I don't intend to hurt her. I think she may be my soulmate.~ + carsar10 ++ ~[PC] She's a bunny rabbit. What's she going to do, nibble my bum?~ + carsar10 /* heh - Monty Python is fun. But this one might be a good one to lose. */ ++ ~[PC] This is my business, not yours. Keep out of it.~ + carsar10 END IF ~~ carsar10 SAY ~[ARAN] None o' my business, anyways. You think you can handle it. But I have been on th' receivin' end o' a regular woman what feels she has been wronged, an' it were a mite painful. Breakin' th' heart o' someone with th' feelin's o' adolescent first love who just happens to be an accomplished fighter an' th Chosen o' Tyr... that's bloody suicide.~ IF ~~ THEN EXIT END END Installed and tested.
  13. We will insert the GitHub link once it is up right <<here>>, but for now, let's take inventory and start setting up for the documentation. Material written and integrated so far (except for the Gavin crossmod stuff that Berelinde and I are still tinkering with): Divine Remix aranw_aware will open pathways that recognize if your PC is using one of the Cleric Kits from Divine Remix. Kits Recognized: Heartwarder of Sune Feywarden of Correlon Strifeleader of Cyric Painbearer of Ilmater Lorekeeper of Oghma Firewalker of Kossuth Silverstar of Selune Holy Strategist of the Red Knight Nightcloak of Shar Battleguard of Tempus Authlim of Iyachtu Xvim NPC Mod Banters aranw_aware will add banters between Aran and the NPC in question if both Aran Whitehand and the other NPC mod are installed before running aranw_aware. NPC Mods Recognized: Laufey's Edwin Romance (one interjection in a conflict between Edwin and Anomen) "unauthorized" Angelo (two banters in SoA, two in ToB) "authorized", by Sister Vigilante and cmorgan; sound clips by Sister Vigilante Kivan (two banters in SoA) - "authorized" and "unauthorized" one by Domi and cmorgan, another by cmorgan (and hopefully she will ok it when she has the chance). Saerileth (three banters and one comment in SoA) "unauthorized", by cmorgan - if they stink, blame me and not Netharin/Sillara Tashia Remix, by Michael "Arian" Lyashenko, Bri, and Lord Ernie (two banters in SoA, two in ToB) "unauthorized", by cmorgan - if they stink, blame me and not Bri, Lord Ernie, or the original author, Michael "Arian" Lyashenko Tsujatha NPC MOD For Baldur’s Gate 2 (TOB Required) by Sillara of the Tamari (two banters in SoA) "unauthorized", by cmorgan - if they stink, blame me and not Sillara Solaufein Romance Mod Pack, by Westley Weimer (two banters in SoA) "unauthorized", by cmorgan - if they stink, blame me and not Westley Weimer Rather than filling the forum up with code, I will link the materials to github, so folks can see the .tp2 materials that way.
  14. Please post it here. Use spoiler tags or links, if you would prefer to avoid spoilers.
  15. Sounds like a loophole to me. Let's clean up the "Sheri unrecognized" deal for female PC's. Plus, we should probably help out male PCs too. Classic "Hey, there's this chick I know... oh... errr... daymn. Should have guessed she was going to be very into you. Or vice versa. Pun intended." OK, let's try a "Side Commentary" that would fit. This beats trying to deal with coding dependent I_C_Ts - no hassles if things change in versions or updates of RE. Compatibility can be maintained by checking against 1 variable on existing or updated installs and updating AranW accordingly. No install order hassles, no mess, no fuss - easy-peasy. .baf file extensions: /* BEGIN TEST */ /* SoA Scenery: Acknowledging Sheri from Romantic Encounters */ /* OK, look for Sheri D'Avignon at the Mithrest Inn... */ IF InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) AreaCheck("AR0704") Global("c-aranRE_Sheri","GLOBAL",0) THEN RESPONSE #100 SetGlobal("c-aranRE_Sheri","GLOBAL",1) END /* trigger the comment (Dialog handles Exists("RE_Sheri) | Exists("RE_Sheri) */ IF !See([ENEMY]) InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) InMyArea(Player1) !StateCheck(Player1,CD_STATE_NOTVALID) AreaCheck("AR0704") Global("c-aranRE_Sheri","GLOBAL",1) THEN RESPONSE #100 StartDialogueNoSet(Player1) END /* Rollback if player moves out of AR0704 before it triggers or other things happen to delay this */ IF InParty(Myself) !StateCheck(Myself,CD_STATE_NOTVALID) !AreaCheck("AR0704") Global("c-aranRE_SheriTalk","GLOBAL",1) THEN RESPONSE #100 SetGlobal("c-aranRE_SheriTalk","GLOBAL",0) END /* END TEST */ .d file extensions: /* BEGIN TEST */ /* SoA Scenery: Acknowledging Sheri from Romantic Encounters */ /* Do we see her as existing or not? */ IF ~Global("c-aranRE_Sheri","GLOBAL",1)~ aran_precursor_sheri SAY ~[ARAN] Now, I be listenin'...~ IF ~InMyArea("RE_Sheri")~ THEN DO ~SetGlobal("c-aranRE_Sheri","GLOBAL",2)~ GOTO aran_start_sheri IF ~!InMyArea("RE_Sheri")~ THEN DO ~SetGlobal("c-aranRE_Sheri","GLOBAL",2)~ GOTO aran_no_sheri END /* Let's make sure there is an excuse not to be directly involved in the I_C_Ts, for immersion/consistency */ /* start here if she is not around or not installed: if the area script is slow to process, no harm done, because we introduce *why* Aran is not in the interjections... so if it evaluates later, no inconsistency */ IF ~~ aran_no_sheri SAY ~[ARAN] Well, no Sheri tonight, it seems. An' that be a pity, too. She sings th' kind o' songs I like.~ = ~[ARAN] Mayhap if we drop by again an' she be here, you do th' talkin', eh? On account o' I think I might have ticked her off proper last time I tried to get friendly wi' her.~ ++ ~[PC] Let me guess. You made a clumsy pass at her and ended up insulting her.~ + aran_charged_sheri ++ ~[PC] Just when was this "last time"?~ + aran_longago_sheri ++ ~[PC] That is fine with me.~ + aran_worth_sheri ++ ~[PC] What kind of songs do you like?~ + aran_5_sheri + ~!Class(Player1,BARD_ALL)~ + ~[PC] I... I do not usually wander up to strangers and talk to them. Even bards and storytellers.~ + aran_worth_sheri + ~Class(Player1,BARD_ALL)~ + ~[PC] I do not usually wander up to strangers and talk to them. Even other bards and storytellers. I usually listen without interacting with them.~ + aran_worth_sheri END /* Start here if she is around */ IF ~~ aran_start_sheri SAY ~[ARAN] Aye, she be in right fine form tonight. An any night, for that matter.~ = ~[ARAN] But mayhap you should do th' talkin'. I did not do so well on th' communication front last time we spoke. In fact, I mayhap be better off standin' a ways back an' just listenin'.~ + ~Gender(Player1,MALE) Class(Player1,BARD_ALL) Class("c-aran",BARD_ALL)~ + ~[PC] The bard over there in the corner? Is she special?~ + pcbard_aranbard /* PC is a bard, Aran is a bard : male */ + ~Gender(Player1,MALE) Class(Player1,BARD_ALL) !Class("c-aran",BARD_ALL)~ + ~[PC] The bard over there in the corner? Is she special?~ + pcbard_arannotbard /* PC is a bard, Aran is not a bard : male */ + ~Gender(Player1,MALE) !Class(Player1,BARD_ALL) Class("c-aran",BARD_ALL)~ + ~[PC] The bard over there in the corner? Is she special?~ + pcnotbard_aranbard /* PC is not a bard, Aran is a bard : male */ + ~Gender(Player1,MALE) !Class(Player1,BARD_ALL) !Class("c-aran",BARD_ALL)~ + ~[PC] The bard over there in the corner? Is she special?~ + aran_1malepc_sheri /* PC is not a bard, Aran is not a bard : male */ + ~Gender(Player1,FEMALE) Class(Player1,BARD_ALL) Class("c-aran",BARD_ALL)~ + ~[PC] The bard over there in the corner? Is she special?~ + fempcbard_aranbard /* PC is a bard, Aran is a bard : female */ + ~Gender(Player1,FEMALE) Class(Player1,BARD_ALL) !Class("c-aran",BARD_ALL)~ + ~[PC] The bard over there in the corner? Is she special?~ + fempcbard_arannotbard /* PC is a bard, Aran is not a bard : female */ + ~Gender(Player1,FEMALE) !Class(Player1,BARD_ALL) Class("c-aran",BARD_ALL)~ + ~[PC] The bard over there in the corner? Is she special?~ + fempcnotbard_aranbard /* PC is not a bard, Aran is a bard : female */ + ~Gender(Player1,FEMALE) !Class(Player1,BARD_ALL) !Class("c-aran",BARD_ALL)~ + ~[PC] The bard over there in the corner? Is she special?~ + aran_1femalepc_sheri /* PC is not a bard, Aran is not a bard : female */ ++ ~[PC] Let me guess. You made a clumsy pass at her and ended up insulting her.~ + aran_charged_sheri ++ ~[PC] I do not usually waste my time talking to insignificant people.~ + aran_worth_sheri ++ ~[PC] I will take that under consideration. Perhaps I will go listen to her.~ + aran_worth_sheri + ~!Class(Player1,BARD_ALL)~ + ~[PC] I... I do not usually wander up to strangers and talk to them. Even bards and storytellers.~ + aran_worth_sheri + ~Class(Player1,BARD_ALL)~ + ~[PC] I do not usually wander up to strangers and talk to them. Even other bards and storytellers. I usually listen without interacting with them.~ + aran_worth_sheri END IF ~~ aran_charged_sheri SAY ~[ARAN] Aye, guilty as charged.~ + ~Gender(Player1,MALE) Class(Player1,BARD_ALL) Class("c-aran",BARD_ALL)~ + ~[PC] Is she special?~ + pcbard_aranbard /* PC is a bard, Aran is a bard : male */ + ~Gender(Player1,MALE) Class(Player1,BARD_ALL) !Class("c-aran",BARD_ALL)~ + ~[PC] Is she special?~ + pcbard_arannotbard /* PC is a bard, Aran is not a bard : male */ + ~Gender(Player1,MALE) !Class(Player1,BARD_ALL) Class("c-aran",BARD_ALL)~ + ~[PC] Is she special?~ + pcnotbard_aranbard /* PC is not a bard, Aran is a bard : male */ + ~Gender(Player1,MALE) !Class(Player1,BARD_ALL) !Class("c-aran",BARD_ALL)~ + ~[PC] Is she special?~ + aran_1malepc_sheri /* PC is not a bard, Aran is not a bard : male */ + ~Gender(Player1,FEMALE) Class(Player1,BARD_ALL) Class("c-aran",BARD_ALL)~ + ~[PC] Is she special?~ + fempcbard_aranbard /* PC is a bard, Aran is a bard : female */ + ~Gender(Player1,FEMALE) Class(Player1,BARD_ALL) !Class("c-aran",BARD_ALL)~ + ~[PC] Is she special?~ + fempcbard_arannotbard /* PC is a bard, Aran is not a bard : female */ + ~Gender(Player1,FEMALE) !Class(Player1,BARD_ALL) Class("c-aran",BARD_ALL)~ + ~[PC] Is she special?~ + fempcnotbard_aranbard /* PC is not a bard, Aran is a bard : female */ + ~Gender(Player1,FEMALE) !Class(Player1,BARD_ALL) !Class("c-aran",BARD_ALL)~ + ~[PC] Is she special?~ + aran_1femalepc_sheri /* PC is not a bard, Aran is not a bard : female */ ++ ~[PC] Fine. If we do go listen to her, you stay back.~ + aran_worth_sheri ++ ~[PC] This habit of offending women you meet... you are working on fixing that, right?~ + aran_ayeexit_sheri ++ ~[PC] So, to cut a long story short, you think she is worth hearing, but you should avoid her, right?~ + aran_ayeexit_sheri END IF ~~ pcbard_aranbard SAY ~[ARAN] There be no accountin' on whether she be better than you nor I on th' vocal front, as to some th' sopranos run, some th' tenors, an' baritones or bass be solid for all sorts o' songs. But she be a far sight better trained than either o' us blighted bastards.~ ++ ~[PC] A coloratura. Wait... she just... that high a range with little or no effort. A Spinto?~ + not_spinto_aran ++ ~[PC] So... you really like her voice. ~ + aran_1malepc_sheri ++ ~[PC] You have no idea how insulting you just were, do you. I have extensive training.~ + not_spinto_aran ++ ~[PC] Do not compare my skills to yours. You can barely speak, let alone sing.~ + aran_true_enough ++ ~[PC] I would rather not spend my time listening to the competition.~ + aran_worth_sheri END IF ~~ not_spinto_aran SAY ~[ARAN] Well, just listen. Notes into th' upper octave as clear as a bell. Diction clean without heavy handed plosives. Th' way she just controlled her dynamics on that last line to throw th' pathos... musical line...~ = ~[ARAN] Hells. you did th' trainin' same as I. You *know* how blighted rare it be for a true acuto sfogato soprano t' be playin' bit places an' bars. She should be in Waterdeep, at th' Masked Court.~ ++ ~[PC] I disagree. That upper range is too dark and covered to be a true sfogato. But I can see that you truly love her voice.~ + aran_1malepc_sheri ++ ~[PC] Sopranos get all the attention. We have to work twice as hard to get noticed. I take it she did not want a singing partner...~ + aran_1malepc_sheri ++ ~[PC] I would rather not spend my time listening to the competition.~ + aran_worth_sheri ++ ~[PC] Let me guess. You made a clumsy pass at her and ended up insulting her.~ + aran_crockery_sheri ++ ~[PC] Fine. You stay back. Perhaps I will go see what she can sing.~ + aran_worth_sheri END IF ~~ pcbard_arannotbard SAY ~[ARAN] You be th' judge, on account o' you have th' right trainin', eh? But to my untrained ear, she sounds like a blighted Avatar o' Sune made flesh an' blood.~ ++ ~[PC] I would rather not spend my time listening to the competition.~ + aran_worth_sheri ++ ~[PC] Let me guess. You made a clumsy pass at her and ended up insulting her.~ + aran_crockery_sheri ++ ~[PC] This habit of offending women you meet... you are working on fixing that, right?~ + aran_ayeexit_sheri ++ ~[PC] So, to cut a long story short, you think she is worth hearing, but you should avoid her, right?~ + aran_ayeexit_sheri ++ ~[PC] Fine. You stay back. Perhaps I will go see what she can sing.~ + aran_worth_sheri END IF ~~ pcnotbard_aranbard SAY ~[ARAN] Well, she be a fully trained vocalist, an' her upper register be absolutely clear, wi' no forced notes or improper placement in th' headvoice.... ah, there I go, talkin' shop. Yes. She is blighted good.~ ++ ~[PC] Let me guess. You made a clumsy pass at her and ended up insulting her.~ + aran_crockery_sheri ++ ~[PC] This habit of offending women you meet... you are working on fixing that, right?~ + aran_ayeexit_sheri ++ ~[PC] So, to cut a long story short, you think she is worth hearing, but you should avoid her, right?~ + aran_ayeexit_sheri ++ ~[PC] Fine. You stay back. Perhaps I will go see what she can sing.~ + aran_worth_sheri ++ ~[PC] Right now, I need a drink. Perhaps later.~ + aran_worth_sheri END IF ~~ fempcbard_aranbard SAY ~[ARAN] Well, just listen. Notes into th' upper octave as clear as a bell. Diction clean without heavy handed plosives. Th' way she just controlled her dynamics on that last line to throw th' pathos... musical line...~ = ~[ARAN] Hells. you did th' trainin' same as I. You *know* how blighted rare it be for a true acuto sfogato soprano t' be playin' bit places an' bars. She should be in Waterdeep, at th' Masked Court.~ ++ ~[PC] Is she a better vocalist than I am?~ + ara_notsofast_check ++ ~[PC] She... I can hear it. She has a better voice than I do.~ + ara_notsofast_check ++ ~[PC] I disagree. That last passage, she clipped two notes, and her breath support is... lacking. If she bends or scoops one more note, I shall have to throw something at her.~ + aran_jealousy ++ ~[PC] Well, perhaps I should evaluate her. I can always use a careful analysis to better my own craft.~ + aran_worth_sheri ++ ~[PC] So... you really like her voice.~ + aran_1femalepc_sheri END IF ~~ fempcbard_arannotbard SAY ~[ARAN] Well, just listen to her, an' mayhap a trained bardess like you can explain to me why she can turn a tune t' make a man weep or laugh as easy as I can flick a blade from left to right. She certainly do catch my ear.~ ++ ~[PC] She... I can hear it. She has a better voice than I do.~ + ara_notsofast_check ++ ~[PC] I do not know... That last passage, she clipped two notes, and her breath support is lacking. If she bends or scoops one more note, I shall have to throw something at her.~ + aran_jealousy ++ ~[PC] Well, perhaps we should evaluate her. I can always use a careful analysis to better my own craft.~ + aran_worth_sheri ++ ~[PC] So... you really like her voice.~ + aran_1femalepc_sheri ++ ~[PC] Let me guess. You made a clumsy pass at her and ended up insulting her.~ + aran_crockery_sheri ++ ~[PC] Fine. You stay back. Perhaps I will go see what she can sing.~ + aran_worth_sheri END IF ~~ aran_jealousy SAY ~[ARAN] Well, I defer to your better judgement, on account o' I hold your opinion in high regard, I do.~ IF ~~ THEN EXIT END IF ~~ ara_notsofast_check SAY ~[ARAN] Now, that be a bad idea. There be strengths an' weaknesses in any what follow th' craft. You know full well what you are capable of. She may be rare, but you be just as strong.~ IF ~~ THEN EXIT END IF ~~ fempcnotbard_aranbard SAY ~[ARAN] Aye, somethin' seriously special, an' rare. She be a true acuto sfogato soprano, wi' a range higher than most o' th' coloratura sopranos... err... there I go, talkin' shop. Yes. She is blighted good.~ IF ~~ THEN GOTO aran_1femalepc_sheri END /* males: craptalk */ IF ~~ aran_1malepc_sheri SAY ~[ARAN] Aye. No interest in me, more be th' pity. Mayhap she be frightened off by th' brilliance o' my manly charms. Either that, or she has been talkin' to Erika at Th' Broken Sword.~ ++ ~[PC] So... you and Erika...~ + aran_2_sheri ++ ~[PC] You have that bad a reputation?~ + aran_3_sheri ++ ~[PC] You seem to have a very high opinion of yourself.~ + aran_4_sheri ++ ~[PC] I do not usually waste my time talking to insignificant people.~ + aran_worth_sheri ++ ~[PC] So, to cut a long story short, you think she is worth hearing, but you should avoid her, right?~ + aran_ayeexit_sheri END /* females; have to account for potential time in party if PC visits late game instead of immediately */ /* With Apologies to Annie Get Your Gun */ IF ~~ aran_1femalepc_sheri SAY ~[ARAN] I love th' sound o' her voice, an' that be for sure.~ + ~!Global("c-aranrom","GLOBAL",2)~ + ~[PC] Is that all you love?~ + hells_no_my_mistake + ~Global("c-aranrom","GLOBAL",2)~ + ~[PC] Is that all you love?~ + of_course_dear ++ ~[PC] Let me guess. You made a clumsy pass at her and ended up insulting her.~ + aran_crockery_sheri ++ ~[PC] Anything she can do, I can do better.~ + aran_true_enough ++ ~[PC] Anything she can sing, I can sing higher.~ + aran_true_enough ++ ~[PC] You know, I think I should see this... singer.~ + aran_worth_sheri + ~!Class(Player1,BARD_ALL)~ + ~[PC] I... I do not usually wander up to strangers and talk to them. Even bards and storytellers.~ + aran_worth_sheri + ~Class(Player1,BARD_ALL)~ + ~[PC] I do not usually wander up to strangers and talk to them. Even other bards and storytellers. I usually listen without interacting with them.~ + aran_worth_sheri END IF ~~ hells_no_my_mistake SAY ~[ARAN] Hells, no! Th' way her eyes sparkle, it be right nice to see. An' when she takes in a right solid breath...~ = ~[ARAN] Err...~ = ~[ARAN] Yes. That be all I love about her. That be my story, an' naught can shake me from it. But it don't matter for naught either way. She didn't find my sparkin' to her taste.~ IF ~~ THEN GOTO aran_5_sheri END IF ~~ of_course_dear SAY ~[ARAN] Aye. That voice... it caught me right away. But then I had to go an' be a jackass, an' try to spark a bit wi' her. It were before I met you.~ IF ~~ THEN GOTO aran_5_sheri END IF ~~ aran_2_sheri SAY ~[ARAN] There be no deal between us at all. I am not likely to be makin' serious passes at Erika. She has a great sense o' humor, an' I needs be keepin' in good graces wi' Orrin an' Teldra as well. Fun teasin' her, is all.~ IF ~~ THEN GOTO aran_4_sheri END IF ~~ aran_3_sheri SAY ~[ARAN] Well, I mayhap be a bit forward wi' th' ladies. But most o' th' time it be just talk. No harm in that.~ IF ~Gender(Player1,MALE)~ THEN GOTO aran_4_sheri IF ~Gender(Player1,FEMALE)~ THEN GOTO aran_5_sheri END IF ~~ aran_true_enough SAY ~[ARAN] Mayhap you be right. But I think that calls for a bit o' a contest later on to decide, eh?~ IF ~Gender(Player1,MALE)~ THEN GOTO aran_4_sheri IF ~Gender(Player1,FEMALE)~ THEN GOTO aran_5_sheri END IF ~~ aran_4_sheri SAY ~[ARAN] I be right confident in my abilities, to be sure. But I know my limits. Sheri, she be as far out o' my reach as th' nearest star.~ ++ ~[PC] Perhaps she will find me interesting.~ + aran_end1_sheri ++ ~[PC] I do not usually waste my time talking to insignificant people.~ + aran_worth_sheri ++ ~[PC] Well, perhaps I should pay her a visit.~ + aran_worth_sheri + ~!Class(Player1,BARD_ALL)~ + ~[PC] I... I do not usually wander up to strangers and talk to them. Even bards and storytellers.~ + aran_worth_sheri + ~Class(Player1,BARD_ALL)~ + ~[PC] I do not usually wander up to strangers and talk to them. Even other bards and storytellers. I usually listen without interacting with them.~ + aran_worth_sheri ++ ~[PC] This is a distraction. Go make yourself useful. Go fix the gear, or sharpen something.~ + aran_ayeexit_sheri END IF ~~ aran_5_sheri SAY ~[ARAN] I like all sorts o' songs. But when it be Sheri, some sets she sings be on th' bawdy side.~ ++ ~[PC] Does she do more than... sing that kind of song?~ + aran_end1_sheri ++ ~[PC] Perhaps she will find me interesting.~ + aran_end1_sheri ++ ~[PC] Well, perhaps I should pay her a visit.~ + aran_worth_sheri + ~!Class(Player1,BARD_ALL)~ + ~[PC] I... I do not usually wander up to strangers and talk to them. Even bards and storytellers.~ + aran_worth_sheri + ~Class(Player1,BARD_ALL)~ + ~[PC] I do not usually wander up to strangers and talk to them. Even other bards and storytellers. I usually listen without interacting with them.~ + aran_worth_sheri ++ ~[PC] This is a distraction. Go make yourself useful. Go fix the gear, or sharpen something.~ + aran_ayeexit_sheri END IF ~~ aran_longago_sheri SAY ~[ARAN] About a tenday before I met up wi' you, if I rightly recall.~ IF ~~ THEN GOTO aran_crockery_sheri END IF ~~ aran_crockery_sheri SAY ~[ARAN] Busy day, that one. I had to dodge my way out right quick. Great voice, an' a sight better aim wi' crockery than I'd have guessed. But I deserved th' cuts an' bruises she dealt, I did, every last one.~ IF ~~ THEN EXIT END IF ~~ aran_end1_sheri SAY ~[ARAN] Aye, mayhap. So far, wi' anyone I done seen talk to her, she seems friendly enough. Which kind o' fits wi' th' whole "relatin' to people" thing bards an' bardesses seem to be right good at.~ IF ~~ THEN EXIT END IF ~~ aran_worth_sheri SAY ~[ARAN] I think you would enjoy th' time spent. Her voice... it be an experience.~ IF ~~ THEN EXIT END IF ~~ aran_ayeexit_sheri SAY @3601 IF ~~ THEN EXIT END // @3601 = ~[ARAN] Aye.~ /* END TEST */ Minor pathway fixes integrated; major idiocy like missing tildes and forgetting to direct state nubers repaired. Tested against no-RE-is-installed and yes-RE-is-installed conditions on BG2:EE.
  16. The Gibberlings Three The Crossmod Banter Pack is a collaborative effort to add banters between NPC from mods. The current release covers Ajantis (jastey), Alassa, Amber, Angelo, Auren, Coran (Kulyok), Darian, Deheriana, Edwin (Laufey), Fade, Gavin, Goo, Haldamir, Homeward Bound, Hubelpot, Imoen Romance (Lord Mirrabo), Iylos, Kari, Keldorn Romance (berelinde), Kelsey, Keto, Kido, Kindrek, Kitanya, Kivan of Shilmista, Nalia (JCompton), Nathaniel, Neh'Taniel, Ninde, Saerileth, Sarah, Solaufein, Tales of the Deep Garden, Tashia, Tiax (Kulyok), Tsujatha, Willie Bruce, Xan (Kulyok), and Yasraena. Version 14 adds numerous banters between Ajantis and Coran, Coran and Kivan, Coran and Tiax, and Coran and Xan. Romance conflicts are expanded to include Darian and berelinde's Keldorn Romance. This version also corrects a typographical error that caused an Angelo-Xan banter to repeat. Learn more about the mod View the Readme Visit the Forum Download the Mod
  17. Still working on some stuff behind the scenes for forum setup and Beta status, but I had some time this week between rehearsals et al., so here is another blog/exploration and the resulting banters for the ToB portion. The banter that inspired the idea CODE /* ToB Banters: Aran > Jaheira and Ajantis) */ CHAIN IF ~CombatCounter(0) !Detect([ENEMY]) InParty("c#ajantis") Global("c-arntob18b","GLOBAL",0) InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID) InParty("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID)~ THEN C-ARN25B c-arantob18b1 ~[ARAN] You look a mite pensive, Jaheira. What be draggin' you back down th' distant foggy paths o' memory?~ DO ~SetGlobal("c-arntob18b","GLOBAL",1)~ == BJAHEI25 ~[JAHEIRA] I am simply remembering how this all started. How young <CHARNAME> was, those few short years ago.~ == C-ARN25B ~[ARAN] So, tell me a story, eh? Ajantis never does tell all th' ins an' outs o' what th' glory days were like. You an' he started out early enough to know <PRO_HIMHER> when a few kobolds were a right difficult challenge.~ == BJAHEI25 ~[JAHEIRA] I would not describe them as glorious. But they did have their charm. == C-ARN25B ~[ARAN] I can see it now. <CHARNAME>, all wrapped up in swaddlin' clothes, wavin' <PRO_HISHER> arms wild-like an' bein' chased by a horde o' gibberlings.~ == BJAHEI25 ~[JAHEIRA] The waving of arms, perhaps. But no swaddling clothes. == C-ARN25B IF ~InParty("c#ajantis") Global("C#AjantisRomanceActive","GLOBAL",2)~ THEN ~[ARAN] Well, was there somethin' right special from th' first, or did th' whole romance thing wi' those two spring up just when they be wanderin' around Amn smitin' evil an' generally doin' good?~ == C-ARN25B IF ~InParty("c#ajantis") Global("C#AjantisPCMarriage","GLOBAL",1)~ THEN ~[ARAN] Just wonderin', on account o' it seems a mite fast to get married if they don't have a mite bit more to th' story.~ == BJAHEI25 IF ~InParty("c#ajantis") OR (2) Global("C#AjantisRomanceActive","GLOBAL",2) Global("C#AjantisPCMarriage","GLOBAL",1)~ THEN ~[JAHEIRA] That is their story to tell. Or not to tell, Aran. Not mine.~ == C-ARN25B IF ~InParty("c#ajantis") OR (2) Global("C#AjantisRomanceActive","GLOBAL",2) Global("C#AjantisPCMarriage","GLOBAL",1)~ THEN ~[ARAN] Well, nothin' ventured, nothin' gained, I guess. Don't blame a lad for some simple curiosity.~ == C-ARN25B ~[ARAN] I know it were not all teacups an' roses, but I'd give a blighted fortune to have seen th' whole Iron Throne thing from your perspective, instead o' from th' front lines fightin' Chill an' Blacktalons.~ == BJAHEI25 ~[JAHEIRA] I... I have many memories I would not repeat. But I am glad that I can think back on them, and see where we are now.~ EXIT The way this is written leaves the meanings deliberately open to interpretation. Jaheira does not indicate whether Ajantis was part of things when the party encountered him while dodging ankhegs, or if he was brought in when Chateau Irenicus fell on everyone. Does Jaheira approve? Is she affirming a beautiful friendship that has lasted all the way through the three games, or saying "I should have killed <CHARNAME> while he was younger and less powerful", or if multi-romance cheats are on, is she saying "He's mine, really, but you have to ask him why he spends all that time with Ajantis"? Well, given Jastey's careful coding, that last one is extremely unlikely, but you get the general idea, I think. On Aran's side, he could be just asking about the Glory Days, or he could be scoping out a potential rival, or he could be a little bit bitter that PC and Ajantis are married and he has no chance. Voila - a nice little banter for role-players to have some fun with, just highlighting inter-NPC relationships. I like it. So, how can we play with this idea and make it more situationally aware? How would the same questioning on Aran's part change, and the responses change, if it wasn't Jaheira and Ajantis, but Jaheira and Imoen? Or Jaheira and Gavin, while Gavin is romancing PC? Or better yet, if Jaheira and PC are in a romance, and since Aran was not around for Khalid at all, there is the opportunity for Foot In Mouth™ to strike... Data Gathering: NPCs that make it from BG to ToB I may have missed one or two, but this what I have found for currently available mods that add BG NPCs to SoA/ToB from BG -> BG2 (whether expanding on an existing BioWare™ character dialog or not). Most of these are mute during ToB, but allow a player to bring them along anyways. A few are still working on developing ToB content. And a few actually do go on into ToB. For future-proofing, we will just deal with all of them, so that if someone ends up expanding one of the two Branwen projects, or something similar, acknowledgment is already in place. Jastey's Ajantis = InParty("c#ajantis") WoundedLion's Branwen = InParty("WLBRAN") Lennon's Branwen (Perils of Branwen) = InParty("DL#BWN") Tortured Souls' Coran = InParty("Coran") Kulyok's Coran = InParty("O#Coran") Edwin (+- Laufey's Romance mods of him) = InParty("Edwin") Headbanger's Eldoth = InParty("M#Eldoth") Berelinde's Gavin = InParty("B!Gavin2") Imoen (+- LordM's/TCDale's Imoen Romance) = InParty("Imoen2") Minsc = InParty("Minsc") Lava Del'Vortel's (Aerie-Be-Gone) Quayle = InParty("QUAYLE") Vlad's Shar-Teel (BGTNeJ2) = InParty("Sharteel") darthsabe's Shar-Teel (German-only mod) = InParty("shartel") Lava Del'Vortel's Skie (Polish-only mod) = InParty("Skiedv") Kulyok's Tiax = InParty("O#Tiax") Talon's Xan = InParty("TLXan") Kulyok's Xan = InParty("O#Xan") Domi's Kivan = InParty("P#KIVAN") Viconia = InParty("Viconia") octavian's Yeslick (German-only mod) = InParty("Yesli") Now, for your mod, you may need to go further than just figuring out the DV (and in a few cases the mods are only available in certain languages, which would require some special handling and the services of a good and willing translator), but for my purposes, all I want is to allow a simple reference. I'm not writing lines of dialog for these NPCs here, I am letting the conversation acknowledge the "When I was a Lad in Candlekeep", or "Back in the Day™" references. The advantage to this is we can acknowledge the presence of one of these Cradle-To-Grave or Full Bhaalspawn Saga NPC's without worrying about whether or not the mod in question is installed. Since only the DV is referenced, there is no need to check for the existence of dialog files or .cre; nothing will crash if Branwen is not installed. It will just never run, because the check for InParty() will return false if none of the joined NPCs have that DV. The inspiration is a common enough conversational occurrence, where the "new guy" can ask what it was like back on the Sword Coast. This is a great banter for Jaheira, as she has the mothering/mentoring approach; there is a bonus, too, as the talk could become a little ticklish if she and PC are in a romance. And if any of the other Constant Companions were, well, even better. This kind of conversation could be made into a whole series of talks, but that rapidly becomes very complicated. Theoretically, she is the best character to ask about the long-long term story-arc romances - herself (the changing roles from married mentor/mother figure to widow to lover), Domi's Kivan, Berelinde's Gavin, Jastey's Ajantis, Kulyok's Xan, Laufey's Edwin romance addition, and Viconia. A full treatment of any of these would be an independent set of talks way beyond our purview, mostly because writing that kind of dialog means interpreting events through Jaheira's eyes. I would argue that was next to impossible to do, given that each of these romances can play out in so many different ways, even the BioWare ones. So we leave it open, as a side banter, bringing the subject up and then dropping it, allowing the player's imagination to fill in the backstory and re-interpret the dialog as it fits in their game. Now we have a choice - set up a bunch of independent banters which fire independently, or set it up as one big CHAIN. Individual banters all closed off with the same variable seems safest for folks with multi-romance cheats on. The top true one will play, the rest will be skipped. Or we can simply set up a more general idea in a single CHAIN. To acknowledge their presence as a sideline in another banter is an easy enough thing to do, if we leverage CHAIN to check for their presence as a party member in one fell swoop... CODE == C-ARN25B IF ~InParty("c#ajantis")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("WLBRAN")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("DL#BWN")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("Coran")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("O#Coran")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("Edwin")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("M#Eldoth")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("B!Gavin2")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("Imoen2")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("Minsc")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("QUAYLE")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("Sharteel")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("shartel")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("Skiedv")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("O#Tiax")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("TLXan")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("O#Xan")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("P#KIVAN")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("Viconia")~ THEN ~[ARAN] PLACEHOLDER~ == C-ARN25B IF ~InParty("Yesli")~ THEN ~[ARAN] PLACEHOLDER~ On the doubles, like Talon's Xan and Kulyok's Xan, or we don't have to worry. Anyone trying to install both versions of these mods is going to have an odd game anyways. So we can safely assume that players will only install one or the other, and not get double entries from the CHAIN construction presented. At least, we can safely say that they are going to have far worse challenges in their game then getting replicated lines! To screen out all 20 possibles, a code snippet: CODE !InParty("c#ajantis") !InParty("WLBRAN") !InParty("DL#BWN") !InParty("Coran") !InParty("O#Coran") !InParty("Edwin") !InParty("M#Eldoth") !InParty("B!Gavin2") !InParty("QUAYLE") !InParty("Sharteel") !InParty("shartel") !InParty("Skiedv") !InParty("O#Tiax") !InParty("TLXan") !InParty("O#Xan") !InParty("P#KIVAN") !InParty("Yesli") To keep multi-romancer's banters short, we could set up a priority order, first putting the basic banter up. We could use the screen set up just above this to allow the basic banter to play, unless someone else in the party we recognize as coming in from BG content. Then we could follow up with a set of independent banter variants that can play if one of the Romanceables are present, and finally top it off with a catch-all net for the non-romanceables. That means lots and lots of banters. Wait a minute... There has to be a more efficient way. What if we played with CHAIN and EXTERN, instead of writing a ton of independent banters? Some of the elements will be the same, some will be different - let's see if we can break things up and organize them with some common elements delegated to CHAIN snippets. Initial Layout - Jaheira and the Constant Companions CODE /* ToB Banters: Aran > Jaheira Back in The Day : Baseline */ CHAIN IF ~CombatCounter(0) !Detect([ENEMY]) Global("c-arntob18b","GLOBAL",0) InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID) InParty("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID)~ THEN C-ARN25B c-arantob18b1 ~[ARAN] You look a mite pensive, Jaheira. What be draggin' you back down th' distant foggy paths o' memory?~ DO ~SetGlobal("c-arntob18b","GLOBAL",1)~ == BJAHEI25 ~[JAHEIRA] I am simply remembering how this all started. How young <CHARNAME> was, those few short years ago.~ == C-ARN25B ~[ARAN] So, tell me a story, eh? You never do tell all th' ins an' outs o' what th' glory days were like. You started out early enough to know <PRO_HIMHER> when a few kobolds were a right difficult challenge.~ EXTERN BJAHEI25 c-arantobgibberling CODE CHAIN BJAHEI25 c-arantobgibberling ~[JAHEIRA] I would not describe them as glorious. But they did have their charm. == C-ARN25B ~[ARAN] I can see it now. <CHARNAME>, all wrapped up in swaddlin' clothes, wavin' <PRO_HISHER> arms wild-like an' bein' chased by a horde o' gibberlings.~ == BJAHEI25 ~[JAHEIRA] The waving of arms, perhaps. But no swaddling clothes.~ END IF ~Global("JaheiraRomanceActive","GLOBAL",2)~ EXTERN C-ARN25B c-askjaheirarom IF ~!Global("JaheiraRomanceActive","GLOBAL",2)~ EXTERN C-ARN25B c-arantobbanterfinish CODE CHAIN C-ARN25B c-askjaheirarom ~[ARAN] Well, was there somethin' right special from th' first sight o' <PRO_HIMHER>, or did th' whole romance thing wi' you two spring up just when you be wanderin' around Amn smitin' evil an' generally doin' good?~ == BJAHEI25 ~[JAHEIRA] I was deeply in love with Khalid. I am still deeply in love with Khalid. After his death, it... it became complicated.~ == C-ARN25B ~[ARAN] Blighted hells... I done put my foot right in it. Look, I meant no harm. I was just askin' on account o' you an <PRO_HIMHER>, you seem to fit right together. Xvim's Spit, I just stuffed both feet right up my mouth.~ == BJAHEI25 ~[JAHEIRA] A habit which I find I must constantly remind you to curb.~ EXTERN BJAHEI25 c-arantobbanterfinish CODE CHAIN BJAHEI25 c-arantobbanterfinish == C-ARN25B ~[ARAN] Well, nothin' ventured, nothin' gained, I guess. Don't blame a lad for some simple curiosity.~ == C-ARN25B ~[ARAN] I know it were not all teacups an' roses, but I'd give a blighted fortune to have seen th' whole Iron Throne thing from your perspective, instead o' from th' front lines fightin' Chill an' Blacktalons.~ == BJAHEI25 ~[JAHEIRA] I... I have many memories I would not repeat. But I am glad that I can think back on them, and see where we are now.~ EXIT CODE Block 1 > Block 2 > ROM > Block3 > Block 4 > NOROM >>>>>>>>>>^ We broke this up into funny, odd little bits so that we can avoid duplicate states when we start expanding to include the outside references. Basically, we lay out the pastry, and allow the fillings to change based on the party composition. If the romance is active, we have a diversionary block; if not, we skip to the end. Adding Possible Romances; Jaheira with Ajantis, Gavin, Xan, Kivan, Imoen, Viconia, and/or Edwin Setting this up as single banters with only a few possible comments referencing other NPCs, so Multi-Romancers don't get a laundry list of every single active romance variable, is relatively simple. The first one with an active romance fires, the rest are skipped. As a sample of this idea: CODE /* ToB Banters: Aran > Jaheira Back in The Day : Ajantis */ CHAIN IF ~CombatCounter(0) !Detect([ENEMY]) InParty("c#ajantis") Global("c-arntob18b","GLOBAL",0) InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID) InParty("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID)~ THEN C-ARN25B c-arantob18b1 ~[ARAN] You look a mite pensive, Jaheira. What be draggin' you back down th' distant foggy paths o' memory?~ DO ~SetGlobal("c-arntob18b","GLOBAL",1)~ == BJAHEI25 ~[JAHEIRA] I am simply remembering how this all started. How young <CHARNAME> was, those few short years ago.~ == C-ARN25B ~[ARAN] So, tell me a story, eh? Ajantis never does tell all th' ins an' outs o' what th' glory days were like. You an' he started out early enough to know <PRO_HIMHER> when a few kobolds were a right difficult challenge.~ == BJAHEI25 ~[JAHEIRA] I would not describe them as glorious. But they did have their charm.~ == C-ARN25B ~[ARAN] I can see it now. <CHARNAME>, all wrapped up in swaddlin' clothes, wavin' <PRO_HISHER> arms wild-like an' bein' chased by a horde o' gibberlings.~ == BJAHEI25 ~[JAHEIRA] The waving of arms, perhaps. But no swaddling clothes.~ == C-ARN25B IF ~InParty("c#ajantis") !Global("C#AjantisRomanceActive","GLOBAL",2)~ THEN ~[ARAN] Well, was Ajantis th' same knightly protector, runnin' around smitin' things an' tellin' <CHARNAME> th' honorable course o' action, no matter how dangerous it be?~ == C-ARN25B IF ~InParty("c#ajantis") Global("C#AjantisRomanceActive","GLOBAL",2)~ THEN ~[ARAN] Well, was there somethin' right special from th' first, or did th' whole romance thing wi' those two spring up just when they be wanderin' around Amn smitin' evil an' generally doin' good?~ == C-ARN25B IF ~InParty("c#ajantis") Global("C#AjantisPCMarriage","GLOBAL",1)~ THEN ~[ARAN] Just wonderin', on account o' it seems a mite fast to get married.~ == BJAHEI25 ~[JAHEIRA] That is their story, Aran. It is not mine to tell.~ EXTERN BJAHEI25 c-arantobbanterfinish But we already have the base banter above. Let's leverage EXTERN and the ability to add transitions from CHAIN states based on variables to make things more efficient, reducing the amount of state duplication: CODE /* ToB Banters: Aran > Jaheira Back in The Day : Baseline */ CHAIN IF ~CombatCounter(0) !Detect([ENEMY]) Global("c-arntob18b","GLOBAL",0) InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID) InParty("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID)~ THEN C-ARN25B c-arantob18b1 ~[ARAN] You look a mite pensive, Jaheira. What be draggin' you back down th' distant foggy paths o' memory?~ DO ~SetGlobal("c-arntob18b","GLOBAL",1)~ == BJAHEI25 ~[JAHEIRA] I am simply remembering how this all started. How young <CHARNAME> was, those few short years ago.~ == C-ARN25B ~[ARAN] So, tell me a story, eh? You never do tell all th' ins an' outs o' what th' glorious days were like. You started out early enough to know <PRO_HIMHER> when a few kobolds were a right difficult challenge.~ END IF ~!InParty("c#ajantis")~ EXTERN BJAHEI25 c-arantobgibberling IF ~InParty("c#ajantis")~ EXTERN C-ARN25B c-arantobajantis CODE APPEND C-ARN25B IF ~~ c-arantobajantis SAY ~[ARAN] Hells, Ajantis be as bad as you. He has naught in th' way o' good juicy gossip, just tales o' honor an' such. I think he were a companion back on th' Trade Way, before you all headed southwest.~ IF ~~ THEN EXTERN BJAHEI25 c-arantobgibberling END END CODE CHAIN BJAHEI25 c-arantobgibberling ~[JAHEIRA] I would not describe them as glorious. But they did have their charm.~ == C-ARN25B ~[ARAN] I can see it now. <CHARNAME>, all wrapped up in swaddlin' clothes, wavin' <PRO_HISHER> arms wild-like an' bein' chased by a horde o' gibberlings.~ == BJAHEI25 ~[JAHEIRA] The waving of arms, perhaps. But no swaddling clothes.~ END IF ~!Global("JaheiraRomanceActive","GLOBAL",2) !Global("C#AjantisRomanceActive","GLOBAL",2)~ EXTERN C-ARN25B c-arantobbanterfinish IF ~Global("JaheiraRomanceActive","GLOBAL",2)~ EXTERN C-ARN25B c-askjaheirarom IF ~Global("C#AjantisRomanceActive","GLOBAL",2)~ EXTERN C-ARN25B c-arantobajanticeromance CODE CHAIN C-ARN25B c-arantobajanticeromance ~[ARAN] I always wanted to know if was there somethin' right special from th' first, or did th' whole romance thing wi' those two spring up just when they be wanderin' around Amn smitin' evil an' generally doin' good?~ == BJAHEI25 ~[JAHEIRA] That is their story to tell, Aran. If Ajantis does not wish to tell you, and <CHARNAME> says nothing, then I certainly cannot.~ EXTERN C-ARN25B c-arantobbanterfinish CODE CHAIN C-ARN25B c-askjaheirarom ~[ARAN] Well, was there somethin' right special from th' first sight o' <PRO_HIMHER>, or did th' whole romance thing wi' you two spring up just when you be wanderin' around Amn fendin' off challenges to th' Balance?~ == BJAHEI25 ~[JAHEIRA] I was deeply in love with Khalid. I am still deeply in love with Khalid. After his death, it... it became complicated.~ == C-ARN25B ~[ARAN] Blighted hells... I done put my foot right in it. Look, I meant no harm. I was just askin' on account o' you an <PRO_HIMHER>, you seem to fit right together. Xvim's Spit, I just stuffed both feet right up my mouth.~ == BJAHEI25 ~[JAHEIRA] A habit which I find I must constantly remind you to curb.~ EXTERN BJAHEI25 c-arantobbanterfinish CODE CHAIN BJAHEI25 c-arantobbanterfinish == C-ARN25B ~[ARAN] Well, nothin' ventured, nothin' gained, I guess. Don't blame a lad for some simple curiosity.~ == C-ARN25B ~[ARAN] I know it were not all teacups an' roses, but I'd give a blighted fortune to have seen th' whole Iron Throne thing from your perspective, instead o' from th' front lines fightin' Chill an' Blacktalons.~ == BJAHEI25 ~[JAHEIRA] I... I have many memories I would not repeat. But I am glad that I can think back on them, and see where we are now.~ EXIT OK, two swapped-in parts of the conversation. And edits in [CHAIN BJAHEI25 c-arantobgibberling] to make sure that if Ajantis' romance is active, the Jaheira romance commentary is skipped. Even Aran wouldn't poke Jaheira if Ajantis and Jaheira are both in a romance with PC! He would be wondering what kind of crazy person has reverse-engineered the BioWare™ romance and Jastey's extremely detailed coding, and calling his agent for a new gig. So, let's add some more. To save space, let's just build the snippets. I didn't write them this way. Originally, I sketched out all of the banters as individual ones, all variations on the theme. But let's see if we can edit them in: Ajantis CODE /* Add to baseline: !InParty("c#ajantis") // to the transition leading to EXTERN BJAHEI25 c-arantobgibberling IF ~InParty("c#ajantis")~ EXTERN C-ARN25B c-arantobajantis */ CODE APPEND C-ARN25B /* ToB Banters: Aran > Jaheira Back in The Day : Ajantis */ IF ~~ c-arantobajantis SAY ~[ARAN] Hells, Ajantis be as bad as you. He has naught in th' way o' good juicy gossip, just tales o' honor an' such. I think he were a companion back on th' Trade Way, before you all headed southwest.~ IF ~~ THEN EXTERN BJAHEI25 c-arantobgibberling END END CODE /* add to BJAHEI25 c-arantobgibberling : IF ~InParty("c#ajantis") !Global("C#AjantisRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobbanterfinish IF ~InParty("c#ajantis") Global("C#AjantisRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobajantisromance */ CODE CHAIN C-ARN25B c-arantobajanticeromance ~[ARAN] I always wanted to know if was there somethin' right special from th' first, or did th' whole romance thing wi' those two spring up just when they be wanderin' around Amn smitin' evil an' generally doin' good?~ == C-ARN25B IF ~Global("C#AjantisPCMarriage","GLOBAL",1)~ THEN ~[ARAN] Just wonderin', on account o' it seems they were a mite fast to get married.~ == BJAHEI25 ~[JAHEIRA] That is their story to tell, Aran. If Ajantis does not wish to tell you, and <CHARNAME> says nothing, then I certainly cannot.~ EXTERN C-ARN25B c-arantobbanterfinish Imoen CODE /* Add to baseline: !InParty("Imoen2") // to the transition leading to EXTERN BJAHEI25 c-arantobgibberling IF ~InParty("Imoen2")~ EXTERN C-ARN25B c-arantobimoen */ CODE APPEND C-ARN25B /* ToB Banters: Aran > Jaheira Back in The Day : Imoen */ IF ~~ c-arantobimoen SAY ~[ARAN] Imoen must have been a sight to see, an' a blighted tough one to keep up with, back on th' Sword Coast. I can imagine she kept everyone on their toes. Glory, conquest, an' pink accoutrements for all, eh?~ IF ~~ THEN EXTERN BJAHEI25 c-arantobgibberling END END CODE /* add to BJAHEI25 c-arantobgibberling : IF ~InParty("Imoen2") !Global("ImoenRomanceActive","GLOBAL",1) !Global("ImoenRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobbanterfinish IF ~InParty("Imoen2") OR(2) Global("ImoenRomanceActive","GLOBAL",1) Global("ImoenRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobimoenromance */ CODE CHAIN C-ARN25B c-arantobimoenromance ~[ARAN] Not to put too fine a point on it, but... well, I don't quite get what th' two o' them have as a relationship. On th' one hand, Imoen be like a sister to <PRO_HIMHER>. On th' other, I done seen how <CHARNAME> looks at Imoen, an' there be little o' sisterlyness, eh? It be hard to hide that they be right close together more'n most folks what be married. Did they always be this way?~ == BJAHEI25 ~[JAHEIRA] That is their story to tell, Aran. If Imoen does not wish to tell you, and <CHARNAME> says nothing, then I certainly cannot.~ EXTERN C-ARN25B c-arantobbanterfinish Viconia CODE /* Add to baseline: !InParty("Viconia") // to the transition leading to EXTERN BJAHEI25 c-arantobgibberling IF ~InParty("Viconia")~ EXTERN C-ARN25B c-arantobviconia */ CODE APPEND C-ARN25B /* ToB Banters: Aran > Jaheira Back in The Day : Viconia */ IF ~~ c-arantobviconia SAY ~[ARAN] I think Viconia met up wi' you way back, but I'm not blighted likely to get no stories from her. Not that I'd believe them anyways, or listen, or even ask that spiderspawn bitch naught.~ IF ~~ THEN EXTERN BJAHEI25 c-arantobgibberling END END CODE /* add to BJAHEI25 c-arantobgibberling : IF ~InParty("Viconia") !Global("ViconiaRomanceActive","GLOBAL",1) !Global("ViconiaRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobbanterfinish IF ~InParty("Viconia") OR(2) Global("ViconiaRomanceActive","GLOBAL",1) Global("ViconiaRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobviconiaromance */ CODE CHAIN C-ARN25B c-arantobviconiaromance ~[ARAN] When did <CHARNAME> get all bent up over th' Shar-kissed drowess, anyways? I mean, were it just animal attraction at first, an' then some kind o' power struggle, or did she set right out to seduce <PRO_HIMHER> right away?~ == BJAHEI25 ~[JAHEIRA] That is their story to tell, Aran. Given your obvious hatred of Viconia, I would be discreet, and leave them alone.~ EXTERN C-ARN25B c-arantobbanterfinish Edwin CODE /* Add to baseline: IF ~!InParty("Edwin") // to the transition leading to EXTERN BJAHEI25 c-arantobgibberling IF ~InParty("Edwin")~ EXTERN C-ARN25B c-arantobedwin */ CODE APPEND C-ARN25B /* ToB Banters: Aran > Jaheira Back in The Day : Edwin */ IF ~~ c-arantobedwin SAY ~[ARAN] I done heard rumors what put Edwin an' <CHARNAME> together far back on th' Sword Coast. I don't rightly believe anythin' he claims fully, on account o' that overweanin' ego o' his, but I think he claims all th' glories o' old were his doin'.~ IF ~~ THEN EXTERN BJAHEI25 c-arantobgibberling END END CODE /* add to BJAHEI25 c-arantobgibberling : IF ~InParty("Edwin") !Global("EdwinRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobbanterfinish IF ~InParty("Edwin") Global("EdwinRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobedwinromance */ CODE CHAIN C-ARN25B c-arantobedwinromance ~[ARAN] Th' two o' them, Odesseiron an' <CHARNAME>... were they like to spark right from th' beginnin', or did they decide to become insufferable together later on?~ == BJAHEI25 ~[JAHEIRA] That is their story to tell, Aran. I do not doubt that Edwin will gladly boast of their relationship.~ EXTERN C-ARN25B c-arantobbanterfinish Gavin CODE /* Add to baseline: !InParty("B!Gavin2") // to the transition leading to EXTERN BJAHEI25 c-arantobgibberling IF ~InParty("B!Gavin2")~ EXTERN C-ARN25B c-arantobgavin */ CODE APPEND C-ARN25B /* ToB Banters: Aran > Jaheira Back in The Day : Gavin */ IF ~~ c-arantobgavin SAY ~[ARAN] Gavin be a right good lad, but I can't get much in th' way o' glory stories out o' him. I think he done met up wi' you early on, eh? That must o' been somethin', wanderin' into dangerous territory wi' a healer what might trip over his own two feet if th' wind blows th' wrong way. ~ IF ~~ THEN EXTERN BJAHEI25 c-arantobgibberling END END CODE /* add to BJAHEI25 c-arantobgibberling : IF ~InParty("B!Gavin2") !Global("B!GavRA","GLOBAL",2)~ THEN EXTERN c-arantobbanterfinish IF ~InParty("B!Gavin2") Global("B!GavRA","GLOBAL",2)~ THEN EXTERN c-arantobgavinromance */ CODE CHAIN C-ARN25B c-arantobgavinromance ~[ARAN] An' when did Gavin start gettin' so close to <CHARNAME>? Were it gradual, or instant-like? Love at first sight back by th' Temple he says he worked with back near Beregost, or did he have to batter at th' gates, so to speak?~ == BJAHEI25 ~[JAHEIRA] That is their story to tell, Aran. If Gavin does not wish to tell you, and <CHARNAME> says nothing, then I certainly cannot.~ EXTERN C-ARN25B c-arantobbanterfinish Xan CODE /* Add to baseline: !InParty("O#Xan") // to the transition leading to EXTERN BJAHEI25 c-arantobgibberling IF ~InParty("O#Xan")~ EXTERN C-ARN25B c-arantobxan */ CODE APPEND C-ARN25B /* ToB Banters: Aran > Jaheira Back in The Day : Xan */ IF ~~ c-arantobxan SAY ~[ARAN] You have to help a lad out, here. Xan jut looks at me wi' that morose expression o' his an' shakes his head. A Moonblade weilder, a Harper, an' <CHARNAME>. Hells, that must o' spawned quite a few stoories an' glories.~ IF ~~ THEN EXTERN BJAHEI25 c-arantobgibberling END END CODE /* add to BJAHEI25 c-arantobgibberling : IF ~InParty("O#Xan") !Global("O#XanRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobbanterfinish IF ~InParty("O#Xan") Global("O#XanRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobxanromance */ CODE CHAIN C-ARN25B c-arantobxanromance ~[ARAN] I don't rightly see what <PRO_HESHE> seen in him, y'know. All that doom an' gloom an' angst. But they spark an' confer like they was attached at th' soul, or somethin'. When did <PRO_HESHE> fall for Xan, anyways?~ == BJAHEI25 ~[JAHEIRA] That is their story to tell, Aran. If Xan does not wish to tell you, and <CHARNAME> says nothing, then I certainly cannot.~ EXTERN C-ARN25B c-arantobbanterfinish Kivan CODE /* Add to baseline: !InParty("P#KIVAN") // to the transition leading to EXTERN BJAHEI25 c-arantobgibberling IF ~InParty("P#KIVAN")~ EXTERN C-ARN25B c-arantobkivan */ CODE APPEND C-ARN25B /* ToB Banters: Aran > Jaheira Back in The Day : Kivan */ IF ~~ c-arantobkivan SAY ~[ARAN] Kivan don't say much about those days. He just looks at those hands o' his, flexes them a mite bit, an' gets a far-off look in his eyes. A powerful one like that on your side, you all must o' made quite th' play for glory.~ IF ~~ THEN EXTERN BJAHEI25 c-arantobgibberling END END CODE /* add to BJAHEI25 c-arantobgibberling : IF ~InParty("P#KIVAN") !Global("P#KivanRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobbanterfinish IF ~InParty("P#KIVAN") Global("P#KivanRomanceActive","GLOBAL",2)~ THEN EXTERN c-arantobkivanromance */ CODE CHAIN C-ARN25B c-arantobkivanromance ~[ARAN] Did <PRO_HESHE> fall for th' ohtar right away, or were it more gradual? It seems all a mite bit complicated, it do. Kwentra i'narn, mellonamin.~ == BJAHEI25 ~[JAHEIRA] That is their story to tell, Aran. If Kivan does not wish to tell you, and <CHARNAME> says nothing, then I certainly cannot. And 'ohtar' translates as 'warrior'. Kivan is far more than that.~ EXTERN C-ARN25B c-arantobbanterfinish And there we have it. We'll tuck the integrated product at the end of all this. Secondary Level - Non-Romances; Jaheira with Branwen, Coran, Eldoth, Minsc, Quayle, Shar-Teel, Skie, Tiax, or Yeslick OK, now we have a different challenge to solve. Do we really want this first banter to drag on and on, referencing anyone who might be present, or are we going to be happier with short, targeted choices? There is an additional challenge to that - only one of those romanceables is going to play, and if there is one of them available we want the banter to reference them, not someone who is not seen as quite as important. So let's opt-in the romanceables with the banter above, and then if none of them is InParty, the "just friends" NPCs can get a crack at being included. CODE /* ToB Banters: Aran > Jaheira */ CHAIN IF ~CombatCounter(0) !Detect([ENEMY]) Global("c-arntob18b","GLOBAL",0) InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID) InParty("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) OR(13) InParty("WLBRAN") InParty("DL#BWN") InParty("Coran") InParty("O#Coran") InParty("M#Eldoth") InParty("Minsc") InParty("QUAYLE") InParty("Sharteel") !InParty("shartel") !InParty("Skiedv") InParty("O#Tiax") InParty("TLXan") InParty("Yesli")~ THEN C-ARN25B c-arantob18bmob ~[ARAN] You look a mite pensive, Jaheira. What be draggin' you back down th' distant foggy paths o' memory?~ DO ~SetGlobal("c-arntob18b","GLOBAL",1)~ == BJAHEI25 ~[JAHEIRA] I am simply remembering how this all started. How young <CHARNAME> seemed, those few short years ago.~ == C-ARN25B IF ~InParty("WLBRAN")~ THEN ~[ARAN] Branwen was mutterin' somethin' similar just a bit ago. Judgin' by th' amount o' "Tempus this" an' "Tempus that", she weren't so sure things have gotten better.~ == C-ARN25B IF ~InParty("DL#BWN")~ THEN ~[ARAN] Branwen was mutterin' somethin' similar just a bit ago. Judgin' by th' amount o' "Tempus this" an' "Tempus that", she weren't so sure things have gotten better.~ == C-ARN25B IF ~InParty("Coran")~ THEN ~[ARAN] You Tel'Quessir must be connected somehow. Coran were sayin' somethin' yesterday about th' wondrous Cloakwood, an' how th' more things change th' more things change. Didn't rightly make no sense to me.~ == C-ARN25B IF ~InParty("O#Coran")~ THEN ~[ARAN] You Tel'Quessir must be connected somehow. Coran were sayin' somethin' yesterday about th' wondrous Cloakwood, an' how th' more things change th' more things change. Didn't rightly make no sense to me.~ == C-ARN25B IF ~InParty("M#Eldoth")~ THEN ~[ARAN] I don't rightly trust that Eldoth fellow to tell th' tales. For a bard, he be a mite bit on th' silent side. But I suppose he might have seen a fair bit.~ == C-ARN25B IF ~InParty("Minsc")~ THEN ~[ARAN] My bet be Minsc has not changed much.~ == C-ARN25B IF ~InParty("QUAYLE")~ THEN ~[ARAN] I'd ask Quayle about th' old days, but somehow I suspect I'd be listenin' to a blighted hells o' a long story. I just want some o' th' juicy bits.~ == C-ARN25B IF ~InParty("Sharteel")~ THEN ~[ARAN] Shar-Teel were around back then, I think, but she don't seem to like me much. Comes wi' havin' to wear a codpiece, I guess.~ == C-ARN25B IF ~InParty("shartel")~ THEN ~[ARAN] Shar-Teel were around back then, I think, but she don't seem to like me much. Comes wi' havin' to wear a codpiece, I guess.~ == C-ARN25B IF ~InParty("Skiedv") !InParty("M#Eldoth")~ THEN ~[ARAN] I'd ask Skie, on account o' she loves a good piece o' gossip, but then I'd have to get through all th' chatter about silks, an' that bastard Elfred, or Eddoth, or whatever th' bard what she moans about were named.~ == C-ARN25B IF ~InParty("Skiedv") InParty("M#Eldoth")~ THEN ~[ARAN] I'd ask Skie, on account o' she loves a good piece o' gossip, but then I'd have to get through all th' chatter about silks, an' that bastard Eldoth treated her right bad, but she just loves him anyways. Or hates him. Guess it depends on th' day.~ == C-ARN25B IF ~InParty("O#Tiax")~ THEN ~[ARAN] Somehow I think th' conversation wi' Tiax would be about how he solved th' whole Iron Throne crisis in spite o' havin' all o' you along, eh?~ == C-ARN25B IF ~InParty("Yesli")~ THEN ~[ARAN] Yeslick has one hells o' a hollow leg, but no matter how much he drinks he don't spill naught in th' way o' good stories.~ == C-ARN25B ~[ARAN] An' you, you be th' worst o' all. You never do tell all th' ins an' outs. My boon companions, startin' out early enough to know <PRO_HIMHER> when a few kobolds were a right difficult challenge, an' you hold back on th' tales o' glory.~ EXTERN BJAHEI25 c-arantobgibberling With this last one, we still have a possible recognition of Jaheira's romance with PC placed at the end of c-arantobgibberling. And there we have it, except for a few final things: integration and uadjustment in the first banter, and a test install to see where tildes are missing, code is misspelled, and most of all if all the CHAIN transitions are in need of readjusting/reordering/cleanup.
  18. Banter Rough Drafts, for checking with authors later (if/when they are available). For some of these, there will be no banter pack in which these are acceptable, as my interpretation of the permissions set governing G3 CrossMod really expects 2-way communication between authors (or at least approval) and both SHS's IEP Banters and PPG's Banterpack are designed around Canon BioWare™ NPC Joinables. Some retired mod authors have given a "green light" for new content, and some have not stated their wishes. But, tucking these ideas here gives time for feedback and recheck, and an easy place to link to when seeking permissions. Maybe eventually they will find a home. Since we are writing lines for other folk's characters, this gets to be tricky. No BioWare™ author has shown up and posted "you are destroying my characterization of Minsc!". But as we are all amateurs (there is no paid professional market for i.e. mod authoring), we can accidentally make someone else's character look bad - and that is just wrong. In light of that, the basic approach for this writing is simple - 1. Don't knock someone else's character. So, no below-the belt digs at a characterization. If a player is playing the other mod, they probably like it; why mess with their chosen mod? Player1 is supposed to be #1. NPCs exist only for their enjoyment. 2. The author is probably not going to be active, so when possible build NPC responses out of minor modification of existing strings in the relevant mod (writing in someone else's style can accidentally end up being parody, and could be seen as a direct insult, which breaks point #1.) 3. Since there is no direct opportunity for feedback, if there is a potential conflict, the other mod NPC wins. No "last words" or zingers for Aran. That inevitably means that materials where another author is no longer available will be weaker. C'est la vie. This is all just for fun, after all! 4. If at all possible, beg/bribe/coerce the other mod author to participate. It saves time, energy, and makes your job so much easier. Plus the characterization is correct from the get-go! So, a first try at this idea. Sillara is sometimes active, and I have played Saerileth before, so the possibility for inclusion is good. Let's try two banters, an underdark commentary, and a friendly "what in th' nine hells are you thinkin' goin' out wi' a 15 year old Chosen o' Tyr who can be makin' googly-eyes an' drawin' kittens an hearts on your palm to smitin' Demogorgons in th' blink o' an eye" talk. SAERILETH (Sillara/Nethrin, CoM hosted, retired) Puzzle Pieces: @20 = ~Thou sharest in thy father's taint. I will leave thee and disturb thee no more.~ @27 = ~Thou art satisfied? Thy trust is freely given. I thank thee for it. As long as thou dost tread the path of good, I will sojourn with thee.~ @28 = ~I do. Wilt thou have me by thy side or no?~ @53 = ~Forgive me. My zeal oft overcomes my discretion. In this matter, I bow to thy judgement.~ @28 = ~Nay, <PRO_LADYLORD> <CHARNAME>. We must not! Their peril is more than thou knowest: their souls are in danger of damnation!~ @111 = ~'Twould be false in me to deny that this place doth trouble me. (Saerileth sighs and slowly sits up. She leans over you, tracing your profile with her fingers.)~ @201 = ~Our mortal lives do oft seem full of injustice, but if our lots are here unjust, we may rest assured that the Maimed Tyr will not deny us justice when he doth judge us.~ @418 = ~Aye, so it doth, <CHARNAME>. And I pray Tyr that thou hast the strength to meet it.~ [sAERI412] @431 = ~(Saerileth shakes her head.) Nay, sweet my lord. I am a Chosen of Tyr. When that I do become His Proxy, then mayhap I shall be granted the life of a deva.~ [sAERI390] @432 = ~And if I do remain a mortal Proxy, as some do, still the stuff of my life will alter. I do not think that thou wilt be left alone, even should I die. For at my death I do but return to the realm of Mertion, where thou mayest find me again.~ @546 = ~My life is, and hath ever been, Tyr's only. I shall follow his will so long as I have breath.~ @979 = ~Thou art most skilled for one who had no formal instruction.~ @995 = ~Modesty would better become thee, <CHARNAME>.~ @1033 = ~Tell me, why dost thou serve as a paladin a god who places the law above the good?~ @1040 = ~Which wilt thou choose when the choice must be made: goodness or order?~ @1043 = ~Like me, thou hast heard the call of thy god. Thou art blessed.~ @1061 = ~Thou art most fortunate, and the grace of the Morninglord doth rest upon thee.~ @1102 = ~(Saerileth's eyes are soft as she looks at you.) I do pity thee that thou knowest not yet thy lord.~ @1165 = ~Thy jesting is misplaced, and I am not amused. Art thou indeed a mere brigand and cutpurse?~ @1451 = ~Why dost thou reject the gods?~ @1498 = ~Beast! Foul-mouthed, blasphemous fiend! Thy life is forfeit!~ @1164 = ~Then I shall watch thy actions. Do not fall into evil, <CHARNAME>.~ CODE /* SoA Aran-Saerileth */ CHAIN IF ~InParty("Saerileth") InMyArea("Saerileth") !StateCheck("Saerileth",CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) Global("C-AranSaerBanter1","GLOBAL",0)~ THEN ~C-ARANB~ AranSaerSoABanter ~[ARAN] Lady Paladin, I'd be a might happier if you would take th' time to answer me a question, beggin' my impertinence.~ DO ~SetGlobal("C-AranSaerBanter1","GLOBAL",1)~ == ~BSAERILE~ ~[sAERILETH] Speak on, Aran.~ == ~C-ARANB~ IF ~!Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[ARAN] <CHARNAME>'s rightly leader here, an' I expect has reason to have so young a lass on th' front lines. I was workin' trade costers m'self at your age, so I got no problem wi' that. But you seem a bit more focused on what be right an' wrong than what be practical.~ == ~C-ARANB~ IF ~Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[ARAN] <CHARNAME>'s rightly leader here, an' I expect has reason to have so young a lass on th' front lines. I was workin' trade costers m'self at your age, so I got no problem wi' that. But you both seem a mite bit more than just comrades in arms.~ == ~BSAERILE~ IF ~!Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[sAERILETH] Which would thou choose when the choice must be made: goodness or utility? There is but one answer.~ == ~BSAERILE~ IF ~Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[sAERILETH] I am his love, and he is mine own.~ == ~C-ARANB~ ~[ARAN] An' this answer serves Tyr, on account o' you bein' his Chosen an' all?~ == ~BSAERILE~ IF ~!Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[sAERILETH] My life is, and hath ever been, Tyr's only. I shall follow his will so long as I have breath.~ == ~BSAERILE~ IF ~Global("SaerilethRomanceActive","GLOBAL",2)~ THEN ~[sAERILETH] My life is, and hath ever been, Tyr's. I shall follow his will so long as I have breath. <CHARNAME> knows this. He will understand the depth of my faith.~ == ~C-ARANB~ ~[ARAN] I'm not sure I understand that kind o' faith, is all. I never did.~ EXIT /* SoA Saerileth-Aran */ CHAIN IF ~InParty("Saerileth") InMyArea("Saerileth") !StateCheck("Saerileth",CD_STATE_NOTVALID) InParty("c-aran") InMyArea("Saerileth") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) Global("C-SaerAranBanter1","GLOBAL",0)~ THEN ~BSAERILE~ SaerAranSoABanter ~[sAERILETH] Why dost thou reject the gods? The foul-mouthed oaths thou dost speak do disservice to all.~ DO ~SetGlobal("C-SaerAranBanter1","GLOBAL",1)~ == ~C-ARANB~ ~[ARAN] Come, now, Saerileth. There must o' been a time when you were not so tight-ar... err... no, I suppose you never did let your hair down, so to speak. You haven't had enough time in life yet.~ == ~BSAERILE~ ~[sAERILETH] Thy jesting is misplaced, and I am not amused.~ == ~C-ARANB~ ~[ARAN] Now, don't you be gettin' all offended, lass. There be a place for a harmless bit o' language, sometimes. An' Tymora seems to be fine wi' me playin' fast an' loose.~ == ~C-ARANB~ IF ~OR(2) Class("c-aran",PALADIN_ALL) Class("c-aran",CLERIC_ALL)~ THEN ~[ARAN] How about we not get our respective gods into no minor squabble just on account o' my blasphemin', eh?~ == ~C-ARANB~ IF ~!Class("c-aran",PALADIN_ALL) !Class("c-aran",CLERIC_ALL)~ THEN ~[ARAN] I know I am no champion o' virtue. I done lost that in a card game when I... never you mind that. But I try to back <CHARNAME>, an' you back <CHARNAME>, so that has to count for somethin', eh?~ == ~BSAERILE~ IF ~OR(2) Class("c-aran",PALADIN_ALL) Class("c-aran",CLERIC_ALL)~ THEN ~[sAERILETH] I do pity thee that thou knowest not yet the wishes of thy god. Foul-mouthed blasphemy will forfeit the good will of all of the gods.~ == ~BSAERILE~ IF ~!Class("c-aran",PALADIN_ALL) !Class("c-aran",CLERIC_ALL)~ THEN ~[sAERILETH] I do pity thee that thou knowest not yet the power of worshiping one god above all others. Foul-mouthed blasphemy will forfeit the good will of all of the gods.~ == ~C-ARANB~ ~[ARAN] Is this somethin' where you are likely to raise a sword against me if I curse a mite here an' there?~ == ~BSAERILE~ ~[sAERILETH] As long as thou dost tread the path of good, I will sojourn with thee. But I warn thee... curb thy language.~ == ~C-ARANB~ ~[ARAN] You know, hearin' those words from a little slip o' a girl not even out o' apprentice age might be laughable in some circumstances. But seein' as you can hold your own in combat an' healin', I will take you right serious. At least, as far as I can. Hard to break old habits.~ EXIT /* UD Aran-Saerileth */ CHAIN IF ~Global("c-drow","GLOBAL",1) InParty("Saerileth") InMyArea("Saerileth") !StateCheck("Saerileth",CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) Global("C-AranSaerBanter2","GLOBAL",0)~ THEN ~C-ARANB~ AranSaerUDBanter ~[ARAN] I know I don't rightly take you serious all th' time. You be a fine companion, though a mite bit stubborn an' mayhap a bit fanatical. But here, I can see why a lad might follow in your footsteps a mite. This place deserves to be eradicated.~ DO ~SetGlobal("C-AranSaerBanter2","GLOBAL",1)~ == ~BSAERILE~ ~[sAERILETH] 'Twould be false in me to deny that the continued existence of this place doth trouble me.~ == ~C-ARANB~ ~[ARAN] I'd think it be time to call forth a holy crusade, an' clear 'em off out o' here. Mayhap destroy evey last one o' them.~ == ~BSAERILE~ ~[sAERILETH] Our mortal lives do oft seem full of injustice, but if our lots are here unjust, we may rest assured that the Maimed Tyr will not deny us justice when he doth judge us. But all of these creatures have chosen to serve evil. Their judgment hath been wrought, their lot decided, and eventually they shall fall to the power of Tyr.~ == ~C-ARANB~ ~[ARAN] I don't suppose there be some who might follow a good cause down here, eh? Mayhap one or two redeemed souls, trapped alongside all this scurryin' evil?~ == ~BSAERILE~ ~[sAERILETH] Forgive me. My zeal oft overcomes my discretion. In this matter, I spoke hastily; Tyr is the Judge, and I am his Champion. Perhaps there are a few souls the Maimed One would have me spare. It is not my decision to make.~ == ~C-ARANB~ ~[ARAN] Well, now you done got me worried. Usually, you be th' one takin' things to extremes. I was about to suggest we just send 'em all Tyr's way, an' let him figure out who goes where. I think down here, I be a might bit more comfortable wi' "guilt by association".~ EXIT /* are you sure about this romance? : BCS */ IF InParty("Saerileth") InMyArea("Saerileth") !StateCheck("Saerileth",CD_STATE_NOTVALID) InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) CombatCounter(0) Global("SaerilethRomanceActive","GLOBAL",2) Global("c-aranpcsaerrom","GLOBAL",0) THEN RESPONSE #100 SetGlobal("c-aranpcsaerrom","GLOBAL",1) %arand_friend_song% StartDialogNoSet(Player1) END /* are you sure about this romance? : DLG */ IF ~Global("c-aranpcsaerrom","GLOBAL",1)~ THEN BEGIN aranpcsaerrom SAY ~[ARAN] Now, this be naught in th' way o' my business. But I have to ask... are you an' Saerileth gettin' serious?~ ++ ~[PC] Of course not. That is a ridiculous suggestion.~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + have_you_seen_how_she_looks_at_you ++ ~[PC] What do you think?~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + my_own_business ++ ~[PC] Yes.~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + are_you_kidding ++ ~[PC] Are we holding hands and kissing occasionally? Yes, I think we are. Are we getting serious? I am not sure.~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + are_you_kidding ++ ~[PC] Do I ask you about your dalliances with half of Faerun?~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + my_own_business ++ ~[PC] Speak of this to me again, and you will be looking for a new line of work. And perhaps searching for your missing head.~ + c-aranshutup32 EXIT IF ~~ are_you_kidding SAY ~[ARAN] Do you be kiddin' wi' me? A lass what has seen less than sixteen winters? Give her a year to come o' age a' make her own chices, an' mayhap I wouldn't kick her out o' my b... err... well, she is pretty an' all, I guess. But she don't know squat about livin', let alone havin' a serious relationship. Tyr's Blasted Buttocks, don't send a child to do adult's work, <CHARNAME>. Love isn't just for play.~ ++ ~[PC] Take one look into her eyes, and tell me that she does not love me.~ + she_does_at_that ++ ~[PC] She is the Chosen of Tyr. She is strong enough, wise enough, and driven enough to know her own mind. Do you really think we would be together if she was not set on having it that way?~ + no_guess_not_kid ++ ~[PC] What, are you jealous? I did not know you were in love with her too.~ + hells_no_cute_but_crazy ++ ~[PC] It is a passing crush, and I intend to have as much fun with her as her religious views will allow.~ + watch_out_boy_shell_chew_you_up ++ ~[PC] So now you are an expert on serious relationships? That is a laugh. You don't even remember the barmaid's name the next morning.~ + my_own_business END IF ~~ have_you_seen_how_she_looks_at_you SAY ~[ARAN] You must be blighted blind, then. Th' lass looks at you wi' th' intensity o' first love, an' th' passions o' a full grown woman. You'd best be careful around her, on account o' she might get th' wrong idea - or worse, th' right one.~ ++ ~[PC] I don't really need to be careful. I think I am falling for her.~ + are_you_kidding ++ ~[PC] Are we holding hands and kissing occasionally? Yes, I think we are. Are we getting serious? I am not sure.~+ watch_out_boy_shell_chew_you_up ++ ~[PC] Do I ask you about your dalliances with half of Faerun?~ DO ~SetGlobal("c-aranpcsaerrom","GLOBAL",2)~ + my_own_business ++ ~[PC] Speak of this to me again, and you will be looking for a new line of work. And perhaps searching for your missing head.~ + c-aranshutup33 END IF ~~ my_own_business SAY ~[ARAN] Look, <CHARNAME>, I love th' way women move, th' way they speak, th' way they smell, th' way they smile... hells, I just love women. But me an' someone what wears th' flower be a mite different than what you are talkin' about. First off, we all have th' age o' consent. Second off, if I tick off th' lady in question, she may box my ears, kick me, get me thrown into th' street, or mayhap carve me up a little, as be her choice. With Saerileth...~ IF ~~ THEN GOTO watch_out_boy_shell_chew_you_up END IF ~~ she_does_at_that SAY ~[ARAN] Aye, she does. That be even more dangerous.~ IF ~~ THEN GOTO love_women_but END IF ~~ no_guess_not_kid SAY ~[ARAN] Mayhap you are right. Mayhap she be older than her years, an' wiser than a sage; mayhap she be mature enough to understand that relationships be work as well as fun. But all that wisdom an' such be packed into a body what be still growin' an' changin'.~ IF ~~ THEN GOTO love_women_but END IF ~~ hells_no_cute_but_crazy SAY ~[ARAN] Jealous? No possibility o' that, boyo. She scares me half to death.~ IF ~~ THEN GOTO love_women_but END IF ~~ love_women_but SAY ~[ARAN] Look, <CHARNAME>, I love th' way women move, th' way they speak, th' way they smell, th' way they smile... hells, I just love women. But me an' someone what wears th' flower be a mite different than what you are talkin' about. First off, we all have th' age o' consent, meanin' we can make our own choices. Second off, if I tick off th' lady in question, she may box my ears, kick me, get me thrown into th' street, or mayhap carve me up a little, as be her choice. With Saerileth...~ IF ~~ THEN GOTO watch_out_boy_shell_chew_you_up END IF ~~ watch_out_boy_shell_chew_you_up SAY ~[ARAN] You know how 'hell hath no fury like a woman scorned'? Well, take one look at her an' all you see is slim little hips, curves to die for, an' lips beggin' to be kissed - not one bit o' th' hells about her. Take a look in her eyes, though, an' you see an intensity an' a devotion that be downright scary. Now picture her if you hurt her. There won't be any place on any o' th' Planes where you could hide from her wrath. She'll rip you in half wi' her bare hands, then heal you up just so she can do it again.~ ++ ~[PC] You are taking this too seriously. I am much more powerful than she is. She will never be able to defeat me.~ + I_warned_you ++ ~[PC] I don't intend to hurt her. I think she may be my soulmate.~ + I_warned_you ++ ~[PC] She's a bunny rabbit. What's she going to do, nibble my bum?~ + I_warned_you // heh - Monty Python is fun. But this one might be a good one to lose. ++ ~[PC] This is my business, not yours. Keep out of it.~ + I_warned_you END IF ~~ I_warned_you SAY ~[ARAN] None o' my business, anyways. You think you can handle it. But I have been on th' receivin' end o' a regular woman what feels she has been wronged, an' it were a mite painful. Breakin' th' heart o' someone with th' feelin's o' adolescent first love who just happens to be an accomplished fighter an' th Chosen o' Tyr... that's bloody suicide.~ IF ~~ THEN EXIT END
  19. cmorgan

    Underdark Friendtalks

    Separate talks, as friendtalks are suspended in Underdark - like the flirts, separation and the PID separation, the whole "party in disguise" thing and the environment itself leads to conceptual problems dealing with growth of a friendship and sequencing. So, a set of 5 talks that are more 'psychology and scenery' than friendship evolution. People talk, even under (or especially under) high stress. /* SoA UnderDark FriendTalks */ /* SoA UnderDark FriendTalk 1 */ IF ~Global("c-aranfriendud","GLOBAL",1)~ THEN BEGIN a1689 SAY ~[ARAN] Do you think we could move this along a little? This place be my idea o' a nightmare wrapped up in one o' those tales told to scare children.~ ++ ~[PC] We are moving along as best we can. Calm down, take a big breath, and get yourself under control. The Underdark may be legendary, but then again, so are we.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2040 ++ ~[PC] Oh, shut up. What a big baby. You talk about being a tough military man, yet go all weak-kneed at a little fungus and some Drow?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2041 ++ ~[PC] It is bothering me, too, Aran. But complaining about it will not get us any further.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2042 + ~RandomNum(3,1)~ + ~[PC] It is not a great time to talk right now, Aran. If you want this over with quickly, stop wasting time with smalltalk.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1907 /* c-aranshutup1 */ + ~RandomNum(3,2)~ + ~[PC] It is not a great time to talk right now, Aran. If you want this over with quickly, stop wasting time with smalltalk.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1909 /* c-aranshutup3 */ + ~RandomNum(3,3)~ + ~[PC] It is not a great time to talk right now, Aran. If you want this over with quickly, stop wasting time with smalltalk.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1911 /* c-aranshutup5 */ + ~InParty("aerie") InMyArea("aerie") Global("c-aranaerieud","LOCALS",0)~ + ~[PC] You sound like Aerie.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1687 + ~!Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1672 + ~Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1671 + ~OR(7) Global("c-arankravitchstory","LOCALS",1) Global("c-arancarbonara","LOCALS",1) Global("c-arancalimport","LOCALS",1) Global("c-arangerris","LOCALS",1) Global("c-arandadtrade","LOCALS",1) Global("c-aranfistfight","LOCALS",1) GlobalGT("c-aranmoonfight","LOCALS",0)~ + ~[PC] Hey, Aran, I remember you telling a story... can you tell it to me again?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1673 + ~InParty("ADANGEL") InMyArea("ADANGEL") !StateCheck("ADANGEL",CD_STATE_NOTVALID) Global("c-aran2103","GLOBAL",0)~ + ~[PC] Angelo seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2103 + ~InParty("Anishai") InMyArea("Anishai") !StateCheck("Anishai",CD_STATE_NOTVALID) Global("c-aran2104","GLOBAL",0)~ + ~[PC] Anishai seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2104 + ~InParty("Azure") InMyArea("Azure") !StateCheck("Azure",CD_STATE_NOTVALID) Global("c-aran2105","GLOBAL",0)~ + ~[PC] Azure seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2105 + ~InParty("B!Gavin2") InMyArea("B!Gavin2") !StateCheck("B!Gavin2",CD_STATE_NOTVALID) Global("c-aran2106","GLOBAL",0)~ + ~[PC] Gavin seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2106 + ~InParty("b!haldamir") InMyArea("b!haldamir") !StateCheck("b!haldamir",CD_STATE_NOTVALID) Global("c-aran2107","GLOBAL",0)~ + ~[PC] Haldamir seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2107 IF ~HasItemEquiped("LEAT21",Player1) Global("c-arskinarm","LOCALS",0)~ THEN DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ GOTO a1788 IF ~HasItemEquiped("LEAT21",Player1) Global("c-arskinarm","LOCALS",1) GlobalTimerExpired("c-aranskin","GLOBAL")~ THEN DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ GOTO a1789 IF ~HasItemEquiped("LEAT21",Player1) Global("c-arskinarm","LOCALS",2) GlobalTimerExpired("c-aranskin","GLOBAL")~ THEN DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ GOTO a1790 END IF ~~ a2040 SAY ~[ARAN] Aye, I be a legend in my own mind, eh?~ + ~RandomNum(3,1)~ + ~[PC] It is not a great time to talk right now, Aran. If you want this over with quickly, stop wasting time with smalltalk.~ + a1907 /* c-aranshutup1 */ + ~RandomNum(3,2)~ + ~[PC] It is not a great time to talk right now, Aran. If you want this over with quickly, stop wasting time with smalltalk.~ + a1909 /* c-aranshutup3 */ + ~RandomNum(3,3)~ + ~[PC] It is not a great time to talk right now, Aran. If you want this over with quickly, stop wasting time with smalltalk.~ + a1911 /* c-aranshutup5 */ + ~InParty("BIDDE") InMyArea("BIDDE") !StateCheck("BIDDE",CD_STATE_NOTVALID) Global("c-aran2108","GLOBAL",0)~ + ~[PC] Biddekorak seems to be handling this better than you are.~ + a2108 + ~InParty("BWTOUCHX") InMyArea("BWTOUCHX") !StateCheck("BWTOUCHX",CD_STATE_NOTVALID) Global("c-aran2109","GLOBAL",0)~ + ~[PC] Touchstone seems to be handling this better than you are.~ + a2109 + ~InParty("CALLISTO") InMyArea("CALLISTO") !StateCheck("CALLISTO",CD_STATE_NOTVALID) Global("c-aran2110","GLOBAL",0)~ + ~[PC] Callisto seems to be handling this better than you are.~ + a2110 + ~InParty("WILLYB") InMyArea("WILLYB") !StateCheck("WILLYB",CD_STATE_NOTVALID) Global("c-aran2111","GLOBAL",0)~ + ~[PC] Bruce seems to be handling this better than you are.~ + a2111 + ~InParty("WLBRAN") InMyArea("WLBRAN") !StateCheck("WLBRAN",CD_STATE_NOTVALID) Global("c-aran2112","GLOBAL",0)~ + ~[PC] Bruce seems to be handling this better than you are.~ + a2112 + ~InParty("Skooter") InMyArea("Skooter") !StateCheck("Skooter",CD_STATE_NOTVALID) Global("c-aran2173","GLOBAL",0)~ + ~[PC] Skooter seems to be handling this better than you are.~ + a2173 + ~InParty("SOLAUFEIN") InMyArea("SOLAUFEIN") !StateCheck("SOLAUFEIN",CD_STATE_NOTVALID) Global("c-aran2174","GLOBAL",0)~ + ~[PC] Solaufein seems to be handling this better than you are.~ + a2174 + ~InParty("xulaye") InMyArea("xulaye") !StateCheck("xulaye",CD_STATE_NOTVALID) Global("c-aran2175","GLOBAL",0)~ + ~[PC] Xulaye seems to be handling this better than you are.~ + a2175 + ~!Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1672 + ~Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1671 + ~OR(7) Global("c-arankravitchstory","LOCALS",1) Global("c-arancarbonara","LOCALS",1) Global("c-arancalimport","LOCALS",1) Global("c-arangerris","LOCALS",1) Global("c-arandadtrade","LOCALS",1) Global("c-aranfistfight","LOCALS",1) GlobalGT("c-aranmoonfight","LOCALS",0)~ + ~[PC] Hey, Aran, I remember you telling a story... can you tell it to me again?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1673 ++ ~[PC] You know you are interrupting our travels with random comments, right?~ + a2052 ++ ~[PC] Oh, more than one person thinks you are legendary. There are probably entire books on the famous Inedible Whitehand Curry.~ + a2053 ++ ~[PC] Stop worrying, Aran. You are letting things get to you.~ + a2054 ++ ~[PC] You could help move things along down here if you would actually hit something once in awhile. I thought you were a soldier, not a recruit.~ + a2055 ++ ~[PC] Hey, we can spice things up. Why don't we go find something really disgusting, and slowly torture it to death, just to hear it scream!~ + a2056 END IF ~~ a2041 SAY ~[ARAN] I do be reservin' th' right to be scared out o' my skin, on account o we be wanderin' th' worst collection o' fungus, mold, slime, an' evil anywhere. It's not th' hordes o' Drow that get me, though. It be th' creepin' fungus what covers everythin'. I keep wakin' up expectin' to find I have been half digested.~ + ~InParty("Minsc") InMyArea("Minsc") !StateCheck("Minsc",CD_STATE_NOTVALID) Global("c-aran2176","GLOBAL",0)~ + ~[PC] Minsc seems to be handling this better than you are.~ + a2176 + ~InParty("Korgan") InMyArea("Korgan") !StateCheck("Korgan",CD_STATE_NOTVALID) Global("c-aran2177","GLOBAL",0)~ + ~[PC] Korgan seems to be handling this better than you are.~ + a2177 + ~InParty("Keldorn") InMyArea("Keldorn") !StateCheck("Keldorn",CD_STATE_NOTVALID) Global("c-aran2178","GLOBAL",0)~ + ~[PC] Keldorn seems to be handling this better than you are.~ + a2178 + ~InParty("Valygar") InMyArea("Valygar") !StateCheck("Valygar",CD_STATE_NOTVALID) Global("c-aran2179","GLOBAL",0)~ + ~[PC] Valygar seems to be handling this better than you are.~ + a2179 + ~InParty("Viconia") InMyArea("Viconia") !StateCheck("Viconia",CD_STATE_NOTVALID) Global("c-aran2180","GLOBAL",0)~ + ~[PC] Viconia seems to be handling this better than you are.~ + a2180 + ~InParty("Nalia") InMyArea("Nalia") !StateCheck("Nalia",CD_STATE_NOTVALID) Global("c-aran2181","GLOBAL",0)~ + ~[PC] Nalia seems to be handling this better than you are.~ + a2181 + ~InParty("Mazzy") InMyArea("Mazzy") !StateCheck("Mazzy",CD_STATE_NOTVALID) Global("c-aran2182","GLOBAL",0)~ + ~[PC] Mazzy seems to be handling this better than you are.~ + a2182 + ~InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID) Global("c-aran2183","GLOBAL",0)~ + ~[PC] Jaheira seems to be handling this better than you are.~ + a2183 + ~InParty("Jan") InMyArea("Jan") !StateCheck("Jan",CD_STATE_NOTVALID) Global("c-aran2184","GLOBAL",0)~ + ~[PC] Jan seems to be handling this better than you are.~ + a2184 + ~InParty("Imoen2") InMyArea("Imoen2") !StateCheck("Imoen2",CD_STATE_NOTVALID) Global("c-aran2185","GLOBAL",0)~ + ~[PC] Imoen seems to be handling this better than you are.~ + a2185 + ~InParty("HaerDalis") InMyArea("HaerDalis") !StateCheck("HaerDalis",CD_STATE_NOTVALID) Global("c-aran2186","GLOBAL",0)~ + ~[PC] HaerDalis seems to be handling this better than you are.~ + a2186 + ~InParty("Edwin") InMyArea("Edwin") !StateCheck("Edwin",CD_STATE_NOTVALID) Global("c-aran2187","GLOBAL",0)~ + ~[PC] Edwin seems to be handling this better than you are.~ + a2187 + ~InParty("Anomen") InMyArea("Anomen") !StateCheck("Anomen",CD_STATE_NOTVALID) Global("c-aran2188","GLOBAL",0)~ + ~[PC] Anomen seems to be handling this better than you are.~ + a2188 + ~InParty("Cernd") InMyArea("Cernd") !StateCheck("Cernd",CD_STATE_NOTVALID) Global("c-aran2189","GLOBAL",0)~ + ~[PC] Cernd seems to be handling this better than you are.~ + a2189 + ~InParty("Yoshimo") InMyArea("Yoshimo") !StateCheck("Yoshimo",CD_STATE_NOTVALID) Global("c-aran2190","GLOBAL",0)~ + ~[PC] Yoshimo seems to be handling this better than you are.~ + a2190 ++ ~[PC] We should be keeping our eyes open and not wasting time with all of this talk, you know.~ + a2052 ++ ~[PC] And here I thought it would be more uncomfortable to wake up and find yourself fully digested.~ + a2053 ++ ~[PC] You should stop worrying so much about everything, and concentrate on your duties.~ + a2054 ++ ~[PC] You could help move things along down here if you would actually hit something once in awhile. I thought you were a soldier, not a recruit.~ + a2055 ++ ~[PC] Hey, we can spice things up. Why don't we go find something really disgusting, and slowly torture it to death, just to hear it scream!~ + a2056 END IF ~~ a2042 SAY ~[ARAN] Mayhap not. But it be a soldier's right to complain, an' it sure beats runnin' around screamin' "We're all goin' to die! We're all goin' to die!"~ + ~InParty("Minsc") InMyArea("Minsc") !StateCheck("Minsc",CD_STATE_NOTVALID) Global("c-aran2176","GLOBAL",0)~ + ~[PC] Minsc seems to be handling this better than you are.~ + a2176 + ~InParty("Korgan") InMyArea("Korgan") !StateCheck("Korgan",CD_STATE_NOTVALID) Global("c-aran2177","GLOBAL",0)~ + ~[PC] Korgan seems to be handling this better than you are.~ + a2177 + ~InParty("Keldorn") InMyArea("Keldorn") !StateCheck("Keldorn",CD_STATE_NOTVALID) Global("c-aran2178","GLOBAL",0)~ + ~[PC] Keldorn seems to be handling this better than you are.~ + a2178 + ~InParty("Valygar") InMyArea("Valygar") !StateCheck("Valygar",CD_STATE_NOTVALID) Global("c-aran2179","GLOBAL",0)~ + ~[PC] Valygar seems to be handling this better than you are.~ + a2179 + ~InParty("Viconia") InMyArea("Viconia") !StateCheck("Viconia",CD_STATE_NOTVALID) Global("c-aran2180","GLOBAL",0)~ + ~[PC] Viconia seems to be handling this better than you are.~ + a2180 + ~InParty("Nalia") InMyArea("Nalia") !StateCheck("Nalia",CD_STATE_NOTVALID) Global("c-aran2181","GLOBAL",0)~ + ~[PC] Nalia seems to be handling this better than you are.~ + a2181 + ~InParty("Mazzy") InMyArea("Mazzy") !StateCheck("Mazzy",CD_STATE_NOTVALID) Global("c-aran2182","GLOBAL",0)~ + ~[PC] Mazzy seems to be handling this better than you are.~ + a2182 + ~InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID) Global("c-aran2183","GLOBAL",0)~ + ~[PC] Jaheira seems to be handling this better than you are.~ + a2183 + ~InParty("Jan") InMyArea("Jan") !StateCheck("Jan",CD_STATE_NOTVALID) Global("c-aran2184","GLOBAL",0)~ + ~[PC] Jan seems to be handling this better than you are.~ + a2184 + ~InParty("Imoen2") InMyArea("Imoen2") !StateCheck("Imoen2",CD_STATE_NOTVALID) Global("c-aran2185","GLOBAL",0)~ + ~[PC] Imoen seems to be handling this better than you are.~ + a2185 + ~InParty("HaerDalis") InMyArea("HaerDalis") !StateCheck("HaerDalis",CD_STATE_NOTVALID) Global("c-aran2186","GLOBAL",0)~ + ~[PC] HaerDalis seems to be handling this better than you are.~ + a2186 + ~InParty("Edwin") InMyArea("Edwin") !StateCheck("Edwin",CD_STATE_NOTVALID) Global("c-aran2187","GLOBAL",0)~ + ~[PC] Edwin seems to be handling this better than you are.~ + a2187 + ~InParty("Anomen") InMyArea("Anomen") !StateCheck("Anomen",CD_STATE_NOTVALID) Global("c-aran2188","GLOBAL",0)~ + ~[PC] Anomen seems to be handling this better than you are.~ + a2188 + ~InParty("Cernd") InMyArea("Cernd") !StateCheck("Cernd",CD_STATE_NOTVALID) Global("c-aran2189","GLOBAL",0)~ + ~[PC] Cernd seems to be handling this better than you are.~ + a2189 + ~InParty("Yoshimo") InMyArea("Yoshimo") !StateCheck("Yoshimo",CD_STATE_NOTVALID) Global("c-aran2190","GLOBAL",0)~ + ~[PC] Yoshimo seems to be handling this better than you are.~ + a2190 ++ ~[PC] We should be keeping our eyes open and not wasting time with all of this talk, you know.~ + a2052 ++ ~[PC] Now that I would pay to see. I'll even give you a skirt to wear while doing it.~ + a2053 ++ ~[PC] You should stop worrying so much about everything, and concentrate on your duties.~ + a2054 ++ ~[PC] You could help move things along down here if you would actually hit something once in awhile. I thought you were a soldier, not a recruit.~ + a2055 ++ ~[PC] Hey, we can spice things up. Why don't we go find something really disgusting, and slowly torture it to death, just to hear it scream!~ + a2056 END IF ~~ a1788 SAY ~[ARAN] Hey, your armor be all wrong. I know you be th' scourge o' Faerun, but you don't have to wear your heart on your sleeve, eh? In this case, someone else's, by th' look. Not a great morale boostin' thing, by my account.~ IF ~~ THEN DO ~SetGlobal("c-arskinarm","LOCALS",1) SetGlobalTimer("c-aranskin","GLOBAL",FOUR_DAYS)~ GOTO a1791 END IF ~~ a1791 SAY ~[ARAN] But there be more botherin' me than that bundle o' leathered human skin you be wearin'. Do you think we could move this along a little? This whole Underdark be my idea o' a nightmare wrapped up in one o' those tales told to scare children.~ ++ ~[PC] We are moving along as best we can. Calm down, take a big breath, and get yourself under control. The Underdark may be legendary, but then again, so are we.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2040 ++ ~[PC] Oh, shut up. What a big baby. You talk about being a tough military man, yet go all weak-kneed at a little fungus and some Drow?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2041 ++ ~[PC] It is bothering me, too, Aran. But complaining about it will not get us any further.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2042 + ~RandomNum(3,1)~ + ~[PC] It is not a great time to talk right now, Aran. If you want this over with quickly, stop wasting time with smalltalk.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1907 /* c-aranshutup1 */ + ~RandomNum(3,2)~ + ~[PC] It is not a great time to talk right now, Aran. If you want this over with quickly, stop wasting time with smalltalk.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1909 /* c-aranshutup3 */ + ~RandomNum(3,3)~ + ~[PC] It is not a great time to talk right now, Aran. If you want this over with quickly, stop wasting time with smalltalk.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1911 /* c-aranshutup5 */ + ~InParty("aerie") InMyArea("aerie") Global("c-aranaerieud","LOCALS",0)~ + ~[PC] You sound like Aerie.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1687 + ~!Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1672 + ~Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1671 + ~OR(7) Global("c-arankravitchstory","LOCALS",1) Global("c-arancarbonara","LOCALS",1) Global("c-arancalimport","LOCALS",1) Global("c-arangerris","LOCALS",1) Global("c-arandadtrade","LOCALS",1) Global("c-aranfistfight","LOCALS",1) GlobalGT("c-aranmoonfight","LOCALS",0)~ + ~[PC] Hey, Aran, I remember you telling a story... can you tell it to me again?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",2) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1673 END IF ~~ a1789 SAY ~[ARAN] You stll be wearin' that Grumbar-lovin' Cyric-blighted armor? Gives me th' chills, it does.~ ++ ~[PC] If it bothers you that much, I will take it off.~ DO ~SetGlobal("c-arskinarm","LOCALS",2) SetGlobalTimer("c-aranskin","GLOBAL",FOUR_DAYS)~ + a1791 ++ ~[PC] I think it has a great effect on our opponents' morale. You are just going to have to get used to it.~ DO ~SetGlobal("c-arskinarm","LOCALS",2) SetGlobalTimer("c-aranskin","GLOBAL",FOUR_DAYS)~ + a1791 ++ ~[PC] If I wanted you opinion, I would have asked.~ DO ~SetGlobal("c-arskinarm","LOCALS",2) SetGlobalTimer("c-aranskin","GLOBAL",FOUR_DAYS)~ + a1791 ++ ~[PC] Shut up, or your ears will add decoration to it.~ DO ~SetGlobal("c-arskinarm","LOCALS",2) SetGlobalTimer("c-aranskin","GLOBAL",FOUR_DAYS)~ + a1791 END IF ~~ a1790 SAY ~[ARAN] Look, I do a good bit around here, an' I know you be th' leader. I'm just sayin', that armor makes it blighted hard for me to do my job. Th' smell be only part o' it. Shar's Kiss, get rid o' it, eh?~ ++ ~[PC] Or you will run crying like a weakling child, break your contract, and leave?~ DO ~SetGlobal("c-arskinarm","LOCALS",3)~ + a1793 ++ ~[PC] Shut up, Aran. I heard you the first two times. I will use what tools I see fit to advance my goals.~ DO ~SetGlobal("c-arskinarm","LOCALS",3)~ + a1793 ++ ~[PC] Are you volunteering to add more skin to this armor? Speak again, and I will ~ DO ~SetGlobal("c-arskinarm","LOCALS",3)~ + a1793 ++ ~[PC] I may very well take it off. You are useful. But then again, I might put it back on. You will have to get used to it, or leave.~ DO ~SetGlobal("c-arskinarm","LOCALS",3)~ + a1793 ++ ~[PC] You do very little, and I am tired of your whining. That is the lasty warning you will get.~ DO ~SetGlobal("c-arskinarm","LOCALS",3)~ + a1793 END IF ~~ a1793 SAY ~[ARAN] Hey, I don't go around second guessin' you. So if I be sayin' it, you know there be one hells of a lot more people who have noticed. Might fit your ideas, but it be bad tactics to give away your position that way.~ IF ~~ THEN GOTO a1791 END IF ~~ a1794 SAY ~[ARAN] Cyric's Black Heart, I don't run out on contracts. But you smell worse than a charnelhouse. If I throw up, you will be knowin' why.~ IF ~~ THEN GOTO a1791 END /* SoA UnderDark FriendTalk 2 */ IF ~Global("c-aranfriendud","GLOBAL",3)~ THEN BEGIN a1690 SAY ~[ARAN] This place be like a great huge weight on me, pushin' down. I done heard o' bein' in th' bowels o' th' earth, but I never did think to be there myself.~ ++ ~[PC] Why do I think you are about to make some horrible childish intestine joke?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2043 + ~RandomNum(3,1)~ + ~[PC] It is not a great time to talk right now, Aran. In fact, it is a lousy time, so shut up.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1907 /* c-aranshutup1 */ + ~RandomNum(3,2)~ + ~[PC] It is not a great time to talk right now, Aran. In fact, it is a lousy time, so shut up.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1909 /* c-aranshutup3 */ + ~RandomNum(3,3)~ + ~[PC] It is not a great time to talk right now, Aran. In fact, it is a lousy time, so shut up.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1911 /* c-aranshutup5 */ ++ ~[PC] I was wondering what that smell was. I just assumed it was you.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2044 + ~InParty("aerie") InMyArea("aerie") Global("c-aranaerieud","LOCALS",0)~ + ~[PC] You keep that depressing talk up, and we will have to do something to calm Aerie down.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1687 + ~!Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1672 + ~Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1671 + ~OR(7) Global("c-arankravitchstory","LOCALS",1) Global("c-arancarbonara","LOCALS",1) Global("c-arancalimport","LOCALS",1) Global("c-arangerris","LOCALS",1) Global("c-arandadtrade","LOCALS",1) Global("c-aranfistfight","LOCALS",1) GlobalGT("c-aranmoonfight","LOCALS",0)~ + ~[PC] Hey, Aran, I remember you telling a story... can you tell it to me again?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1673 + ~InParty("WxJon") InMyArea("WxJon") !StateCheck("WxJon",CD_STATE_NOTVALID) Global("c-aran2113","GLOBAL",0)~ + ~[PC] Jonathan seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2113 + ~InParty("CHLOE") InMyArea("CHLOE") !StateCheck("CHLOE",CD_STATE_NOTVALID) Global("c-aran2114","GLOBAL",0)~ + ~[PC] Chloe seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2114 + ~InParty("RCHLOE") InMyArea("RCHLOE") !StateCheck("RCHLOE",CD_STATE_NOTVALID) Global("c-aran2115","GLOBAL",0)~ + ~[PC] Chloe seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2115 + ~InParty("CMALORA") InMyArea("CMALORA") !StateCheck("CMALORA",CD_STATE_NOTVALID) Global("c-aran2116","GLOBAL",0)~ + ~[PC] Alora seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2116 + ~InParty("CMGMIRIAM") InMyArea("CMGMIRIAM") !StateCheck("CMGMIRIAM",CD_STATE_NOTVALID) Global("c-aran2117","GLOBAL",0)~ + ~[PC] Mirriam seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",4) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2117 END IF ~~ a2043 SAY ~[ARAN] You know me so well, oh great leader. Unfortunately, there be little enough to joke about when th' smell down here be worse than anythin' I ever did smell.~ + ~InParty("DL#BWN") InMyArea("DL#BWN") !StateCheck("DL#BWN",CD_STATE_NOTVALID) Global("c-aran2123","GLOBAL",0)~ + ~[PC] Branwen seems to be handling this better than you are.~ + a2123 + ~InParty("DYNAHEIR") InMyArea("DYNAHEIR") !StateCheck("DYNAHEIR",CD_STATE_NOTVALID) Global("c-aran2124","GLOBAL",0)~ + ~[PC] Dynaheir seems to be handling this better than you are.~ + a2124 + ~InParty("E3Fade") InMyArea("E3Fade") !StateCheck("E3Fade",CD_STATE_NOTVALID) Global("c-aran2125","GLOBAL",0)~ + ~[PC] Fade seems to be handling this better than you are.~ + a2125 + ~InParty("FHLAND") InMyArea("FHLAND") !StateCheck("FHLAND",CD_STATE_NOTVALID) Global("c-aran2126","GLOBAL",0)~ + ~[PC] Andrei seems to be handling this better than you are.~ + a2126 + ~InParty("FHLSEB") InMyArea("FHLSEB") !StateCheck("FHLSEB",CD_STATE_NOTVALID) Global("c-aran2127","GLOBAL",0)~ + ~[PC] Sebastian seems to be handling this better than you are.~ + a2127 + ~InParty("Minsc") InMyArea("Minsc") !StateCheck("Minsc",CD_STATE_NOTVALID) Global("c-aran2176","GLOBAL",0)~ + ~[PC] Minsc seems to be handling this better than you are.~ + a2176 + ~InParty("Korgan") InMyArea("Korgan") !StateCheck("Korgan",CD_STATE_NOTVALID) Global("c-aran2177","GLOBAL",0)~ + ~[PC] Korgan seems to be handling this better than you are.~ + a2177 + ~InParty("Keldorn") InMyArea("Keldorn") !StateCheck("Keldorn",CD_STATE_NOTVALID) Global("c-aran2178","GLOBAL",0)~ + ~[PC] Keldorn seems to be handling this better than you are.~ + a2178 + ~InParty("Valygar") InMyArea("Valygar") !StateCheck("Valygar",CD_STATE_NOTVALID) Global("c-aran2179","GLOBAL",0)~ + ~[PC] Valygar seems to be handling this better than you are.~ + a2179 + ~InParty("Viconia") InMyArea("Viconia") !StateCheck("Viconia",CD_STATE_NOTVALID) Global("c-aran2180","GLOBAL",0)~ + ~[PC] Viconia seems to be handling this better than you are.~ + a2180 + ~InParty("Nalia") InMyArea("Nalia") !StateCheck("Nalia",CD_STATE_NOTVALID) Global("c-aran2181","GLOBAL",0)~ + ~[PC] Nalia seems to be handling this better than you are.~ + a2181 + ~InParty("Mazzy") InMyArea("Mazzy") !StateCheck("Mazzy",CD_STATE_NOTVALID) Global("c-aran2182","GLOBAL",0)~ + ~[PC] Mazzy seems to be handling this better than you are.~ + a2182 + ~InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID) Global("c-aran2183","GLOBAL",0)~ + ~[PC] Jaheira seems to be handling this better than you are.~ + a2183 + ~InParty("Jan") InMyArea("Jan") !StateCheck("Jan",CD_STATE_NOTVALID) Global("c-aran2184","GLOBAL",0)~ + ~[PC] Jan seems to be handling this better than you are.~ + a2184 + ~InParty("Imoen2") InMyArea("Imoen2") !StateCheck("Imoen2",CD_STATE_NOTVALID) Global("c-aran2185","GLOBAL",0)~ + ~[PC] Imoen seems to be handling this better than you are.~ + a2185 + ~InParty("HaerDalis") InMyArea("HaerDalis") !StateCheck("HaerDalis",CD_STATE_NOTVALID) Global("c-aran2186","GLOBAL",0)~ + ~[PC] HaerDalis seems to be handling this better than you are.~ + a2186 + ~InParty("Edwin") InMyArea("Edwin") !StateCheck("Edwin",CD_STATE_NOTVALID) Global("c-aran2187","GLOBAL",0)~ + ~[PC] Edwin seems to be handling this better than you are.~ + a2187 + ~InParty("Anomen") InMyArea("Anomen") !StateCheck("Anomen",CD_STATE_NOTVALID) Global("c-aran2188","GLOBAL",0)~ + ~[PC] Anomen seems to be handling this better than you are.~ + a2188 + ~InParty("Cernd") InMyArea("Cernd") !StateCheck("Cernd",CD_STATE_NOTVALID) Global("c-aran2189","GLOBAL",0)~ + ~[PC] Cernd seems to be handling this better than you are.~ + a2189 + ~InParty("Yoshimo") InMyArea("Yoshimo") !StateCheck("Yoshimo",CD_STATE_NOTVALID) Global("c-aran2190","GLOBAL",0)~ + ~[PC] Yoshimo seems to be handling this better than you are.~ + a2190 ++ ~[PC] We should be keeping our eyes open and not wasting time with all of this talk, you know.~ + a2052 ++ ~[PC] And here I thought you had experienced everything worth experiencing, oh teller of tall tales. Just think of the stories you will be able to tell your children. If any woman can get past the permanent stench, that is.~ + a2053 ++ ~[PC] You should stop worrying so much about everything, and concentrate on your duties.~ + a2054 ++ ~[PC] You could help move things along down here if you would actually hit something once in awhile. I thought you were a soldier, not a recruit.~ + a2055 ++ ~[PC] Hey, we can spice things up. Why don't we go find something really disgusting, and slowly torture it to death, just to hear it scream!~ + a2056 END IF ~~ a2044 SAY ~[ARAN] Now there be no call for that kind o' talk. I don't smell that bad, not on my worst day ever! An' it never lets up. At least topside you can get a breeze an' some relief.~ + ~InParty("FINIREN") InMyArea("FINIREN") !StateCheck("FINIREN",CD_STATE_NOTVALID) Global("c-aran2128","GLOBAL",0)~ + ~[PC] Irenicus seems to be handling this better than you are.~ + a2128 + ~InParty("FWGhareth") InMyArea("FWGhareth") !StateCheck("FWGhareth",CD_STATE_NOTVALID) Global("c-aran2129","GLOBAL",0)~ + ~[PC] Ghareth seems to be handling this better than you are.~ + a2129 + ~InParty("GOZALOTH") InMyArea("GOZALOTH") !StateCheck("GOZALOTH",CD_STATE_NOTVALID) Global("c-aran2130","GLOBAL",0)~ + ~[PC] Goo seems to be handling this better than you are.~ + a2130 + ~InParty("Horace") InMyArea("Horace") !StateCheck("Horace",CD_STATE_NOTVALID) Global("c-aran2131","GLOBAL",0)~ + ~[PC] Horace seems to be handling this better than you are.~ + a2131 + ~InParty("Hubelpot") InMyArea("Hubelpot") !StateCheck("Hubelpot",CD_STATE_NOTVALID) Global("c-aran2132","GLOBAL",0)~ + ~[PC] Hubelpot seems to be handling this better than you are.~ + a2132 + ~InParty("Minsc") InMyArea("Minsc") !StateCheck("Minsc",CD_STATE_NOTVALID) Global("c-aran2176","GLOBAL",0)~ + ~[PC] Minsc seems to be handling this better than you are.~ + a2176 + ~InParty("Korgan") InMyArea("Korgan") !StateCheck("Korgan",CD_STATE_NOTVALID) Global("c-aran2177","GLOBAL",0)~ + ~[PC] Korgan seems to be handling this better than you are.~ + a2177 + ~InParty("Keldorn") InMyArea("Keldorn") !StateCheck("Keldorn",CD_STATE_NOTVALID) Global("c-aran2178","GLOBAL",0)~ + ~[PC] Keldorn seems to be handling this better than you are.~ + a2178 + ~InParty("Valygar") InMyArea("Valygar") !StateCheck("Valygar",CD_STATE_NOTVALID) Global("c-aran2179","GLOBAL",0)~ + ~[PC] Valygar seems to be handling this better than you are.~ + a2179 + ~InParty("Viconia") InMyArea("Viconia") !StateCheck("Viconia",CD_STATE_NOTVALID) Global("c-aran2180","GLOBAL",0)~ + ~[PC] Viconia seems to be handling this better than you are.~ + a2180 + ~InParty("Nalia") InMyArea("Nalia") !StateCheck("Nalia",CD_STATE_NOTVALID) Global("c-aran2181","GLOBAL",0)~ + ~[PC] Nalia seems to be handling this better than you are.~ + a2181 + ~InParty("Mazzy") InMyArea("Mazzy") !StateCheck("Mazzy",CD_STATE_NOTVALID) Global("c-aran2182","GLOBAL",0)~ + ~[PC] Mazzy seems to be handling this better than you are.~ + a2182 + ~InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID) Global("c-aran2183","GLOBAL",0)~ + ~[PC] Jaheira seems to be handling this better than you are.~ + a2183 + ~InParty("Jan") InMyArea("Jan") !StateCheck("Jan",CD_STATE_NOTVALID) Global("c-aran2184","GLOBAL",0)~ + ~[PC] Jan seems to be handling this better than you are.~ + a2184 + ~InParty("Imoen2") InMyArea("Imoen2") !StateCheck("Imoen2",CD_STATE_NOTVALID) Global("c-aran2185","GLOBAL",0)~ + ~[PC] Imoen seems to be handling this better than you are.~ + a2185 + ~InParty("HaerDalis") InMyArea("HaerDalis") !StateCheck("HaerDalis",CD_STATE_NOTVALID) Global("c-aran2186","GLOBAL",0)~ + ~[PC] HaerDalis seems to be handling this better than you are.~ + a2186 + ~InParty("Edwin") InMyArea("Edwin") !StateCheck("Edwin",CD_STATE_NOTVALID) Global("c-aran2187","GLOBAL",0)~ + ~[PC] Edwin seems to be handling this better than you are.~ + a2187 + ~InParty("Anomen") InMyArea("Anomen") !StateCheck("Anomen",CD_STATE_NOTVALID) Global("c-aran2188","GLOBAL",0)~ + ~[PC] Anomen seems to be handling this better than you are.~ + a2188 + ~InParty("Cernd") InMyArea("Cernd") !StateCheck("Cernd",CD_STATE_NOTVALID) Global("c-aran2189","GLOBAL",0)~ + ~[PC] Cernd seems to be handling this better than you are.~ + a2189 + ~InParty("Yoshimo") InMyArea("Yoshimo") !StateCheck("Yoshimo",CD_STATE_NOTVALID) Global("c-aran2190","GLOBAL",0)~ + ~[PC] Yoshimo seems to be handling this better than you are.~ + a2190 ++ ~[PC] We should be keeping our eyes open and not wasting time with all of this talk, you know.~ + a2052 ++ ~[PC] Unless, of course, you are downwind of a certain Aran Whitehand... at which point the stream of gas is almost constant.~ + a2053 ++ ~[PC] You should stop worrying so much about everything, and concentrate on your duties.~ + a2054 ++ ~[PC] You could help move things along down here if you would actually hit something once in awhile. I thought you were a soldier, not a recruit.~ + a2055 ++ ~[PC] Hey, we can spice things up. Why don't we go find something really disgusting, and slowly torture it to death, just to hear it scream!~ + a2056 END IF ~~ a1687 SAY ~[ARAN] Aye, I be a mite worried about that girl. Girl? Woman? Don't rightly know which to call her, nohow. On th' one hand, she can blow th' crap out o' a fight wi' a well placed spell, but on th' other hand she seems right innocent for a circus follower. This whole underground warren o' evil be th' wrong place for her, for sure.~ ++ ~[PC] You seem to be spending a good deal of time looking over at her.~ + a1695 ++ ~[PC] You let me worry about Aerie. I think you have enough trouble just keeping up with your own problems.~ + a1704 END IF ~~ a1695 SAY ~[ARAN] Look, I'm not about to lie to you. Aerie, she tugs at my heartstrings, an' a bit at my loins too. I'd not be a man if I didn't see her as a might bit attractive.~ IF ~Gender(Player1,MALE)~ DO ~SetGlobal("c-aranaerieud","LOCALS",1)~ GOTO a1696 IF ~Gender(Player1,FEMALE) !Global("c-aranrom","GLOBAL",2)~ DO ~SetGlobal("c-aranaerieud","LOCALS",1)~ GOTO a1697 IF ~Gender(Player1,FEMALE) Global("c-aranrom","GLOBAL",2)~ DO ~SetGlobal("c-aranaerieud","LOCALS",1)~ GOTO a1698 END IF ~~ a1696 SAY ~[ARAN] Man to man, though, an' no offense intended, but she's way too high maintenance for me. I'd not bed her, for fear o' hurtin' her. She don't need no romp. She needs someone what can give her th' support, patience, an' true love what will heal her. Me, I'm not rightly that man. You might be, though...~ IF ~~ THEN EXIT END IF ~~ a1697 SAY ~[ARAN] Friend to friend, though, an' no offense intended, but she's a might too high maintenance for me. I'd not kick her out o' my bedroll if she came callin' lookin' for comfort, but I'm not lookin' to tie myself down for a long term contract. An' I think she probably won't be up for anythin' short of a lifetime commitment.~ ++ ~[PC] Is that what you say about me behind my back, too?~ + a1699 + ~Global("c-aransex","GLOBAL",1)~ + ~[PC] That didn't stop you from having some fun with me, if I recall correctly.~ + a1700 END IF ~~ a1698 SAY ~[ARAN] But <CHARNAME>, no offense intended... I am not sure why you think I'd prefer her over you. You are beautiful, special, an' make me feel... well, you make me feel. Why would I go throw that away on a high maintenance Avariel what needs protectin', comfortin', an' hand-holdin' just to get out o' bed in th' morning? I think I have been pretty clear on what I want. An' that be you.~ IF ~~ THEN EXIT END IF ~~ a1699 SAY ~[ARAN] No way, no how, naught. I know to keep my mouth shut on that subject. Though I do think I probably wouldn't kick you out o' my bedroll if you came a-callin', either.~ ++ ~[PC] Why do I get the feeling that very few women would ever be refused your "comfort"?~ + a1702 ++ ~[PC] How does a rough, ill-mannered, uppity, vagabond sellsword like yourself get away with being so free in his manner with women?~ + a1702 ++ ~[PC] You just don't know where friendly joking ends and rude pushy stupidity begins, do you.~ + a1701 + ~Global("c-aransex","GLOBAL",1)~ + ~[PC] You are so.... so... Why did I ever let you sleep with me?~ + a1700 END IF ~~ a1700 SAY ~[ARAN] Well, now, if I do be recallin' correctly in return, that was mutual attraction. Plus a mite bit o' stress. An' a good deal o' "Oh, gods, Aran, gods...", which do a man's ego a huge boost, it does.~ = ~[ARAN] But wi' you, there is a big difference. Even when you don't know your own mind, you have a presence, a way o' bein' there that be right different than Aerie. Or mayhap... mayhap I think o' you in a completely different way, eh?~ IF ~~ THEN EXIT END IF ~~ a1701 SAY ~[ARAN] You mean to say there be a line between th' two? Heh. That explains why so many women seem to think my cheeks make good slappin' targets.~ IF ~~ THEN EXIT END IF ~~ a1702 SAY ~[ARAN] Well, my mother done taught me right. If a lady needs somethin', don't talk back - just do what she be askin'. Saves a heap o' trouble, it does. Except that time when I done what th' lady asked, only to find out there should have been a mite bit more communication with her husband...~ IF ~~ THEN EXIT END IF ~~ a1703 SAY ~[ARAN] Well, when you put it that way, I suspect you be right.~ IF ~~ THEN EXIT END IF ~~ a1704 SAY ~[ARAN] An' what, pray tell, be my problems?~ ++ ~[PC] Besides always smelling like a badly burned pot of beans or decomposing swamp gas about an hour after eating curry?~ + a1703 ++ ~[PC] You mean in addition to never being able to shut up?~ + a1703 + ~Gender(Player1,FEMALE)~ + ~[PC] Do I have to mention the whole "oh, I just accidentally walked around the bushes and saw you with no clothes on, <CHARNAME>, don't mind me" incident?~ + a1703 + ~Gender(Player2,FEMALE) !Name("c-aran",Player2)~ + ~[PC] Do I have to mention the whole "oh, sorry, <PLAYER3>, don't mind me. I am just checking to see if your bust will fit into this here Drow armor" incident?~ + a1703 + ~Gender(Player3,FEMALE) !Name("c-aran",Player3)~ + ~[PC] Do I have to mention the whole "oh, I just accidentally tripped and grabbed your buttocks, <PLAYER3>, don't mind me" incident?~ + a1703 + ~Gender(Player4,FEMALE) !Name("c-aran",Player4)~ + ~[PC] Do I have to mention the whole "<PLAYER4> might need some help stuffing her bottom into that Drow outfit" incident?~ + a1703 + ~Gender(Player5,FEMALE) !Name("c-aran",Player5)~ + ~[PC] Do I have to mention the whole "<PLAYER5>, just let me tighten that strap for you" incident?~ + a1703 + ~Gender(Player6,FEMALE) !Name("c-aran",Player6) !Name("viconia",Player6)~ + ~[PC] Do I have to mention the whole "<PLAYER6>, you have something on your chest, let me brush it off" incident?~ + a1703 ++ ~[PC] Oh, you don't *have* problems. You just *cause* problems.~ + a1703 ++ ~[PC] Let me see... Swearing at every opportunity, check. Being crude, check. Being offensive, check. Being drunk... check, check, check, and check. Hardly ever picking up the check, check.~ + a1703 END /* SoA UnderDark FriendTalk 3 */ IF ~Global("c-aranfriendud","GLOBAL",5)~ THEN BEGIN a1691 SAY ~[ARAN] So, you doin' anythin' fun tonight? I figure we could use some distraction from all this grimness an' darkness.~ ++ ~[PC] Err... Aran... look around. Do you really think this is a place with a nice corner pub we can go visit?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2045 ++ ~[PC] Actually, I thought I would go for a nice walk. Do you want to come along?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2046 ++ ~[PC] Oh, no you don't. I am not falling for that again. Last time, we ended up in a dice game that cost me dearly.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2047 ++ ~[PC] I think a cooking contest is in order. The secret ingredient will be... fungus!~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2048 + ~RandomNum(3,1)~ + ~[PC] Do I look like I am in the mood for talk of any kind?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1907 /* c-aranshutup1 */ + ~RandomNum(3,2)~ + ~[PC] Do I look like I am in the mood for talk of any kind?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1943 /* c-aranshutup37 */ + ~RandomNum(3,3)~ + ~[PC] Do I look like I am in the mood for talk of any kind?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1911 /* c-aranshutup5 */ + ~InParty("aerie") InMyArea("aerie") Global("c-aranaerieud","LOCALS",0)~ + ~[PC] We should do something to perk up Aerie. She seems to be very upset about being down here.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1687 + ~!Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1672 + ~Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1671 + ~OR(7) Global("c-arankravitchstory","LOCALS",1) Global("c-arancarbonara","LOCALS",1) Global("c-arancalimport","LOCALS",1) Global("c-arangerris","LOCALS",1) Global("c-arandadtrade","LOCALS",1) Global("c-aranfistfight","LOCALS",1) GlobalGT("c-aranmoonfight","LOCALS",0)~ + ~[PC] Hey, Aran, I remember you telling a story... can you tell it to me again?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1673 + ~InParty("CMNIKITA") InMyArea("CMNIKITA") !StateCheck("CMNIKITA",CD_STATE_NOTVALID) Global("c-aran2118","GLOBAL",0)~ + ~[PC] Nikita seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2118 + ~InParty("CMNINAF") InMyArea("CMNINAF") !StateCheck("CMNINAF",CD_STATE_NOTVALID) Global("c-aran2119","GLOBAL",0)~ + ~[PC] Ninafer seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2119 + ~InParty("CORAN") InMyArea("CORAN") !StateCheck("CORAN",CD_STATE_NOTVALID) Global("c-aran2120","GLOBAL",0)~ + ~[PC] Coran seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2120 + ~InParty("D#Silver") InMyArea("D#Silver") !StateCheck("D#Silver",CD_STATE_NOTVALID) Global("c-aran2121","GLOBAL",0)~ + ~[PC] SilverStar seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2121 + ~InParty("D0Alassa") InMyArea("D0Alassa") !StateCheck("D0Alassa",CD_STATE_NOTVALID) Global("c-aran2122","GLOBAL",0)~ + ~[PC] Alassa seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2122 + ~InParty("Rylorn") InMyArea("Rylorn") !StateCheck("Rylorn",CD_STATE_NOTVALID) Global("c-aran2168","GLOBAL",0)~ + ~[PC] Rylorn seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2168 + ~InParty("SAERILETH") InMyArea("SAERILETH") !StateCheck("SAERILETH",CD_STATE_NOTVALID) Global("c-aran2169","GLOBAL",0)~ + ~[PC] Sarileth seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2169 + ~InParty("SIME") InMyArea("SIME") !StateCheck("SIME",CD_STATE_NOTVALID) Global("c-aran2171","GLOBAL",0)~ + ~[PC] Sime seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2171 + ~InParty("SUBRU") InMyArea("SUBRU") !StateCheck("SUBRU",CD_STATE_NOTVALID) Global("c-aran2170","GLOBAL",0)~ + ~[PC] Bruce seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2170 + ~InParty("SK#NEHT") InMyArea("SK#NEHT") !StateCheck("SK#NEHT",CD_STATE_NOTVALID) Global("c-aran2172","GLOBAL",0)~ + ~[PC] Neh'taniel seems to be handling this better than you are.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2172 IF ~HasItemEquiped("LEAT21",Player1) Global("c-arskinarm","LOCALS",0)~ THEN DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ GOTO a1783 IF ~HasItemEquiped("LEAT21",Player1) Global("c-arskinarm","LOCALS",1) GlobalTimerExpired("c-aranskin","GLOBAL")~ THEN DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ GOTO a1784 IF ~HasItemEquiped("LEAT21",Player1) Global("c-arskinarm","LOCALS",2) GlobalTimerExpired("c-aranskin","GLOBAL")~ THEN DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ GOTO a1785 END IF ~~ a1783 SAY ~[ARAN] Hey, your armor be all wrong. I know you be th' scourge o' Faerun, but you don't have to wear your heart on your sleeve, eh? In this case, someone else's, by th' look. Not a great morale boostin' thing, by my account.~ IF ~~ THEN DO ~SetGlobal("c-arskinarm","LOCALS",1) SetGlobalTimer("c-aranskin","GLOBAL",FOUR_DAYS)~ GOTO a1792 END IF ~~ a1792 SAY ~[ARAN] But there be more botherin' me than that bundle o' leathered human skin you be wearin'. There has to be somethin' fun around here to do. I figure we could use some distraction from all this grimness an' darkness.~ ++ ~[PC] Err... Aran... look around. Do you really think this is a place with a nice corner pub we can go visit?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2045 ++ ~[PC] Actually, I thought I would go for a nice walk. Do you want to come along?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2046 ++ ~[PC] Oh, no you don't. I am not falling for that again. Last time, we ended up in a dice game that cost me dearly.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2047 ++ ~[PC] I think a cooking contest is in order. The secret ingredient will be... fungus!~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a2048 + ~RandomNum(3,1)~ + ~[PC] Do I look like I am in the mood for talk of any kind?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1907 /* c-aranshutup1 */ + ~RandomNum(3,2)~ + ~[PC] Do I look like I am in the mood for talk of any kind?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1943 /* c-aranshutup37 */ + ~RandomNum(3,3)~ + ~[PC] Do I look like I am in the mood for talk of any kind?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1911 /* c-aranshutup5 */ + ~InParty("aerie") InMyArea("aerie") Global("c-aranaerieud","LOCALS",0)~ + ~[PC] We should do something to perk up Aerie. She seems to be very upset about being down here.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1687 + ~!Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1672 + ~Class("c-aran",BARD_ALL)~ + ~[PC] Well, take your mind off of it. Tell me a story to distract from all this oppressive darkness.~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1671 + ~OR(7) Global("c-arankravitchstory","LOCALS",1) Global("c-arancarbonara","LOCALS",1) Global("c-arancalimport","LOCALS",1) Global("c-arangerris","LOCALS",1) Global("c-arandadtrade","LOCALS",1) Global("c-aranfistfight","LOCALS",1) GlobalGT("c-aranmoonfight","LOCALS",0)~ + ~[PC] Hey, Aran, I remember you telling a story... can you tell it to me again?~ DO ~SetGlobal("c-aranfriendud","GLOBAL",6) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a1673 END IF ~~ a1784 SAY ~[ARAN] You stll be wearin' that Grumbar-lovin' Cyric-blighted armor? Gives me th' chills, it does.~ ++ ~[PC] If it bothers you that much, I will take it off.~ DO ~SetGlobal("c-arskinarm","LOCALS",2) SetGlobalTimer("c-aranskin","GLOBAL",FOUR_DAYS)~ + a1786 ++ ~[PC] I think it has a great effect on our opponents' morale. You are just going to have to get used to it.~ DO ~SetGlobal("c-arskinarm","LOCALS",2) SetGlobalTimer("c-aranskin","GLOBAL",FOUR_DAYS)~ + a1786 ++ ~[PC] If I wanted you opinion, I would have asked.~ DO ~SetGlobal("c-arskinarm","LOCALS",2) SetGlobalTimer("c-aranskin","GLOBAL",FOUR_DAYS)~ + a1786 ++ ~[PC] Shut up, or your ears will add decoration to it.~ DO ~SetGlobal("c-arskinarm","LOCALS",2) SetGlobalTimer("c-aranskin","GLOBAL",FOUR_DAYS)~ + a1786 END IF ~~ a1785 SAY ~[ARAN] Look, I do a good bit around here, an' I know you be th' leader. I'm just sayin', that armor makes it blighted hard for me to do my job. Th' smell be only part o' it. Shar's Kiss, get rid o' it, eh?~ ++ ~[PC] Or you will run crying like a weakling child, break your contract, and leave?~ DO ~SetGlobal("c-arskinarm","LOCALS",3)~ + a1787 ++ ~[PC] Shut up, Aran. I heard you the first two times. I will use what tools I see fit to advance my goals.~ DO ~SetGlobal("c-arskinarm","LOCALS",3)~ + a1787 ++ ~[PC] Are you volunteering to add more skin to this armor? Speak again, and I will consider you have volunteered.~ DO ~SetGlobal("c-arskinarm","LOCALS",3)~ + a1787 ++ ~[PC] I may very well take it off. You are useful. But then again, I might put it back on. You will have to get used to it, or leave.~ DO ~SetGlobal("c-arskinarm","LOCALS",3)~ + a1787 ++ ~[PC] You do very little, and I am tired of your whining. That is the lasty warning you will get.~ DO ~SetGlobal("c-arskinarm","LOCALS",3)~ + a1787 END IF ~~ a1786 SAY ~[ARAN] Hey, I don't go around second guessin' you. So if I be sayin' it, you know there be one hells of a lot more people who have noticed. Might fit your ideas, but it be bad tactics to give away your position that way.~ IF ~~ THEN GOTO a1792 END IF ~~ a1787 SAY ~[ARAN] Cyric's Black Heart, I don't run out on contracts. But you smell worse than a charnelhouse. If I throw up, you will be knowin' why.~ IF ~~ THEN GOTO a1792 END IF ~~ a2045 SAY ~[ARAN] You have a good point there. Th' only pub I might find around here probably serves our blood up as an appetizer, an' our fingers an' toes as side dishes.~ + ~InParty("IYLOS") InMyArea("IYLOS") !StateCheck("IYLOS",CD_STATE_NOTVALID) Global("c-aran2133","GLOBAL",0)~ + ~[PC] Ilyos seems to be handling this better than you are.~ + a2133 + ~InParty("xulaye") InMyArea("xulaye") !StateCheck("xulaye",CD_STATE_NOTVALID) Global("c-aran2134","GLOBAL",0)~ + ~[PC] Xulae seems to be handling this better than you are.~ + a2134 + ~InParty("YASRAENA") InMyArea("YASRAENA") !StateCheck("YASRAENA",CD_STATE_NOTVALID) Global("c-aran2135","GLOBAL",0)~ + ~[PC] Yasraena seems to be handling this better than you are.~ + a2135 + ~InParty("ZAIYA") InMyArea("ZAIYA") !StateCheck("ZAIYA",CD_STATE_NOTVALID) Global("c-aran2136","GLOBAL",0)~ + ~[PC] Zaia seems to be handling this better than you are.~ + a2136 + ~InParty("J#Kelsey") InMyArea("J#Kelsey") !StateCheck("J#Kelsey",CD_STATE_NOTVALID) Global("c-aran2137","GLOBAL",0)~ + ~[PC] Kelsey seems to be handling this better than you are.~ + a2137 + ~InParty("O#XAN") InMyArea("O#XAN") !StateCheck("O#XAN",CD_STATE_NOTVALID) Global("c-aran2163","GLOBAL",0)~ + ~[PC] Xan seems to be handling this better than you are.~ + a2163 + ~InParty("P#DEHER") InMyArea("P#DEHER") !StateCheck("P#DEHER",CD_STATE_NOTVALID) Global("c-aran2164","GLOBAL",0)~ + ~[PC] Xan seems to be handling this better than you are.~ + a2164 + ~InParty("P#KIVAN") InMyArea("P#KIVAN") !StateCheck("P#KIVAN",CD_STATE_NOTVALID) Global("c-aran2165","GLOBAL",0)~ + ~[PC] Kivan seems to be handling this better than you are.~ + a2165 + ~InParty("R#ALLIS") InMyArea("R#ALLIS") !StateCheck("R#ALLIS",CD_STATE_NOTVALID) Global("c-aran2166","GLOBAL",0)~ + ~[PC] Allison seems to be handling this better than you are.~ + a2166 + ~InParty("R#Kitanya") InMyArea("R#Kitanya") !StateCheck("R#Kitanya",CD_STATE_NOTVALID) Global("c-aran2167","GLOBAL",0)~ + ~[PC] Kitanya seems to be handling this better than you are.~ + a2167 + ~InParty("Minsc") InMyArea("Minsc") !StateCheck("Minsc",CD_STATE_NOTVALID) Global("c-aran2176","GLOBAL",0)~ + ~[PC] Minsc seems to be handling this better than you are.~ + a2176 + ~InParty("Korgan") InMyArea("Korgan") !StateCheck("Korgan",CD_STATE_NOTVALID) Global("c-aran2177","GLOBAL",0)~ + ~[PC] Korgan seems to be handling this better than you are.~ + a2177 + ~InParty("Keldorn") InMyArea("Keldorn") !StateCheck("Keldorn",CD_STATE_NOTVALID) Global("c-aran2178","GLOBAL",0)~ + ~[PC] Keldorn seems to be handling this better than you are.~ + a2178 + ~InParty("Valygar") InMyArea("Valygar") !StateCheck("Valygar",CD_STATE_NOTVALID) Global("c-aran2179","GLOBAL",0)~ + ~[PC] Valygar seems to be handling this better than you are.~ + a2179 + ~InParty("Viconia") InMyArea("Viconia") !StateCheck("Viconia",CD_STATE_NOTVALID) Global("c-aran2180","GLOBAL",0)~ + ~[PC] Viconia seems to be handling this better than you are.~ + a2180 + ~InParty("Nalia") InMyArea("Nalia") !StateCheck("Nalia",CD_STATE_NOTVALID) Global("c-aran2181","GLOBAL",0)~ + ~[PC] Nalia seems to be handling this better than you are.~ + a2181 + ~InParty("Mazzy") InMyArea("Mazzy") !StateCheck("Mazzy",CD_STATE_NOTVALID) Global("c-aran2182","GLOBAL",0)~ + ~[PC] Mazzy seems to be handling this better than you are.~ + a2182 + ~InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID) Global("c-aran2183","GLOBAL",0)~ + ~[PC] Jaheira seems to be handling this better than you are.~ + a2183 + ~InParty("Jan") InMyArea("Jan") !StateCheck("Jan",CD_STATE_NOTVALID) Global("c-aran2184","GLOBAL",0)~ + ~[PC] Jan seems to be handling this better than you are.~ + a2184 + ~InParty("Imoen2") InMyArea("Imoen2") !StateCheck("Imoen2",CD_STATE_NOTVALID) Global("c-aran2185","GLOBAL",0)~ + ~[PC] Imoen seems to be handling this better than you are.~ + a2185 + ~InParty("HaerDalis") InMyArea("HaerDalis") !StateCheck("HaerDalis",CD_STATE_NOTVALID) Global("c-aran2186","GLOBAL",0)~ + ~[PC] HaerDalis seems to be handling this better than you are.~ + a2186 + ~InParty("Edwin") InMyArea("Edwin") !StateCheck("Edwin",CD_STATE_NOTVALID) Global("c-aran2187","GLOBAL",0)~ + ~[PC] Edwin seems to be handling this better than you are.~ + a2187 + ~InParty("Anomen") InMyArea("Anomen") !StateCheck("Anomen",CD_STATE_NOTVALID) Global("c-aran2188","GLOBAL",0)~ + ~[PC] Anomen seems to be handling this better than you are.~ + a2188 + ~InParty("Cernd") InMyArea("Cernd") !StateCheck("Cernd",CD_STATE_NOTVALID) Global("c-aran2189","GLOBAL",0)~ + ~[PC] Cernd seems to be handling this better than you are.~ + a2189 + ~InParty("Yoshimo") InMyArea("Yoshimo") !StateCheck("Yoshimo",CD_STATE_NOTVALID) Global("c-aran2190","GLOBAL",0)~ + ~[PC] Yoshimo seems to be handling this better than you are.~ + a2190 ++ ~[PC] We should be keeping our eyes open and not wasting time with all of this talk, you know.~ + a2052 ++ ~[PC] I'll take a side order of Aran Toes, but go light on the fungus.~ + a2053 ++ ~[PC] I think you are doing well, Aran. You should stop worrying so much.~ + a2054 ++ ~[PC] You could help move things along down here if you would actually hit something once in awhile. I thought you were a soldier, not a recruit.~ + a2055 ++ ~[PC] Hey, we can spice things up. Why don't we go fid something really disgusting, and slowly torture it to death, just to hear it scream!~ + a2056 END
  20. Background The Crossmod Banter Pack (CBP) was started to provide a central clearinghouse for banters which take place between two or more mod-created NPCs, allowing interaction between said NPCs without tying the content to one NPC mod or the other, or requiring one NPC mod to be installed in a certain sequence relative to another NPC mod. One of its organizational features is that it requires express consent be given by the authors of all involved NPCs before it will publish any new content. That feature is the subject of this position paper. Position I have long opposed that organizational feature on the grounds that it affords a special status to mod content above and beyond that granted to core game content. Few, if any, modders have expressly sought the permission and approval of Bioware before publishing mods which augment or change core game content. The idea that a modder is deserving of greater consideration is distasteful to me and I can find no sensible moral basis for it. My stance is that content is content, and all is fair game. Furthermore, I assert that the "mutual consent" system demonstrably produces banters in both limited quantity and limited quality. Some modders choose not to participate for fear of their characters being compromised, some (myself included) have distanced themselves out of reluctance to lend credibility to the "permission" system at all. And the depth and interest of the subject matter explored in "approved" banters has tended to be limited--many reduced to glorified pattycake sessions between two characters whose authors were afraid to dig deep for fear of alienating one another. Recent Silliness Relatively fresh from his latest momentous return to modding, Moongaze (known now as "Moongaze II: The Richard Donner Cut") attempted to withdraw permission for NPCs and crossmod banters already in the pack, stating as his reason his contempt for one of the CBP maintainers. To their credit, the CBP maintainers swiftly denied his request. However, the episode was rather embarrassing and put in sharp contrast the weakness of the "permission" system--it can be based on as little as spite. Despite the fact that nothing actually happened, I assert that this put the nail in the coffin of the "permission" system, which has not generated a terribly inspiring body of work in the years it has been in operation. When I Say "Freeze", I Do Not Mean "This Is a Stickup!" I propose, therefore, that development of CBP be immediately frozen. Mothballed. Suspended. No new submissions be accepted for it and no new editions be published except in the highly unlikely event that a bugfix be made. Its maintainers would direct authors interested in creating crossmod content to an alternate venue. They may see fit to create it, or use one of the existing banter-related mods if appropriate. Such a venue would have a strong, theoretically detached editor or editors whose goal would not be to protect anybody's feelings about a particular character or characters, but to aid submitting authors in refining their content, as needed, to produce more interesting and engaging content. They would reject or suggest changes to something which is pointless, disjointed, far too verbose, wildly out of character, etc. etc. "But, Crockpot, aren't you just replacing the approval of the second mod's author with the approval of this uber-editor?" you ask. The major difference in my mind is that "single writer plus theoretically detached editor" is far more likely to turn out something of substantial interest than "two authors hesitantly feeling each other out for stuff each will let the other get away with in a banter." "But, Crampart, I don't believe there is any such thing as a detached editor in our contentious little circle. I certainly wouldn't trust you to edit my NPC's words!" you say. Perhaps not. I still suspect that even a modestly flawed editor in the single-author system would produce better content than the current "permission" system does. It would also make it far more realistic for a third party (one not involved in the creation of any mod NPC) to develop intriguing content for the NPCs, as they would be free from the requirement of seeking out both/all mod NPC authors involved. Between the wider talent pool and the emphasis on quality, rather than permissibility, I suspect players will be far better served.
×