Gravity This one looks very good, but I have not used it yet. I think Superku wrote it.
Listen, long posts wont help
Drop the code you're using and start from scratch, if you cant understand what you're using.
in your player, add a gravityMove function and in that function perform a c_trace as described in Superku's tutorial, check the distance and c_move down if needed.
When you get to this simplest form, you can start building a method for counting time passed or distance or speed of falling...