How do I disable chat ingame?

Yes I know:

game.StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Chat, false)

However for some reason despite doing this it does not work at all. And I’ve tried waiting a couple seconds then doing it, But still it just does not work.

What can I do to ensure the chat gets disabled?

9 Likes

Have you tried manually disabling Bubble chat and Classic chat?
That should completely disable the chat.

You can do that by playing the game in studio and copying the chat modules folder in StarterPlayer and then click on the Chat Settings script and find the lines for Bubble chat and Classic chat and set them both to false.

All you have to do is this:

Play in-game in studio, open properties and once you open it, you’ll see “chat” beneath “SoundService”. You click on the chat arrow and you’ll see “ClientChatModules”, copy that and leave the game and then paste it back to the chat.

Finally, once you’ve copied and pasted the “ClientChatModules” you open the module and you’ll see a script called “Chat settings”, within that script go and find a line that says “module.ClassicChatEnabled = PlayersService.Classic chat” and once you have found that get rid of the PlayerService.Classic chat and insert false to turn the chat off, you can do the same with the line above it which is the “module.BubbleChatEnabled”

Now, make sure to delete everything in the ClientChatModule except for the Chat Settings script and your all good to go, if it still throws an error make sure to reply to me and I’ll see whether it can be fixed.

6 Likes

Maybe try this:

game.StarterGui:setCoreGuiEnabled( "Chat" , false )

And, to detect that it is working, you could do an if statement

6 Likes

Try waiting for a second before using SetCoreGuiEnabled, the CoreGui connections for chat set after the CoreGui run, and the CoreGui chat connections are not done right away

wait(1)
game.StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Chat, false)
1 Like

There’s also a confusingly named StarterGui:SetCore which has an option to disable chat

in a clientside script in StarterPlayerScripts, try:

StarterGui:SetCore('ChatActive', false)
1 Like

One could also use a pcall success/fail repeat loop to do the the same thing in a more reliable way.

Either way works, but the wait(1) doesn’t 100% guarantee it will be ready.

  • Make sure the code is in a Local (Client sided) script inside the StarterGui service, StarterPlayerScripts, etc.
  • Also try doing a getservice() just in case the startergui hasn’t loaded yet;
game:GetService("StarterGui"):SetCoreGuiEnabled(Enum.CoreGuiType.Chat, false)

(Sorry if I bumped this, but he didn’t mark it as solved. ;-; )

3 Likes

SetCoreGuiEnabled should always work from the getgo because unlike SetCore, the options are registered initially and also respect initial state.

If you want to completely disable the chat, including the backend and not just the topbar item, turn off LoadDefaultChat. None of the Lua Chat System components will load in.

10 Likes

Try using your own custom chat.

make a local script in starter gui with the line of code you said: game.StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Chat, false)

If you want to stop the default chat from loading then go into chat properties and disable this image

If you do both it will completely stop the chat from showing and being used.

11 Likes