Enabling Cross-Game Player Profiles Has Never Been Simpler

Cross-game player profiles bear tons of benefits for players and developers alike. Ready’s tech allows players the environment to move freely between games under a single username identity, while enabling developers to differentiate serious from casual players and use the information for loyalty reward distribution, player recognition, and targeted marketing of new game titles.

The Ready Games
3 min readJun 8, 2023

Cross-Game Player XP

XP is a valuable asset to players. It takes time and effort to build, and it accounts for player reputation. Let’s say Player-A spent 1000 hours in 2022 playing Game-A. Come 2023, Player-A has turned his attention to the incredible new Game-B. If he starts playing Game-B, he starts with zero XP and must build up his reputation on the new game from nothing. For multiplayer social games, the ramifications of building entirely new XP and friends lists is even farther reaching.

But what if player profiles in Games A and B were connected? What if Player-A could start playing Game-B and carry with him all of the experience and friends he gathered in Game A? The switch would be seamless for the player, and developers likewise would reap benefits.

When new players enter a game, developers have zero information on what kind of gamer they are. If player profiles are cross-game interoperable, each player’s track record is visible to the developers, and game developers can target experienced players with level-up offers and special perks to maintain their loyalty and retain them as players.

Interoperable Player Profiles

Cross-game player profiles are the key to all of these benefits. Ready’s player profiles are interoperable throughout games in the ecosystem, allowing players to track their XP and developers to track their players over the long term.

Flexible Game UI/UX

Cross-game player profiles do not mean that they need to look the same in each game. The profile backend can be attached to custom UI/UX designs to fit the unique feel of each individual game. Player profiles can be as prominent or subtle as needed per each game, with the ability to include avatar images, bio descriptions, and of course, a custom player username.

Usernames

Ready player profiles require a username, created as follows:

using RGN.Modules.UserProfile;

namespace SomeNamespace
{
internal sealed class UpdateUserName
{
public async void UpdateDisplayNameAsync(string displayName)
{
await UserProfileModule.I.SetDisplayNameAsync(displayName);
}
}
}

Avatar Images

Player avatars are optional and can be included depending on the type of game and its needs.

using RGN.Modules.UserProfile;
using UnityEngine;

namespace SomeNamespace
{
internal sealed class UpdateUserAvatarImage
{
public async void UpdateUserAvatarAsync(UnityEngine.Texture2D avatarTexture)
{
byte[] bytes = avatarTexture.EncodeToPNG();
bool success = await UserProfileModule.I.UploadAvatarImageAsync(bytes);
}
}
}

Player Bios

User bios are also supported, allowing games to include a short bio description if relevant (optional):

using RGN.Modules.UserProfile;

namespace SomeNamespace
{
internal sealed class UpdateUserBio
{
public async void UpdateBioAsync(string bio)
{
await UserProfileModule.I.SetBioAsync(bio);
}
}
}

Player Profiles vs. Player Wallets

It is important to distinguish Ready’s Player Profiles from its Player Wallets. Player Profiles are used to connect to the game and enable cross-game player identities. In-game currencies (not to be confused with cryptocurrencies) are stored in a player’s profile. These currencies can be used to purchase in-game items including (but not limited to) NFT virtual items. The NFTs are thereafter stored in the player’s crypto wallet.

This is how a player’s currency balance is retrieved to appear on their profile:

using System.Collections.Generic;
using RGN.Modules.Currency;
using RGN.Modules.UserProfile;

namespace SomeNamespace
{
internal sealed class RetrieveUserCurrencies
{
public async void GetUserCurrenciesAsync()
{
List<Currency> currencies = await UserProfileModule.I.GetUserCurrenciesAsync();
foreach (Currency currency in currencies)
{
UnityEngine.Debug.Log(currency.name + currency.quantity);
}
}
}
}

Build Better Web3 Games

Ready Games’ tech stack is unmatched in its resources for developers to build web3 games for web2-inclusive audiences, with tons of features that every gamer can enjoy. Right now Ready’s developer tools are available for early access for building new web3 games and evolving web2 games to web3. Early access is free of charge. Don’t miss out!

For more technical information, refer to the public SDK documentation.

--

--

The Ready Games

Making social games & infrastructure for the Web3/Game Dev creator economy. ready.gg