Skip to content


Rich Character Interaction and the WoNK Manipulation System

I recently completed Neverwinter Nights 2 (NWN2), and while it’s generally a great and very ambitious game that likes to present you with plenty of – frequently hard – ethical choices and insert you into amazing situations with nearly limitless and largely realized potential, it fails in a couple of areas. One being the cameras and the general control scheme, which is not the subject of this entry, and another being the depth of your companions and your means to interact with them, which is the subject of this entry.

The Companion System
The main thing that attracts me to traditional RPG’s (read: Anything out of Bioware or Black Isle/Obsidian) is the companions. Companions are characters who travel with you, following you whereever you go, as long as you’ll let them, and fighting alongside you. At their best, these companions will sometimes stop to discuss something with you or each other or to tell you their opinion on current events (or each other). At their most simple and boring, they will just tag along and offer mostly irrelevant information about themselves if you care to ask them.

My qualified guess is that the companions were originally just included in Baldur’s Gate to represent the party dynamics of the Dungeons & Dragons (D&D) role-playing system, on which that game was based. The main strength of companions, however, is that they provide a persistent set of characters with which you interact throughout the whole story, and which will always be available for some casual character interaction if you need a break from all the fighting. In games the storylines of which rely heavily on the typical Tolkien-style journey-structure1, which is pretty much all traditional RPG’s, the character gallery will usually change according to which location you are visiting at a given point in the story. This has the benefit of giving the game a large and diverse character gallery, but on the other hand, most of these characters barely gain enough screen time to define their personalities, and even then, most of that time is spent telling the player what to do next. This problem can be remedied by the inclusion of companions, persistent characters that follow the player from location to location, just like the party of the ring in The Lord of the Rings (even if they did split up at the end of the first book).

The main objective of this article is to give you my thoughts on how and how well these companions were implemented in Neverwinter Nights 2, and to outline my plans for how to improve on this system in the NWN2 module I’m working on, entitled The Walls of Northwood Keep (or WoNK for short).

The NWN2 Influence System
For Knights of the Old Republic 2 (henceforth KOTOR2), Obsidian Entertainment devised a so-called Influence system. This system was their attempt to implement a richer, more interesting type of character interaction. The premise was simple: The more your companions trust you, the more of their personal information will they be willing to divulge to you. Unfortunately I haven’t played KOTOR2 (yet!), so I can’t delve into how the system worked in technical terms in that game. However, my friend Mads explains that each companion had a value representing how much they trusted you (called Influence), and you could then exploit that value to turn your companions more towards the good or evil side of the alignment scale2. Apparently this manipulation was automatic, the more Influence you had of a character, the less likely he or she was to object when you made a choice that conflicted with his or her alignment, and if the companion did not object in such a situation, his or her alignment would be turned a little towards that of the choice you made.

In Neverwinter Nights 2, Obsidian wanted to expand upon their original system by implementing the second alignment axis of Lawful/Chaotic from D&D. In some ways, however, NWN2 took a step back from KOTOR2. My humble opinion is that Obsidian did manage to implement the second axis rather well, but unfortunately they chose not to let you change the alignment of your characters. One might say that makes the name “Influence” somewhat of a misnomer. In fact the word “Sympathy” would serve better to describe how it worked in NWN2, because the only way to gain Influence with a companion is to agree with him or her and solve certain situations their way, following their advice. And even so, having Influence of a character does not enable you to actually change his or her discourse, only to delve deeper into their past and in some impressive cases to pursue a personal storyline (or side quest, if you will) of that companion.

Only in one case is it possible to influence the outlook of one of your companions, and that is thoroughly scripted and pre-planned, leaving no room for actual choice. Here, you are given a set of options for how to deal with your companion, and depending on your choices and the success of certain skill checks, you may convince him to see things a little differently – although that has absolutely no impact on his further behaviour for the rest of the game.

What I hope to do in WoNK is to bring back some of the functionality of the original Influence system from KOTOR2 and improve on it.

Companion Manipulation in WoNK
The Walls of Northwood Keep is a module3 for NWN2 which I’m working on with a small group of likeminded friends. It is the product of several months of game-theoretical discussions which have helped to bring out a number of concepts and ideas we wish to test in practice. One of them is the object of this article: Deeper and richer character interaction with more tangible and – hopefully – decently realistic consequences.

