
Universal Script – Spammer By Zm_Error
--------------------------------------------------------------------------------
-- SERVICES
--------------------------------------------------------------------------------
local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local TextChatService = game:GetService("TextChatService")
local ContentProvider = game:GetService("ContentProvider")
local SoundService = game:GetService("SoundService")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = Players.LocalPlayer
--------------------------------------------------------------------------------
-- CONFIGURATION
--------------------------------------------------------------------------------
-- Fancy loaded message that sends to public chat upon script execution
local EXECUTION_MESSAGE = "👑 ============================================ 👑\n⚡ [ ERROR PAPA SPAMMER LOADED ] ⚡\n🚀 MADE BY Zm_Error | PAPA BOL! 🥱\n👑 ============================================ 👑"
local BACKGROUND_IMAGE_ID = "rbxassetid://6071575925"
local LOAD_SOUND_ID = "rbxassetid://1592708450"
local CustomRoasts = {
"TMX ME VOID PARRALEL UNIVERSE KA 4TH DIMENSION HERMUX💥",
"TMX TOH MEH NOVA EXCLUSIVE DYNAMIC EVENT FUN FACT SPELL NOVA EXCLUSIVE 🥱",
"TMX MEH HYPER OS UNIVERSAL SPACE ULTRA HYPER FUN FACT HYPER SPACE UNIVERSAL 🚀🚀",
"TMX MEH ULTRA SONIC HYPER HYPER BLAST BY SPACE SCIENTISTS FUN FACT H8RS C ME GULAAM⚡"
}
--------------------------------------------------------------------------------
-- HELPERS
--------------------------------------------------------------------------------
local function sendChatMessage(message)
pcall(function()
if TextChatService and TextChatService.TextChannels:FindFirstChild("RBXGeneral") then
TextChatService.TextChannels.RBXGeneral:SendAsync(message)
elseif ReplicatedStorage:FindFirstChild("DefaultChatSystemChatEvents") then
ReplicatedStorage.DefaultChatSystemChatEvents.SayMessageRequest:FireServer(message, "All")
end
end)
end
local function makeElementDraggable(guiElement)
local dragging, dragInput, dragStart, startPos
guiElement.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPos = guiElement.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
guiElement.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
local delta = input.Position - dragStart
guiElement.Position = UDim2.new(
startPos.X.Scale, startPos.X.Offset + delta.X,
startPos.Y.Scale, startPos.Y.Offset + delta.Y
)
end
end)
end
--------------------------------------------------------------------------------
-- UI FACTORIES
--------------------------------------------------------------------------------
local function createWhiteShadedButton(name, text, pos, size, parent)
local button = Instance.new("TextButton")
button.Name = name
button.Size = size
button.Position = pos
button.BackgroundColor3 = Color3.fromRGB(245, 245, 250)
button.Text = text
button.TextColor3 = Color3.fromRGB(20, 20, 25)
button.TextSize = 13
button.Font = Enum.Font.SourceSansBold
button.Parent = parent
Instance.new("UICorner", button).CornerRadius = UDim.new(0, 6)
local gradient = Instance.new("UIGradient", button)
gradient.Color = ColorSequence.new({
ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 255, 255)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(200, 205, 215))
})
gradient.Rotation = 90
local stroke = Instance.new("UIStroke", button)
stroke.Thickness = 1
stroke.Color = Color3.fromRGB(255, 255, 255)
stroke.Transparency = 0.3
return button
end
local function createStyledTextBox(name, placeholder, pos, size, parent)
local box = Instance.new("TextBox")
box.Name = name
box.Size = size
box.Position = pos
box.BackgroundColor3 = Color3.fromRGB(20, 20, 30)
box.BackgroundTransparency = 0.3
box.PlaceholderText = placeholder
box.PlaceholderColor3 = Color3.fromRGB(180, 180, 190)
box.Text = ""
box.TextColor3 = Color3.fromRGB(255, 255, 255)
box.TextSize = 13
box.Font = Enum.Font.SourceSans
box.Parent = parent
Instance.new("UICorner", box).CornerRadius = UDim.new(0, 6)
local stroke = Instance.new("UIStroke", box)
stroke.Thickness = 1
stroke.Color = Color3.fromRGB(255, 255, 255)
stroke.Transparency = 0.6
return box
end
--------------------------------------------------------------------------------
-- GUI INITIALIZATION
--------------------------------------------------------------------------------
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "ErrorHub"
ScreenGui.ResetOnSpawn = false
ScreenGui.Parent = LocalPlayer:WaitForChild("PlayerGui")
-- 1. FLOATING TOGGLE ICON
local ToggleGuiBtn = Instance.new("ImageButton")
ToggleGuiBtn.Name = "ExternalToggleBtn"
ToggleGuiBtn.Size = UDim2.new(0, 50, 0, 50)
ToggleGuiBtn.Position = UDim2.new(0.05, 0, 0.4, 0)
ToggleGuiBtn.Image = BACKGROUND_IMAGE_ID
ToggleGuiBtn.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
ToggleGuiBtn.BorderSizePixel = 0
ToggleGuiBtn.Active = true
ToggleGuiBtn.Parent = ScreenGui
Instance.new("UICorner", ToggleGuiBtn).CornerRadius = UDim.new(1, 0)
local ToggleStroke = Instance.new("UIStroke", ToggleGuiBtn)
ToggleStroke.Thickness = 2
ToggleStroke.Color = Color3.fromRGB(255, 255, 255)
ToggleStroke.Transparency = 0.2
makeElementDraggable(ToggleGuiBtn)
-- 2. MAIN SYSTEM FRAME
local MainFrame = Instance.new("ImageLabel")
MainFrame.Name = "MainFrame"
MainFrame.Size = UDim2.new(0, 280, 0, 200)
MainFrame.Position = UDim2.new(0.5, -140, 0.5, -100)
MainFrame.Image = BACKGROUND_IMAGE_ID
MainFrame.ScaleType = Enum.ScaleType.Crop
MainFrame.BackgroundColor3 = Color3.fromRGB(15, 15, 20)
MainFrame.BorderSizePixel = 0
MainFrame.Active = true
MainFrame.ClipsDescendants = true
MainFrame.Parent = ScreenGui
Instance.new("UICorner", MainFrame).CornerRadius = UDim.new(0, 12)
local Overlay = Instance.new("Frame", MainFrame)
Overlay.Size = UDim2.new(1, 0, 1, 0)
Overlay.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
Overlay.BackgroundTransparency = 0.45
makeElementDraggable(MainFrame)
-- 3. COMPONENTS
local TitleLabel = Instance.new("TextLabel", MainFrame)
TitleLabel.Name = "TitleLabel"
TitleLabel.Size = UDim2.new(1, 0, 0, 35)
TitleLabel.BackgroundTransparency = 0.4
TitleLabel.BackgroundColor3 = Color3.fromRGB(10, 10, 15)
TitleLabel.Text = "👑 Error Hub | PAPA BOL! 🥱"
TitleLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
TitleLabel.TextSize = 15
TitleLabel.Font = Enum.Font.SourceSansBold
local TargetTextBox = createStyledTextBox("TargetTextBox", "Enter Target Name...", UDim2.new(0.05, 0, 0, 45), UDim2.new(0.9, 0, 0, 32), MainFrame)
local DelayTextBox = createStyledTextBox("DelayTextBox", "Delay Speed (Seconds)", UDim2.new(0.05, 0, 0, 85), UDim2.new(0.9, 0, 0, 32), MainFrame)
DelayTextBox.Text = "1"
local TargetDisplayLabel = Instance.new("TextLabel", MainFrame)
TargetDisplayLabel.Name = "TargetDisplayLabel"
TargetDisplayLabel.Size = UDim2.new(0.9, 0, 0, 20)
TargetDisplayLabel.Position = UDim2.new(0.05, 0, 0, 122)
TargetDisplayLabel.BackgroundTransparency = 1
TargetDisplayLabel.Text = "Target: [ None ]"
TargetDisplayLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
TargetDisplayLabel.TextSize = 13
TargetDisplayLabel.Font = Enum.Font.SourceSansBold
local ToggleButton = createWhiteShadedButton("ToggleButton", "START SPAM", UDim2.new(0.05, 0, 0, 148), UDim2.new(0.9, 0, 0, 38), MainFrame)
-- 4. LOADING OVERLAY SYSTEM
local LoadingFrame = Instance.new("Frame", MainFrame)
LoadingFrame.Name = "LoadingFrame"
LoadingFrame.Size = UDim2.new(1, 0, 1, 0)
LoadingFrame.BackgroundColor3 = Color3.fromRGB(10, 10, 15)
LoadingFrame.BackgroundTransparency = 0.25
LoadingFrame.ZIndex = 10
Instance.new("UICorner", LoadingFrame).CornerRadius = UDim.new(0, 12)
local LoadingText = Instance.new("TextLabel", LoadingFrame)
LoadingText.Size = UDim2.new(1, 0, 0, 40)
LoadingText.Position = UDim2.new(0, 0, 0.4, 0)
LoadingText.BackgroundTransparency = 1
LoadingText.Text = "Loading Error Hub..."
LoadingText.TextColor3 = Color3.fromRGB(255, 255, 255)
LoadingText.TextSize = 18
LoadingText.Font = Enum.Font.SourceSansBold
LoadingText.ZIndex = 11
--------------------------------------------------------------------------------
-- CORE CONTROLS & LOOP LOGIC
--------------------------------------------------------------------------------
-- Asset Preloading & Intro Effects
task.spawn(function()
local sound = Instance.new("Sound")
sound.SoundId = LOAD_SOUND_ID
sound.Volume = 1
sound.Parent = SoundService
ContentProvider:PreloadAsync({MainFrame, sound})
task.wait(1.2)
sound:Play()
if EXECUTION_MESSAGE ~= "" then
sendChatMessage(EXECUTION_MESSAGE)
end
TweenService:Create(LoadingFrame, TweenInfo.new(0.5), {BackgroundTransparency = 1}):Play()
local textTween = TweenService:Create(LoadingText, TweenInfo.new(0.5), {TextTransparency = 1})
textTween:Play()
textTween.Completed:Connect(function()
LoadingFrame:Destroy()
end)
end)
-- UI Toggle Action
ToggleGuiBtn.MouseButton1Click:Connect(function()
MainFrame.Visible = not MainFrame.Visible
end)
-- Live Text Target Binding
local currentTarget = ""
TargetTextBox:GetPropertyChangedSignal("Text"):Connect(function()
currentTarget = TargetTextBox.Text
TargetDisplayLabel.Text = (currentTarget == "") and "Target: [ None ]" or "Target: [ " .. currentTarget .. " ]"
end)
-- Queue Processing Loop
local isSpamming = false
ToggleButton.MouseButton1Click:Connect(function()
isSpamming = not isSpamming
if isSpamming then
ToggleButton.Text = "STOP SPAM"
task.spawn(function()
local roastIndex = 1
while isSpamming and ScreenGui.Parent do
local delayTime = tonumber(DelayTextBox.Text) or 1
local targetName = (currentTarget ~= "") and currentTarget or "Player"
local roast = CustomRoasts[roastIndex]
local formattedMessage = "///=====///=====///=====///=====///=====///=====///=====/// [" .. targetName .. "] [" .. roast .. "]"
sendChatMessage(formattedMessage)
roastIndex = (roastIndex % #CustomRoasts) + 1
task.wait(delayTime)
end
end)
else
ToggleButton.Text = "START SPAM"
end
end)How to Execute Universal Script – Spammer By Zm_Error
Step 1: Copy Code: Click the Copy Code button in the viewer above to grab the clean Lua loadstring.
Step 2: Launch Executor: Open a compatible, unpatched executor. If you need one, check our Roblox Executors Directory.
Step 3: Join Experience: Launch Roblox and join Universal Script.
Step 4: Attach & Run: Attach/inject your executor into the Roblox process, paste the code into the script tab, and press Execute.
Created By
View Author ProfileFeatures & Information
Script Changelog (2)
Community Comments (1)
Frequently Asked Questions
How do I execute Universal Script – Spammer By Zm_Error in Roblox?
To run Universal Script – Spammer By Zm_Error, copy the Lua loadstring from the code viewer above, launch Roblox and join Universal Script, attach a working executor (such as Potassium, Solara, or Delta from our Executors directory), paste the code into your executor console, and click Execute.
Is Universal Script – Spammer By Zm_Error keyless or does it require an access key?
Universal Script – Spammer By Zm_Error requires an access key. You can retrieve the official key directly using the Get Script Key link provided above.
Is Universal Script – Spammer By Zm_Error currently safe and working?
This script is active and operational. Always test scripts using a secondary (alt) Roblox account to safeguard your main profile against anti-cheat bans.


![Ez Hub [Open Source] [150+ games] - Verified script for Universal Script](https://media.kocakz.me/b74a9ac15370ba766b2fa9531f17c9dad2c0befb2b951693ae723e4c7d2c3fb6.webp)

![[KEYLESS] Moondiety Script | 20+ supported Games - Verified script for Universal Script](https://media.kocakz.me/6834c33a36c9fbe66afae4c6754c2b80386ce636b2f972464a95866f4b6a42eb.webp)


wow works