.Chatted Randomly Firing Twice in Public Experiences Only

it’s not that hard to fix this

local previousMessage;
player.Chatted:Connect(function(msg)
if previousMessage == msg then return end

previousMessage = msg;

-- do ur stuff here
end)
1 Like

It’s not that it’s inherently hard to fix, but the fact that we’d need to go through games that haven’t had updates in over a year (that are still used by our community).
Anyway, finding workarounds is kind of pointless since it’s a bug that causes, in a lot of cases, merely visual issues with systems such as radios (that’s all that’s been reported by our users). I was more surprised seeing that this was first reported almost a month ago.

1 Like

This issue is still occurring within an experience I develop for and is very infuriating. Even after implementing a debounce that checks for the same message… it still fires twice (for whatever reason)!

Not sure what is going on behind the engine but I am begging for the engineers to check this out and give it their time as it is affecting many experiences that rely on the Chatted event for custom chat UIs.

Edit (after confirmation that this isn’t going to be fixed): If you’re calling some async function within the event then implement your debounce logic there for an interim solution as I had to figure out myself, if not, then you’ll be forced to use the new TextChatService API

4 Likes

Having this issue as well, I went crazy trying to find out why

1 Like

Bug is causing quite a lot of issues for my game, this needs fixing ASAP.

1 Like

Hey everyone, found someone internally to take a look. Hang tight!

4 Likes

This is still happening, really annoying, messes with commands in my game a lot, annoyingly, there’s a pretty significant delay (0.15 seconds) between the two times it gets fired, so you need a long debounce to prevent it.

1 Like

I can confirm that this appears to still be an issue.
Users of my recently released Radio System are also reporting the same bug within games that use LegacyChatService and I can’t recreate the issue within studio.

Here’s our most recent report of this just about an hour ago from this post.

2 Likes

I have a feeling this may not get a lot of attention with Roblox because the new chat system, in regards to chat commands, eliminates this problem because you don’t need the .chatted event anymore. It has a built in chat command creation system that does not need to know what the player chats to perform the commands. Because of this, it was a push for me to finally migrate to the new chat system. :melting_face:

2 Likes

I don’t think roblox will ever fix this issue.
Legacy ChatService kinda got left off

2 Likes

Still experiencing this, affecting my custom chat modifications.

1 Like

Still occurring, any update on this?

1 Like

No updates but to fix this issue you can do something like this

local LastMsg = nil
Player.Chatted:Connect(function(message: string, recipient: Player)
	if LastMsg == message then return end
	LastMsg = message
	task.delay(1.5, function() LastMsg = nil end)
	--// ...
end)

This is a fix I use for my radio system and it works pretty well.

1 Like

Any update on fixing this, it impacts a lot of games. Haven’t heard any updates in months…

2 Likes

Hey everyone, I pinged the engineers for an update here.

1 Like

Hey all, we’re no longer maintaing the legacy chat system so unfortunately cannot get to fixing this bug. Please consider migrating to the new TextChatService, and if that is not currently feasible for you, I’d recommend the workarounds other developers have graciously shared here.

Would it be possible to add some disclaimer to the .Chatted documentation to redirect developers to the TextChatService API? It would probably be infuriating for inexperienced or uninformed developers to use .Chatted without knowing of a better alternative and suddenly have to deal with this issue

1 Like

While chat is deprecated, .Chatted isn’t.

3 Likes

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.