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.