Migrate to TextChatService: Removing Support for Legacy Chat and Custom Chat Systems

@sizquirt @oofman9009 we are enabling the ability to attach comments & replies directly into objects in the 3D viewport in Studio early next year. We believe this will better meet creator team needs when communicating within Studio. Do you expect chat use cases that are not met by the ability to comment within Studio? I’d love to learn more. Feel free to message me directly

Does anyone know how to make working commands in TextChatService? As I wrote earlier, I use custom emotes that are played via commands. The commands in the old chat work without problems (if you discard the messages about R15, since my game works for the R6 type), but they do not work in the TextChatService. And so I was faced with a choice: either write a script that will allow you to execute commands in a new chat, or create a special UI in which emotions can be played at click the button. I know the second option is a little easier, but I would still like to solve the problem with commands.

Have you tried using TextChatCommands? Super easy to set up.

The new chat’s text size is actually larger than legacy chat. The problem is, Gotham used to be the default TextChatService font, but it was removed from Roblox and replaced with Montserrat, which is smaller than Gotham. So unfortunately every game made before Gotham’s removal has a very small chat text size now due to the font automatically being replaced with Montserrat.

When Gotham was removed, the default font in new projects became Builder Sans, which is larger. You can open up a new baseplate and look at TextChatService’s properties, and compare them to the properties in a place made before Gotham’s removal. I’d recommend updating to the new property defaults. (check TextSize and FontFace)

1 Like

MODERATING games for this is not smart at all.

It’s legacy, let it be.

I wish ROBLOX would focus more on bettering their platform instead of breaking things that do not need fixing.

4 Likes

i just realized,

isnt it crazy how they give us 6 months to replace our chat but only 2 weeks to replace our sounds and tried to give us just 1 week to replace our hats

2 Likes

Is there any way to get this chats chat bubbles to not be behind other UIs
image

1 Like

I doubt people will want to use sticky notes instead of discussing in a chat window

yeah no i believe that’d be more annoying to work with, just keep the team chat, we love our little small talk every now and then

A bit late on responding here but I like this and will definitely give the credit to Roblox where due - They are giving us a very large chunk of time to adjust our experiences to match their new standards, which has not always been the case, and at the same time also appears to be taking a big step in addressing a major issue which is the child safety issue that has plagued Roblox for a long time.

Why /e messages don’t count for chatwindowadded or incomingmessage? I ain’t going to create these command instances for stuff like spell casting through chat with /e, that’s absurd. Also what’s the deal with the player keeping on jumping when u hit the / to open chat while jumping, why do I have to come up with a custom solution to make the character stop jumping as expected?! If you’re going to force us to migrate to your new chat system y’all better make sure it’s actually better than the old one. Y’all be constantly pushing incomplete updates and forcing them down our throats

This is a terrible idea. The older Chat system had functions and events which TextChatService doesn’t have. Many things like TheDevKing’s Funny Scripting Ideas stops working, and Player.Chatted is used for many things like Chat based commands. Is there a TextChatService version of Player.Chatted?

Yes, there is. There’s probably even more than I say here!

Player.Chatted (works on the Server only)

TextChatService.OnIncomingMessage - (client only, only 1 works at a time naturally)
TextChatService.MessageReceived - (client only, perhaps other issues)

TextChatCommand - (hides chat message)

The issues mentioned here can be solved easily.

Is there any news of fixing the slow ExperienceChatMain?? I refuse to switch till this has been fixed, it severely affect my game’s framerate, any date of removal shouldn’t have been released whilst crippling bugs like this exist

The issue is that all of these are client-only. As far as I’m aware, an equivalent that exists on the server has not been made yet.

This event has a vulnerability: An exploiter can not fire it.

Sorry, I don’t really understand. Did you mean an exploiter can fire it?
What would make them unable to do so make this a vulnerability?

An exploiter can modify their chat system so as not to cause this event to be fired, even when they chat. The developer couldn’t see or detect their message on the server.

1 Like

It was probably the same with the old chat then, wasn’t it?

We can still create and publish new experiences that use the Legacy Chat System. It’s 18 December 2024 today, is this a bug or an oversight or did you backtrack to implement this change?

1 Like

I don’t know how to trigger an event when a message in TextChatService has been received, I tried using MessageReceived and OnIncomingMessage. But it doesn’t work. Here is my script:

local TCS = game:GetService("TextChatService")

local function textc()
print("Chat!")
end

TCS.OnIncomingMessage:Connect(textc)

I want to be able to detect a text message in Chat. In the TextChatService of my experience, the ChatVersion is set to TextChatService, not LegacyChatService.