hide chat bubbles
removes the textchat bubble system.
overview
the hide chat bubbles feature disables roblox's textchat bubble system that shows chat messages above players' heads.
how it works
textchat system
roblox's modern chat uses textchatservice:
- contains
TextChatWindowinstances - these control bubble display
- disabling them hides bubbles
on enable
- finds textchatservice
- searches children for textchatwindow instances
- sets
Enabled = falseon each
local function setChatBubblesState(state)
for _, bubble in ipairs(TextChatService:GetChildren()) do
if bubble:IsA("TextChatWindow") then
bubble.Enabled = state
end
end
end
use cases
recording clean footage
prevent chat from appearing in videos.
screenshot sessions
eliminate unexpected chat bubbles.
cinematic shots
maintain immersion without chat interruptions.
limitations
legacy chat
some older games use the legacy chat system. this feature only affects textchat (the newer system).
for legacy chat, you need to hide:
game.Players.LocalPlayer.PlayerGui.Chat
doesn't prevent chat
players can still chat - you just won't see the bubbles. the chat window may still be visible unless hidden by the hide ui feature.
new windows
if the game creates new textchatwindows after enable, they won't be automatically hidden.
on disable
when disabled:
- sets
Enabled = trueon all textchatwindow instances - chat bubbles return to normal
technical details
textchatservice structure
TextChatService
├── TextChatWindow (bubbles)
├── TextChannel (channels)
└── TextChatCommand (commands)
only textchatwindow affects bubble display.
why check type?
textchatservice can contain multiple types. type checking ensures we only affect bubble display, not other chat functionality.
source code
location: features/hideChatBubbles.lua
extremely simple module (~20 lines):
- toggle function
- enable/disable exports
customization
hiding legacy chat too
add to enable function:
local chat = localPlayer:FindFirstChild("PlayerGui"):FindFirstChild("Chat")
if chat then
chat.Enabled = false
end
hiding all chat ui
combine with hide ui feature, or specifically target:
- chat window
- chat button
- emoji picker
troubleshooting
bubbles still showing
- game might use legacy chat
- check if textchatservice is enabled in game
- some games have custom bubble systems
chat not working
- this only hides bubbles, not chat functionality
- if chat itself breaks, it's a game issue
- toggle lcs off to restore