Chat:Chat() Triggers Legacy & Modern Chat Bubbles (Double Chat Bubbles)

The Chat:Chat() method appears to trigger both legacy and modern chat bubbles. In my experience, I have TextChatService set to Legacy and all Bubble Chat related stuff disabled. This behavior seems to be new, or at least I’ve only just now found out about it for one of my older experiences.

This is what appears when using:

game:GetService('Chat'):Chat(game.Players.LocalPlayer.Character.Head,'test')

(Make sure that Chat.BubbleChatEnabled = false and that TextChatService.ChatVersion = LegacyChatService,)

image

The same issue exists regardless of if it was called by the server or the client. I’m only getting the modern chat bubbles appearing from this specific method call and not from normal chat usage.

Expected behavior

The expected result is for Chat:Chat() to only trigger legacy chat bubbles or apply to whichever is selected from TextChatService. It should not be triggering both at the same time.

A private message is associated with this bug report

8 Likes

Isn’t Chat:Chat() already deprecated and isn’t it already said to use TextChatService:DisplayBubble()? Wouldn’t it make this bug report obsolete?

I am unable to reproduce myself, could you provide more information on how your experience’s chat configuration is set up?

This is a newer issue that mildly disrupts older games. My issue is that there’s no reason that this older service should be affected by newer changes. I’ve found one other post regarding this that was posted in May of this year:


Simply set TextChatService.ChatVersion to Enum.ChatVersion.LegacyChatService and then use the method above. You can also put this script in a part, but you’ll still need to set the ChatVersion to Legacy:

local chat = game:GetService('Chat')
local part = script.Parent

chat.BubbleChatEnabled = false

while true do
	chat:Chat(part,'test')
	task.wait(1)
end

This only seems to happen when Chat.BubbleChatEnabled is false.

This also affects Dialogs.

2 Likes

Setting that property to true will remove the classic bubble system for some reason, which is not the result I would like.

Another thing that bothers me is that BubbleChatConfiguration, when Enabled is set to false, doesn’t seem to do anything whatsoever. Even setting MaxBubbles to 0 does nothing, nor does BubbleDuration.

Either way, the main issue is that Chat:Chat() should not be firing the modern chat bubble system and the legacy bubble system at the same time, especially if Legacy is selected within TextChatService.

BubbleChatConfiguration is part of TextChatService, so it will not have any effect if you’re using LegacyChatService.

The modern chat bubbles are always used if Chat.BubbleChatEnabled is true, this has been the case since 2020, before TextChatService even existed. But if you make it false and then call Chat:Chat() it should only use the old chat bubbles; it should not be creating two completely different sets of chat bubbles.

I was editing this to specifically modify modern chat bubbles to try and remove them, but that did nothing.

This seems weirdly named as it’s two different systems, but fair enough I guess.

It already is set to false. This is a new issue as I haven’t updated the game in ages. Roblox has made some sort of internal change that caused this to become a new issue.

I know it’s a new issue, I was just giving more context on how the bug is performed, especially since it’s not immediately obvious on how to use the old bubbles, sorry if that was confusing.

No that’s fine. Thank you for the added context. I was a bit confused because that was happening by default in a new place template, but it seems to only happen by default with the Classic Baseplate (or I assume any older template) after TextChatService.ChatVersion is set to LegacyChatService. Now I understand why others didn’t have this appear.