-- Settings local SPAM_MESSAGE = "Example" -- Your message here local WAIT_TIME = 10 -- Seconds between messages (9 - 12 is recommended) local TOGGLE_KEY = Enum.KeyCode.J local Players = game:GetService("Players") local UIS = game:GetService("UserInputService") local ReplicatedStorage = game:GetService("ReplicatedStorage") local enabled = false local chatRemote = ReplicatedStorage:FindFirstChild("SayMessageRequest", true) -- Toggle logic UIS.InputBegan:Connect(function(input, processed) if processed then return end if input.KeyCode == TOGGLE_KEY then enabled = not enabled print("Spammer is now: " .. (enabled and "ON" or "OFF")) end end) -- Main Loop task.spawn(function() while true do if enabled then -- Check for legacy Chat (RemoteEvent) or New TextChatService if chatRemote and chatRemote:IsA("RemoteEvent") then chatRemote:FireServer(SPAM_MESSAGE, "All") else -- Fallback for newer games local textService = game:GetService("TextChatService") if textService.ChatVersion == Enum.ChatVersion.TextChatService then textService.TextChannels.RBXGeneral:SendAsync(SPAM_MESSAGE) end end end task.wait(WAIT_TIME) end end)