local Players = game:GetService("Players") local localPlayer = Players.LocalPlayer local playerGui = localPlayer:WaitForChild("PlayerGui") local oldGui = playerGui:FindFirstChild("HeavyChatCopierGUI") if oldGui then oldGui:Destroy() end local ScreenGui = Instance.new("ScreenGui") local MainFrame = Instance.new("Frame") local Title = Instance.new("TextLabel") local TextBox = Instance.new("TextBox") local SendBtn = Instance.new("TextButton") local SaveInput = Instance.new("TextBox") local AddBtn = Instance.new("TextButton") local CopyInput = Instance.new("TextBox") local SpamInput = Instance.new("TextBox") local DelayInput = Instance.new("TextBox") local SpamToggleBtn = Instance.new("TextButton") local BotDelayInput = Instance.new("TextBox") local BotToggleBtn = Instance.new("TextButton") local ScrollFrame = Instance.new("ScrollingFrame") local UIListLayout = Instance.new("UIListLayout") ScreenGui.Name = "HeavyChatCopierGUI" ScreenGui.Parent = playerGui ScreenGui.ResetOnSpawn = false MainFrame.Name = "MainFrame" MainFrame.Parent = ScreenGui MainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) MainFrame.Position = UDim2.new(0.3, 0, 0.05, 0) MainFrame.Size = UDim2.new(0, 320, 0, 650) MainFrame.Active = true MainFrame.Draggable = true Title.Parent = MainFrame Title.BackgroundColor3 = Color3.fromRGB(20, 20, 20) Title.Size = UDim2.new(1, 0, 0, 30) Title.Font = Enum.Font.SourceSansBold Title.Text = "CHAT SCRIPT" Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.TextSize = 16 TextBox.Parent = MainFrame TextBox.BackgroundColor3 = Color3.fromRGB(45, 45, 45) TextBox.Position = UDim2.new(0.05, 0, 0.06, 0) TextBox.Size = UDim2.new(0.65, 0, 0, 35) TextBox.Font = Enum.Font.SourceSans TextBox.PlaceholderText = "Type message here..." TextBox.Text = "" TextBox.TextColor3 = Color3.fromRGB(255, 255, 255) TextBox.TextSize = 14 SendBtn.Parent = MainFrame SendBtn.BackgroundColor3 = Color3.fromRGB(0, 150, 70) SendBtn.Position = UDim2.new(0.72, 0, 0.06, 0) SendBtn.Size = UDim2.new(0.23, 0, 0, 35) SendBtn.Font = Enum.Font.SourceSansBold SendBtn.Text = "SEND" SendBtn.TextColor3 = Color3.fromRGB(255, 255, 255) SendBtn.TextSize = 14 SaveInput.Parent = MainFrame SaveInput.BackgroundColor3 = Color3.fromRGB(45, 45, 45) SaveInput.Position = UDim2.new(0.05, 0, 0.12, 0) SaveInput.Size = UDim2.new(0.65, 0, 0, 35) SaveInput.Font = Enum.Font.SourceSans SaveInput.PlaceholderText = "New fast message..." SaveInput.Text = "" SaveInput.TextColor3 = Color3.fromRGB(255, 255, 255) SaveInput.TextSize = 14 AddBtn.Parent = MainFrame AddBtn.BackgroundColor3 = Color3.fromRGB(0, 110, 200) AddBtn.Position = UDim2.new(0.72, 0, 0.12, 0) AddBtn.Size = UDim2.new(0.23, 0, 0, 35) AddBtn.Font = Enum.Font.SourceSansBold AddBtn.Text = "ADD" AddBtn.TextColor3 = Color3.fromRGB(255, 255, 255) AddBtn.TextSize = 14 CopyInput.Parent = MainFrame CopyInput.BackgroundColor3 = Color3.fromRGB(45, 45, 45) CopyInput.Position = UDim2.new(0.05, 0, 0.18, 0) CopyInput.Size = UDim2.new(0.9, 0, 0, 35) CopyInput.Font = Enum.Font.SourceSans CopyInput.PlaceholderText = "Enter Username to copy..." CopyInput.Text = "" CopyInput.TextColor3 = Color3.fromRGB(255, 200, 50) CopyInput.TextSize = 14 SpamInput.Parent = MainFrame SpamInput.BackgroundColor3 = Color3.fromRGB(45, 45, 45) SpamInput.Position = UDim2.new(0.05, 0, 0.24, 0) SpamInput.Size = UDim2.new(0.9, 0, 0, 35) SpamInput.Font = Enum.Font.SourceSans SpamInput.PlaceholderText = "Spam text..." SpamInput.Text = "" SpamInput.TextColor3 = Color3.fromRGB(255, 255, 255) SpamInput.TextSize = 14 DelayInput.Parent = MainFrame DelayInput.BackgroundColor3 = Color3.fromRGB(45, 45, 45) DelayInput.Position = UDim2.new(0.05, 0, 0.30, 0) DelayInput.Size = UDim2.new(0.4, 0, 0, 35) DelayInput.Font = Enum.Font.SourceSans DelayInput.PlaceholderText = "Spam delay (sec)..." DelayInput.Text = "1" DelayInput.TextColor3 = Color3.fromRGB(0, 200, 255) DelayInput.TextSize = 14 SpamToggleBtn.Parent = MainFrame SpamToggleBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) SpamToggleBtn.Position = UDim2.new(0.5, 0, 0.30, 0) SpamToggleBtn.Size = UDim2.new(0.45, 0, 0, 35) SpamToggleBtn.Font = Enum.Font.SourceSansBold SpamToggleBtn.Text = "SPAM: OFF" SpamToggleBtn.TextColor3 = Color3.fromRGB(255, 255, 255) SpamToggleBtn.TextSize = 14 BotDelayInput.Parent = MainFrame BotDelayInput.BackgroundColor3 = Color3.fromRGB(45, 45, 45) BotDelayInput.Position = UDim2.new(0.05, 0, 0.36, 0) BotDelayInput.Size = UDim2.new(0.4, 0, 0, 35) BotDelayInput.Font = Enum.Font.SourceSans BotDelayInput.PlaceholderText = "Bot timer (sec)..." BotDelayInput.Text = "3" BotDelayInput.TextColor3 = Color3.fromRGB(0, 255, 150) BotDelayInput.TextSize = 14 BotToggleBtn.Parent = MainFrame BotToggleBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) BotToggleBtn.Position = UDim2.new(0.5, 0, 0.36, 0) BotToggleBtn.Size = UDim2.new(0.45, 0, 0, 35) BotToggleBtn.Font = Enum.Font.SourceSansBold BotToggleBtn.Text = "BOT MODE: OFF" BotToggleBtn.TextColor3 = Color3.fromRGB(255, 255, 255) BotToggleBtn.TextSize = 14 ScrollFrame.Parent = MainFrame ScrollFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 20) ScrollFrame.Position = UDim2.new(0.05, 0, 0.43, 0) ScrollFrame.Size = UDim2.new(0.9, 0, 0.54, 0) ScrollFrame.CanvasSize = UDim2.new(0, 0, 0, 0) ScrollFrame.ScrollBarThickness = 6 UIListLayout.Parent = ScrollFrame UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder UIListLayout.Padding = UDim.new(0, 5) local function SendChatMessage(message) if message == "" then return end local TextChatService = game:GetService("TextChatService") if TextChatService.ChatVersion == Enum.ChatVersion.TextChatService then local channel = TextChatService:WaitForChild("TextChannels", 5):WaitForChild("RBXGeneral", 5) if channel then channel:SendAsync(message) end else local replicatedStorage = game:GetService("ReplicatedStorage") local sayMessageRequest = replicatedStorage:FindFirstChild("DefaultChatSystemChatEvents") and replicatedStorage.DefaultChatSystemChatEvents:FindFirstChild("SayMessageRequest") if sayMessageRequest then sayMessageRequest:FireServer(message, "All") end end end SendBtn.MouseButton1Click:Connect(function() SendChatMessage(TextBox.Text) TextBox.Text = "" end) local TextChatService = game:GetService("TextChatService") if _G.ChatCopierConnection then _G.ChatCopierConnection:Disconnect() end _G.ChatCopierConnection = TextChatService.MessageReceived:Connect(function(message) local targetName = CopyInput.Text if targetName == "" then return end local sender = message.TextSource if sender then local senderPlayer = Players:GetPlayerByUserId(sender.UserId) if senderPlayer and (senderPlayer.Name == targetName or senderPlayer.DisplayName == targetName) then if senderPlayer ~= localPlayer then SendChatMessage(message.Text) end end end end) local isSpamming = false SpamToggleBtn.MouseButton1Click:Connect(function() isSpamming = not isSpamming if isSpamming then SpamToggleBtn.Text = "SPAM: ON" SpamToggleBtn.BackgroundColor3 = Color3.fromRGB(0, 150, 70) task.spawn(function() while isSpamming do local spamText = SpamInput.Text local waitTime = tonumber(DelayInput.Text) or 1 if spamText ~= "" then SendChatMessage(spamText) end task.wait(waitTime) end end) else SpamToggleBtn.Text = "SPAM: OFF" SpamToggleBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) end end) local isBotModeActive = false BotToggleBtn.MouseButton1Click:Connect(function() isBotModeActive = not isBotModeActive if isBotModeActive then BotToggleBtn.Text = "BOT MODE: ON" BotToggleBtn.BackgroundColor3 = Color3.fromRGB(0, 150, 70) task.spawn(function() while isBotModeActive do local waitTime = tonumber(BotDelayInput.Text) or 3 local character = localPlayer.Character local humanoid = character and character:FindFirstChildOfClass("Humanoid") local rootPart = character and character:FindFirstChild("HumanoidRootPart") if humanoid and rootPart then if math.random(1, 2) == 1 then humanoid.Jump = true end local randomOffset = Vector3.new(math.random(-12, 12), 0, math.random(-12, 12)) local targetPosition = rootPart.Position + randomOffset humanoid:MoveTo(targetPosition) end task.wait(waitTime) end end) else BotToggleBtn.Text = "BOT MODE: OFF" BotToggleBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) local character = localPlayer.Character if character then local humanoid = character:FindFirstChildOfClass("Humanoid") local rootPart = character:FindFirstChild("HumanoidRootPart") if humanoid and rootPart then humanoid:MoveTo(rootPart.Position) end end end end) local HttpService = game:GetService("HttpService") local fileName = "CustomFastMessages.json" local myMessages = {} local function SaveToFile() local json = HttpService:JSONEncode(myMessages) pcall(function() writefile(fileName, json) end) end local function LoadFromFile() local success, content = pcall(function() return readfile(fileName) end) if success and content then local decodeSuccess, data = pcall(function() return HttpService:JSONDecode(content) end) if decodeSuccess and typeof(data) == "table" then myMessages = data else myMessages = {"GG!", "Hello everyone!", "Yes", "No"} end else myMessages = {"GG!", "Hello everyone!", "Yes", "No"} SaveToFile() end end local function RefreshList() for _, child in ipairs(ScrollFrame:GetChildren()) do if child:IsA("Frame") then child:Destroy() end end for index, msg in ipairs(myMessages) do local ItemFrame = Instance.new("Frame") local MsgBtn = Instance.new("TextButton") local DelBtn = Instance.new("TextButton") ItemFrame.Name = "Item" ItemFrame.Parent = ScrollFrame ItemFrame.Size = UDim2.new(1, -5, 0, 30) ItemFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 40) MsgBtn.Parent = ItemFrame MsgBtn.Size = UDim2.new(0.8, 0, 1, 0) MsgBtn.BackgroundColor3 = Color3.fromRGB(50, 50, 50) MsgBtn.Font = Enum.Font.SourceSans MsgBtn.Text = msg MsgBtn.TextColor3 = Color3.fromRGB(255, 255, 255) MsgBtn.TextSize = 14 DelBtn.Parent = ItemFrame DelBtn.Position = UDim2.new(0.82, 0, 0, 0) DelBtn.Size = UDim2.new(0.18, 0, 1, 0) DelBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) DelBtn.Font = Enum.Font.SourceSansBold DelBtn.Text = "X" DelBtn.TextColor3 = Color3.fromRGB(255, 255, 255) DelBtn.TextSize = 14 MsgBtn.MouseButton1Click:Connect(function() SendChatMessage(msg) end) DelBtn.MouseButton1Click:Connect(function() table.remove(myMessages, index) SaveToFile() RefreshList() end) end ScrollFrame.CanvasSize = UDim2.new(0, 0, 0, UIListLayout.AbsoluteContentSize.Y) end AddBtn.MouseButton1Click:Connect(function() local text = SaveInput.Text if text ~= "" and string.gsub(text, " ", "") ~= "" then table.insert(myMessages, text) SaveToFile() RefreshList() SaveInput.Text = "" end end) LoadFromFile() RefreshList()