ChatInstallVerifier LocalScript provided with the default chat system yields forever while trying to fetch the StarterPlayerScripts object

Issue Type: Other
Impact: Moderate
Frequency: Constantly
Date First Experienced: 2021-02-10 00:02:00 (-06:00)
Date Last Experienced: 2021-02-16 00:02:00 (-06:00)

Reproduction Steps:
A recent change made last week to enforce the installation of Roblox’s default BubbleChat/ChatScript LocalScripts into the PlayerScripts has a silent problem that is preventing the chat system from loading, when encountering the race condition that it is attempting to prevent.

This problem can be observed at Line 19 of ChatInstallVerifier.lua, located at content/scripts/CoreScripts/Modules/Server/ClientChat:

To reproduce this issue:

  1. Start a Play Solo session in Roblox Studio
  2. Navigate to Players/{Username}/PlayerGui
  3. Observe the ChatInstallVerifier scripts that are stuck in limbo.

Expected Behavior:
The BubbleChat and ChatScript should be loaded into the PlayerScripts by copying it from the StarterPlayerScripts object located under the StarterPlayer service, in the event that it loaded into the game late and was missed by clients that have already loaded into the game.

Actual Behavior:
The waitForChildOfClass function erroneously searches for a StarterPlayerScripts object inside of the LocalPlayer rather than the StarterPlayer, and silently goes into an infinite yield as a result.

As a result, I am unable to use Roblox’s chat without manually inserting the scripts myself.

Workaround:
I can add my own fork of the verifier that correctly searches against the StarterPlayer instead of the LocalPlayer for the StarterPlayerScripts. This issue only seems to happen in Roblox Studio, so it should not be affecting live games.

10 Likes

Thanks, we’ve submitted a fix. This will be fixed early next week.

6 Likes

I’m still experiencing this. When I start a new project, chat works fine, so I’m assuming the fix is in.
But, in the game i’m working on the problem persists. I have a custom parser in ClientChatModules.CommandModules. If I remove the parser, chat does work, but if I install the custom state, then this issue comes back. If I copy the files manually, then chat works.

This issue should now be resolved! If this issue is still occurring, please create a new topic for us to look into.

2 Likes

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