Difference between revisions of "Dialogue Tutorial"

Jump to navigation Jump to search
17 bytes removed ,  00:19, 30 March 2008
m
no edit summary
imported>Elessar VPR
(adding category)
imported>Nixlplix
m
Line 10: Line 10:




When the window opens you will notice a few things. First is the list of tabs across the top. By default the quest window opens at the Quest Data tab, here is where you set the priorities, name and conditions for your quest, which we will come to shortly. The other thing you will notice is the long list on the left hand side. This is a list of all the quests in the game, some are simply used for holding references for other things, many are the various quests in the game and some are the generic dialogue.
When the window opens you will notice a few things. First is the list of tabs across the top. By default the quest window opens at the Quest Data tab. Here is where you set the priorities, name and conditions for your quest, which we will come to shortly. The other thing you will notice is the long list on the left-hand side. This is a list of all the quests in the game, some are simply used for holding references for other things, many are the various quests in the game and some are the generic dialogue.




Line 19: Line 19:




Also before we go much farther, save! (doing so regularly is a good idea)
Also before we go much farther, save! Doing so regularly is a good idea.


==The Quest Begins==
==The Quest Begins==
Line 27: Line 27:




Once that's done, you need to set the priority of the quest. This tells the game how important your dialogue is compared to the other stuff in the game. Quests with a high priority have precedence over quests with lower priorities. For example, the greetings that NPCs give you if you are a wanted criminal and those for the main quest are very high and as such will be used over most other quests. Generic greetings and such like are low priority and so are only usually said if nothing else applies. For an idea of what priorities quests have [[Quest_Data_Tab|see here]]. I suggest a value of 75 to be about right for most things.
Once that's done, you need to set the priority of the quest. This tells the game how important your dialogue is compared to the other stuff in the game. Quests with a high priority have precedence over quests with lower priorities. For example, the greetings that NPCs give you if you are a wanted criminal and those for the main quest are very high and as such will be used over most other quests. Generic greetings and such are low priority and so are only usually said if nothing else applies. For an idea of what priorities quests have [[Quest_Data_Tab|see here]]. I suggest a value of 75 to be about right for most things.




