New Beta In-Experience Chat System for Channels, Filtering and More!

I think that could make the feature more confusing, but someone could probably make a legacy chat theme

11 Likes

After almost 2 years, the chat will finally match the theme with the Topbar!

What I would like to see with the commands is something similar to Discord’s slash commands:


It would probably get admin systems to add Slash Commands to their commands.

Anyways, can’t wait for this to roll out to public servers!

48 Likes

That’d be super cool, they could release it as a plugin too for you to pick which year it is!

8 Likes

Damn, Very cool update on chat. Roblox has been growing and growing to a new level.

7 Likes

I was just going to write a command system (outside of chat) for debugging, but I might actually integrate it into the new chat. It would be really nice if we could see a list of commands as we’re typing it with similar ones, along with the description and parameters, then Roblox could give us each parameter when one is performed. Very promising and clean!

On other notes, I did really like the option to be able to resize the old chat interface on PC since I’ve always liked to enable it when possible since the default scaling usually bugs me. Is there any chance we can see this added back, possibly as a setting? Heck, maybe even if you just have a small invisible dragger to the bottom right, like Windows has for scaling windows. I know we might end up seeing this if it does get added like many of the older settings (as mentioned), but I’m not too sure.

I’d typically complain for it no longer being under PlayerGui since I sometimes use it to customize the interface deeper for settings that may not be provided, like adding rounded corners on the existing one, but I’d likely create my own if it’s that important to me. On the upside, I do enjoy PlayerGui being a bit cleaner by default!

ps: It would be nice if the scaling was clamped past a certain aspect ratio, so it won’t be so extreme on wider viewports - like it does feel a bit too long by default in my studio window.

14 Likes

Chat seems to become super wide on 16:9 displays

24 Likes

Found an issue already!


I have this UI set to overlap the chat, however it isn’t overlapping how I want it to.

LegacyChatService did get overlapped. I know I could just disable chat until the game is loaded, but I would like to see this fixed for games that don’t really get updated anymore.

Edit: Disabling chat didn’t work in my ReplicatedFirst Loading script. What I mean here is that you could still see the chat window.

game:GetService("ReplicatedFirst"):RemoveDefaultLoadingScreen()
local StarterGui = game:GetService("StarterGui")
StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Chat, false)

-- Visuals for loading screen are here

-- When loaded

StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Chat, true)
15 Likes

One of my biggest gripes with the old ChatService API was that muting a player in the “All” channel didn’t mute them from being able to whisper chat directly to someone. Even if you muted them in individual channels directed to someone specific (which were the ones used for whisper chats), there would be nothing stopping the other user from just typing “/unmute [speaker]” to unmute them. Hopefully, this new TextChatService has a better solution for this!

3 Likes

This wouldn’t work
Roblox would have to have archived and saved the scripts for all their previous chat systems and modules. On top of this, the older ones would be less likely to work correctly now because over time new features, instances, functions etc have been introduced and old ones have been deprecated or changed

6 Likes

Do channels work? Don’t seem to see any tab showing channels.

5 Likes

Is there a way to make the chat window invisible, like this?

Or is this planned, this would be very cool!

18 Likes

They don’t have to rip it straight off from the previous years, they could just make it customizable so that it looks like the year, or atleast have presets for them.

2 Likes

Sure, but still I doubt Roblox would do something like this

4 Likes

This update seems good so far!

1 Like

Thanks for the reply! The TextChatService version won’t respond to SetCoreGuiEnabled at the moment. The more straight-forward way to hide the chat for this loading screen would be something like the following:

local TextChatService = game:GetService("TextChatService")
TextChatService:FindFirstChildOfClass("ChatInputBarConfiguration").Enabled = false
TextChatService:FindFirstChildOfClass("ChatWindowConfiguration").Enabled = false

We decided to start exposing the API this way to make it easier for developers to understand and use the API. We will consider how this feature interacts with SetCoreGuiEnabled, I think it’s valid since other platform UI respects this!

12 Likes

We aim to have formal documentation of the APIs and include tutorials within the next two weeks :smile:

12 Likes

textchatservice version [{}.{}] be lookin fine
image

30 Likes

Knew this was coming for a while and had been playing around with it.

Can we please get GUI customisation on the level that we had with the old one, its cool to see the old ChatService libraries moved over to the C++ side with these instances, but it’d still be nice to completely overhaul the GUI.

I imagine the challenge here is how you allow this customisation without allowing exploits such as the infamous making people say things they didn’t.

14 Likes

Alright! Pretty cool.

If you are looking for an easier way of hiding the chat, I would recommend adding an .Enabled property in TextChatService. That way, it would make hiding the chat easier for newer developers.

5 Likes

sure, it’s cool. But I prefer to write my own text commands rather than use the roblox default one. It opens up the door for more customizability for me.

Also, you can’t filter messages like you would with the lua chat system.

Really seems like a decent change, but a bit useless at the same time.

1 Like