Hi Developers,
We are excited to announce that after months of bug fixes and ensuring stability, we are making TextChatService the default in Studio for new experiences! This change does NOT affect your existing experiences.
What is TextChatService?
We’re investing heavily into TextChatService as the new Roblox in-experience text chat system. It is a secure, modern, and easily extendable chat that is a successor to the existing Chat service. This system is more sustainable for engineers at Roblox to iterate on, which means that we will be delivering regular fixes and new features to TextChatService that shouldn’t conflict with any code you may have written that uses it.
Why use TextChatService?
The primary reason we are moving forward with TextChatService is to ensure a secure chat for our experiences and users. The legacy chat system has vulnerabilities that led to security incidents, and the way it allows for forking has made it difficult for us to ship fixes and security updates. We don’t want our users or developers to have to worry about their chat not being safe, so our goal with TextChatService is to ensure a secure chat system, while still providing reasonable (and easier!) developer customization through regular updates.
What’s next?
-
We will be addressing developer needs for their experiences to migrate to TextChatService. Top examples include granular bubble chat customization and TextChannel UI support.
-
As we are no longer maintaining it, we will mark the legacy chat service and its APIs as deprecated.
-
You can still use legacy chat in your experiences, but it will no longer be actively maintained.
-
We will not require TextChatService for new experiences until a majority of developer needs are addressed.
-
How to switch to TextChatService
If you already have an existing experience, please read this guide on how to enable TextChatService. Some additional work may be necessary depending on your current chat use cases, so we’ve created the following docs to help you migrate:
- Extending Chat Functionalities and API Walkthrough: In-Experience Chat System
- UI Customizations: Customizing In-Experience Chat
- Migrating from Legacy Chat
If you have any difficulties migrating your experience to TextChatService, please reach out to us.
How to opt-out of TextChatService
If you wish to go back to the legacy chat, you can set TextChatService.ChatVersion
to LegacyChatService
:
If you opt-out, please let us know why so we can improve TextChatService to address your needs.
Special thanks to @be_nj, @Clasifex, @daweezy99, @Loonatheexodus, @Roblorcah, and @SubtleShuttle for their work on TextChatService!