local player = game.Players.LocalPlayer local humanoid -- Wait for character and humanoid local function setupHumanoid() local char = player.Character or player.CharacterAdded:Wait() humanoid = char:WaitForChild("Humanoid") end setupHumanoid() player.CharacterAdded:Connect(setupHumanoid) -- Create GUI local gui = Instance.new("ScreenGui") gui.Name = "SpeedGui" gui.ResetOnSpawn = false gui.Parent = player:WaitForChild("PlayerGui") -- Toggle Button local toggleButton = Instance.new("TextButton") toggleButton.Size = UDim2.new(0, 100, 0, 40) toggleButton.Position = UDim2.new(0, 20, 0, 20) toggleButton.Text = "Toggle GUI" toggleButton.BackgroundColor3 = Color3.fromRGB(50, 50, 50) toggleButton.TextColor3 = Color3.new(1, 1, 1) toggleButton.Parent = gui -- Main Frame local mainFrame = Instance.new("Frame") mainFrame.Size = UDim2.new(0, 350, 0, 120) mainFrame.Position = UDim2.new(0, 140, 0, 20) mainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) mainFrame.Visible = true mainFrame.Parent = gui -- Label local label = Instance.new("TextLabel") label.Size = UDim2.new(1, 0, 0, 40) label.Position = UDim2.new(0, 0, 0, 0) label.Text = "WalkSpeed: 16" label.TextColor3 = Color3.new(1, 1, 1) label.BackgroundTransparency = 1 label.Font = Enum.Font.SourceSans label.TextScaled = true label.Parent = mainFrame -- Slider Background local sliderBG = Instance.new("Frame") sliderBG.Size = UDim2.new(1, -40, 0, 20) sliderBG.Position = UDim2.new(0, 20, 0, 60) sliderBG.BackgroundColor3 = Color3.fromRGB(80, 80, 80) sliderBG.BorderSizePixel = 0 sliderBG.Parent = mainFrame -- Slider Knob local sliderKnob = Instance.new("Frame") sliderKnob.Size = UDim2.new(0, 20, 0, 20) sliderKnob.Position = UDim2.new(0, 0, 0, 0) sliderKnob.BackgroundColor3 = Color3.new(1, 0, 0) sliderKnob.BorderSizePixel = 0 sliderKnob.Parent = sliderBG -- Script Logic local UIS = game:GetService("UserInputService") local dragging = false local minSpeed = 16 local maxSpeed = 200 local function updateWalkSpeed(x) local relativeX = math.clamp((x - sliderBG.AbsolutePosition.X) / sliderBG.AbsoluteSize.X, 0, 1) local speed = math.floor(minSpeed + (maxSpeed - minSpeed) * relativeX) sliderKnob.Position = UDim2.new(relativeX, -sliderKnob.Size.X.Offset / 2, 0, 0) label.Text = "WalkSpeed: " .. speed if humanoid then humanoid.WalkSpeed = speed end end sliderKnob.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true end end) UIS.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end end) UIS.InputChanged:Connect(function(input) if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then updateWalkSpeed(input.Position.X) end end) -- Toggle GUI visibility toggleButton.MouseButton1Click:Connect(function() mainFrame.Visible = not mainFrame.Visible end)