Improvements to Experience Chat Performance

seems like the improvement is only about 3ms, if it even improved at all
hopefully making a custom chat using TextChatService will allow you to not do whatever silly mistake roblox is doing with their chat
it’s all over if custom chats are going to be unable to bypass all this frametime accumulation :wilted_flower:

2 Likes

About this, I disabled the in-experience chat completely through the settings and it still consumed resources…

Also the chat window and the icon still appeared for me (albeit without being able to chat), even though it’s disabled. This is another bug that have been reported.

5 Likes

re-asking this because no one told me what the new improvements to vc look like/are

1 Like

You can use DisplaySystemMessage() to send your messages from NPCs. If you’re trying to do it from the server, you’re going to have to fire a RemoteEvent for all the clients you wish to receive the message (and possibly any metadata) you want and have the clients call DisplaySystemMessage() themselves.

As for customization, they have rich text enabled so you can simply wrap the text in whatever you’d like from this nice list (Rich text markup). If you want to customize a player’s name or add a new “tag” you can change the PrefixText by returning a newly created TextChatMessageProperties with the properties you want with the OnIncomingMessage callback.

Attached you’ll find a quickly spun-up place (uncopylocked) demonstrating some of this. The RemoteEvent is in ReplicatedStorage, the clientside implementation in StarterGui, and the serverside implementation in ServerScriptService.
image

5 Likes

Escape key still doesn’t erase the chat like it did with legacy chat. Is this intentional?

1 Like

Every weekend, my community holds an international summit. An entire auditorium full of hundreds of simultaneous chat bubbles can get overwhelming. Glad to see this is being reoptimized!

1 Like

This has completely removed any chat-related lag in all the games I’ve built custom chat systems for! Finally, no lag spikes, love to see it.

4 Likes

I didn’t know about this! Thank you for going above and beyond to provide a place for me to look at!

2 Likes

We’ve optimized the voice bubble so rerenders less and consumes less CPU cycles. There are no visual change planned, but we are working on more voice-specific optimizations.

3 Likes

As mentioned in https://devforum.roblox.com/t/providing-you-more-control-and-better-performance/3590495, we’ve seen about a 40% improvement in average frame time across all platforms. Note that this doesn’t mean that the ExperienceChatMain bar is going to shrink 40% on all experiences, but depending on how text/voice chat is configured, the bar should both shrink and appear less frequently. All that said, we know how frustrating it is to see experience chat consume multiple milliseconds on specific frames and are working hard to address this.

2 Likes

Hey, this is something that we looked into, but unfortunately we couldn’t figure out an easy way to optimize the bubbles while keeping the existing functionality. We have some ideas on how to do this and will let everyone know when this has been implemented.

2 Likes