Forgive me if the article turns a little technical here, I’ll try not to delve into the actual programming of the whole thing. The only concept necessary to understand is that all information about the player’s progress must be stored in so-called “variables”; these may take the form of either strings (any amount of text), booleans (a bit which may be either TRUE (1) or FALSE (0)), or integers or floats, a number with or without decimals. The important type of variable here is the integer. The system I have worked out stores everything as integers on your companions, so they’ll always be right at hand. Four integers are necessary for my basic manipulation system, each presenting an aspect of a companion’s behaviour or discourse: Alignment, Sympathy, Influence, and Terror.

Alignment
Alignment is actually two integers, but let’s treat it as one variable for the purpose of this article. It isn’t something I’m storing manually on each companion, unlike the rest of the variables I’ll use, instead it has been built into the game and the means to read or change the alignment of a character already exists. As previously described, alignment here consists of two axes: Good/Evil and Lawful/Chaotic. Each axis goes from 0 to 100, but is usually partitioned into 3 more general alignments: Good, Neutral, and Evil, Chaotic, Neutral, and Lawful. This yields 9 possible alignments:

Lawful Good Neutral Good Chaotic Good
Lawful Neutral Neutral Chaotic Neutral
Lawful Evil Neutral Evil Chaotic Evil

In my system, I use the alignment of a character for two things: Whenever the player makes an important ethical decision, I compare the alignment of each companion in his present company with the alignment of the player’s choice (specified by me). If the difference between these two alignments for a given companion is beyond a certain margin, that companion will object to the player’s chosen course of action. The player may then attempt to use Diplomacy4 to persuade his outraged companion of the merits of his choice. If the player wishes to do so, the difficulty of this task is determined by an index calculated from the difference between the companion’s alignment and the alignment of the player’s actions. In other words, convincing the humanistically minded priestess that killing the bandit leader was the only right course of action will be easier than to convince her that robbing and killing a rich merchant was the right and proper thing to do.

Sympathy vs. Influence
Unlike alignment, Sympathy and Influence are variables of my own invention, stored manually on each companion. These variables are an extrapolation of the original Influence variable, and perhaps somewhat counter-intuitively, the original NWN2 Influence variable is now represented by my Sympathy variable. My Influence value, then, is more akin to the Influence in KOTOR2. Allow me to explain.

Every time you make a choice that corresponds to a certain companion’s alignment, this character will gain a small amount of Sympathy with you. He or she has experienced that the two of you are likeminded, and this makes your companion trust you a little more; it stimulates an amount of loyalty towards you. If, on the other hand, you act in direct opposition to your companion’s moral disposition – if the saintly cleric sees you kill a puppy or if the tough bandit sees you go all soft and cuddly over same puppy, to pick some examples – he or she loses a bit of Sympathy with you. To avoid losing Sympathy with your companion in this situation, you may attempt to convince him or her that you’ve acted according to their discourse or that he or she ought to modify their discourse a little. If you succeed in your manipulation, the companion will not lose Sympathy for you, but instead you will gain Influence of him or her and his or her alignment will shift slightly in the direction of your actions.

Terror
Terror is a variable I have included in order to make sure you get the right responses from your companions. Terror represents a different kind of motivation for loyalty: A high influence of a companion will signify that you’ve taken care to explain your actions to him or her and that you’ve consistently managed to persuade and convince your companion to share your discourse. A high terror in a companion, however, will signify that you’ve used your power, your position, and possibly your charisma to intimidate and threaten your companion into obedience. The result of these two things will largely be the same, namely a high loyalty to you from your companion, but the dialogue will in certain situations change according to the difference between Influence and Terror. I am hoping for the opportunity to implement one or two situations where a character might act differently if he’s staying with you out of Terror rather than Influence, but it will depend on our projected storyline and how much time we have for such things in the end (alas, pragmatism demands its place among these plans as well).

Consequences of the Manipulation System
And this is the really important part, because what good are all of these fancy variables if not put to use? The player must experience the consequences of his choices and his actions throughout the game, otherwise all of this is mere window dressing.

We might divide the consequences of all this into two categories: One type of consequences is purely narrative and the other type affects gameplay. By far, most consequences will fall into the first category: The dialogue of your companions will change depending on the values of their Alignment, Sympathy, Influence, and Terror variables. Most obvious will be the difference between alignments: If you manipulate your devout cleric enough, she will eventually turn as cruel, cynical, and egotistical as yourself, and this will be reflected in her dialogue. She will no longer object to acts of cruelty and she may ridicule acts of kindness. If your influence value with her is high, however, contradicting yourself may cause her to question your motivations: “If you’ve been telling me for the past 3 months that killing puppies is the best thing ever, what’s the meaning of this tremendous donation to the local animal shelter all of a sudden!?”

