Emotions evolved: Virtual characters with next-gen emotions engine

Emotions have been built into Charisma from its very birth. Charisma has storytelling and characters at its heart, and nothing is more crucial than ensuring Charisma characters react authentically to what our players say. Players must have a true sense of agency, where they believe they are present in the world and their actions change the arc of other characters' journeys, both practically and emotionally. From start to finish players must feel like they are being listened to.

The key to this, and to all of Charisma's interactive entertainment, is emotionally equipped characters. Even with characters who are uncaring, psychotic robots, it is their lack of emotion in the wider context of emotional characters that tells the player something interesting.

We found that it was time to re-evaluate the approach Charisma takes, and we’re excited to share how and why we’ve implemented a next-gen emotions engine to make your characters even more effective and your worlds even more reactive!

The research

We started diving into the huge world of emotional theory, and well, where to start? Perhaps the most famous theory is Paul Ekman’s, in which he posited there were six basic and universal emotions: anger, surprise, disgust, enjoyment, fear, and sadness. Since then, the world, and Silicon Valley in particular, has hooked onto Ekman’s theory, and it’s being used everywhere from airport security scanning to state surveillance to Pixar films. Yes, Ekman was a consultant for the film Inside Out!

However, there is also a very interesting body of work critiquing Ekman’s six-emotion theory and suggesting alternative constructions. Core affect, proposed by James Russell and detailed wonderfully in this paper, is one of those. Core affect was brought to our attention by Richard Firth-Godbehere’s excellent blog, in which he explains how big tech are running away with Ekman’s theory and not giving proper thought to alternative, perhaps more accurate, representations.

For what it’s worth, I believe core affect is a more compelling theory, and substantiated by significant research, and as a result it largely formed the basis of the new emotions engine.

From the old to the new

Until now, Charisma has used a 5-dimensional emotional model: happiness, anger, fearfulness, patience and trust. We felt there were a number of issues in this old emotional engine that we've addressed in the new one!

  • No more impossible states! In the old system, a character could be in both a happy and angry mood, or both a trusting and fearful mood. In the new system, the two dimensions of mood are totally independent, so this is no longer an issue.
  • Improved mechanics of how the engine works! By moving away from slider UI elements and obscuring the inner machinations of the emotions engine, we're able to author more lifelike emotional responses. For example, an emotional effect applies very strongly at the beginning, and tails off over time, instead of simply a "+20 happiness" change.
  • Gates are less ambiguous and are more flexible! The old system had mood conditions such as a character must be "fairly happy", but it's not clear what this means. Now, mood conditions specify a concrete numerical range of emotion to gate on, so it's much clearer how this maps to the live emotional values!
  • Short-term and long-term feelings are now distinct! In the old system, having a single mood value meant that when changing a mood, it'll be stuck like that until the next mood change. This wasn't natural enough! The new system separates feelings from moods, with feelings automatically influencing moods.
  • Moods now automatically decay over time! If the character isn't currently feeling anything, their mood now gradually goes back into their natural state. You wouldn't stay angry forever (we hope)!
  • Feelings are now mapped to animations in a well-understood way. There is plenty of research, for example, on the mapping between established emotional theories and the FACS (facial animation coding system).
  • Feelings now more closely match human psychology, though in a way that is appropriate for Charisma. Recreating human psychology is a non-goal, but aspects and inspiration have been taken from human psychology to deliver natural character reactions that, crucially, are distinguishable and affective to the player.
  • Feelings are now fit for purpose for use as storytelling devices. In the new system, we've only chosen appropriate, reaction-based emotions that can drive narrative events. “Patience” (in the old system) is unlikely to drive a narrative event, but “hope” as a feeling is a much clearer plot device.

The list of improvements is long, so let's dive into how we've achieved this!

Emotions engine Mk II

We’ve split feelings in Charisma into three: feelings, mood and relationships.

Feelings can be thought of as short-term, lasting only a few seconds or minutes. They primarily act as the driver of how moods change over time, but crucially they also help to drive animation performance in clients connected to Charisma like Unreal Engine or Unity.

Feelings in Charisma are now defined in terms of words: hope, fear, anger… For example, a “distress” feeling may translate naturally into a grimace facial performance, and a corresponding negative effect on mood.

The new feeling effects in Charisma (ft. dark mode, give it a try!)

The new feeling effects in Charisma (ft. dark mode, give it a try!)

Moods can be thought of as the long-term equivalent, driven by feelings, but vaguer, not attributable to a certain stimulus or event, and slower to vary. Their effects mainly come through with the use of mood conditions on gates, but you could also use moods to drive aspects like the strength of their animations.

Relationships are pretty much what they say on the tin: they track how friendly or hostile a character is towards the player, which is a highly useful narrative device for closing down or opening up storylines and showing different sides to your characters. Many games nowadays use some kind of relationship score as a way to personalise player journeys, particularly romantic or antagonistic encounters, and Charisma is no exception!

These three controllable aspects give a lot of power to the author. They can be adjusted in the same place dialogue is written, the Charisma graph, giving authors a whole new set of tools to approach interactive storytelling.

The future of emotions

As technology using emotions continues to speed forward, Charisma is now ready to closely integrate and plug in new features as they become available. We imagine using emotions to drive a whole gamut of different aspects of these new conversational experiences, in areas like:

  • Animation, where emotions could control facial animation, gestures, eye contact, blinking, breathing, affective animation like weeping, or even facial complexion like reddening cheeks!
  • Movement, where emotions could influence where the character moves in the world or an aversion of other characters.
  • Text-to-speech, where emotions could change the tone of what the character says. They might shout, whisper, hesitate, mumble, or demonstrate a myriad of other emotionally charged speech features.
  • Memory, where emotions could influence what events a character remembers, or their ability to recall emotional events in the past.
  • and others, such as what words the character selects, their propensity to change topics, the relationship between their personality and mood, and so on…!

We’re excited to explore these areas in more detail over the coming months, and we’d welcome any feedback you have on the new emotions system. We hope it feels awesome!