Roblohaker universal menu v1 7
Key RequiredUniversal

Roblohaker universal menu v1 7

Universal Scriptroblohackerroblohacker 2K views 148 executesUpdated Aug 27, 2025
5.0/ 5(2 votes)
20100% Positive
Lua Script•207 lines (6634 chars)
--// Roblohacker Menu v1.7 (Fly + WalkSpeed + InfJump + Noclip)
-- Place this in StarterGui > LocalScript

local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")

local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")

-- Menu
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "RoblohackerMenu"
ScreenGui.Parent = player:WaitForChild("PlayerGui")

local Menu = Instance.new("Frame")
Menu.Size = UDim2.new(0, 250, 0, 300)
Menu.Position = UDim2.new(0.1, 0, 0.1, 0)
Menu.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
Menu.BorderSizePixel = 0
Menu.Active = true
Menu.Draggable = true
Menu.Parent = ScreenGui

-- Title
local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, -25, 0, 25)
Title.Position = UDim2.new(0, 0, 0, 0)
Title.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
Title.Text = "Roblohacker Menu v1.7"
Title.Font = Enum.Font.SourceSansBold
Title.TextColor3 = Color3.fromRGB(255, 255, 255)
Title.TextSize = 18
Title.Parent = Menu

-- Close Button
local CloseButton = Instance.new("TextButton")
CloseButton.Size = UDim2.new(0, 25, 0, 25)
CloseButton.Position = UDim2.new(1, -25, 0, 0)
CloseButton.BackgroundColor3 = Color3.fromRGB(150, 0, 0)
CloseButton.Text = "X"
CloseButton.TextColor3 = Color3.fromRGB(255, 255, 255)
CloseButton.Font = Enum.Font.SourceSansBold
CloseButton.TextSize = 18
CloseButton.Parent = Menu
CloseButton.MouseButton1Click:Connect(function()
	ScreenGui:Destroy()
end)

-- Fly Button
local FlyButton = Instance.new("TextButton")
FlyButton.Size = UDim2.new(1, -10, 0, 40)
FlyButton.Position = UDim2.new(0, 5, 0, 35)
FlyButton.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
FlyButton.TextColor3 = Color3.fromRGB(255, 255, 255)
FlyButton.Text = "Fly: OFF"
FlyButton.Font = Enum.Font.SourceSansBold
FlyButton.TextSize = 20
FlyButton.Parent = Menu

-- Reset Button
local ResetButton = Instance.new("TextButton")
ResetButton.Size = UDim2.new(1, -10, 0, 40)
ResetButton.Position = UDim2.new(0, 5, 0, 80)
ResetButton.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
ResetButton.TextColor3 = Color3.fromRGB(255, 255, 255)
ResetButton.Text = "Reset"
ResetButton.Font = Enum.Font.SourceSansBold
ResetButton.TextSize = 20
ResetButton.Parent = Menu

-- WalkSpeed
local SpeedLabel = Instance.new("TextLabel")
SpeedLabel.Size = UDim2.new(1, -10, 0, 20)
SpeedLabel.Position = UDim2.new(0, 5, 0, 125)
SpeedLabel.BackgroundTransparency = 1
SpeedLabel.Text = "WalkSpeed: 16"
SpeedLabel.Font = Enum.Font.SourceSansBold
SpeedLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
SpeedLabel.TextSize = 18
SpeedLabel.Parent = Menu

local SpeedBox = Instance.new("TextBox")
SpeedBox.Size = UDim2.new(1, -10, 0, 30)
SpeedBox.Position = UDim2.new(0, 5, 0, 150)
SpeedBox.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
SpeedBox.TextColor3 = Color3.fromRGB(255, 255, 255)
SpeedBox.Text = "16"
SpeedBox.Font = Enum.Font.SourceSans
SpeedBox.TextSize = 18
SpeedBox.ClearTextOnFocus = false
SpeedBox.Parent = Menu

SpeedBox.FocusLost:Connect(function()
	local num = tonumber(SpeedBox.Text)
	if num and num >= 1 and num <= 1000 then
		humanoid.WalkSpeed = num
		SpeedLabel.Text = "WalkSpeed: " .. num
	end
end)

