Right now I'm trying to cancel it by doing this binded to RenderStepped:
function cancelgrav()
game.Workspace[game.Players.LocalPlayer.Name].HumanoidRootPart.Velocity = Vector3.new(game.Workspace[game.Players.LocalPlayer.Name].HumanoidRootPart.Velocity.X, game.Workspace[game.Players.LocalPlayer.Name].HumanoidRootPart.Velocity.Y + (game.Workspace.Gravity - game.Workspace[game.Players.LocalPlayer.Name].HumanoidRootPart.Velocity.Y), game.Workspace[game.Players.LocalPlayer.Name].HumanoidRootPart.Velocity.Z)
end
but it just ends up accelerating upwards and the difference never reaches 0 like it should.

2 comments
you can try using body force or changing the world gravity with a local script
I don't want to change world gravity as I want it to affect other stuff. But I have used a bodyforce and it worked. Thank you! :D