I tried something today and it really worked great! I was so pleased that something so simple could have such a big impact!

It's just tracing from the model's origin to 100 quants below it's min_z value (min_z is negative in my model).

Here's a code excerpt:
Code:

//Help the physics engine keep models from sticking in the floor
vec_set(temp,my.pos);
temp[2] += ( my.min_z - 100 );

trace_distance = c_trace(my.pos, temp, IGNORE_ME + IGNORE_PASSABLE );

//if the model is in the floor, push it out some
if ( trace_distance < -my.min_z ) {
phent_enable(my,0);
my.z += .75*(-my.min_z - trace_distance );
phent_enable(my,1);
} //if





Curious, but not overwhelmed...demlehwrevo ton tub ,suoiruC