What's new
Heapleak - Scripthub

Get the most out of HeapLeak by creating a free account! Once signed in, you’ll gain full access to restricted content, be able to share your own scripts, and participate in our member-only discussions.

Chaos Menu (universal)

Version / Update: v1.0.0
Download / Script Link
local Players = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local RunService = game:GetService("RunService")

local player = Players.LocalPlayer
local camera = workspace.CurrentCamera
local mouse = player:GetMouse()

-- SETTINGS
local settings = {
onColor = Color3.fromRGB(0,255,120),
offColor = Color3.fromRGB(0,120,255),
bgColor = Color3.fromRGB(20,20,20)
}

-- STATES
local states = {
noclip=false, fly=false, clickTP=false, spin=false, infJump=false,
invisible=false
}

-- GUI
local gui = Instance.new("ScreenGui", player:WaitForChild("PlayerGui"))
gui.ResetOnSpawn = false

local frame = Instance.new("Frame", gui)
frame.Size = UDim2.new(0, 520, 0, 500)
frame.Position = UDim2.new(0.1,0,0.2,0)
frame.BackgroundColor3 = settings.bgColor
Instance.new("UICorner", frame).CornerRadius = UDim.new(0,18)

-- 🌈 RGB
local grad = Instance.new("UIGradient", frame)
RunService.RenderStepped:Connect(function()
local t = tick()%5/5
grad.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.fromHSV(t,1,1)),
ColorSequenceKeypoint.new(1, Color3.fromHSV(t+0.2,1,1))
}
end)

-- TITLE
local title = Instance.new("TextLabel", frame)
title.Size = UDim2.new(1,0,0,40)
title.Text = "CHAOS MENU"
title.Font = Enum.Font.GothamBlack
title.TextScaled = true
title.TextColor3 = Color3.new(1,1,1)
title.BackgroundTransparency = 1

-- DRAG
local dragging, dragStart, startPos
frame.InputBegan:Connect(function(i)
if i.UserInputType==Enum.UserInputType.MouseButton1 then
dragging=true; dragStart=i.Position; startPos=frame.Position
end
end)

UIS.InputChanged:Connect(function(i)
if dragging and i.UserInputType==Enum.UserInputType.MouseMovement then
local d=i.Position-dragStart
frame.Position=UDim2.new(startPos.X.Scale,startPos.X.Offset+d.X,startPos.Y.Scale,startPos.Y.Offset+d.Y)
end
end)

UIS.InputEnded:Connect(function(i)
if i.UserInputType==Enum.UserInputType.MouseButton1 then dragging=false end
end)

-- PAGE SYSTEM
local pages, currentPage = {}, 1
local maxPerPage = 10

local function createPage()
local p = Instance.new("Frame", frame)
p.Size = UDim2.new(1,0,1,-80)
p.Position = UDim2.new(0,0,0,80)
p.Visible = false

local layout = Instance.new("UIListLayout", p)
layout.Padding = UDim.new(0,6)

table.insert(pages,p)
return p
end

local function switchPage(i)
for k,v in pairs(pages) do v.Visible = (k==i) end
currentPage=i
end

-- NAV
local nav = Instance.new("Frame", frame)
nav.Size = UDim2.new(1,0,0,40)
nav.Position = UDim2.new(0,0,0,40)
nav.BackgroundTransparency = 1

local prev = Instance.new("TextButton", nav)
prev.Size = UDim2.new(0.5,0,1,0)
prev.Text = "<"

local next = Instance.new("TextButton", nav)
next.Size = UDim2.new(0.5,0,1,0)
next.Position = UDim2.new(0.5,0,0,0)
next.Text = ">"

prev.MouseButton1Click:Connect(function()
if currentPage>1 then switchPage(currentPage-1) end
end)
next.MouseButton1Click:Connect(function()
if currentPage<#pages then switchPage(currentPage+1) end
end)

-- BUTTON
local function createButton(parent, name, callback, isToggle)
local state = false

local b = Instance.new("TextButton", parent)
b.Size = UDim2.new(1,-20,0,40)
b.Text = name
b.Font = Enum.Font.GothamBold
b.TextColor3 = Color3.new(1,1,1)
b.BackgroundColor3 = settings.offColor

Instance.new("UICorner", b).CornerRadius = UDim.new(0,12)

b.MouseButton1Click:Connect(function()
if isToggle then
state = not state
b.BackgroundColor3 = state and settings.onColor or settings.offColor
callback(state)
else
callback()
end
end)
end

local function char() return player.Character or player.CharacterAdded:Wait() end

-- ABILITIES
local abilities = {

{"Fly", true, function(on) states.fly = on end},

{"Noclip", true, function(on) states.noclip = on end},

{"Click TP", true, function(on) states.clickTP = on end},

{"TP Random", false, function()
local list=Players:GetPlayers()
local t=list[math.random(1,#list)]
if t~=player and t.Character then
char().HumanoidRootPart.CFrame = t.Character.HumanoidRootPart.CFrame
end
end},

{"Big", false, function() char():ScaleTo(5) end},
{"Small", false, function() char():ScaleTo(0.5) end},

{"Super Speed", false, function()
local h=char():FindFirstChild("Humanoid")
if h then h.WalkSpeed = 50 end
end},

{"Faster Speed", false, function()
local h=char():FindFirstChild("Humanoid")
if h then h.WalkSpeed = 100 end
end},

{"High Jump", false, function()
local h=char():FindFirstChild("Humanoid")
if h then h.JumpPower = 120 end
end},

{"Zero Gravity", false, function() workspace.Gravity = 0 end},
{"Low Gravity", false, function() workspace.Gravity = 50 end},

{"Invisible", true, function(on)
for _,v in pairs(char():GetDescendants()) do
if v:IsA("BasePart") then v.Transparency = on and 1 or 0 end
end
end},

-- Simple "Dog Morph" (placeholder visual change)
{"Dog Morph", false, function()
local head = char():FindFirstChild("Head")
if head then
head.Shape = Enum.PartType.Ball
end
end},

-- Debug highlight (for your own game)
{"Highlight Players", true, function(on)
if on then
for _,p in pairs(Players:GetPlayers()) do
if p ~= player and p.Character then
local h = Instance.new("Highlight", p.Character)
end
end
end
end},

}

-- BUILD
local page = createPage()
local count = 0

for _,a in pairs(abilities) do
if count >= maxPerPage then
page = createPage()
count = 0
end

createButton(page, a[1], a[3], a[2])
count += 1
end

-- SYSTEMS
RunService.Stepped:Connect(function()
if states.noclip then
for _,v in pairs(char():GetDescendants()) do
if v:IsA("BasePart") then v.CanCollide=false end
end
end
end)

RunService.RenderStepped:Connect(function()
if states.fly then
local hrp=char().HumanoidRootPart
hrp.Velocity = camera.CFrame.LookVector * 80
end
end)

mouse.Button1Down:Connect(function()
if states.clickTP then
char().HumanoidRootPart.CFrame = CFrame.new(mouse.Hit.Position+Vector3.new(0,3,0))
end
end)

switchPage(1)
[ View More ]
7a0b900e-e9fa-4c14-a0ac-d5af63785043.webp


this features 2 pages of scripts. just fun scripts!
 
Back
Top