Speed Changer
Key RequiredUniversal

Speed Changer

Universal Scriptrarexerarexe 1.8K views 123 executesUpdated Apr 14, 2025
3.3/ 5(3 votes)
2167% Positive
Lua Script•281 lines (9211 chars)
local Players = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local player = Players.LocalPlayer

-- Settings
local defaultSpeed = 16
local enabled = false
local currentSpeed = defaultSpeed
local sliding = false

-- Color Scheme
local MAIN_COLOR = Color3.fromRGB(30, 20, 50)
local SECONDARY_COLOR = Color3.fromRGB(50, 30, 80)
local ACCENT_COLOR = Color3.fromRGB(120, 80, 200)
local TEXT_COLOR = Color3.fromRGB(240, 230, 255)
local BORDER_COLOR = Color3.fromRGB(170, 130, 255)
local SHINY_COLOR = Color3.fromRGB(200, 180, 255)

-- Create GUI
local ScreenGui = Instance.new("ScreenGui")
local MainContainer = Instance.new("Frame")
local MainFrame = Instance.new("Frame")
local BorderGlow = Instance.new("ImageLabel")
local TitleBar = Instance.new("Frame")
local Title = Instance.new("TextLabel")
local CloseButton = Instance.new("TextButton")
local ToggleButton = Instance.new("TextButton")
local SpeedSlider = Instance.new("Frame")
local SliderTitle = Instance.new("TextLabel")
local SliderFill = Instance.new("Frame")
local SliderButton = Instance.new("TextButton")
local SpeedValue = Instance.new("TextLabel")
local StatusIndicator = Instance.new("Frame")
local StatusLabel = Instance.new("TextLabel")
local CreditsLabel = Instance.new("TextLabel")

ScreenGui.Name = "WalkSpeedChanger"
ScreenGui.Parent = game.CoreGui
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling

-- Main Container with Border Effect
MainContainer.Name = "MainContainer"
MainContainer.Parent = ScreenGui
MainContainer.BackgroundTransparency = 1
MainContainer.Position = UDim2.new(0.8, 0, 0.7, 0)
MainContainer.Size = UDim2.new(0, 220, 0, 200)
MainContainer.Active = true
MainContainer.Draggable = true

-- Border Glow Effect
BorderGlow.Name = "BorderGlow"
BorderGlow.Parent = MainContainer
BorderGlow.BackgroundTransparency = 1
BorderGlow.Size = UDim2.new(1, 0, 1, 0)
BorderGlow.ZIndex = 0
BorderGlow.Image = "rbxassetid://8992230671"
BorderGlow.ImageColor3 = BORDER_COLOR
BorderGlow.ScaleType = Enum.ScaleType.Slice
BorderGlow.SliceCenter = Rect.new(100, 100, 100, 100)
BorderGlow.SliceScale = 0.05

-- Main Frame
MainFrame.Name = "MainFrame"
MainFrame.Parent = MainContainer
MainFrame.BackgroundColor3 = MAIN_COLOR
MainFrame.BackgroundTransparency = 0.1
MainFrame.BorderSizePixel = 0
MainFrame.Position = UDim2.new(0, 5, 0, 5)
MainFrame.Size = UDim2.new(1, -10, 1, -10)
MainFrame.ZIndex = 1

-- Title Bar
TitleBar.Name = "TitleBar"
TitleBar.Parent = MainFrame
TitleBar.BackgroundColor3 = SECONDARY_COLOR
TitleBar.BorderSizePixel = 0
TitleBar.Size = UDim2.new(1, 0, 0, 30)

Title.Name = "Title"
Title.Parent = TitleBar
Title.BackgroundTransparency = 1
Title.Position = UDim2.new(0, 10, 0, 0)
Title.Size = UDim2.new(0, 120, 1, 0)
Title.Font = Enum.Font.GothamSemibold
Title.Text = "SPEED CONTROL"
Title.TextColor3 = TEXT_COLOR
Title.TextSize = 14
Title.TextXAlignment = Enum.TextXAlignment.Left

