TextChatService Legacy ChatVersion is not respected by ExperienceChatMain

Due to significant performance issues with the ExperienceChatMain script, I have been trying to revert back to the legacy chat system to help players with performance in game.

However, switching to Enum.ChatVersion.Legacy, disabling BubbleChat, or any variant thereof does not disable the BubbleChat portions of ExperienceChatMain, meaning there is a double overhead of running two bubble chats (legacy and TextChatService).

This is because the BubbleChatApp component renders a BillboardGui component for every player without checking if BubbleChat is enabled in BubbleChatConfiguration, and without checking if TextChatService.ChatVersion is set to Legacy. This leads to a significant performance hit which I cannot disable without intentionally causing the bubble chat to throw an exception.

Expected behavior

If I disable BubbleChat in BubbleChatConfiguration, or switch to Legacy Chat, the new experience chat should not render billboards for players or connect events on Heartbeat to check positions.

5 Likes

Thank you for reporting this! Our team is aware of the issue and we are investigating.

2 Likes

Are there any updates or news to this issue?