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.
(Make sure that Chat.BubbleChatEnabled = false and that TextChatService.ChatVersion = LegacyChatService,)
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.
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
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.
I also face this problem, but in addition to that I just have numerous problems with LegacyChatService in today’s engine, some examples I face are that listeners on .Chatted just sometimes won’t get picked up if its on the client and not tied to LocalPlayer, and obviously the conflicting bubbles ROBLOX has added is a minor annoyance. I guess these problems can be put on us though as it is deprecated by ROBLOX, unfortunately.
The reason I don’t like deprecation as an allowable excuse is because TextChatService is what modern stuff uses. Chat has no reason to be touched by modern chat, so I don’t see why there should be any changes that would cause issues with Chat. It’s also a newer issue, so it was fine before Roblox made some sort of internal change.
Maybe this won’t be fixed because it’s deprecated, but I don’t think this issue should’ve occurred in the first place.
I don’t see why they added the BubbleChatEnabled property to Chat service anyways, customization of LegacyChatService should of been left alone and left to the traditional way of just forking the chat system, the customization properties should of stayed to TextChatService.
I think this is what makes this issue so strange. This didn’t happen before. They made some sort of change that caused this to become a new issue. I’m not sure why they were touching anything related to old systems when it seems pretty independent.
Regardless, and I could be wrong of course, but I doubt solving this would be difficult. I tried every method I could think of to fix this, besides making a custom replacement, and it seems to be something that only Roblox can fix with some minor edits.
That disables the classic chat bubbles, but that’s the opposite of what I want. More specifically, I don’t want the new chat bubbles to be triggered when I’m calling on old chat bubbles.