Towards Better NPC’s
Even in the best games, a player’s interaction with an NPC usually looks like what it is: One dialogue taken out of X possible dialogues. These dialogues are usually built like a tree: The NPC starts with statement A. When the NPC stops talking, the player chooses one of so-and-so options, each one leading to another ‘branch’ of the tree. The NPC stops again, the player chooses again, and the dialogue proceeds down another branch that stems from the original one.
I want to suggest a system that will lead to richer NPC interaction, one that actually looks human (or alien, but more believable and richer than it is now, just like real human interaction).
This is the first of three articles that will hopefully show a new approach to creating NPC interaction.
- The first article (this one) talks about changing the basic interaction between characters.
- The second article will talk about changing the basic build-up of an NPC.
- The third will show how new puzzles can be created that stem from the fact that NPC’s are now more ‘human’.
Redefining the NPC Interaction
Interaction between NPC’s is almost always done in dialogue. It is therefore very tempting to consider dialogue as a way to deliver information. As readers of this Story Design Tips column remember from a 5-article series about dialogue, dialogue is never about information. It is a series of actions and reactions performed by characters that have a purpose as well as a certain mood/state-of-mind.
To construct dialogue, you have to take into consideration the make-up of your NPC’s character. The make-up of an NPC’s character is made out of his personality (which influences which actions he chooses to use and in what roundabout way they are performed) but also of its present mood. Meaning, if he’s angry at the player he would respond differently than if he was very pleased with him.
Since dialogue is about actions and reactions and not information, the player should not ask for information. I mean, not ever. Instead, the player should use actions to get what he wants out of the NPC’s. There is a vast array of actions, and any one of them must either seem meant to improve the other’s mood (joke around, coax, kiss ass, complement, etc.) or to worsen it (berate, belittle, order, make fun of, etc.).
Keep in mind that there are no real negative-mood or positive-mood actions. Any action can serve as both to different characters (if you ‘beg’ one character, it will play to his ego, and his mood will improve; but if you ‘beg’ another character, he will think you are crass and are assuming that he’s crass, and he’ll get angrier) or even serve as both to the same character when the character is in a different mood (when the king is in a good mode, ‘joking around’ can only improve his mood, but when the king is in a bad mood, his sense of humor disappears and he becomes certain you’re trying to make fun of him).
One action can mean many things – that is the complexity of interaction that’s human-like. But one action will always lead to a mood change.
My first suggestion, therefore, is to completely change the player’s choices during a dialogue. The player doesn’t choose between texts, he chooses between a stock set of actions (you choose which actions are best for your game). The player doesn’t need to know you consider actions as positive or negative mood changers, he just needs to choose how he’s going to say what he has to say. People know instinctively that different actions get different results from different people when they’re in different moods. Therefore any interaction becomes a puzzle: What’s the best way to get what I want from this NPC?
Now, changing what the player sees and chooses from is still a cosmetic change. Mass Effect’s dialogue system chooses between positive and negative statements but the dialogues are still built like trees. Next time we’re going to talk about how to change the basic make-up of the NPC’s themselves in order to create entirely new dialogue possibilities that are not at all tree-like. But that’s next week.
[If any of you have any questions for future Story Design Tips columns, please write them in the comments or send me an email to guyhasson at gmail dot com.]