Morrowind Construction Set Faction Dialog Tutorial
See our other construction set tutorials

Created for 1024x768

Dave Foster's Morrowind Construction Set Tutorials

The Elder Scrolls III : Morrowind Construction Set Faction Dialog Tutorial

Page updated 25th March, 2010

After seeing how popular the construction set tutorials have been from the number of emails I have received and the number of messages on the newbie tutorial page, I have decided to create a blog where I can answer your questions in full and where other modders can provide feedback on how they are progressing. This blog is called the Morrowind and Oblivion Blog. If you feel that you need help with a more personal touch, then why not try posting your questions, suggestions and useful tips in the open post that I have called 'Please use this post for CS help and general chitchat'. I would like to hear your problems and ideas, so come along and check out the blog. Dave.

This is the follow-on tutorial from the Faction Tutorial. It takes you a further step in the direction of faction creation by the inclusion of faction dialog for joining and experiencing faction membership. This will be the first dialog tutorial in the set, which will eventually describe the processes of creating dialong for such things as quest creation and general dialog topics.

This tutorial will describe in detail the processes involved in creating descriptive and meaningful conversations within Morrowind. You will learn how to create new topics and how to introduce the player to these topics via greetings. You will also learn how to use the info/response mechanism, the speaker conditions and the results returned from the topic dialog.

The Elder Scrolls Morrowind CS Tutorial
  • Step 1

Open up the CS and arrange it to suit your needs. Go to the Main Menu|Character|Dialog entry to open up the Dialog screen. Look at the image above and you will see the sections of the Dialog screen marked in red. These sections are as follows:

1. Topics/Greetings with the topic filter selection tool at the bottom.
2. Info/Response section
3. The dialog as highlighted in the Info/Response section
4. The Speaker Conditions section including the Function/Variable
5. The Result section

So, what are all these sections, and how do you use them? Well, section 1 consists of the set of Tabs that give access to the Topics, the Greetings, the Journal and a couple of others that we will not use here. The topics are the items that you find in-game in Morrowind when you speak to someone eg. My Background. The Greetings are the first thing an NPC says to the player. The Journal holds the quest sequence information i.e. each quest is listed with its sequence number together with information relating to that quest.

Section 2 contains the info/response, which is the dialog associated with the topic. You will select a line in this section and begin typing in the info column. When finished this text will be shown in section 3. As section 3 mirrors what you have typed in the info column, the other colums are a mirror of values set in the Speaker Conditions section 4.

Section 5 is the Result section. It holds values that are going to be passed back to the executable program. These results are such things as setting a journal entry, or modding an NPC's disposition towards the player, or giving the player an item or gold.

  • Step 2

So, now we've gone through the basic screen, it's time to take a look at the text in the image above in order to gain some insight into how the various sections tie-in with each other.

Notice how we have selected the line at the bottom of the Info/Response column. That's because the dialog always flows from bottom to top i.e. the earlier dialog is at the bottom with the later dialog at the top. Let's take a closer look at this first line of dialog for the topic 'join the Red Hand'. This dialog is between the player and Throndar, the warlord leader of the Northlands. It is the dialog that introduces the player to the task of joining the Red Hand faction to spy on his brother, Sorondar. As you can see, all the dialog is shown in full in section 3. This is Throndar's dialog, and this is implemented by changing the text in the Speaker Condition - ID field, which is a drop-down box of all NPC's in the game. You will see that we have identified Throndar with the alias 'fkoa_throndar'. It is important to give NPC's a unique id, and I do this by tagging the name with fkoa_. All my NPC's are named in this way. It makes listing your NPC's much easier, since all characaters begining with the tag are listed one after the other in sequence. Otherwise, you would find that you would lose your NPC in the horde of other NPC's created by the system. As soon as you have created an ID in the combo box, that name appears in the ID column of section 2.

By putting Throndar in the ID column this effectively makes him the owner of this line of dialog. But, there are others that can be given dialog, and not just a single person. There are further drop-downs that allow you to create dialog associated with various groups of people in Morrowind e.g. Race, Class, Faction and Rank. Should you wish to include a line of dialog that is spoken by all NPC's that are a particular race, such as Dark Elf or Breton, then you would leave the ID box blank and put the name of the race into the Race box. Thus, when you met someone that was a dark elf, he would have the dialog topic in his list. Equally, putting a name in the Cell box would give the topic to all NPC's within that cell.

