Run it
Copy the script and paste it into your executor.
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local Camera = workspace.CurrentCamera
local SPEED_MULTIPLIER = 30
local JUMP_POWER = 60
local JUMP_GAP = 0.3
local character = game.Players.LocalPlayer.Character
for i,v in ipairs(character:GetDescendants()) do
if v:IsA("BasePart") then
v.CanCollide = false
ball = character.HumanoidRootPart
ball.Shape = .PartType.Ball
ball.Size = .(,,)
humanoid = character:()
params = RaycastParams.()
params.FilterType = .RaycastFilterType.Blacklist
params.FilterDescendantsInstances = {character}
tc = RunService.RenderStepped:((delta)
ball.CanCollide =
humanoid.PlatformStand =
UserInputService:()
UserInputService:()
ball.RotVelocity -= Camera.CFrame.RightVector * delta * SPEED_MULTIPLIER
UserInputService:()
ball.RotVelocity -= Camera.CFrame.LookVector * delta * SPEED_MULTIPLIER
UserInputService:()
ball.RotVelocity += Camera.CFrame.RightVector * delta * SPEED_MULTIPLIER
UserInputService:()
ball.RotVelocity += Camera.CFrame.LookVector * delta * SPEED_MULTIPLIER
)
UserInputService.JumpRequest:(()
result = :(
ball.Position,
.(
,
-((ball.Size.Y/)+JUMP_GAP),
),
params
)
result
ball.Velocity = ball.Velocity + .(,JUMP_POWER,)
)
Camera.CameraSubject = ball
humanoid.Died:(() tc:() )NOT MINE

Universal