repeat task.wait() until game:IsLoaded() local cloneref = cloneref or function(o) return o end local Players = cloneref(game:GetService("Players")) local TextChatService = cloneref(game:GetService("TextChatService")) local ReplicatedStorage = cloneref(game:GetService("ReplicatedStorage")) local CoreGui = cloneref(game:GetService("CoreGui")) local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer.PlayerGui local SelfFakePlayer = {Name = "Maanaaaa", UserId = 5366854020} local OtherFakePlayers = {Name = "Roblox", UserId = 1} local function UpdatePlayers(Object, Property) for _, v in pairs(Players:GetPlayers()) do if v == LocalPlayer then Object[Property] = Object[Property]:gsub(v.Name, SelfFakePlayer.Name) Object[Property] = Object[Property]:gsub(v.DisplayName, SelfFakePlayer.Name) Object[Property] = Object[Property]:gsub(tostring(v.UserId), tostring(SelfFakePlayer.UserId)) else Object[Property] = Object[Property]:gsub(v.Name, OtherFakePlayers.Name) Object[Property] = Object[Property]:gsub(v.DisplayName, OtherFakePlayers.Name) Object[Property] = Object[Property]:gsub(tostring(v.UserId), tostring(OtherFakePlayers.UserId)) end end end local function NewObject(Object) if Object:IsA("TextLabel") or Object:IsA("TextButton") or Object:IsA("TextBox") then UpdatePlayers(Object, "Text") Object:GetPropertyChangedSignal("Text"):Connect(function() UpdatePlayers(Object, "Text") end) elseif Object:IsA("ImageLabel") or Object:IsA("ImageButton") then UpdatePlayers(Object, "Image") Object:GetPropertyChangedSignal("Image"):Connect(function() UpdatePlayers(Object, "Image") end) end end local function UpdateAllUIObjects(parent) for _, Object in pairs(parent:GetDescendants()) do NewObject(Object) end end UpdateAllUIObjects(PlayerGui) UpdateAllUIObjects(CoreGui) PlayerGui.DescendantAdded:Connect(NewObject) CoreGui.DescendantAdded:Connect(NewObject) Players.PlayerAdded:Connect(function(Player) Player.CharacterAdded:Connect(function(Character) for _, Object in pairs(Character:GetDescendants()) do NewObject(Object) end end) end) if TextChatService.ChatVersion == Enum.ChatVersion.TextChatService then TextChatService.MessageReceived:Connect(function(MessageData) NewObject(MessageData) end) else --[[roblox removed old chat ReplicatedStorage.DefaultChatSystemChatEvents.OnMessageDoneFiltering.OnClientEvent:Connect(function(MessageData) NewObject(MessageData) end) end ]]