
KeylessUniversal

--// LocalScript (StarterGui -> ScreenGui -> LocalScript)
-- Services
local Players = game:GetService("Players")
local TeleportService = game:GetService("TeleportService")
local HttpService = game:GetService("HttpService")
local TweenService = game:GetService("TweenService")
local player = Players.LocalPlayer
-- Create ScreenGui
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = player:WaitForChild("PlayerGui")
screenGui.ResetOnSpawn = false
-- Create Compact Frame
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 180, 0, 130)
frame.Position = UDim2.new(0.4, 0, 0.35, 0)
frame.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
frame.BorderSizePixel = 0
frame.Active = true
frame.Draggable = true
frame.Parent = screenGui
-- Rounded corners
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 12)
corner.Parent = frame
-- UIListLayout
local layout = Instance.new("UIListLayout")
layout.Padding = UDim.new(0, 8)
layout.HorizontalAlignment = Enum.HorizontalAlignment.Center
layout.VerticalAlignment = Enum.VerticalAlignment.Top
layout.Parent = frame
-- Title Label
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 30)
title.BackgroundTransparency = 1
title.Text = "Server Tools"
title.TextColor3 = Color3.fromRGB(255, 255, 255)
title.TextScaled = true
title.Font = Enum.Font.GothamBold
title.Parent = frame
-- Button creator with hover effect
local function createButton(text, color)
local button = Instance.new("TextButton")
button.Size = UDim2.new(0, 150, 0, 35)
button.BackgroundColor3 = color
button.TextColor3 = Color3.fromRGB(255, 255, 255)
button.Font = Enum.Font.GothamSemibold
button.TextSize = 16
button.Text = text
button.AutoButtonColor = false
-- Rounded corners
local btnCorner = Instance.new("UICorner")
btnCorner.CornerRadius = UDim.new(0, 8)
btnCorner.Parent = button
-- Hover effect
button.MouseEnter:Connect(function()
TweenService:Create(button, TweenInfo.new(0.15), {BackgroundColor3 = button.BackgroundColor3:Lerp(Color3.fromRGB(255, 100, 100), 0.5)}):Play()
end)
button.MouseLeave:Connect(function()
TweenService:Create(button, TweenInfo.new(0.15), {BackgroundColor3 = color}):Play()
end)
button.Parent = frame
return button
end
-- Rejoin Button
local rejoinBtn = createButton("Rejoin", Color3.fromRGB(50, 50, 200))
rejoinBtn.MouseButton1Click:Connect(function()
TeleportService:Teleport(game.PlaceId, player)
end)
-- Server Hop Button
local hopBtn = createButton("Server Hop", Color3.fromRGB(50, 200, 50))
hopBtn.MouseButton1Click:Connect(function()
local servers = {}
local success, req = pcall(function()
return game:HttpGet("https://games.roblox.com/v1/games/"..game.PlaceId.."/servers/Public?sortOrder=Asc&limit=100")
end)
if success then
local data = HttpService:JSONDecode(req)
if data and data.data then
for _, srv in ipairs(data.data) do
if srv.playing < srv.maxPlayers and srv.id ~= game.JobId then
table.insert(servers, srv.id)
end
end
end
end
if #servers > 0 then
local randomServer = servers[math.random(1, #servers)]
TeleportService:TeleportToPlaceInstance(game.PlaceId, randomServer, player)
else
warn("No servers found!")
end
end)
-- Kick Yourself Button
local kickBtn = createButton("Kick", Color3.fromRGB(200, 50, 50))
kickBtn.MouseButton1Click:Connect(function()
player:Kick("You kicked yourself. GG!")
end)No comments yet for this script.



