
Key RequiredUniversal

-- AceHubX - Better Looking Version
-- LocalScript → StarterPlayerScripts
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local StarterGui = game:GetService("StarterGui")
local Lighting = game:GetService("Lighting")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local killEvent = ReplicatedStorage:FindFirstChild("AceHubX_Kill")
-- States
local selectedPlayer = nil
local flying = false
local noclip = false
local godMode = false
local infiniteJump = false
local flyConnection = nil
local noclipConnection = nil
-- Colors
local Colors = {
Background = Color3.fromRGB(13, 13, 16),
Sidebar = Color3.fromRGB(18, 18, 22),
Card = Color3.fromRGB(27, 27, 33),
CardHover = Color3.fromRGB(38, 38, 46),
Red = Color3.fromRGB(220, 45, 45),
RedDark = Color3.fromRGB(170, 30, 30),
White = Color3.fromRGB(250, 250, 250),
Gray = Color3.fromRGB(150, 150, 160),
DarkGray = Color3.fromRGB(90, 90, 100)
}
-- Blur
local blur = Instance.new("BlurEffect")
blur.Size = 0
blur.Parent = Lighting
-- ScreenGui
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "AceHubX"
screenGui.ResetOnSpawn = false
screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
screenGui.Parent = playerGui
-- Circular AX Button
local openBtn = Instance.new("TextButton")
openBtn.Size = UDim2.new(0, 54, 0, 54)
openBtn.Position = UDim2.new(0, 18, 0, 18)
openBtn.BackgroundColor3 = Colors.Red
openBtn.Text = "AX"
openBtn.TextColor3 = Colors.White
openBtn.Font = Enum.Font.GothamBlack
openBtn.TextSize = 19
openBtn.AutoButtonColor = false
openBtn.Parent = screenGui
local openCorner = Instance.new("UICorner")
openCorner.CornerRadius = UDim.new(1, 0)
openCorner.Parent = openBtn
local openStroke = Instance.new("UIStroke")
openStroke.Color = Color3.fromRGB(255, 100, 100)
openStroke.Thickness = 2
openStroke.Parent = openBtn
-- Main Frame
local main = Instance.new("Frame")
main.Size = UDim2.new(0, 740, 0, 440)
main.Position = UDim2.new(0.5, -370, 0.5, -220)
main.BackgroundColor3 = Colors.Background
main.BorderSizePixel = 0
main.Visible = false
main.Parent = screenGui
local mainCorner = Instance.new("UICorner")
mainCorner.CornerRadius = UDim.new(0, 14)
mainCorner.Parent = main
local mainStroke = Instance.new("UIStroke")
mainStroke.Color = Color3.fromRGB(40, 40, 50)
mainStroke.Thickness = 1
mainStroke.Parent = main
-- Sidebar
local sidebar = Instance.new("Frame")
sidebar.Size = UDim2.new(0, 190, 1, 0)
sidebar.BackgroundColor3 = Colors.Sidebar
sidebar.BorderSizePixel = 0
sidebar.Parent = main
local sideCorner = Instance.new("UICorner")
sideCorner.CornerRadius = UDim.new(0, 14)
sideCorner.Parent = sidebar
-- Sidebar title
local sideTitle = Instance.new("TextLabel")
sideTitle.Size = UDim2.new(1, -24, 0, 50)
sideTitle.Position = UDim2.new(0, 18, 0, 12)
sideTitle.BackgroundTransparency = 1
sideTitle.Text = "AceHubX"
sideTitle.TextColor3 = Colors.White
sideTitle.Font = Enum.Font.GothamBold
sideTitle.TextSize = 22
sideTitle.TextXAlignment = Enum.TextXAlignment.Left
sideTitle.Parent = sidebar
-- Content Area
local content = Instance.new("Frame")
content.Size = UDim2.new(1, -210, 1, -24)
content.Position = UDim2.new(0, 202, 0, 12)
content.BackgroundTransparency = 1
content.Parent = main
local contentTitle = Instance.new("TextLabel")
contentTitle.Size = UDim2.new(1, 0, 0, 32)
contentTitle.BackgroundTransparency = 1
contentTitle.Text = "Local"
contentTitle.TextColor3 = Colors.White
contentTitle.Font = Enum.Font.GothamBold
contentTitle.TextSize = 24
contentTitle.TextXAlignment = Enum.TextXAlignment.Left
contentTitle.Parent = content
local contentSub = Instance.new("TextLabel")
contentSub.Size = UDim2.new(1, 0, 0, 20)
contentSub.Position = UDim2.new(0, 0, 0, 34)
contentSub.BackgroundTransparency = 1
contentSub.Text = "Your personal controls"
contentSub.TextColor3 = Colors.Gray
contentSub.Font = Enum.Font.Gotham
contentSub.TextSize = 14
contentSub.TextXAlignment = Enum.TextXAlignment.Left
contentSub.Parent = content
-- Holder
local holder = Instance.new("ScrollingFrame")
holder.Size = UDim2.new(1, -8, 1, -70)
holder.Position = UDim2.new(0, 0, 0, 65)
holder.BackgroundTransparency = 1
holder.BorderSizePixel = 0
holder.ScrollBarThickness = 4
holder.ScrollBarImageColor3 = Colors.Red
holder.CanvasSize = UDim2.new(0, 0, 0, 0)
holder.Parent = content
local layout = Instance.new("UIListLayout")
layout.Padding = UDim.new(0, 9)
layout.Parent = holder
layout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
holder.CanvasSize = UDim2.new(0, 0, 0, layout.AbsoluteContentSize.Y + 20)
end)
-- Helpers
local function clearHolder()
for _, child in pairs(holder:GetChildren()) do
if child:IsA("TextButton") or child:IsA("TextBox") then
child:Destroy()
end
end
end
local function createButton(text, callback)
local btn = Instance.new("TextButton")
btn.Size = UDim2.new(1, -6, 0, 48)
btn.BackgroundColor3 = Colors.Card
btn.Text = " " .. text
btn.TextColor3 = Colors.White
btn.Font = Enum.Font.GothamMedium
btn.TextSize = 16
btn.TextXAlignment = Enum.TextXAlignment.Left
btn.AutoButtonColor = false
btn.Parent = holder
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 8)
corner.Parent = btn
btn.MouseButton1Click:Connect(callback)
btn.MouseEnter:Connect(function()
btn.BackgroundColor3 = Colors.CardHover
end)
btn.MouseLeave:Connect(function()
btn.BackgroundColor3 = Colors.Card
end)
end
local function createInput(placeholder, callback)
local box = Instance.new("TextBox")
box.Size = UDim2.new(1, -6, 0, 46)
box.BackgroundColor3 = Colors.Card
box.PlaceholderText = " " .. placeholder
box.Text = ""
box.TextColor3 = Colors.White
box.PlaceholderColor3 = Colors.DarkGray
box.Font = Enum.Font.Gotham
box.TextSize = 15
box.ClearTextOnFocus = false
box.Parent = holder
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 8)
corner.Parent = box
box.FocusLost:Connect(function(enter)
if enter then
callback(box.Text)
end
end)
end
local function notify(msg)
StarterGui:SetCore("SendNotification", {
Title = "AceHubX",
Text = msg,
Duration = 3
})
end
-- ========== LOCAL ==========
local function loadLocal()
contentTitle.Text = "Local"
contentSub.Text = "Your personal controls"
clearHolder()
createInput("WalkSpeed (16 = normal)", function(val)
local num = tonumber(val)
if num and player.Character then
local hum = player.Character:FindFirstChildOfClass("Humanoid")
if hum then
hum.WalkSpeed = num
notify("Speed: " .. num)
end
end
end)
createInput("JumpPower (50 = normal)", function(val)
local num = tonumber(val)
if num and player.Character then
local hum = player.Character:FindFirstChildOfClass("Humanoid")
if hum then
hum.UseJumpPower = true
hum.JumpPower = num
notify("Jump: " .. num)
end
end
end)
createButton("Toggle Fly", function()
flying = not flying
local char = player.Character
if not char then return end
local hrp = char:FindFirstChild("HumanoidRootPart")
local hum = char:FindFirstChildOfClass("Humanoid")
if not hrp or not hum then return end
if flying then
hum.PlatformStand = true
local bv = Instance.new("BodyVelocity")
bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
bv.Parent = hrp
local bg = Instance.new("BodyGyro")
bg.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
bg.P = 10000
bg.Parent = hrp
flyConnection = RunService.RenderStepped:Connect(function()
if not flying or not hrp.Parent then return end
local cam = workspace.CurrentCamera
local dir = Vector3.zero
if UserInputService:IsKeyDown(Enum.KeyCode.W) then dir += cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.S) then dir -= cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.A) then dir -= cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.D) then dir += cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.Space) then dir += Vector3.yAxis end
if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then dir -= Vector3.yAxis end
bv.Velocity = dir.Magnitude > 0 and dir.Unit * 70 or Vector3.zero
bg.CFrame = cam.CFrame
end)
notify("Fly On")
else
if flyConnection then flyConnection:Disconnect() end
hum.PlatformStand = false
for _, v in pairs(hrp:GetChildren()) do
if v:IsA("BodyVelocity") or v:IsA("BodyGyro") then v:Destroy() end
end
notify("Fly Off")
end
end)
createButton("Toggle Noclip", function()
noclip = not noclip
if noclip then
noclipConnection = RunService.Stepped:Connect(function()
if player.Character then
for _, part in pairs(player.Character:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = false
end
end
end
end)
notify("Noclip On")
else
if noclipConnection then noclipConnection:Disconnect() end
notify("Noclip Off")
end
end)
createButton("Toggle God Mode", function()
godMode = not godMode
local char = player.Character
if char then
local hum = char:FindFirstChildOfClass("Humanoid")
if hum then
if godMode then
hum.MaxHealth = math.huge
hum.Health = math.huge
else
hum.MaxHealth = 100
hum.Health = 100
end
end
end
notify(godMode and "God Mode On" or "God Mode Off")
end)
createButton("Infinite Jump", function()
infiniteJump = not infiniteJump
notify(infiniteJump and "Infinite Jump On" or "Infinite Jump Off")
end)
createButton("Respawn", function()
player:LoadCharacter()
end)
createButton("Reset Stats", function()
local char = player.Character
if char then
local hum = char:FindFirstChildOfClass("Humanoid")
if hum then
hum.WalkSpeed = 16
hum.JumpPower = 50
hum.MaxHealth = 100
hum.Health = 100
end
end
flying = false
noclip = false
godMode = false
infiniteJump = false
if flyConnection then flyConnection:Disconnect() end
if noclipConnection then noclipConnection:Disconnect() end
notify("Stats Reset")
end)
end
-- ========== PLAYERS ==========
local function loadPlayers()
contentTitle.Text = "Players"
contentSub.Text = "Select a player to manage"
clearHolder()
for _, plr in ipairs(Players:GetPlayers()) do
createButton(plr.DisplayName .. " @" .. plr.Name, function()
selectedPlayer = plr
contentSub.Text = "Selected: " .. plr.DisplayName
clearHolder()
createButton("Kill Player (Punish)", function()
if killEvent and selectedPlayer then
killEvent:FireServer(selectedPlayer)
notify("Killed " .. selectedPlayer.Name)
else
notify("Server Script missing!")
end
end)
createButton("Goto Player", function()
local char = player.Character
local tchar = selectedPlayer.Character
if char and tchar then
local hrp = char:FindFirstChild("HumanoidRootPart")
local thrp = tchar:FindFirstChild("HumanoidRootPart")
if hrp and thrp then
hrp.CFrame = thrp.CFrame * CFrame.new(0, 0, 5)
notify("Went to " .. selectedPlayer.Name)
end
end
end)
createButton("Freeze", function()
local tchar = selectedPlayer.Character
if tchar then
local hum = tchar:FindFirstChildOfClass("Humanoid")
if hum then
hum.WalkSpeed = 0
hum.JumpPower = 0
notify("Froze " .. selectedPlayer.Name)
end
end
end)
createButton("Unfreeze", function()
local tchar = selectedPlayer.Character
if tchar then
local hum = tchar:FindFirstChildOfClass("Humanoid")
if hum then
hum.WalkSpeed = 16
hum.JumpPower = 50
notify("Unfroze " .. selectedPlayer.Name)
end
end
end)
createButton("Spectate", function()
local tchar = selectedPlayer.Character
if tchar then
local hum = tchar:FindFirstChildOfClass("Humanoid")
if hum then
workspace.CurrentCamera.CameraSubject = hum
notify("Spectating " .. selectedPlayer.Name)
end
end
end)
createButton("Stop Spectating", function()
if player.Character then
local hum = player.Character:FindFirstChildOfClass("Humanoid")
if hum then
workspace.CurrentCamera.CameraSubject = hum
end
end
end)
createButton("← Back to Players", function()
loadPlayers()
end)
end)
end
end
-- ========== SERVER ==========
local function loadServer()
contentTitle.Text = "Server"
contentSub.Text = "Server controls"
clearHolder()
createButton("Respawn Yourself", function()
player:LoadCharacter()
end)
end
-- Sidebar Tabs
local tabs = {
{Name = "Local", Func = loadLocal},
{Name = "Players", Func = loadPlayers},
{Name = "Server", Func = loadServer},
}
local sideY = 75
local sideButtons = {}
for _, tab in ipairs(tabs) do
local btn = Instance.new("TextButton")
btn.Size = UDim2.new(1, -28, 0, 44)
btn.Position = UDim2.new(0, 14, 0, sideY)
btn.BackgroundColor3 = Colors.Card
btn.Text = " " .. tab.Name
btn.TextColor3 = Colors.White
btn.Font = Enum.Font.GothamMedium
btn.TextSize = 16
btn.TextXAlignment = Enum.TextXAlignment.Left
btn.AutoButtonColor = false
btn.Parent = sidebar
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 8)
corner.Parent = btn
btn.MouseButton1Click:Connect(function()
for _, b in pairs(sideButtons) do
b.BackgroundColor3 = Colors.Card
end
btn.BackgroundColor3 = Colors.Red
tab.Func()
end)
table.insert(sideButtons, btn)
sideY += 52
end
-- Default
sideButtons[1].BackgroundColor3 = Colors.Red
loadLocal()
-- Toggle
local opened = false
openBtn.MouseButton1Click:Connect(function()
opened = not opened
main.Visible = opened
blur.Size = opened and 18 or 0
end)
-- Infinite Jump
UserInputService.JumpRequest:Connect(function()
if infiniteJump and player.Character then
local hum = player.Character:FindFirstChildOfClass("Humanoid")
if hum then
hum:ChangeState(Enum.HumanoidStateType.Jumping)
end
end
end)
print("AceHubX loaded")No comments yet for this script.



