5 Essential Features for In-Game Chat Players Will Love
Published: 2024-05-14 22:06:24

[In-game chat](https://www.pubnub.com/industry/gaming/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) is a powerful tool for game developers to drive player engagement and increase retention to create a [connected, digital experience](https://www.pubnub.com/blog/building-real-time-experiences-a-developers-guide/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en). But, when using in-game chat in your game, players will bring expectations based on their everyday experiences with chat apps like Discord, WhatsApp, WeChat, Slack, and Messenger. Your goal should be to create a gaming experience that meets these players' expectations during gameplay. However, this is much easier said than done. Ensuring you can scale with your players' needs, reliably filtering and maintaining these chat connections, all while securing their messages in real time is a monumental challenge.

This is where [PubNub](https://www.pubnub.com/blog/pubnub-what-is-it-and-why-do-you-need-it/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) can help. As a developer API platform that enables real-time updates with global scalability and low latency, PubNub is effectively leveraged to develop an [in-game chat infrastructure](https://www.pubnub.com/docs/chat/overview?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en). Serving as the backbone for over [2000 customers](https://www.pubnub.com/blog/getting-started-7-ways-customers-use-pubnub/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) hailing from diverse industries, including gaming. They can trust PubNub to power their online features for games and tools for in-game chat, live leaderboard updates, and alerts and notifications. This creates a platform to reel players back into the game, time and again.

Players expect features to seamlessly blend into your UI, vivifying their conversations, and accommodating the personal relationships they’ve nurtured by playing games. To build an in-game chat that your players would want to use, it's essential to stay updated on the features you can't overlook and how PubNub provides solutions for these features.

Chat Rooms/ Group Chat
----------------------

![](https://www.pubnub.com/cdn/3prze68gbwl1/4z3G7ift0onjlXkYZclDy5/ee2648db2ba98e99507172d14e7e1e8f/Feature_ChatRooms.jpg)

While this may seem apparent, you can't overstate the importance of clear, intuitive methods for players to interact with a specific group of fellow gamers. Most MMOs twenty years ago provided broad communication options such as local, party, or guild text chat channels. Just like in real life where they are playing games in different groups, contemporary players seek the freedom to choose their communication partners**,** switch between specifically composed channels, and do so intuitively.

PubNub's [Real-time Data API](https://www.pubnub.com/learn/glossary/what-is-real-time-data/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) contains a [Publish-Subscribe API](https://www.pubnub.com/learn/glossary/what-is-publish-subscribe/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) that describes the flow of messages between applications and devices. A [publisher](https://www.pubnub.com/docs/general/basics/send-messages?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) (any source of data) sends messages out to interested [subscribers](https://www.pubnub.com/docs/general/basics/receive-messages?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) (receivers of data) via live-feed data streams known as [channels](https://www.pubnub.com/docs/general/basics/receive-messages?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) (topics). All subscribers to a specific publisher channel are immediately notified when there are new messages received on that channel, and the message data (or payload) is received together with the notification.

Messages can be stored and retrieved as they get sent over the network using the [Message Persistence](https://www.pubnub.com/docs/chat/sdks/messages/message-history?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) feature, where each message is stored on the channel it was published, timestamped to the nearest 10 nanoseconds. In case players are offline during conversations, messages can be stored and retrieved using Message Persistence. Offline players can also be alerted to these missed messages using mobile [push notifications](https://www.pubnub.com/docs/chat/sdks/push-notifications?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) via PubNub's Mobile Push Gateway, so players never miss out.

If you would like to learn how to add chat to your Unity game, you can follow our [how-to guide](https://www.pubnub.com/how-to/add-real-time-chat-to-your-unity-game/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) on adding real-time chat to your Unity game. We also have a dedicated [Chat SDK](https://www.pubnub.com/docs/chat/chat-sdk/overview?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) that offers a set of handy out-of-the-box chat features, like read receipts, mentions, unread message counts, threads, and more.

You can also use [BizOps Workspace](https://www.pubnub.com/products/bizops-workspace/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en), a set of UI tools that help you manage your application, to watch live previews of conversations happening in real-time and take action to manually moderate that conversation, for example, by muting or banning users.

Friends
-------

![](https://www.pubnub.com/cdn/3prze68gbwl1/MSYrUYSDes1EcMS0INszB/ad57ceb9c57d596f1c123bc84d7ebd8a/Feature_Friends.jpg)

To ensure that your chat becomes the centerpiece of a truly social experience, facilitating personal connections between players is quintessential. This is especially true if you're targeting players looking forward to teaming up with real-life friends in the game. Just like a pack of friends enjoying a session of playing games in the real world, the virtual world must also cater to this camaraderie. Be it for organizing game nights between friends or kindling friendships online, the friend features paves the way for players to connect, chat, and play together with ease**.**

PubNub's technology ensures that chat data transmission meets the uptrend privacy and security standards. [Presence](https://www.pubnub.com/docs/presence/overview?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) monitors the [subscribers](https://www.pubnub.com/docs/messages/receive?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) (players) of [channels](https://www.pubnub.com/docs/channels/overview?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en), used to transmit data between devices. Consequently, players have real-time insights into who's currently online, the joining or leaving of players from a channel, as well as the channels a player is subscribed to.

To see a friend list in action, you can follow this [how-to guide](https://www.pubnub.com/how-to/add-friend-list-to-your-unity-game/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) for adding a friend list to a Unity Game or follow our documentation in adding a friend list to your own game.

Reactions
---------

![](https://www.pubnub.com/cdn/3prze68gbwl1/2AnHL3pcLvUbDCPPrsYhzw/bf50b08595903873b8e51eff28b6164b/Feature_Reactions.jpg)

Conversations are where players will express their frustrations and elations. Of course, an emoji says a lot, but reactions let players put their emotions in context**.** They’re a lightweight but fast way for players to comment on one another’s messages, and for others in a channel to easily grasp the general flow and feel of the conversation. More than anything, they give players an expansive range of expression to discuss, meme, and react to moments in your game.

PubNub's [message reactions](https://www.pubnub.com/docs/general/messages/actions?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) allow players to send back an emoji or custom reaction to a message they received. These reactions are typically visible to all players in the chat room and are displayed with the original message. We offer adding message reactions to many of our SDKs.

Be sure to follow [how to add reactions and emojis to messages with the PubNub Chat SDK](https://www.pubnub.com/how-to/chat-sdk-add-reactions-to-messages/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) with our in-depth how-to guide.

Typing Indicators
-----------------

![](https://www.pubnub.com/cdn/3prze68gbwl1/4OhVIBSAs82LP7nwwwztBE/0ed0e660216baadae7571f7ff7634687/Feature_TypingIndicators.jpg)

Your game will probably have a lot going on. So, don’t make players wait around looking at silent threads. Typing indicators help bring immediacy to text-based interactions**,** letting players know at a glance that others are active in the conversation. They are little pieces of visual feedback, and they go a long way toward making chat feel like an organic, life-like interaction. Typing indicators help prevent cross talk, or might just make it clear when somebody isn’t interested in waiting their turn.

PubNub supports [typing indicators](https://www.pubnub.com/docs/chat/sdks/messages/typing?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) that enable players to know if other players are typing messages in a channel. Once a player begins to type, other players can see the typing indicator appear on the screen in real time. You can trigger a typing event when a user starts typing a message and other users in the channel receive these events in real time to show typing indicators on the screen.

Read Receipts
-------------

![](https://www.pubnub.com/cdn/3prze68gbwl1/3cQthqDQm3cjtvt0ZnnoAV/52d50ca9f50cf292f5d5678769967fe2/Feature_ReadReceipts.jpg)

Do your players want to invite friends to a game night? Maybe they’re asking for help with a puzzle, or are sending an SOS from deep in a dungeon. As in real life, your players will want to know that their messages were received. Like with any game mechanic, feedback in the chat is crucial to maintain awareness and satisfaction**.** Plus, seeing that they’ve been heard might stop players from spamming your main channel. These pair perfectly with typing indicators to make a truly organic in-game chat experience.

PubNub's [message receipts](https://www.pubnub.com/docs/chat/sdks/messages/message-receipts?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) enable players to track the delivery of messages in a channel. Message receipts include both delivered receipts, an indication that messages have been delivered to a user, and read receipts, an indication that a player has read the message.

PubNub Offers the Features You Need
-----------------------------------

No matter who your players are, they have likely built up habits and expectations around their day-to-day chat experiences. This makes sense: features like typing indicators, reactions, and read receipts lend _feedback_ and a sense of _immediacy_ to chat. In turn, players experience smooth, natural communication. When thinking about in-game chat, this level of interaction is the basis of any good gaming community. You’ll want to give players feedback, expressive freedom, and the ability to fine-tune their own social experience.

Implementing features like this can be challenging, adding what feels like more development time just to get your game out the door. Compared to the core needs of your game, they can seem like luxuries. But, if your game relies on community, you need to give players chat they’ll want to use. Luckily, when it comes to building full-featured in-game chat, you don’t have to reinvent the wheel.

PubNub offers functionality readily available in our SDKs and even a dedicated [Chat SDK](https://www.pubnub.com/products/chat-sdk/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) to provide several out-of-the-box chat features ready to go. Beyond providing the core, real-time infrastructure to send and receive messages, our SDKs offer easy-to-use endpoints to quickly implement essential chat features like:

-   [Read receipts](https://www.pubnub.com/docs/chat/sdks/messages/message-receipts?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en)
    
-   [Typing indicators](https://www.pubnub.com/docs/chat/sdks/messages/typing?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en)
    
-   [Chat rooms](https://www.pubnub.com/docs/chat/sdks/channels/channel-types-names?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) (plus Message Persistence)
    
-   Translation and [filtering](https://www.pubnub.com/docs/chat/sdks/moderation/filtering?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) APIs
    
-   [Quotes](https://www.pubnub.com/docs/chat/chat-sdk/build/features/messages/quotes?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en)
    
-   [Mentions](https://www.pubnub.com/docs/chat/chat-sdk/build/features/users/mentions?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en)
    
-   [Channel References](https://www.pubnub.com/docs/chat/chat-sdk/build/features/channels/references?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en)
    
-   [Anti-spam Configuration](https://www.pubnub.com/docs/chat/chat-sdk/build/configuration#initialize-pubnub?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en)
    

Our [real-time data API](https://www.pubnub.com/learn/glossary/what-is-real-time-data/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) is flexible, so you can roll out these features quickly. Our globally available messaging infrastructure then lets you expand as your game, and needs, evolve. [Getting started](https://www.pubnub.com/developers/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) is easy. And, if you have any questions, we offer support 24/7 worldwide. With PubNub, you can start building world-class, in-game chat today.

How can PubNub help you?
========================

This article was originally published on [PubNub.com](https://www.pubnub.com/blog/5-essential-features-for-in-game-chat-players-will-love/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en)

Our platform helps developers build, deliver, and manage real-time interactivity for web apps, mobile apps, and IoT devices.

The foundation of our platform is the industry's largest and most scalable real-time edge messaging network. With over 15 points-of-presence worldwide supporting 800 million monthly active users, and 99.999% reliability, you'll never have to worry about outages, concurrency limits, or any latency issues caused by traffic spikes.

Experience PubNub
-----------------

Check out [Live Tour](https://www.pubnub.com/tour/introduction/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) to understand the essential concepts behind every PubNub-powered app in less than 5 minutes

Get Setup
---------

Sign up for a [PubNub account](https://admin.pubnub.com/signup/?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) for immediate access to PubNub keys for free

Get Started
-----------

The [PubNub docs](https://www.pubnub.com/docs?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en) will get you up and running, regardless of your use case or [SDK](https://www.pubnub.com/docs?utm_source=medium&utm_medium=syndication&utm_campaign=off_domain&utm_content=en)