Walkspeed Dragger
Key RequiredUniversal

Walkspeed Dragger

Universal Scriptphaiznzphaiznz 309 views 27 executesUpdated Dec 30, 2025
Unrated
00
Lua Script•186 lines (5154 chars)
-- Edit the UI if you want custom themes I'm not gonna add anything else.

local Players = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local player = Players.LocalPlayer

local function getHumanoid()
	local char = player.Character or player.CharacterAdded:Wait()
	return char:WaitForChild("Humanoid")
end

local humanoid = getHumanoid()
player.CharacterAdded:Connect(function()
	humanoid = getHumanoid()
end)

local playerGui = player:WaitForChild("PlayerGui")

local WalkspeedDragger = Instance.new("ScreenGui")
WalkspeedDragger.Name = "WalkspeedDragger"
WalkspeedDragger.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
WalkspeedDragger.Parent = playerGui

local main = Instance.new("Frame")
main.Name = "Main"
main.BackgroundColor3 = Color3.fromRGB(221, 221, 221)
main.BorderSizePixel = 0
main.Position = UDim2.new(0.226, 0, 0.257, 0)
main.Size = UDim2.new(0, 400, 0, 250)
main.Parent = WalkspeedDragger

local mainCorner = Instance.new("UICorner", main)
mainCorner.CornerRadius = UDim.new(0, 4)

local title = Instance.new("TextLabel")
title.Parent = main
title.BackgroundTransparency = 1
title.Position = UDim2.new(0, 0, 0, 0)
title.Size = UDim2.new(1, 0, 0, 40)
title.Font = Enum.Font.Sarpanch
title.Text = "Walkspeed Dragger"
title.TextColor3 = Color3.fromRGB(35, 35, 35)
title.TextScaled = true
title.TextWrapped = true

local bar = Instance.new("Frame")
bar.Name = "Bar"
bar.Parent = main
bar.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
bar.Position = UDim2.new(0.05, 0, 0.3, 0)
bar.Size = UDim2.new(0, 360, 0, 4)

local barCorner = Instance.new("UICorner", bar)
barCorner.CornerRadius = UDim.new(0, 4)

local knob = Instance.new("Frame")
knob.Name = "Knob"
knob.Parent = bar
knob.BackgroundColor3 = Color3.fromRGB(211, 211, 211)
knob.Size = UDim2.new(0, 25, 0, 25)
knob.Position = UDim2.new(0, -12, 0.5, -12)

local knobCorner = Instance.new("UICorner", knob)
knobCorner.CornerRadius = UDim.new(0, 4)

local maxBox = Instance.new("TextBox")
maxBox.Parent = main
maxBox.Name = "MaxBox"
maxBox.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
maxBox.Position = UDim2.new(0.05, 0, 0.5, 0)
maxBox.Size = UDim2.new(0, 360, 0, 31)
maxBox.Font = Enum.Font.SourceSans
maxBox.Text = "100"
maxBox.TextColor3 = Color3.fromRGB(211, 211, 211)
maxBox.TextSize = 14

local maxBoxCorner = Instance.new("UICorner", maxBox)
maxBoxCorner.CornerRadius = UDim.new(0, 4)

local setBox = Instance.new("TextBox")
setBox.Parent = main
setBox.Name = "SetBox"
setBox.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
setBox.Position = UDim2.new(0.05, 0, 0.65, 0)
setBox.Size = UDim2.new(0, 360, 0, 31)
setBox.Font = Enum.Font.SourceSans
setBox.Text = "16"
setBox.TextColor3 = Color3.fromRGB(211, 211, 211)
setBox.TextSize = 14

local setBoxCorner = Instance.new("UICorner", setBox)
setBoxCorner.CornerRadius = UDim.new(0, 4)

local draggingGui = false
local dragStart
local startPos

title.InputBegan:Connect(function(input)
	if input.UserInputType == Enum.UserInputType.MouseButton1 then
		draggingGui = true
		dragStart = input.Position
		startPos = main.Position
	end
end)

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

UIS.InputChanged:Connect(function(input)
	if draggingGui and input.UserInputType == Enum.UserInputType.MouseMovement then
		local delta = input.Position - dragStart
		main.Position = UDim2.new(
			startPos.X.Scale,
			startPos.X.Offset + delta.X,
			startPos.Y.Scale,
			startPos.Y.Offset + delta.Y
		)
	end
end)

local draggingSlider = false
local maxSpeed = tonumber(maxBox.Text) or 100

local function applySpeed(alpha)
	alpha = math.clamp(alpha, 0, 1)
	local speed = alpha * maxSpeed
	if humanoid then
		humanoid.WalkSpeed = speed
	end
	if humanoid and humanoid.SeatPart and humanoid.SeatPart:IsA("VehicleSeat") then
		humanoid.SeatPart.MaxSpeed = speed
	end
end

local function updateKnob(x)
	local rel = (x - bar.AbsolutePosition.X) / bar.AbsoluteSize.X
	rel = math.clamp(rel, 0, 1)
	knob.Position = UDim2.new(rel, -knob.AbsoluteSize.X/2, 0.5, -knob.AbsoluteSize.Y/2)
	applySpeed(rel)
end

knob.InputBegan:Connect(function(input)
	if input.UserInputType == Enum.UserInputType.MouseButton1 then
		draggingSlider = true
	end
end)

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

UIS.InputChanged:Connect(function(input)
	if draggingSlider and input.UserInputType == Enum.UserInputType.MouseMovement then
		updateKnob(input.Position.X)
	end
end)

bar.InputBegan:Connect(function(input)
	if input.UserInputType == Enum.UserInputType.MouseButton1 then
		updateKnob(input.Position.X)
	end
end)

maxBox.FocusLost:Connect(function()
	local val = tonumber(maxBox.Text)
	if val and val > 0 then
		maxSpeed = val
	else
		maxBox.Text = tostring(maxSpeed)
	end
end)

setBox.FocusLost:Connect(function()
	local val = tonumber(setBox.Text)
	if val and humanoid then
		val = math.clamp(val, 0, maxSpeed)
		humanoid.WalkSpeed = val
		local rel = val / maxSpeed
		knob.Position = UDim2.new(rel, -knob.AbsoluteSize.X/2, 0.5, -knob.AbsoluteSize.Y/2)
	end
end)

Features & Information

lets you drag your speed or set it idk gng
#walkspeed dragger speed

Community Comments (1)

phaiznzphaiznzJan 1, 2026

@darlyne5 im good

More Scripts for Universal Scripts