
KeylessUniversal

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local player = Players.LocalPlayer
local function startClientAccel(char)
local humanoid = char:WaitForChild("Humanoid")
local hrp = char:WaitForChild("HumanoidRootPart")
local speed = 0 -- i recommend u use 0.2 or 0.1, but i chose 0 since its universal
local maxSpeed = 27 -- Change if u wanna :3
local accel = 0.15 -- how fast it uhm accelerates
local decel = 23 -- when u stop, this is the oppisite of accel
local moving = false
humanoid:GetPropertyChangedSignal("MoveDirection"):Connect(function()
moving = humanoid.MoveDirection.Magnitude > 0
end)
RunService.RenderStepped:Connect(function(dt)
if not hrp or not hrp.Parent then return end
if moving then
speed = math.min(speed + accel * dt * 10, maxSpeed)
else
speed = math.max(speed - decel * dt * 10, 0)
end
if speed > 0.1 then
-- Use MoveDirection instead of camera
local moveDir = humanoid.MoveDirection
if moveDir.Magnitude > 0 then
local offset = moveDir.Unit * speed * dt
hrp.CFrame = hrp.CFrame + offset
end
end
end)
end
if player.Character then
startClientAccel(player.Character)
end
player.CharacterAdded:Connect(startClientAccel)No comments yet for this script.



