i havent tried any solutions because i dont know where to start i was thinking something maybe like using bodyforce when humanoidstatetype is jumping or something i dont know i just need someone to explain how this would work because im not too experienced in physics
Im not asking for a complete script just something so i know where to start
I would try directly overwriting the HumanoidRootPart’s velocity with a velocity that removes all but the vertical component.
local function getYClampedVector(velocity: Vector3): Vector3
return Vector3.new(0, velocity.Y, 0)
end
You could poll their control module input vector while they’re jumping
local RunService = game:GetService('RunService')
local Player = game:GetService('Players').LocalPlayer
local controlModule = require(Player.PlayerScripts:WaitForChild('PlayerModule')):GetControls()
-- triggered by the jump
while jumping do
local moveVec = controlModule:GetMoveVector()
if moveVec.Magnitude == 0 then
humanoidRootPart.Velocity = getYClampedVector(humanoidRootPart.Velocity)
end
end