PC Faction and PC Rank are further drop-downs for specifying the faction and rank of the PC. Should the PC be in a particular faction, then putting the player's faction in the PC Faction field will result in the player receiving the conversation that relates to that faction i.e. the NPC will have the faction topic in his list. The same holds true for PC Rank.

Sex and Disposition can also determine whether an NPC will have a topic for the player. Use the appropriate boxes for this. The Dispostion is the minimum disposition that the player must have before the NPC will reveal his topic. If the player does not meet this minimum disposition then the NPC will not talk to the player about the subject. This allows you, the game developer, to decide how much favour the player must earn with an NPC, or group of NPC's, before they will deign to talk to you about a particular topic in their repertoire. If your disposition is too low, or if you are male rather than female, then the NPC will not show this topic in the dialog pane of Morrowind.

  • Step 3

The Function/Variable section of the Speaker Conditions is where most of the decision making process takes place. There are four columns that allow up to six decisions to be made for this piece of dialog. The first column relates to the various system variables such as Function, or Journal etc. By setting this column to one of the pre-defined functions, you are stating that values in the following columns directly relate to this function. Thus, if you set column 1 to 'Journal', you are stating that column 2 will hold the name of a valid Journal Entry as displayed on the Journal tab in section 1. We will describe the journal entries later.

Columns 3 and 4 will state the values of this journal entry. Column 3 is the equality selector and column 4 is the value. Other functions include Global, Local and Item. This means that the conversation will be given should a global or local value be set or not set to a particular value. Or, an item may or may not be in the possession of the player etc.

All the Function/Variable conditions must be met before the NPC will make this particular topic of conversation available to the player.

  • Step 4

If the player speaks to an NPC in the game, and the NPC has a topic of conversation that the player initiates, then there will be some kind of result set in the game. This result can take many forms. It can be a result that gives the player an item, or gives the player some disposition with this NPC. Or it can set a Journal Entry, or it can result in a choice being given to the player. The choice function allows for multi-part dialog to be initiated, whereby a number of choices pop-up in the conversation window. The player selects one of these choices, and the dialog continues onto the relevant line higher up the grid. To give the set of choices to the player, you, the game author, will provide choice lines in the result box.

Let's take a look at the Choice line that is 8 lines up from the bottom. The player is speaking to the NPC called Bjarrn, and the line of dialog given by Bjarrn, assuming the Journal function condition is met, is :

'So, %PCRace, tell me who sent ye and maybe a can tell ye what you want to know?'.

The Choice is a follows:

choice "Tell him a little racer sent you" 1 "Say never mind" 2

This means that if you select the first choice, then you will get the next part of the conversation, which is :

'I see, in that case, a'd need to know a can trust ye first.....'. This is two lines up.

If you made the second choice "Say never mind", that would result in the line of dialog one line up, which is this:

'Right, that's enough, get lost, I don't appreciate bein' messed about.'

And that choice will result in a loss of disposition with Bjarrn:

modDisposition -10

The correct choice will give the required result:

Journal "FKOA_Red_Hand" 20

This sets the journal for joining the Red Hand to 20, and you then get a quest from Bjarrn that will show your willingness to work for your place in the faction.

Just a note on the Disp/Index on this line of dialog : 'So, %PCRace, tell me who sent ye..'. Bjarrn's disposition is set to 80, which means he needs a disposition of 80 before he'll say this line of dialog. If you think you need more disposition with an NPC then it might be worth trying to bribe him a few times.

The Elder Scrolls Morrowind CS Tutorial

  • Step 5

So, let's move forward now to the point at which you've impressed a Red Hand member, done a few things for the Hand, and now you want to join the faction for real. Take a look at the screenshot below. You've just approached Karssjon, the faction recruitment guy, and asked to join the Hand. His reply is on the highlighted line. Let's look at the Function/Variable values for this line of dialog.

The Elder Scrolls Morrowind CS Tutorial

First, you are getting the cold shoulder, since Karssjon does not believe that you meet the requirements for now. Take a look at the first Function/Variable : Rank Requirement lt 3. Now, remember the Faction Tutorial and how the first rank in The Red Hand is the Bruiser. To get accepted in as this rank you must meet the minimum requirements of Strength 10 and Agility 10. This is the Rank Requirement. When you achieve the minimum requirements you will have a Rank Requirement value equal to 3, and you can then be inducted into the faction. Note also that there are two other requiremtments to be met, viz. the journal entries for the two Red Hand entries. You must have completed these quests up to the stages shown.

