Player can no longer chat if they were in a TextChannel that has been destroyed

When channel tabs are enabled, if a player’s TextSource is in a TextChannel, and the TextChannel gets destroyed while the player is still tabbed into the channel, the player will no longer be able to chat at all, and this warning appears: TextChatService is not enabled. Check TextChatService.ChatVersion and make sure it is not set as ChatVersion.LegacyChatService.

Steps:

  1. Enable TextChatService and ChannelTabsConfiguration.
  2. Create a TextChannel and add a player to the TextChannel with TextChannel:AddUserAsync()
  3. Open the TextChannel’s tab in the chat UI.
  4. Delete the TextChannel with TextChannel:Destroy() while the channel’s tab is selected. This will cause the player not to be able to chat at all anymore. If the player attempts to chat, this warning will appear. TextChatService is not enabled. Check TextChatService.ChatVersion and make sure it is not set as ChatVersion.LegacyChatService.

Repro file:
TextChannel bug 2.rbxl (54.0 KB)

Expected behavior

I expect the player to still be able to chat in the General text channel if another TextChannel they are in gets deleted.

Edit: A simple workaround is changing the TargetTextChannel to “RBXGeneral” in ChatInputBarConfiguration if the player’s tab is open to a TextChannel that no longer exists.

7 Likes

Hi @ShinyGriffin - thanks again for reporting! Also investigating this one and working on a fix.

5 Likes

May or may not be related, but calling AddUserAsync on a TextChannel parented to nil will also display the “TextChatService is not enabled.” message, which is a bit misleading.

This bug and another bug have incorrectly been marked as “fixed”. I am still experiencing both of these issues in live games.

Im not sure why it was marked as fixed so early. We do have a fix pending to be released!

4 Likes