
Key Required Patched
Chat flood
Lua Script•152 lines (4677 chars)
-- LocalScript → put inside StarterPlayerScripts or StarterGui
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
-- ────────────────────────────────────────
-- Config
-- ────────────────────────────────────────
local REMOTE_NAME = "ChatEvent" -- change if different
local LONG_STRING = string.rep("H", 2000) -- adjust length if needed (Roblox has limits ~200k chars)
local args = {
LONG_STRING,
4505115132.5
}
-- ────────────────────────────────────────
-- Create GUI
-- ────────────────────────────────────────
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "SpamGui"
screenGui.ResetOnSpawn = false
screenGui.Parent = playerGui
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 140, 0, 80)
frame.Position = UDim2.new(0.5, -70, 0.85, -100) -- starts near bottom center
frame.BackgroundColor3 = Color3.fromRGB(30, 30, 35)
frame.BorderSizePixel = 0
frame.ClipsDescendants = true
frame.Parent = screenGui
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 12)
corner.Parent = frame
local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(100, 100, 255)
stroke.Thickness = 2
stroke.Transparency = 0.4
stroke.Parent = frame
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 24)
title.BackgroundTransparency = 1
title.Text = "Spam Button"
title.TextColor3 = Color3.fromRGB(220, 220, 255)
title.TextSize = 15
title.Font = Enum.Font.GothamBold
title.Parent = frame
local button = Instance.new("TextButton")
button.Size = UDim2.new(0.9, 0, 0, 44)
button.Position = UDim2.new(0.05, 0, 0, 28)
button.BackgroundColor3 = Color3.fromRGB(60, 60, 180)
button.Text = "FIRE (H spam)"
button.TextColor3 = Color3.new(1,1,1)
button.TextSize = 18
button.Font = Enum.Font.GothamSemibold
button.AutoButtonColor = false
button.Parent = frame
local btnCorner = Instance.new("UICorner")
btnCorner.CornerRadius = UDim.new(0, 10)
btnCorner.Parent = button
-- ────────────────────────────────────────
-- Draggable logic (works on mobile + PC)
-- ────────────────────────────────────────
local dragging = false
local dragInput = nil
local dragStart = nil
local startPos = nil
local function updateInput(input)
local delta = input.Position - dragStart
local newPosX = UDim2.new(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
frame.Position = newPosX
end
frame.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1
or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPos = frame.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
frame.InputChanged:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseMovement
or input.UserInputType == Enum.UserInputType.Touch then
dragInput = input
end
end)
UserInputService.InputChanged:Connect(function(input)
if input == dragInput and dragging then
updateInput(input)
end
end)
-- ────────────────────────────────────────
-- Button press (works with tap on mobile)
-- ────────────────────────────────────────
local function fireSpam()
local remote = ReplicatedStorage:FindFirstChild(REMOTE_NAME)
if remote and remote:IsA("RemoteEvent") then
remote:FireServer(unpack(args))
-- Optional: visual feedback
button.BackgroundColor3 = Color3.fromRGB(100, 220, 100)
task.wait(0.15)
button.BackgroundColor3 = Color3.fromRGB(60, 60, 180)
end
end
button.MouseButton1Click:Connect(fireSpam)
button.Activated:Connect(fireSpam) -- better mobile support
-- Optional: hold to spam (uncomment if wanted)
--[[
local holding = false
button.MouseButton1Down:Connect(function() holding = true end)
button.MouseButton1Up:Connect(function() holding = false end)
button.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.Touch then holding = true end end)
button.InputEnded:Connect(function(i) if i.UserInputType == Enum.UserInputType.Touch then holding = false end end)
task.spawn(function()
while true do
if holding then
fireSpam()
task.wait(0.08) -- adjust spam rate
end
task.wait()
end
end)
--]]Features & Information
Idk

black guy + gay
@jeffrey_epstein jail + 100 years
@CattoHub idk + the gui so small
@CattoHub only work in No age Group chat game
@NPCNOk 4505115132.5 This is the player's ID in the game, and each player has a different ID, so you must have your user ID in the game and replace it with 4505115132.5. This method requires remotespy to find your own ID in the game (not your Roblox user profile ID).
@CandyzHub Oh *
@NPCNOk I hope you can find a way to automatically find the player ID in the game (the in-game user ID, not the user profile ID Roblox). And thank you for your script lol
@CandyzHub Mb bro
@NPCNOk, it's not your fault! It really works, you just have to change the id to your own id in the game. Ingnore the negative comments, you've made the script work! You can change the description so they will know and can do it.
@CandyzHub thanks for telling me
@ilovepig228 i don't like discord sorry i can't join
What the heck does this even do