Would it go something like this except add the award player points where it says "Print Player is running" and make it award the amount of player points for speed the person is going?
game.Workspace.Player.Humanoid.Running:connect(function(speed) if speed > 0 then print("Player is running") else print("Player has stopped") end end)
This should tell you how to use and award player points to people.
As for getting the speed of falling or flying, I don’t think there’s a way to get the speed of that unless the game thinks falling and flying is the same as running.
A way I would award points to people in something like this is when the player falls or something, the falling event will activate in the humanoid and a loop will start. This loop adds a value up by 1 every second and once the player lands or stops falling, the loop breaks and the script will give the player points based on the value.
As for awarding points for running, you can pretty much activate a loop from the running event that adds a number of points in every second and break the loop while giving the player the number of points when the player stops running (or I guess you can give the number of player points with the number of the speed every second).
I wanted to give some example scripts but I’m on mobile and I have never used player points before, so I tried explaining as much detail as possible. Hope this helped! :D