-- Infinite Jump
local InfJumpButton = Instance.new("TextButton")
InfJumpButton.Size = UDim2.new(1, -10, 0, 40)
InfJumpButton.Position = UDim2.new(0, 5, 0, 190)
InfJumpButton.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
InfJumpButton.TextColor3 = Color3.fromRGB(255, 255, 255)
InfJumpButton.Text = "InfJump: OFF"
InfJumpButton.Font = Enum.Font.SourceSansBold
InfJumpButton.TextSize = 20
InfJumpButton.Parent = Menu

local infJump = false
InfJumpButton.MouseButton1Click:Connect(function()
	infJump = not infJump
	InfJumpButton.Text = infJump and "InfJump: ON" or "InfJump: OFF"
end)

UserInputService.JumpRequest:Connect(function()
	if infJump then
		humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
	end
end)

-- Noclip
local NoclipButton = Instance.new("TextButton")
NoclipButton.Size = UDim2.new(1, -10, 0, 40)
NoclipButton.Position = UDim2.new(0, 5, 0, 235)
NoclipButton.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
NoclipButton.TextColor3 = Color3.fromRGB(255, 255, 255)
NoclipButton.Text = "Noclip: OFF"
NoclipButton.Font = Enum.Font.SourceSansBold
NoclipButton.TextSize = 20
NoclipButton.Parent = Menu

local noclip = false
NoclipButton.MouseButton1Click:Connect(function()
	noclip = not noclip
	NoclipButton.Text = noclip and "Noclip: ON" or "Noclip: OFF"
end)

RunService.Stepped:Connect(function()
	if noclip then
		for _, part in pairs(character:GetDescendants()) do
			if part:IsA("BasePart") then
				part.CanCollide = false
			end
		end
	else
		for _, part in pairs(character:GetDescendants()) do
			if part:IsA("BasePart") then
				part.CanCollide = true
			end
		end
	end
end)

-- Fly logic
local flying = false
local bodyGyro
local bodyVelocity
local flySpeed = 50

FlyButton.MouseButton1Click:Connect(function()
	flying = not flying
	FlyButton.Text = flying and "Fly: ON" or "Fly: OFF"

	if flying then
		bodyGyro = Instance.new("BodyGyro")
		bodyGyro.P = 9e4
		bodyGyro.MaxTorque = Vector3.new(9e9, 9e9, 9e9)
		bodyGyro.CFrame = humanoidRootPart.CFrame
		bodyGyro.Parent = humanoidRootPart

		bodyVelocity = Instance.new("BodyVelocity")
		bodyVelocity.Velocity = Vector3.new(0, 0, 0)
		bodyVelocity.MaxForce = Vector3.new(9e9, 9e9, 9e9)
		bodyVelocity.Parent = humanoidRootPart

		RunService.Heartbeat:Connect(function()
			if flying then
				local camCF = workspace.CurrentCamera.CFrame
				local moveDir = Vector3.new()
				if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveDir = moveDir + camCF.LookVector end
				if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveDir = moveDir - camCF.LookVector end
				if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveDir = moveDir - camCF.RightVector end
				if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveDir = moveDir + camCF.RightVector end
				if UserInputService:IsKeyDown(Enum.KeyCode.Space) then moveDir = moveDir + Vector3.new(0, 1, 0) end
				if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then moveDir = moveDir - Vector3.new(0, 1, 0) end

				bodyVelocity.Velocity = moveDir * flySpeed
				bodyGyro.CFrame = camCF
			end
		end)
	else
		if bodyGyro then bodyGyro:Destroy() end
		if bodyVelocity then bodyVelocity:Destroy() end
	end
end)

-- Reset
ResetButton.MouseButton1Click:Connect(function()
	humanoid.WalkSpeed = 16
	SpeedBox.Text = "16"
	SpeedLabel.Text = "WalkSpeed: 16"
end)

Features & Information

infjump noclip fly walkspeed changer + walkspeed reset button x close button at the top to close menu no key system :) pls give feedback of what features i should add in comments :)
#free#universal#roblox#no key#all games

Community Comments (4)

NocupantNocupantAug 27, 2025

Не рабочий

iplaywarzone5iplaywarzone5Aug 27, 2025

not to be rude and shi but this is AI but i use it to so idc lol

iplaywarzone5iplaywarzone5Aug 27, 2025

well sometimes

iplaywarzone5iplaywarzone5Aug 27, 2025

but yeah ignore people who hate. but dont use ai always try to learn scripting like i am

More Scripts for Universal Scripts