Hub-and-Spokes
Dialogue
Though ultimately a variation of the previous method,
Hub-and-Spokes Dialogue creates a very different conversation flow compared to
basic Branching Dialogue. The player listens to the NPC's lines and then chooses
their response from the main "hub" of the conversation.
After hearing
the NPC's response, the player either returns to the main hub, from which they
can ask the same question again or inquire about another topic, or enters a
deeper hub with more options to choose from.
The player can typically always find their way back to any
hub by navigating through their responses, and thus can explore the dialogue in
any order they wish. In this manner, a player can exhaust a conversation by
trying every possible option at their disposal (with no penalty), and the
interaction only ends when the player chooses the "goodbye" option.
Most conversations in Mass
Effect and other BioWare titles take this form, with occasional basic
Branching Dialogue implemented when the player has to make an important decision
that may affect quest outcomes or the NPC's disposition towards the player.
Hub-and-Spokes Dialogue gives the player more freedom and
control over conversation and often allows them to interrogate NPCs to find out
every last piece of information about them. However, this method of dialogue
tends to create conversations strongly divorced from reality.
The NPC usually
has infinite patience for the player's strange inquisitions, and every dialogue
plays out like an interrogation as the player keeps pressing the NPC for info.
Furthermore, the player hears a lot of the same lines over and over as he
navigates between hubs, potentially breaking immersion.
Parser-Driven
Dialogues
While the original conversation simulator, ELIZA, used a text parser to get player
input, this method is relatively rare today. Some experimental titles like Façade, however, still explore its possibilities.
In a parser-driven dialogue, players type their exact
response and the system attempts to parse the input in a way it can understand.
The NPC then replies with one of a number of pre-set responses, or builds a
response based around the words used by the player in combination with pre-set
phrases. In many cases, the player directly controls the flow of conversation,
veering wildly off-topic whenever they wish without eliciting much surprise
from the NPC.
Façade's design,
however, always attempts to keep the player on track. In this game, the player
plays an active part in dealing with marital troubles as a third-party helping
a couple work through their problems.
Although input from the player comes from
a text parser, Façade tries to keep
conversations as natural as possible by choosing a response based on not only
the player's immediate input, but also their behavior thus far and the current
state of the dialogue.

Procedural Arts' Façade
In Façade, the
conversation always moves forward, despite the player's best attempts to change
subjects, as the NPCs always try to return to the subject at hand. The
conversation can go many different ways, and a message after the game ends
encourages the player to replay the game many times.
Parser-Driven Dialogues are rare in modern games for two
reasons. The first is that the freedom they provide is extremely time-consuming
to produce. The system needs hundreds of potential responses to accurately
simulate a single, short conversation.
The second reason is that even the most robust parsers
frequently misinterpret the player's input. In Façade, an innocent inquiry can send the NPCs into shock, horrified
by what they thought the player just said. These misunderstandings ruin virtual
relationships and frustrate the player, while at the same time exposing the
program's failings and distracting the user from the interaction.
|
I had to abstract out the actual words and focus on emotions. The main problem with this system is that it doesn't read well because it is so abstract.
The game is called The Player League. You play as a guy in an underground league of bar players.
Here's the download and links to my design articles about it:
http://tynansylvester.com/?p=267
Thanks tynan
(skip down to Post Scriptum)
http://www.cse.unr.edu/~sushil/class/ai/papers/coffeehouse.html
I think the true Turing test will be the day a computer can pass one. In that sense, I would love to see how AI would play Facade.
1) There's no "grand unified theory"; humans (and hence NPCs) are too complex. The author really needs a toolkit of branching narratives, queries, and more free-form NPC responses (maleable branching narratives). Players need a menu of the most common options, but the ability to type (or speak) a more complex query, such as: "Where does CHARACTER live?"
2) The designer needs to always ask him/herself, "Why am I giving this choice to the player?" See http://www.mxac.com.au/drt/Choices3.htm .
My in-progress game, that uses a lot of dialogue, is at http://www.CircumReality.com .
Personally, I think Mass Effect represents the best implementation of an RPG dialogue system. It allows the player to get as much information as they want from any given NPC, and provides many unique paths during critical moments based upon the player's attitude. It's certainly not without its faults, however. Limiting the options to a sort of three-tiered Nice/Ambivalent/Jackass model gives just about any player an option they would have chosen themselves (albeit more eloquently put for most people I'd wager). There's a lot of overlap between the options, however, leading to a lot of false decision making. Limiting information concerning what the player's avatar will actually say to a two to three word summary also creates problems, as the player will soon discover that their avatar will often say something they hadn't intended them to say.
I think dialogue systems have gone as far as they can go, at least as far as basic mechanics go. At this point, any given dialogue is as open or as closed as the designer wants it to be - a general, ambiguous response can allow as much interpretation as many very specific responses. However, supplementary systems, overall presentation, as well as more responsiveness can add greater weight to a conversation in much the same way as the myriad of subsystems have made combat a very complex thing (but without really changing how things actually work). Purely a thought and not necessarily a practical system, but tracking what movements a player does before picking a response could allow a designer to pick out additional 'flavors' of any given response (ie a player that flips back and forth between choices before picking could be understood as verbally hesitant while someone who does nothing before picking as thoughtful and introspective while someone that picks a choice but then waits as cautiously spoken) or a system that reads a player's button presses and responses to that (a player tapping a button continually is impatient, a player that presses a button hard is giving more 'oomph' to the statement they select). Making conversations more than talking heads (even Mass Effect does this) can give conversations more of a realistic feel even if they aren't realistic themselves - allowing players or showing players their character's moving while talking (walking down a hall or merely waving their hands and doing something other than ignoring the game world while taking) would give more immersion to dialogue. As conversation (and personality) are very intangible and even two very different people can say the same thing, blending dialogue and action (and character action) can give more weigh which I think is the real current limitation. In the real world, how often do you talk as you do in RPGs - that is, stopping everything you are doing, facing each other, and talking without any other action. Probably very little - more likely, you are talking within context of another action.
I've always been curious as to what Machine Learning could accomplish here. Is there a ML community at work in games? Dialoging and user driven actions seem ripe for this, but then again, it may be another application where there never enough data.
Anyone using statistical methods?
Mark Zartler
Annosoft