Take a look at the line above that says

'I got the message there was a new kid around..'.

You get to see this line of dialog when you meet the minimum requirements. This line results in a series of four choices that may, or may not, result in you being give a final quest to prove yourself worthy. The final choice is the line that starts with

'Steady on lad, ye've got guts..'.

This is where you get a quest to take a letter to Makku in the Ogrim's Spine. Once you have successfully completed this quest, reporting back to Karssjon will give you a line of dialog that says

'Well, ye've passed the test %PCName. I'll sign ye up right away..'

Now, look at the line above. This is the line where you're inducted into The Red Hand. See the image below.

Take note of the results that we set for this line of dialog:

Journal "FKOA_Join_Red_Hand" 30
PCRaiseRank
ModDisposition 5
set redhandreputation to redhandreputation + 3
Note particularly, the line that says PCRaiseRank. This is how the player becomes the first rank within the faction - a Bruiser. Later, you will see that by doing quests for the faction members, you will gain experience and, with that, further rank increases by asking the recruitment guy for 'Advancement'.



The Elder Scrolls Morrowind CS Tutorial

  • Step 6 Greetings

So, we've got to the stage where the player has been enlisted into the Red Hand faction. We'll now take a short break from the faction side of things to take a look at the other two tabs in section 1 that I spoke about - the Journal and Greetings.

The Journal and Greetings are not necessarily related to the job of joining a faction, but they are essential for introducing faction dialog and completing faction quests. Take a look at the Greetings tab in the image below.

The Elder Scrolls Morrowind CS Tutorial

Notice in the left column that there are ten lines of greetings. Each greeting is put into one of ten categories by the original game, but it doesn't really matter where your mod's greetings go. I chose to put all my greetings into section 1 in order to make debugging easier. You may wish to investigate the categorisation of greetings further, then decide where to put your own greetings. As with the topics, greetings go from bottom to top, and you will see that I have selected my first greeting in the info/response window. All the greetings above this line are associated with the Five Keys mod.

Let's take a little sidetrack here...you may be wondering to yourself about the order for the dialog - being from bottom to top. Well, the reason is the Morrowind executable parses the mod file from top to bottom. In fact, for the greetings section it parses the greeting categories from top to bottom, and the dialog within each category from top to bottom. So now you see why I put my greetings in section 1 - because the executable will find my dialog lines quicker than if they were at the bottom in section 9.

The parsing machanism is looking for the next line of dialog to be presented to the player based on the executable's local store of variables. It needs to find a matching line for it's set of variables, and it does this by examining each line of dialog from top to bottom looking for a set of conditions that match the variables e.g. say, the name of the NPC that needs the dialog is Bjarrn, and the quest id fkoa_find_bjarrns_axe. The local variable for the Journal Entry is currently set at 0, which indicates the start of the quest. So, the parser must find a line of dialog where the speaker is Bjarrn, and where the condition is fkoa_find_bjarrns_axe=0. There will be just one line of dialog that meets this requirement. When the parser finds the line, it will return the dialog text to the executable, which will print it on the screen.

You need to be extra careful with the order of dialog so as to ensure you do not create a section that allows part of a quest to be skipped. Skipping parts of quests, or even complete quests will not necessarily result in a broken game. But consider, one particular quest might deliver an artifact or quest item to the player, and this item could very well be vital to completing the game. You need to read your dialog lines from top to bottom, like the parser, and ensure that a line is not read out of sequence. You need to check and double check your lines of dialog that relate to vital game quests.

  • Step 7

Let's get back to the greetings. The highlighted line is the greeting that Lord Vivec gives to the player on starting the Five Keys quest (ID = vivec_god) AND (FKOA_Main_Quest = 0). Once given this greeting from Lord Vivec, you will always get this greeting from him until the game variables have been set to different values. In other words, the FKOA_Main_Quest value has been set to something other than 0 i.e. the beginning of the next stage of the quest.

So, the player talks to Lord Vivec and he gives you the line

Greetings again Protector of Morrowind. I presume you have returned...

