to accomplish this, ive been experimenting with body movers, mainly vector force and body velocity.
local vforce = Instance.new("VectorForce")
local attach = Instance.new("Attachment")
local character = player.Character
local hrp = character.HumanoidRootPart
local humanoid = character:WaitForChild("Humanoid")
humanoid:ChangeState(Enum.HumanoidStateType.Physics)
attach.Parent = hrp
vforce.Attachment0 = attach
vforce.ApplyAtCenterOfMass = true
vforce.Parent = hrp
local cf = hrp.CFrame
local magnitude = 65
local duration = 6
local force = (hrp.CFrame.upVector + hrp.CFrame.rightVector) * magnitude
vforce.Force = force
local connection
connection = stepped:Connect(function(step)
magnitude = magnitude - step/duration
vforce.Force = force * magnitude
if magnitude <= 0 then
connection:Disconnect()
vforce:Destroy()
attach:Destroy()
end
end)
humanoid:ChangeState(Enum.HumanoidStateType.Running)
this was my vector force attempt it didn't work very well https://gyazo.com/0b84a122998d52f89f370c8280d3d84c
local force = Instance.new("BodyVelocity")
local character = player.Character
local hrp = character.HumanoidRootPart
force.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
force.Velocity = (hrp.CFrame.upVector*42 + hrp.CFrame.LookVector*25)
force.Parent = hrp
local connection
connection = heartbeat:Connect(function(dt)
force.Velocity = force.Velocity - (hrp.CFrame.LookVector*7 + Vector3.new(0, 35, 0)) * dt
print(dt)
end)
local counter = 0
local interval = .1
local connection2
connection2 = heartbeat:Connect(function(step)
counter = counter + step
if counter >= interval then
counter = counter - interval
local part = Instance.new("Part")
part.BrickColor = BrickColor.new("Bright red")
part.Anchored = true
part.CanCollide = false
part.Size = Vector3.new(1,1,1)
part.Parent = workspace
part.Position = hrp.Position
end
end)
wait(2)
workspace.Baseplate.Touched:Connect(function()
print("touch")
force.MaxForce = Vector3.new(0,0,0)
connection:Disconnect()
connection2:Disconnect()
force:Destroy()
end)
i had a lot more success with body velocity, but two major concerns with this are that its pretty slow and i haven't found a way to adjust its speed and im wondering if i could ever get it to a point where the jump feels clean. https://gyazo.com/6931b46f7ce72bb79ff60b4ef3bc45c2 i am open to other ideas for this kind of thing, my goal is to create a nice smooth curve for my jump that i can easily modify the speed, height, and length of the jump with and ill be syncing an animation to it aswell. thanks for reading my question.
