[This is part of a series of discussions on the craft of modeling conversation. For previous installments, see my original Homer in Silicon article which lays out the basic elements of the model, and my blog post on NPC initiative, which describes how NPCs might manage a list of things to say in the future.]
Alabaster has a threaded conversation system, which is my way of saying that it keeps track of which quips follow naturally from which others. That’s important because it allows the game to prompt the player with the quips that he’s most likely to want to use next (and, even if such hinting is turned off, to parse input more intelligently).
Responses to the player.
Thanks to its awareness of threads, the Alabaster system allows for a hook, the subject-changing activity, which comes between the PC’s comment and the NPC’s reply. For reference, the full sequence for handling a conversation action looks like this:
1. PC’s comment (which can be multiple paragraphs, but usually isn’t)
2a. NPC challenges a change of subject, if relevant (SUBJECT-CHANGING HOOK)
2b. NPC’s response (which can be multiple paragraphs, but usually isn’t)
3. (If step 4 is going to happen) A grounding beat is produced to mark a pause in the conversation, to pave the way for
4. (Optionally) If the current conversation thread is at an end, and if the NPC has something else planned to say, he now starts a new conversation thread by saying the next thing on his list.
In transcript, that might look like this:
>ASK LUCY ABOUT DIAMONDS
(1) “Are diamonds your favorite gem, Lucy?”
(2a) She looks surprised by this question. (2b) “Yes, ever since I was a child.”
(3) Overhead the seagulls wheel and cry.
(4) “I do wonder what my mother did with the family rubies. They were missing when she died,” Lucy says.
And for a non-conversation option:
1. PC’s action is handled however is appropriate.
2. (Optionally) If the NPC has something else planned to say, he now starts a new conversation thread by saying the next thing on his list.
which would produce a transcript like this:
>EXAMINE DIAMONDS
(1) They glitter at you malevolently.
(2) “I do wonder what my mother did with the family rubies. They were missing when she died,” Lucy says.
Continue reading “Modeling conversation flow: subject changes”