FRW: Conversation Tips by David Gaider

Some time ago, Papermonk posted some tips about conversations from David Gaider. I recently ran across it and thought it might be good to revisit. Here's a quote from his intro:

I assume most of you know who that is - if not, he's one of the big design boys at Bioware and had his hand in BG2 a LOT, among other things.

Mr. Gaider joined CODI briefly (before being pulled back to insane grinds at BW) but before he left he really helped us figure a few things out.

Rylock's Conversation Tips

1) If you have a large character to write, TEMP dialogue is your friend.

Don't worry about getting caught up in the details right at the beginning. You'll get bogged down with how something is said rather than just getting the structure together... which is important when the NPC has a lot to say. Write a single line that covers each starting condition ("This is what I say when you first meet me!") and then write really quick lines afterwards that cover only the basics of what you're trying to get across. You can go back afterwards and flesh the lines out and add "flavour" routes in the dialogue later.

2) Write comments.

Even if you're doing the scripting yourself, write comments... write comments whenever scripting is needed, either for a starting condition, somebody's supposed to perform an action, a variable should get set here and so forth. You will thank yourself later.

3) Don't repeat yourself unless you have to.

Too many times we get newbie writers here who will have dialogue where the same information comes up numerous times... and they'll write that information up each separate time. A little differently, to be sure, but it's the same info.

Don't do this to yourself. And don't delude yourself into thinking this makes better dialogue. Always recycle whatever you've already written if it's at all possible. One of the most common ways this is done:

"You want to ask me something, you go right ahead."
1 - PC question #1.
2 - PC question #2.
3 - PC question #3.
4 - I don't have any more questions.

After each question is answered, you loop back to the first line (the "You want to ask me..." or even a new line like "You want to know something else?" that has the same response links). Only when the PC is done with his questions and picks #4 will you then go back to the rest of the information the NPC has.

Recycling sub-menus like this will make your structure much, much simpler to understand (especially for you) than trying to have each separate question flow into everything else the NPC might have to say or do. If you do that, I guarantee you will run into situations where the player wanted to ask something else but the question is no longer available to him.

4) Don't use more Starting Conditions than you have to.

Now, this can be taken in one of two ways. While it can be good writing to have multiple starting conditions when the NPC is clicked on (he says something different based on updated circumstances and so forth), a good rule of thumb would be to include everything that the character needs in a single sub-menu as often as possible.

What do I mean? Another example:

"Greetings once again, <FirstName>. Missed something the last time we spoke, didja?"
1 - Do you know your way around this area?
2 - You mentioned that you lived in the building next door...
3 - I was told the building next door is brand new. Are you lying to me?
4 - You come to this bar often?
5 - What do you know about the other patrons here?
6 - So what's there to do for kicks around here?
7 - Want to play some cards, old-timer?
8 - I got that money that Traul owed you.
9 - I should go.

Now... obviously the player's not going to see all of these PC responses at the same time. You can look at that list and see clearly that some of these responses require some foreknowledge that the PC may or may not have. So you add Starting Condition scripts to them all.

1 - No script. It's always available. During the answer the NPC mentioned he lived in the building next door... set a variable on the PC to indicate that info is known.
2 - Only shows if the variable mentioned in #1 has been set.
3 - Only shows if the variable mentioned in #1 has been set AND another variable indicating the PC has spoken to someone else about the new building is also set.
4 - In this one the NPC will mention that yes, he has been coming here a while. Set another variable on the PC. #4 no longer shows once that variable has been set.
5 - Only shows if the variable mentioned in #4 has been set (or if you figure it's a generic enough question, scratch the variable and both 4 and 5 can always show). In the dialogue resulting from this, the NPC could mention that Traul owes him money and he hasn't been able to collect... whether or not the PC agrees to get the money, set a variable on him (he should at least know about it and be able to ask Traul).
6 - In this one the NPC mentions he likes to play cards and challenges the PC to a game. Set another variable on the PC. #6 no longer shows when this is set.
7 - Only shows when the variable in #6 is set. Goes directly to a game of cards.
8 - Only shows if the PC was able to collect money from Traul (after the variable was set in #5).
9 - Always shows.

...and so on. The benefit for doing all this? At the end of every section of dialogue for the NPC (and keep in mind each of these could go into its own sub-menu with separate questions and routes) you do not have to sit around and weigh exactly which PC responses apply in that situation. Link to them ALL and the dialogue will both sort itself out and flow naturally... and save you a lot of time.

5) Make sure the goods are readily available.

What do I mean by that? Simple... don't bury a good piece of writing somewhere where nobody will ever find it. Unless you intend for something to be an Easter Egg, don't give your NPC's specialized dialogue that will only show up once in a blue moon. If you want to add it later, then fine... but finish the damn thing first or you never will.

6) You can always add more later.

Yes, we are all perfectionists. We want the dialogue to include everything possible the very first time through. Well, suck it up, sister, because that isn't going to happen. Don't over-plan the dialogue... get in what you need, first, and add more stuff in later. And keep in mind not every NPC needs to know or tell everything imagineable.

Here are two additional points by Sethai:

7) Limit your text.

I don't know how it will work in nwn2, but in nwn it is best to limit your text to about 2.5 lines, so each section of dialogue never comes past the npc's portrait. Overflow into another node if need be. Huge blocks of text just look unproffessional and discourage the player from reading them. I try to follow the OC conventions, because it makes the game more immersive when you're not distracted by the little things.

8) Most obvious responses first

When, ordering your responses, try and put the most expected, non consequential response first (stuff like "continue" or "could I ask some questions?"); you don't want people to be 1ing through, and accidentally attack the quest giver. Put your "Goodbye" option at the bottom of the list so people know where to find it.

Here's the original post on the FRW forums:
http://nwcitadel.com/forums/showthread.php?t=227