What version of 3DGS are you using?
It might be best to use the FAKE gravity affect that LOCO helped me out on. im not sure how you would detect if the player is falling you could use a timer fomr when they jump. This script does not have a jump script in it so you would have to add this because i did not add it to it.
var absforce[3]; // define this within move_player()
var height;
var vecTo[3];
vec_set(vecTo,my.x);
vecTo.z -= 4000;
trace_mode = ignore_me+ignore_sprites+ignore_passable+ignore_passents+use_box;
result = trace(my.x,VecTo.x);
height = result + my.min_z; // get actual height off of ground
if(height > -my.min_z*.5) // if height greater than knee height, use down force with move (fall)
{
absforce.z = - 1;
}
else // if height less than knee height, just place to floor
{
absforce.z = 0;
my.z -= result;
}
move_mode = IGNORE_PASSABLE+GLIDE;
result = ent_move(my.force_x,absforce);
You will have to ad dthe jump to teh above and this. Add this into your move function. some where neer the end.