Speed Script On Roblox - Move 2x Faster

Written By Steven Arends

So, you want to make a Speed Run game on Roblox and need a speed script?

That’s where my guide comes in handy.

Utilizing my programming skills, I have made a speed script that works for almost every Roblox game.run-faster-in-roblox

What is Roblox walk speed script?

Walkspeed script is a script used to describe how fast the Humanoid can walk in studs per second. The default speed is 16 that means the Roblox character can move 16 studs in any direction per second. You can freeze a player by setting the default walk speed to zero.

And in this post, I am about to show you the speed script that makes you faster the more you walk.

Also, check our separate post for making a kill brick using the Roblox kill script.

Roblox Speed Script – How to move faster in Roblox?

Speed scripts are the most common scripts used on Speedy games like Space Racing and Speed Run. You won’t get sample Roblox scripts anywhere else.

If you are a beginner then you should definitely go through our guide on how to add friends on Roblox and make a Roblox group.roblox-walkspeed-script

Here is the code sample to freeze a player in Roblox:

local player = game.Players.LocalPlayer

local char = player.CharacterAdded:wait()

local h = char.Humanoid

h.WalkSpeed = 0

Also, you can increase the average speed of the character by increasing the value of the walkspeed.roblox-run-fast-script

Here is the speed script on Roblox to move faster:

local Players = game.Players

local RunService = game:GetService(“RunService”)

local SpeedPerStud = 0.1 –Configure this to your liking!!!!!

local StudsTraveled = 0

local LastPosition = nil

function playerAdded(player) –Fires when a player joins the server

local Speed = Instance.new(“NumberValue”) –In case the player dies, save their speed

Speed.Name = “SpeedValue”

Speed.Value = 16

Speed.Parent = player

local RootPartHeartbeat = nil


LastPosition = character.HumanoidRootPart.Position

RootPartHeartbeat = RunService.Heartbeat:Connect(function()

if character:FindFirstChild(“HumanoidRootPart”) then –If the player jumps into the void or their character doesn’t exist for some reason, this will stop this block of code from running

local DistanceFromLastPosition = (character.HumanoidRootPart.Position-LastPosition).magnitude

Speed.Value = Speed.Value+(DistanceFromLastPosition*SpeedPerStud)

character.Humanoid.WalkSpeed = Speed.Value

LastPosition = character.HumanoidRootPart.Position





RootPartHeartbeat:Disconnect() –Prevents **serious** memory leaks AND errors!




Create a script within ServerScriptService named SpeedScript in the Workspace of Roblox Studio.

Within the script, copy & paste this series of codes.

IMPORTANT: The code sample contains information in some understanding lines. Exclude them while copy-pasting.

Check out our epic guide if you don’t know how to make clothes on Roblox.

How to change characters walkspeed when they press a button

Before copy-pasting the codes, Remember that the code sample contains information not for pasting in the script folder.roblox-speedy-walk-script

Here is the Roblox walkspeed speed script code that can be changed with buttons:

local player = game.Players.LocalPlayer

repeat wait() until player.Character

local char = player.Character

local hum = char:WaitForChild(“Humanoid”)

local inputService = game:GetService(‘UserInputService’)

local keys = {

[‘Enum.KeyCode.LeftShift’] = true;

[‘Enum.KeyCode.RightShift’] = true;



if inputType.UserInputType == Enum.UserInputType.Keyboard then

— Make sure you’re checking for KeyBoard input only.

   local makeKeyCodeAString = tostring(inputType.KeyCode)

 if keys[makeKeyCodeAString] then

local speed = hum.WalkSpeed <= 16 and 30 or 16

— Ternary operator

— speed is equal to this


if hum.WalkSpeed <= 16 then

speed = 30


speed = 16



hum.WalkSpeed = speed




Check out our separate post on how to delete roblox account.

Roblox FE Speed Script – 100% Working For R15 & R6 Characters

Most exploits have their built-in speed scripts. Some don’t work for Roblox.roblox-speed-limit

So here’s a script that will work on almost all Roblox games:

local Players = game:service(‘Players’)

local Player = Players.LocalPlayer

local userInput = game:service(‘UserInputService’)

local runService = game:service(‘RunService’)

repeat wait() until Player.Character

local Character = Player.Character

local pHum = Character:WaitForChild(‘Humanoid’)

local humRoot = Character:WaitForChild(‘HumanoidRootPart’)

local Multiplier = 1.4


if Key.KeyCode == Enum.KeyCode.LeftBracket then

Multiplier = Multiplier + 0.1



while userInput:IsKeyDown(Enum.KeyCode.LeftBracket) do


Multiplier = Multiplier + 0.1




if Key.KeyCode == Enum.KeyCode.RightBracket then

Multiplier = Multiplier – 0.1



while userInput:IsKeyDown(Enum.KeyCode.RightBracket) do


Multiplier = Multiplier – 0.1






if userInput:IsKeyDown(Enum.KeyCode.LeftShift) then

humRoot.CFrame = humRoot.CFrame + pHum.MoveDirection * Multiplier



Execute the code using Shift. I don’t recommend using these codes because FE speed scripts are full of bugs. Check out how you can perform a successful trade on Roblox.


Question: What is the average Roblox walk speed?

Answer: 16 Studs per second is the average walk speed on Roblox.

Question: Can you use JavaScript in Roblox?

Answer: No. Roblox doesn’t allow the use of the JAVA script. Lua is the unique programming language for Roblox scripting.

Question: What is a humanoid in Roblox?

Answer: Humanoid is the Roblox Avatar. It is the model that gives functionality to the character.

Final Thoughts

Speed scripting is very hard because you have to learn the basic use of the Lua programming language.

You can paste the code I provided you and build your own game using the same language. Just change the speed value instead.

Leave a Comment