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

I don’t really like how dark the new chat UI is; I think having matching opacity with most of the core UI would look a lot better aesthetically.

6 Likes

TextChatService seems amazing, great job on that, but in my opinion I think the new UI isn’t too good. Don’t get me wrong, it looks pretty nice, but I’m sure some of the problems with it can be fixed before it gets out of beta.

Firstly, the chat window is not aligned with the roblox menu button, which tbh looks pretty ugly.
image

Secondly, the transparency of it is completely different to the topbar buttons, giving an inconsistent appearance.

And lastly, I think this one is a bug, the chat messages seem to be in offset while the window is in scale, making the messages seem tiny compared to the chat window.

Hopefully these issues can be addressed while this new chat is in beta, but other than the small UI issues, I think this new update is great!

8 Likes

The ChatHotkey (SpecialKey) does not work for me. This can easily be solved by using the / on the numpad, but when I am on my laptop, there is no such option. This results in me having to click the chat bar to chat. I’m using a nordic keyboard layout (Hotkey: Shift + 7).
This seems like an important fix for people with non-US keyboard layouts.

Although this could also be an issue with studio as the old chat seems to break sometimes in studio too.

5 Likes

This does in fact match up with Roblox’s core UI standards. The color that is currently being used is a color internally known as BackgroundUIConstrast. But you do have a point. The background is far too dark.

I’m not exactly a UI expert, but do you think this would look better?
image

12 Likes

I definitely think this design looks a lot better and consistent.

It’s not the background color per se as much as it is the transparency.

2 Likes

can someone tell me how to use this? any tutorial?

2 Likes

also smol litl bug
image
when u join, u have to click the chat button 2 times to turn the chat off

3 Likes

Studio tests don’t filter the chat, only live games do.

1 Like

I don’t like the absence of easy to use speaker api in this, before you could easily mute a player by just calling the mute function on their speaker, now we must store whether a player can chat and change the canSend property, and then show that the user is muted to the user.

4 Likes

Do you have any plans to improve command functionality (parameters, auto-completion, etc)? See Cmdr; reducing the amount of systems needed to achieve this sort of behaviour would be great.

6 Likes

What do you mean by name colors? The old chat already has different colors for different players. I should know, I’m always pink.

3 Likes

is this a bug? :beetle:

5 Likes

Thank you!

At first I thought the UI was an April Fools thing my avatar and display name sure are, shush, but it looks amazing!

Thank you for this much, much better chat!

1 Like

There is no point to filter in Studio, especially in a solo session (not team test)
It’s also a big waste of resources

5 Likes

From what I understand, the chat filter isn’t active in Roblox Studio playtests so that players aren’t able to quickly test as many bypasses / filter workarounds without the risk of account moderation. I’m not fully sure about that but that’s the most reasonable conclusion I’ve heard / thought of.

If I remember correctly, around the timeframe when the Spatial Voice Chat Developer Beta started, a “Chat Filtering Level” setting appeared in the “Privacy” section of the account settings page.

Currently it’s locked and unable to be changed (as far as I’m aware) but it appears to be a drop-down menu that will eventually allow players to choose between different filtering levels (<13, 13+, and maybe 18+ if ID verified with an account birthday that’s at least 18). Not sure if that will happen but it seems more likely than ever considering it’s an official setting.

7 Likes

Totally agree, there should be age rating controls allowing experiences and communities to mark themselves as for older audiences.

I believe this was briefly touched on in RDC but it doesn’t seem Roblox has done anything about it since. Hopefully we will start to see this in the near future as Roblox continues outgrowing it’s founding kids games by kids ideas.

6 Likes

It would be more confusing to see filter working in a solo session.

1 Like

It’s great to see that the chat is finally getting an overhaul, and the current chat api is pretty hard to work with, so this is definitely a welcome change. I’m also wondering: will this make current admin command systems obsolete?

Similar to the feature request about simplifying the new Bubble Chat Settings, can we expect API methods to make the customisation of chat features, such as PrefixColor, much simpler?

For instance, to customise the PrefixColor, TextChatService currently requires developers to do the following on the client:

-- LocalScript
--!strict
local TextChatService = game:GetService("TextChatService")
local getColorFromName = require(script.getColorFromName)

TextChatService.OnIncomingMessage = function(message: TextChatMessage)
	local props = Instance.new("TextChatMessageProperties")
	if message.TextSource then
		local colorHex = getColorFromName(message.TextSource.UserId):ToHex()
		props.PrefixText = "<font color='#" .. colorHex .. "'>" .. message.PrefixText .. "</font>"
	end
	return props	
end

This becomes additionally complex and messy as developers introduce features such, as a chat color gamepasses, which often require the developer to verify the information on the server, and to continuously replicate this information to all clients as more players join and leave the game.

This could instead be simplified with server sided methods which simplify the whole process:

TextChatService:SetDefaultTextChatMessage({
	PrefixTextWrapper = "<font color='rgb(255,165,0)'>%s</font>",
	TextWrapper = "<b>%s</b>",
})
TextChatService:SetPlayerDefaultTextChatMessage(game.Players.ForeverHD, {
	PrefixTextWrapper = "<font color='rgb(255,165,0)'>%s</font>",
	TextWrapper = "<b>%s</b>",
})

Third party applications could then check for defaults by the game owner and handle them appropriately with similar Get methods:

local textChatMessage = TextChatService:GetPlayerDefaultTextChatMessage(game.Players.ForeverHD)

Chat customisations are widely used within HD Admin (to highlight the owner of the game, staff members, VIP roles, etc) so anything which makes this process easier without having to worry about conflicting or overwriting the game owners default configurations would be greatly welcome.

More details and examples here:

It’s great to see the chats customisability being opened up and improved with this new service so thanks very much, excited to all the new methods in the upcoming weeks!

17 Likes

While this is really cool, its a bit disappointing that the layout is still generally the same.

I forked the old chat to make this:
image

Its a shame this isnt how the new chat is like, and you cant do this with the new chat either

Also, is whispering removed? Or is it just not implemented yet?

1 Like