The difference between Sympathy/Influence and Terror will also play an important part in the dialogue: If prompted to explain why the priestess is loyally following a Merciless Killer of Puppies, she may attempt to justify your actions on your behalf, or she may shy away from the question, too terrified to honestly reveal her real reasons for obeying you.

In terms of gameplay, there’s a limit to how much a companion will take from you. Lose too much Sympathy from a companion without gaining the Influence or Terror to make up for it, and you may find your adventuring party suddenly dimished. A lack of Sympathy may provoke a confrontation prior to your companion leaving you, whereas a high Terror value may cause your companion to slip away under cover of the night. Once a companion has left your party, this companion will return to his or her home, but will effectively be unavailable for the rest of the game.

Inter-party relations
You may think this is a lot of variables to keep track of, and a lot of dialogue to write. But there’s more. Mostly just to prove that I can, I’ve chosen to implement a second set of variables representing a given companion’s opinion of the other companions in the party. At any given time during the storyline, a companion may confront you to share his or her opinion of another of your companions. The nature of this objection will also depend on your Sympathy, Influence and Terror with your companions: A companion with low Sympathy for you may threaten to leave the group whereas a companion with much Sympathy for you will merely ask you to leave the offending party member behind. Inter-party relations are an important factor in determining whether a companion will leave the group; if the bandit in your group has a high Sympathy for you, which indicates you’re acting in accordance with his or her discourse, the priestess – who dislikes the bandit – may be more prone to leave the party if her own Sympathy for you isn’t high enough.

If the relationship between two companions in your party drops too low, the one with the lowest Sympathy, Influence, or Terror values will leave the party and travel home. However, if his or her opinion of you is still high enough that he or she will travel with you, that companion will agree to join you again if you kick the offending companion out of your party first.

Conclusion
I hope that this rather complicated system of variables and dialogue will serve to give the player a truly interactive and at least modestly realistic experience of character interaction. When a storyline becomes sufficiently interactive, I believe the narration must be borne mainly by the characters in it and a sophisticated system of feedback to the player’s actions. If a game provides total freedom for the player but fails to react to how the player administers this freedom, no story will exist and the game will merely be a big sand box. While I acknowledge that this can be fun and interesting, it’s rarely something that catches my interest and/or gives me lasting experiences.

But character interaction need not be linear or even restrain itself to branching dialogue, and I’m dead set on proving this. The core design principles behind WoNK are all object/event oriented, and so is the system I have described here: My aim is to provide a large array of flexibly interacting objects (that is, dialogue nodes) which may or may not appear depending on certain conditions. It is true that this system will require quite a lot of writing, but text is not very resource-intensive work compared to the creation of art or code assets, and I believe that I can create a believable range of responses without necessarily writing 3 versions of every sentence your companions may utter. All it takes is, I hope, some intelligent planning and a bit of help from the player’s imagination. We’ve also chosen to limit the amount of available companions to 5, hoping that this will allow us more time to flesh out each of them rather divide our attention between 13 different characters as Obsidian did. In fact I believe the main challenge will be to turn all these rather programmatically minded systems into a realistically organic narrative.

Next spring, you may be able to download one of the first truly interactive, almost entirely object-oriented storyline and play it in Neverwinter Nights 2. Or you may instead download a pile of bug-ridden, unrealized crap. Only time will tell.


Notes:

1 I realize Tolkien did not invent the journey structure, but I regard his works as some of the most consistent and prominent examples of such a narrative, not to mention the most widely known.

2 Alignment being a term originally used in D&D (I believe) to represent the ethical values of a given character. KOTOR and KOTOR2, which are built on the Star Wars d20 system, operate with a single axis that goes from Good (The Light Side of the Force) to Evil (The Dark Side). D&D operates with a second axis that goes from Lawful to Chaotic, describing the character’s attitude towards rules and authority.

3 A module is the traditional RPG-term for a scenario or a campaign made with a certain ruleset. It’s not quite a game because the ruleset was already made by somebody else, but generally a module contains an original storyline and everything to go with that. The Neverwinter Nights series has adopted this term to replace the usual term “modification” .

4 Diplomacy is a so-called skill in the game that the player may invest skill points in every time his character gains a level of experience. Such skills can then be compared to a predefined numerical difficulty to determine whether the player’s character is successful at an activity related to that particular skill.

Posted in Game design.

Tagged with , , , .


0 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.



Some HTML is OK

or, reply to this post via trackback.



Switch to our mobile site