Hi, it's me again. So I sort of need a way to make an object slow down if it goes too fast, problem is I do not know any methods to do it, I tried to detect if it went to fast in the X or Z velocity angles but it's broken as it makes you go diagonally sometimes.
Anyways here's the code method I tried using.
if player.Character.Ball.Velocity.X > 60 then
Vel = Vel + Vector3.new(-35,0,0)
end
if player.Character.Ball.Velocity.X < -60 then
Vel = Vel + Vector3.new(35,0,0)
end
if player.Character.Ball.Velocity.Z > 60 then
Vel = Vel + Vector3.new(0,0,-35)
end
if player.Character.Ball.Velocity.Z < -60 then
Vel = Vel + Vector3.new(0,0,35)
end
I only need to know if there are any better methods to achieve what I am wanting to do, examples would help but they are not necessary.
Thank you for putting in the time to consider and have a nice day.

8 comments
You should use magnitude instead. Magnitude is just the length of the vector and magnitude can in this case tell the speed of the part in studs
player.Character.Velocity.Magnitude >= 50 for example
Okay, this answers on how to detect it's speed. But it does not really answer my question on how to slow it down effectively. I think...
ball.Velocity = ball.Velocity/20 example
Ah, alright. Would there be any way to exclude the Y axis in it?
The velocity in the Y would be zero anyways though? Unless your ball is able to be in the air or something. Any number multiplied by zero is zero lol. In that case add or subtract the axes by Vector3.new(x, 0, z)
Alright, thank you. Uh, one more question? How to I mark this all as the answer?
Actually hold on, whenever I fall it stops X and Z movement all together. Is there a way to make it so that it ignores any speed caused by falling or from the Y axis?