CloseButton.Name = "CloseButton"
CloseButton.Parent = TitleBar
CloseButton.BackgroundTransparency = 1
CloseButton.Position = UDim2.new(1, -30, 0, 0)
CloseButton.Size = UDim2.new(0, 30, 1, 0)
CloseButton.Font = Enum.Font.GothamBold
CloseButton.Text = "×"
CloseButton.TextColor3 = TEXT_COLOR
CloseButton.TextSize = 18
CloseButton.TextStrokeTransparency = 0.5

-- Toggle Button
ToggleButton.Name = "ToggleButton"
ToggleButton.Parent = MainFrame
ToggleButton.BackgroundColor3 = SECONDARY_COLOR
ToggleButton.BorderSizePixel = 0
ToggleButton.Position = UDim2.new(0.1, 0, 0.2, 0)
ToggleButton.Size = UDim2.new(0.8, 0, 0, 35)
ToggleButton.Font = Enum.Font.GothamSemibold
ToggleButton.Text = "TOGGLE"
ToggleButton.TextColor3 = TEXT_COLOR
ToggleButton.TextSize = 14

-- Speed Slider
SpeedSlider.Name = "SpeedSlider"
SpeedSlider.Parent = MainFrame
SpeedSlider.BackgroundColor3 = SECONDARY_COLOR
SpeedSlider.BorderSizePixel = 0
SpeedSlider.Position = UDim2.new(0.1, 0, 0.45, 0)
SpeedSlider.Size = UDim2.new(0.8, 0, 0, 50)

SliderTitle.Name = "SliderTitle"
SliderTitle.Parent = SpeedSlider
SliderTitle.BackgroundTransparency = 1
SliderTitle.Position = UDim2.new(0, 5, 0, 0)
SliderTitle.Size = UDim2.new(1, -10, 0, 15)
SliderTitle.Font = Enum.Font.Gotham
SliderTitle.Text = "WALKSPEED"
SliderTitle.TextColor3 = TEXT_COLOR
SliderTitle.TextSize = 12
SliderTitle.TextXAlignment = Enum.TextXAlignment.Left

SliderFill.Name = "SliderFill"
SliderFill.Parent = SpeedSlider
SliderFill.BackgroundColor3 = ACCENT_COLOR
SliderFill.BorderSizePixel = 0
SliderFill.Position = UDim2.new(0, 0, 0, 20)
SliderFill.Size = UDim2.new(0.5, 0, 0, 10)

SliderButton.Name = "SliderButton"
SliderButton.Parent = SpeedSlider
SliderButton.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
SliderButton.BorderSizePixel = 0
SliderButton.Position = UDim2.new(0.5, -5, 0, 15)
SliderButton.Size = UDim2.new(0, 10, 0, 20)
SliderButton.ZIndex = 2
SliderButton.Text = ""

SpeedValue.Name = "SpeedValue"
SpeedValue.Parent = SpeedSlider
SpeedValue.BackgroundTransparency = 1
SpeedValue.Position = UDim2.new(0, 5, 0, 35)
SpeedValue.Size = UDim2.new(1, -10, 0, 15)
SpeedValue.Font = Enum.Font.Gotham
SpeedValue.Text = tostring(defaultSpeed)
SpeedValue.TextColor3 = TEXT_COLOR
SpeedValue.TextSize = 12
SpeedValue.TextXAlignment = Enum.TextXAlignment.Left

-- Status Indicator
StatusIndicator.Name = "StatusIndicator"
StatusIndicator.Parent = MainFrame
StatusIndicator.BackgroundColor3 = Color3.fromRGB(255, 60, 60)
StatusIndicator.BorderSizePixel = 0
StatusIndicator.Position = UDim2.new(0.1, 0, 0.8, 0)
StatusIndicator.Size = UDim2.new(0, 10, 0, 10)

