OK - Create an object that is always a certain distance below the camera and directly beneath it and apply all the collision stuff to that. Altering that distance affects the "height" of the player.
Just move the object as required then Set Camera to Object Orientation on the camera, x position and z position the camera above the object.
To deal with the gravity, use the BSP Collision Y command. When the player is on a flat surface this is high (eg: 0.2 to 0.7), on a slope this is medium (0.005 to 0.1) and when in midair this is very low (0.0001 and below)
Simply adjust the gravity as needed / collision threshold as needed.
I am not fully 100% sure about this but theoretically it should work.
what is a signature?