Run it
Copy the script and paste it into your executor.
local plr = game:GetService("Players").LocalPlayer
local rs = game:GetService("RunService")
local jb = 14
local function setup(char)
local hum = char:WaitForChild("Humanoid")
local root = char:WaitForChild("HumanoidRootPart")
local joint = root:WaitForChild("RootJoint")
local c0 = joint.C0
on =
()
on
rs:()
on =
joint.Parent
joint.C0 = c0
hum.StateChanged:((_, new)
new == .HumanoidStateType.Landed new == .HumanoidStateType.Running
on
()
new ~= .HumanoidStateType.Jumping
()
on =
md0 = hum.MoveDirection
cam = .CurrentCamera.CFrame
look = .(cam.LookVector.X, , cam.LookVector.Z).Unit
right = .(cam.RightVector.X, , cam.RightVector.Z).Unit
dir
md0.Magnitude <
dir = -.(root.CFrame.LookVector.X, , root.CFrame.LookVector.Z).Unit
f = md0:(look)
r = md0:(right)
.(f) >= .(r)
dir = f > look -look
dir = r > right -right
axis = root.CFrame:(.yAxis:(dir)).Unit
g = .Gravity
v = (hum.UseJumpPower hum.JumpPower .( * g * hum.JumpHeight)) + jb
dur = .( * v / g * , )
t0 = .()
boosted =
rs:(, .RenderPriority.Last.Value, ()
a = (.() - t0) / dur
a >= hum.Health <= root.Parent
()
boosted
boosted =
root.AssemblyLinearVelocity += .(, jb, )
joint.C0 = .(axis, a * .pi * ) * c0
)
)
plr.Character
.(setup, plr.Character)
plr.CharacterAdded:(setup)self explanatory, you can also backflip in different directions based on the direction your going. use shiftlock for better angling.