StatusLabel.Name = "StatusLabel"
StatusLabel.Parent = MainFrame
StatusLabel.BackgroundTransparency = 1
StatusLabel.Position = UDim2.new(0.1, 15, 0.8, -2)
StatusLabel.Size = UDim2.new(0.8, -15, 0, 15)
StatusLabel.Font = Enum.Font.Gotham
StatusLabel.Text = "Disabled"
StatusLabel.TextColor3 = TEXT_COLOR
StatusLabel.TextSize = 12
StatusLabel.TextXAlignment = Enum.TextXAlignment.Left

-- Credits Label
CreditsLabel.Name = "CreditsLabel"
CreditsLabel.Parent = MainFrame
CreditsLabel.BackgroundTransparency = 1
CreditsLabel.Position = UDim2.new(0, 5, 1, -15)
CreditsLabel.Size = UDim2.new(1, -10, 0, 12)
CreditsLabel.Font = Enum.Font.FredokaOne
CreditsLabel.Text = "Credits to rar"
CreditsLabel.TextColor3 = Color3.fromRGB(180, 160, 255)
CreditsLabel.TextSize = 12
CreditsLabel.TextXAlignment = Enum.TextXAlignment.Left

-- Functions
local function updateCharacter()
    if not player.Character then return end
    
    local humanoid = player.Character:FindFirstChildOfClass("Humanoid")
    if humanoid then
        humanoid.WalkSpeed = enabled and currentSpeed or defaultSpeed
    end
end

local function toggleEnabled()
    enabled = not enabled
    StatusIndicator.BackgroundColor3 = enabled and Color3.fromRGB(60, 255, 60) or Color3.fromRGB(255, 60, 60)
    StatusLabel.Text = enabled and "Enabled ("..currentSpeed..")" or "Disabled"
    ToggleButton.Text = enabled and "DISABLE" or "ENABLE"
    
    updateCharacter()
end

local function updateSpeed(value)
    currentSpeed = math.clamp(math.floor(value), 16, 100)
    SpeedValue.Text = tostring(currentSpeed)
    local ratio = (currentSpeed - 16) / 84
    SliderFill.Size = UDim2.new(ratio, 0, 0, 10)
    SliderButton.Position = UDim2.new(ratio, -5, 0, 15)
    
    if enabled then
        StatusLabel.Text = "Enabled ("..currentSpeed..")"
        updateCharacter()
    end
end

local function handleSliderInput(input)
    local sliderAbsoluteX = SpeedSlider.AbsolutePosition.X
    local sliderAbsoluteWidth = SpeedSlider.AbsoluteSize.X
    
    local x
    if input.UserInputType == Enum.UserInputType.Touch or input.UserInputType == Enum.UserInputType.MouseButton1 then
        local inputPosition = input.Position.X
        x = (inputPosition - sliderAbsoluteX) / sliderAbsoluteWidth
    else
        return
    end
    
    x = math.clamp(x, 0, 1)
    updateSpeed(16 + (x * 84))
end

-- Connections
ToggleButton.MouseButton1Click:Connect(toggleEnabled)
ToggleButton.TouchTap:Connect(toggleEnabled) -- Mobile support

SliderButton.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.Touch or input.UserInputType == Enum.UserInputType.MouseButton1 then
        sliding = true
        handleSliderInput(input)
    end
end)

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

UIS.InputChanged:Connect(function(input)
    if sliding and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then
        handleSliderInput(input)
    end
end)

-- Make entire slider track clickable
SpeedSlider.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.Touch or input.UserInputType == Enum.UserInputType.MouseButton1 then
        handleSliderInput(input)
    end
end)

CloseButton.MouseButton1Click:Connect(function()
    ScreenGui:Destroy()
end)
CloseButton.TouchTap:Connect(function() -- Mobile support
    ScreenGui:Destroy()
end)

player.CharacterAdded:Connect(function(character)
    updateCharacter()
end)

-- Initialize
updateSpeed(defaultSpeed)

Features & Information

just speed Changer

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts