Skip to content

Getting Emotional

Personalization for more expressive games in the Atmosphere

rpg.actor
Oct 28, 20265 min read
1

Seeing (Being) Ourselves

In general, players can be vain. Not so egomaniacal, but self-expression is a huge motivator across all sorts of games. This is why in-game cosmetics are worth over $60 BILLION annually, and part of why most popular VR environments have a wall of mirrors crowded with avatars. We love seeing ourselves reflected in experiences we enjoy, and rpg.actor sprites enable that across the open web.

Whenever a game offers character creation, it isn't until the player is partway into the adventure that they start to identify with it. Our affinity for a persona is directly proportional to the time we spend within it. As the portable identities of The Atmosphere grow, they offer an opportunity for games to bypass that long attaching phase by bringing our chosen selves into an experience from the start.

screen3.PNG

The transportable display picture is a prime example of this. Multiple apps already pull the same avatar image from Bluesky and we instantly accept it as ourselves, and are recognized socially by it. However, the static image has limited use and while there are some manipulations which can make it more situationally expressive (greyscaling, flipping, spinning, etc.) they're ultimately best used as flat icons.

In contrast, the rpg.actor sprite is a decorated character clad in items collected from past experience, built to explore environments and engage in virtual spaces. As a class they are more alike their peers than the wide gamut of profile pictures, and more tangible than even the most descriptive @user.handle can be. This is why they work so well for self-expression among peers, the unique choices we make for their shared form do an incredible job of telling others, "this one is me!"

Sweet Emotion

Back in July we quietly updated the rpg.actor Sprite Generator to include a variety of optional facial traits, allowing players to customize their eyes, nose, and mouth to better express their personality. These traits became instantly popular, with over 90% of new characters using something other than the defaults.

It was immediately evident... players really love refined expressions.

With this revelation, we started thinking of new ways to help developers leverage these features and today we are pleased to reveal an improvement to the .sprite lexicon that enables games to more easily leverage greater emotions from player-defined characters within the rpg.actor system.

Our .generator system and the /compose API offered to Creator Accounts already make it possible for developers to hot-swap clothing or items mid-game. With facial traits being just another layer, they could also be exchanged through the same calls. However, needing to summon multiple variants of the sprite into cache and then juggling them for every player was far too cumbersome to be practical for wide use.

This became apparent while working with @wilkinson.graphics on a playable environment for the hijinx.world zine which uses rpg.actor sprites in a virtual hangout. We wanted to combine the scene's voice chat with open mouth traits to create a talking animation (like how we do for the VTuber Kit) and needed a simpler solution. Eventually, it became clear that extending the .sprite lexicon with a series of emoteSheet variants would allow for easy rotation between different expressions.

bruh2.PNG

Multiple expressions can now be stored as an optional subset within a player's existing .sprite and recognized with a clear id like "happy" or "angry" and come as fully rendered sprites with all the expressive changes to their face. Games can select the prepared variants directly, without a runtime compose or complex caching. Simply call the record, and pull whichever emote you need!

Each emote also contains an optional talkSheet, which is identical frame-for-frame except for the mouth being left open. Just swap between the two sheets as you need and suddenly we're talking! (or talking, while crying!)

Ready When You Are

One of the essential features of AT Protocol being user authority over their data, we cannot enforce this upgrade on everyone, but we can make it very easy to obtain!

Anyone signed into rpg.actor should automatically have the upgrade if they used our Sprite Generator to build their character. The enhancement is baked into all sprite generation and new characters will have it by default. We'll be making best efforts to assure that any actively used character receives the emotes.

Chances are (if you're reading this) you're already set.

surprise.PNG

Developers who scope for .sprite authorization can also essentialize the latest sprite sheet iterations by calling POST /api/sprite/upgrade any time, and writing the result to the player's records. (see Dev Guide for best practices)

And... if a legacy or custom sprite doesn't have emotes? No biggie. The emote set is optional and the spriteSheet is still where it's always been as a fallback. Games can keep using their characters, just as they always have.

Making a Scene

Want to see the emotes in action? We've updated the Streampets OBS overlay to recognize your emotions in Streamplace chat and let your on-screen sprite reflect those expressions naturally. If your records are updated, simply type !happy or !sad to see the joy and sorrow on your character's face, or react with relevant emojis to trigger their new expressions.

You can also visit the virtual hangout at hijinx.world where characters will flap their gums as you talk in voice chat, and show expressions based on your typed messages. Join them for a Halloween Party tonight (October 29th) as an official kick-off and we'll see your sprite at the fire pit.

hijinxchill.png

Your Next Move

Streampets and hijinx.world are just the start, and we're very excited to see where else these new emote options appear in games. They offer a wonderful opportunity for developers to leverage our beloved portable identities while giving expressive reactions to critical hits, evocative moments, or gut-wrenching choices. We can't wait to see all the impactful moments this enables.

All the expressions are there, and what they mean in your world is up to your creativity!


If you're keen to explore this, or want to meet a community of game devs building on AT Protocol we invite you to explore atmosphere.games and join its Discord.

Did you enjoy this article?

Recommend it — Standard Reader surfaces well-loved writing to more readers across the network.

Across the AtmosphereDiscussions