Adventure Architect #2: Chivalry is Not Dead, Part 4
By far, one of my favourite things to do in classic adventure games is to have conversations with non-player characters. As I stated in Article #2, it's the characters that make a story for me; thus, it makes sense that I would thoroughly enjoy any opportunity to actually interact with them, from asking questions and hearing their experiences and thoughts about the world to provoking them in various ways and witnessing the comedic value of their reactions. Grim Fandango, for instance, wouldn't have been the same for me if I weren't able to have Manny flirt with the security officer, nor would The Curse of Monkey Island have been as much fun without Guybrush being allowed to irritate the cabaña boy.
Sadly, in many adventures, character interaction has presented itself as extra window dressing rather than as a primary gameplay element. At most, it is useful in the way that talking to a character sometimes provides clues as to how to solve a puzzle; other times, it is simply a fun little diversion and nothing more. Save for a relatively minute handful of exceptions, what you say or do to characters has no significant effect on the game itself -- if you make someone angry by choosing one dialogue option, it is virtually forgotten by the time you go back and choose a different one. Although a mixture of clever writing and careful limiting of possible choices can effectively maintain the player's suspension of disbelief in this regard, it still begs the question as to what an adventure game would be like if non-player characters did remember how the player treated them. This is a question I plan to explore at length throughout the making of Chivalry is Not Dead.
What I am doing, inspired in part by an IGDA article I read some time ago, is implementing a simple affinity system between characters. The way one character feels about another is represented by a nine-point scale, where a value of 1 represents extreme loathing and a value of 9 represents extreme admiration, and all other values represent something in between. To illustrate how this system works in the game, imagine a hypothetical scenario in which Phlegmwad first meets the Queen of Everything. She begins by feeling neutral towards him; therefore, her affinity level is set to a starting level of 5. Once Phlegmwad begins to interact with her, certain actions will change this affinity level. A compliment about her interior decorating style, for instance, will increase affinity by one point, whereas having Phlegmwad pull out his dagger in a threatening fashion will decrease it.
As the game progresses onward, Phlegmwad will be able to continue interacting with the Queen and affecting her affinity towards him as a result. However, just as in real life, the Queen's perception of Phlegmwad's actions will be coloured by her prior impressions of him. A remark about her physical appearance, to give an example, may be taken as a compliment in normal circumstances, but if her current affinity level is less than, say, 4, she will take the remark as an insult and retort with an appropriately cutting response. Likewise, when it comes time for Phlegmwad to ask her for favours, such as allowing him to borrow money to purchase an item he needs, her willingness to do so will also vary according to her affinity level. This directly ties in to my discussion of alternate puzzle solutions from Article #3.
To further complicate matters, there are some instances in which a non-player character's affinity toward another non-player character can be affected by the player. Suppose, now, that Phlegmwad and the Queen arrive to meet Leslie, the farm boy. Upon laying eyes on the Queen, Leslie finds himself immediately infatuated with her, placing his affinity level toward her at 9. Hence, the way he feels about Phlegmwad is very much affected by the Queen's opinions; if she finds Phlegmwad suspicious and untrustworthy at this point in the game, then Leslie will feel the same, whereas if she finds him harmless, Leslie will act slightly more forgiving around him.
I should also mention that the numerical values of a character's affinity will, in fact, be hidden from the player, i.e. there won't be a menu in which one will be able to check affinity levels, then adjust behaviour accordingly. Instead, the player knows only what the characters decide to reveal about their feelings for others, which is variable according to their personalities. Some will be forthright and direct, expressing their like and dislike of a person in a very obvious manner. Others will be more difficult to read, sometimes feigning politeness to hide their loathing of a person, or conversely acting aloof in an attempt to conceal feelings of love.
All in all, the main advantage I see with implementing this affinity system is that it creates further functionality in allowing for a narrative that meaningfully reflects a player's choices and preferences. I can't count the number of times I've read a novel, watched a movie, or even played a game in which the hero's romantic interest was a character I neither liked nor related to instead of getting together with the nerdy best friend, or had the villain turn out to be a far more interesting character than the hero and consequently wished to see the former prevail in the end. Hence, in Chivalry, although the non-player characters have minds of their own and will not automatically acquiesce to the player's suggestions, I do want to at least allow for the player to have a say in whom Phlegmwad attempts to develop allegiances with.
Furthermore, for those who wish to replay the game in order to see the results of a different set of choices, there will exist an added benefit of getting to see contrasting sides of the same characters under varying sets of circumstances. This is something one often doesn't get to see in most forms of linear fiction, particularly with a short story, such as what I am attempting. I anticipate that doing so will reveal that there is no clear protagonist or antagonist in this game, and that, as in real life, every individual has a mix of good and bad aspects to them.
There are, of course, a number of challenges I have to face in my implementation. For starters, to account for all the options I provide the player and all possible responses that may result, I have to write significantly more dialogue than I would otherwise. Fortunately, dialogue-writing is an activity I thoroughly enjoy doing when developing a game. I can see this becoming a problem if, say, I were writing a commercial game, and needed to pay voice actors more money to record all these extra lines, but this is not an issue that concerns Chivalry. Moreover, the decisions of what options to include in the first place is, in itself, a challenge. I cannot always anticipate every single interesting choice that the player may want to make, and often I find myself thinking of new possible dialogue lines for a situation I created earlier on, and adding them simply because I see no reason not to. This, too, could be a problem if the game were on a tight schedule and budget.
Still, given that I am creating Chivalry as freeware, I feel that the strengths in experimenting with a character affinity system in an adventure game greatly outweigh its disadvantages. It is my hope that such an experiment will, in the end, lead to a new kind of gaming experience that is at once fun, interesting, and personally meaningful for the player.