Once that's done you may notice the Script drop down menu. This is for associating scripts with a quest, that will run when the quest is running. The other major feature is the white box grid. This is for general conditions that apply to each line of dialogue within the selected quest. Bethesda seems to add the same condition to each of it's quests so we'll do that now. Either right click on the white grid and select new, or click on the new button. You'll see a new condition appear. The one we are interested in is called '''GetIsPlayableRace'''. To change it select the new condition then in the drop down menu in the bottom of the grid find the relevant condition.  
Once that's done you may notice the Script drop-down menu. This is for associating scripts with a quest that will run when the quest is running. The other major feature is the white box grid. This is for general conditions that apply to each line of dialogue within the selected quest. Bethesda seems to add the same condition to each of its quests so we'll do that now. Either right click on the white grid and select new, or click on the new button. You'll see a new condition appear. The one we are interested in is called '''GetIsPlayableRace'''. To change it select the new condition then in the drop down menu in the bottom of the grid find the relevant condition.  




Line 73: Line 73:


===A new topic of conversation!===
===A new topic of conversation!===
Now we have the NPC greeting sorted, but what about other lines and topics we want to speak to them about? For that we need to create a new topic. To do this go back to the Add Topic window (where you found GREETING), then right click in there and select new. Name your topic (I'll use MObFGAboutCrabs), select it and hit OK and we have a nice new topic. Now, let's add a few bits of info in there, eg. say we have a topics about 'Mudcrabs' you could have one line saying how they had some for dinner earlier and another about how irritating they are when you are sunbathing on the beach.  
Now we have the NPC greeting sorted, but what about other lines and topics we want to speak to them about? For that we need to create a new topic. To do this go back to the Add Topic window (where you found GREETING), then right click in there and select new. Name your topic (I'll use MObFGAboutCrabs), select it and hit OK and we have a nice new topic. Now, let's add a few bits of info in there, eg. say we have a topic about 'Mudcrabs' you could have one line saying how they had some for dinner earlier and another about how irritating they are when you are sunbathing on the beach.  
[[Image:DialogTute-New_topics.jpg|thumb|right|Making our new topic]]
[[Image:DialogTute-New_topics.jpg|thumb|right|Making our new topic]]




Now we have two different lines for the topic, but which one will the NPC say? First of all let's ensure that only the NPC we want says the lines, so add the ''GetIsID'' condition to both lines. Now, when determining which line to play, the game starts at the top of the list of info lines and proceeds done until it finds one that satisfies current conditions (If a topic has no lines in it that have all their conditions met, then the topic will not appear in the list of options presented to the player.) In this case, only the top line will ever play, however, we can change that. In the 'Response Details' section of the tab, you will notice a column of checkboxes. The ones we are interested in at the moment are the ones to do with random (i.e. 'Random' and 'Random End'). If you check the random flag on a line of info, the game will check all random infos that appear sequentially in the NPC's list of possible Infos and chose one at random to be spoken. The 'Random End' checkbox is used if you have two sequences of random Infos end up adjacent to one another. An Info marked Random End will terminate the random set even if the next info is also marked Random.
Now we have two different lines for the topic, but which one will the NPC say? First of all let's ensure that only the NPC we want says the lines, so add the ''GetIsID'' condition to both lines. Now, when determining which line to play, the game starts at the top of the list of info lines and proceeds done until it finds one that satisfies current conditions (If a topic has no lines in it that have all their conditions met, then the topic will not appear in the list of options presented to the player.) In this case, only the top line will ever play; however, we can change that. In the 'Response Details' section of the tab, you will notice a column of checkboxes. The ones we are interested in at the moment are the ones to do with random (i.e. 'Random' and 'Random End'). If you check the random flag on a line of info, the game will check all random infos that appear sequentially in the NPC's list of possible Infos and chose one at random to be spoken. The 'Random End' checkbox is used if you have two sequences of random Infos end up adjacent to one another. An Info marked Random End will terminate the random set even if the next info is also marked Random.




Ok now we have our topic and our lines but it will not appear in game until the topic has been added. Now you may have noticed a little box titled 'Add Topics' to the right of the tab. What this does is when the line is spoken it adds any topics listed there to the game, however '''Do NOT use this to add topics from a default Oblivion topic'''. By that I mean, if you have a line in a default Oblivion topic, like GREETING, that you want to add a topic from do not use this box. this is due to a bug in the game which fails to utilise this box properly from default topics, such that in game your topics may not be added (for more details of the bug see [[Category_talk:Editing_Dialogue|here]]). Using the 'Add Topics' box from your own  
Now we have our topic and our lines but it will not appear in game until the topic has been added. Now you may have noticed a little box titled 'Add Topics' to the right of the tab. What this does is when the line is spoken it adds any topics listed there to the game, however '''Do NOT use this to add topics from a default Oblivion topic'''. By that I mean, if you have a line in a default Oblivion topic, like GREETING, that you want to add a topic from do not use this box. this is due to a bug in the game which fails to utilise this box properly from default topics, such that in game your topics may not be added (for more details of the bug see [[Category_talk:Editing_Dialogue|here]]). Using the 'Add Topics' box from your own  
created topics should work fine though. Now you may be thinking how do we add our topic to the game then? We use the result script box, found to the left of the checkboxes.
created topics should work fine though. Now you may be thinking how do we add our topic to the game then? We use the result script box, found to the left of the checkboxes.




The Result Script box is used for scripting commands, that will run as soon as the line is said. Whilst most functions can be used it is important to note that references can not be declared in a result script box (for more info on scripting see  
The Result Script box is used for scripting commands that will run as soon as the line is said. Whilst most functions can be used it is important to note that references can not be declared in a result script box (for more info on scripting see  
[[:Category: Scripting_Tutorials| Scripting Tutorials]]). For our purposes at the moment we only need one simple function. In the result script box enter the line:
[[:Category: Scripting_Tutorials| Scripting Tutorials]]). For our purposes at the moment we only need one simple function. In the result script box enter the line:


Line 98: Line 98:
==Moving On...==
==Moving On...==


Now we have a basic understanding of how to do things and what most things are in the topics tab, we are going to make a very simple quest line for the player that will show what most of the other bits of the topics tab are for. The quest we are going to make will involve going to kill a few mudcrabs for their meat, or at least getting there meat from somewhere and what better way than to rid the shores or sewers of crabs!.
Now we have a basic understanding of how to do things and what most things are in the topics tab, we are going to make a very simple quest line for the player that will show what most of the other bits of the topics tab are for. The quest we are going to make will involve going to kill a few mudcrabs for their meat, or at least getting their meat from somewhere and what better way than to rid the shores or sewers of crabs!.




Line 179: Line 179:
==My NPC's are mute!==
==My NPC's are mute!==
===The silent type===
===The silent type===
So your NPC's can translate their facial into text, but what if it flies by to fast to read? I recommend using ScripterRon's excellent utility found [[TES4_Plugin_Utility|here]], to solve this problem. It has the ability to create silent mp3 files for each of your lines so you have time to read them.
So your NPC's can translate their facial into text, but what if it flies by too fast to read? I recommend using ScripterRon's excellent utility found [[TES4_Plugin_Utility|here]], to solve this problem. It has the ability to create silent mp3 files for each of your lines so you have time to read them.




===The vocal type===
===The vocal type===
Of course you may decide you want to have your NPC's fully vocal and screaming about there love of crab meat in your ears. To do this first you need a voice file. If you have a mic and fancy voicing the NPC yourself, I recommend [[Audacity]] as a good  
Of course you may decide you want to have your NPC's fully vocal and screaming in your ears about their love of crab meat. To do this first you need a voice file. If you have a mic and fancy voicing the NPC yourself, I recommend [[Audacity]] as a good  
free program with which to record with. Once you have the voice done, save it as a .wav file (chose 'Export as wav' if using Audacity). Now comes the tedious bit. You need to place each voice file in exactly the right place, with the right name. To find out where and what the file should be, go to your line and double click on it to bring the Response window back up. Now we are interested in the bottom section. Firstly rename the file to whatever it says the 'Voice Filename' should be (remember
free program with which to record. Once you have the voice done, save it as a .wav file (chose 'Export as wav' if using Audacity). Now comes the tedious bit. You need to place each voice file in exactly the right place, with the right name. To find out where and what the file should be, go to your line and double click on it to bring the Response window back up. Now we are interested in the bottom section. Firstly rename the file to whatever it says the 'Voice Filename' should be (remember
to keep the extension as it is!).  
to keep the extension as it is!).  
[[Image:DialogTute-Response.jpg|thumb|100px|right|Finding The path and name for our file]]
[[Image:DialogTute-Response.jpg|thumb|100px|right|Finding The path and name for our file]]
Anonymous user

Navigation menu