In game you would then choose the Five Keys topic and get the quest details. That topic would set it's result value to be the next stage of the FKOA_Main_Quest e.g. 10. Now, when you initiate a conversation with Lord Vivec you will see the relevant greeting, one line above..

Greetings again Protector of Morrowind. I trust your endeavours...

Take a look at that line in the CS. You will see that the condition for that line is

(ID = vivec_god) AND (FKOA_Main_Quest > 0).

The most difficult part of building a quest mod is getting the Greetings and Topics to interweave correctly. They are both in their own sections on different tabs, but they must co-operate with each other perfectly, otherwise the greeting you get will not relate to the quest topic that you are about to start - and that is very distracting to the player.

  • Step 8 Journal

Now, let's look at the Journal tab. Take a look at the image below which shows the Five Keys main quest selected in the left hand column, and the first line of this quest at the top of the right-hand pane. Note, the Journal Entries always appear on this page in top-to-bottome order - just to confuse you :). I always put the name of the quest on line 1 of the right hand pane, then number the rest of stages in increments of 10 e.g. 10,20,30 etc. This allows you to go back later and put stages into the quest sequence that you might have forgotten about by using the itermediate values.

The Elder Scrolls Morrowind CS Tutorial

None of the conditions in this screen, which is similar to the Topics screen, are used for Journals. The only bits that are used here are the full line of dialog and the boxes at right-top above the Function/Variable. These boxes are Quest Name, Finish, Restart and Index. Line 1 has the Quest Name box ticked. The Index is the value you see in the disp/index column, and indicates the stage number. The Finished box is ticked for the last stage of the quest.

That's all I'm going to say about the Journal screen. It's quite simple and straightforward, and you will get the hang of it very quickly.

  • Step 9

We'll now continue to work our way through the faction process.

We'll look at common examples of faction dialog to see how to handle each aspect of managing a faction. Take a look at the screen below - it's a cut down version of the original. This example shows how to handle a 'join faction' request when the player is already a member of that faction.

But, how do we test for membership? We use the Function called 'Same Faction', then test to see if the condition is true. Thus

Function Same Faction = 1

The Speaker Condition->Faction must be the name of the faction i.e. fkoa_red_hand. The resulting line of dialog delivered to the player is

Yer already a member o' The Red Hand, %PCName.

Notice the %PCName. This notation beginning with a % sign is how we print the player's name on the screen. There are lots of these shortcuts e.g %NextPCRank indicates the next rank in the faction - Brawler, which follows Bruiser.

The Elder Scrolls Morrowind CS Tutorial

What about when the player gets expelled from the guild? Take a look at the image below. Faction is fkoa_red_hand. Rank is Slayer, because only members of rank Slayer or above can expel, clear or induct new members. The Function/Variable is PC Expelled, and this must be equal to 1 which indicates True, the member has been expelled. If all these conditions are met, then the player receives this line of dialog when he asks to rejoin

Ye've been expelled from the Red Hand....Do you wish to clear yer name?

Notice that there is a result here for the players response 'clearing' his name. It's a choice

choice "Yes I do" 1 "No. Why should I?" 2

Look at the two choice lines above this line which show the dialog returned by choices 1 and 2. Choice 1 gets the player re-instated, and the result is the code that does it

PCClearExpelled

This clears the 'PC Expelled' flag, re-instating the player.

Should the player be expelled a second time, then he will not be re-instated. This is achieved by setting-up a global variable called 'expfkoa_red_hand' at the start of the game. When the player is expelled a second time the system sets this flag to a value of 1 meaning the player is permanently banned. Please note that the global I set up is wrong - expRedHand. It must be in the form expNAMEOFFACTION.

The Elder Scrolls Morrowind CS Tutorial

  • Step 10

Finally, Advancement within any of the factions in Morrowind is achieved by setting lines of dialog under the topic 'Advancement'. The Red Hand faction can appear anywhere within this section, but all lines must be together in a block. I will summarize the options here:

Congratulations pal, the Red Hand recognises %PCName as %PCName, the %NextPCRank.
Faction: fkoa_red_hand, Rank:slayer, PCFaction:fkoa_red_hand, Function:Rank Requirement=3
Result: PCRaiseRank "fkoa_red_hand"

