Emotion Engine - Part 2

 
Emotions, we all have them!

Emotions, we all have them!

Hi, and welcome to this week’s Röki blog.

Today we have the second part of our ‘Emotion Engine’ blog-post. In these posts we’re talking about our cunning plan to incorporate actors’ voices into the game and how and why we’ve arrived at the ‘Emote Library’ solution we’re using. If you missed the first part, you can catch-up here - (What follows may not make a huge amount of sense without reading part 1).

We’ll pick up where the the last part left off, looking at some of the remaining things we considered in defining our approach:-


Previs

As a next step we put my test ‘emote‘ recordings and edited them over the top of game footage in Premiere (video editing software) to see what they would feel like.

As an aside, we’ll often previs/pre-visualize things in this way. It means you can experiment quickly without the technical overhead of getting things working in-game. If the previz doesn’t work out (boo), you haven’t burnt that much time on it, if it does (yay!), you can then invest the extra time to implement it with the confidence that the approach has legs.

This previs test worked well, but my acting skills are a little limited (no comment - Tom), and so we asked some of our friends to record some test audio for us to try out. This also allowed us to consolidate the list of emotes that we’d require, and, as things were solidifying nicely, we started thinking about getting professional actors involved .

Nordic Voices

As you may know our game is inspired by Scandinavian folklore and has a Nordic setting. Fortunately (for us, not them!) we have a few friends from that region so when we wanted some sample recordings with an authentic lilt they were the people we pestered!

In these tests we wanted to see how much of their natural Nordic accent and intonation came through in the emotes. Would you still get a hint of the regional accent even though no actual words were being voiced? Below you can see a test using the Henrik character and our good friend Kjetil (very talented Norwegian concept artist who we worked with at Guerrilla and Sony who really knocked it out of the park!)

These tests proved that the answer to our question was yes. It might be subtle, but having accented/intonated emotes would be another ingredient to add to the sense of place for the game. The devil is in the detail, so we decided that we would focus on working with actors from those regions (which is a process we’ve begun but still have a ways to go. Some more on that next week!)

‘Name Emotes’

At some point whilst we were developing this system the film Akira had it’s 30 year anniversary. If you don’t know of it, it’s a seminal Japanese animated movie from the late eighties and was the first anime film to break into the western zeitgeist. It features biker gangs, Neo-Tokyo and lots of strange kids, drugs and special abilities.

Why I am talking about this? Good question.

During the climactic third of the film, two of the main characters (Tetsuo and Kaneda) spend a lot of time shouting at each other. Not just any old shouting, they shout each other’s name. Really, it happens a lot!

TETSUOOOooo

KANEDAAAaaa

..and so on

It was whilst I was watching the film again that the penny dropped. In Röki, as well as the more general emotes, we could also add ‘name emotes’ (not dissimilar to Tetsuo and Kaneda in Akira but less shouty) to our emote library. For example, Tove would be able to call Lars’ name (“Lars“) with a number of different emotions (sad, happy, angry and so on).

So why was it important for us to add these ‘Name Emotes‘?

As I mentioned at the start of Part 1, the emotional core of the game in about reforging a fractured family. We wanted them to be able to connect with each other, to remember each other, to miss each other to get angry at each other. Our thinking was that ‘Name Emotes‘ would help us create that connection, and they do. Having our characters being able to call each other’s names is a variety of emotions is a powerful tool and another ingredient for us to leverage to create and emotional journey.

Repetition

One of the key problems we identified in Part 1, was repetition. We were confident that we could get a natural, understated set of dialogue emotes but the issue of repetition remained.

The issue here is that if the player keeps on inspecting the same item (or talking to a NPC) over and over again, spamming the interaction, and we hear the same emote audio file over and over again then the player is immediately drawn out of the game. The human ear is exceptionally good at identifying repetition, the character is identified as a fake and the illusion of life is shattered.

However, this issue is actually easily solved.

Each of our 30 basic emotes has at least 5 variants. When the emote is triggered, the system picks one of the audio variants at random to play. Not only will it pick a random one, it also checks what the previous played emote was, so that it is impossible that an emote version will ever be played back to back (this we found was the key offender in identifying the character as fake).

Not only does this solve the problem of repetition, but it also adds life into the character, strangely enough and means that any repetition of a written dialogue line is softened by the variety in the audio. BIG WIN

In-Game Implementation

Once we started hooking up the emote libraries for our character’s in-game we gave a bit of thought to how and where we wanted the emotions to be flagged/specified and to be triggered, and more importantly by who!

Our first implementation had them being triggered by the designers in the game-play node scripts to coincide with the dialogue. This would have been quite time consuming.

We then quickly realized that it’d be much better if the emote could be tagged/flagged in the dialogue line itself, by Danny, our writer without the need to add anything into the actual gameplay scene.

Tags.jpg

So that’s exactly what we did. In a line of Röki subtitle dialogue Danny can flag the audio emote he wants to trigger with that specific line by using curly brackets (these ones…{}) and inserting the name of the emotion he wants. You can see some examples of isolated lines with emote tags in the above image,

It works pretty well and allows Danny more control of the emotion delivery of the line as he’s writing it, rather than us second guessing his intentions.



Sum Up/What’s Next?

So that brings us to the end of the second blog-post looking at the Emote Library system we’re using for Röki and the motivation behind its development. It’s now all up and running in the game, in fact if you’re down at AdventureX over the weekend you be able to experience it for yourself! It adds such a tremendous amount to the game it’s hard to quantify, but it feels like a significant improvement.

To sum up, here are the big things it gives us:-

  • Characters with emotion and personality

  • Improved game-play staging and player feedback (when you have solved a puzzle for example)

  • Added clarity on who is talking in conversations

  • Sense of place


All in all we’re super chuffed with how the system has turned out. We’re continuing to evolve it, linking it up with the animation systems (but that’s another post in it’s own right) amongst other things.

Next up, we’ll be looking at the casting of certain key characters, but more on that next week as we have a very cool announcement to share!

Cheers,

Alex & Tom









































































 
Alex Kanaris-Sotiriou