Yer devotion tae the Red Hand is notable but you still need more experience. Increase yer trainin' and practice your skills to become %PCName the %NextPCRank.
Faction: fkoa_red_hand, Rank:slayer, PCFaction:fkoa_red_hand, Function:Rank Requirement=2

We think yer well talented %PCName but some o' the lads question yer loyalty. Carry on wi' yer duties an there'll come a time when you earn your place.
Faction: fkoa_red_hand, Rank:slayer, PCFaction:fkoa_red_hand, Function:Rank Requirement=1

Nae, yer not ready yet. Perform more duties and practice your skills before ye ask again.
Faction: fkoa_red_hand, Rank:slayer, PCFaction:fkoa_red_hand, Function:Rank Requirement=0

I can't advance you anymore, %PCRank. If ye wanna go further ye'll need tae talk with Sorondar himself.
Faction: fkoa_red_hand, Rank:slayer, PCFaction:fkoa_red_hand, PC Rank:slayer

Well, %PCName, a never thought ye'd make it this far, but ye have. Ye deserve more for all the effort ye've put in, so a'm promoting ye te %NextPCRank. Well done.
Faction: fkoa_red_hand, Rank:Thunderbane, PCFaction:fkoa_red_hand, Function:Rank Requirement=3
Result: PCRaiseRank "fkoa_red_hand"

Nae, yer not ready yet. Ye need te get a bit more experience before a can promote ye. Keep up the good work, an' am sure ye'll get there eventually.
Faction: fkoa_red_hand, Rank:Thunderbane, PCFaction:fkoa_red_hand, Function:Rank Requirement<3, PC Rank:slayer

So ye want advancement %PCRank? There's not much further ye can go unless yer plannin' on taking my job! Have a think about it and we'll discuss it later. For now though, I have some orders for ye.
ID: fkoa_sorondar, Faction: fkoa_red_hand, PCFaction:fkoa_red_hand, PC Rank: Mighty slayer

But yer the Thunderbane %PCName. There's none higher in this brotherhood?
Faction: fkoa_red_hand, Rank:slayer, PCFaction:fkoa_red_hand, PC Rank:Thunderbane

Ye've broken all the brother's rules of the Red Hand. Make amends or ye'll never make another rank in the Hand.
Faction: fkoa_red_hand, Rank:slayer, Function:PC Expelled=1

What yer goin' on about %PCRace? What advancement? Sounds like ye've lost it pal.
Faction: fkoa_red_hand, Rank:slayer, Function:Same Faction=0

The Elder Scrolls Morrowind CS Tutorial

This concludes the fation tutorial.

  • Conclusion

In this tutorial, you have learnt how to use the Dialog creation screen to create dialog for an existing faction. See Tutorial 5 for creating the faction from scratch. Each facet of faction membership has been discussed - joining, getting expelled, re-joining, permanent expulsion, advancement.

Here's an updated version of the keyboard shortcuts that you have learnt so far.

  • Keyboard Shortcuts


    • Up, Down, Left, Right------------------- Landscape Editor - move to cell
      H --------------------------------------------- Landscape Editor
      B --------------------------------------------- Borders
      T --------------------------------------------- Zoom to Top View
      C --------------------------------------------- Zoom to Ground Level View
      LShift/Mouse ------------------------------ Move object/s around
      MouseWheel/Move mouse ---------- Move your viewpoint or zoom-in/zoom-out
      Z/LeftMouse ------------------------------- Move object up/down
      CTRL-C, CTRL_V and CTRL-X ------ Copy, Paste, Cut

    In the next tutorial we'll tackle further dialog topics in the Morrowind Construction Set, including quest creation and greetings.

    You can contact me here if you wish to make any comments or suggestions for further tutorials. Or try the Morrowind-Oblivion Forum. I'm always on-hand to answer your questions.



    Here are the other Morrowind Construction Set Tutorials :

    Morrowind House Mod Tutorial 1

    Morrowind House Mod Tutorial 2

    Morrowind House Mod Tutorial 3 & NPC Tutorial

    Morrowind Landscape & Region Tutorial

    Morrowind Faction Tutorial

    You can find the Oblivion Tutorials here :

    Oblivion Quest Tutorial

    Oblivion Scenery Tutorial

    Oblivion House Mod Tutorial

    Site is hosted on Streamline.net. Unlimited Web space / Unlimited Bandwidth / 10 domains /10 MySql Db per domain - All for just £99.99 a year..