I was using c_trace to enable walking on a floor and stair climbing, the code needed is around in a number of tutorials. Code of the form:
vec_set (temp.x, my.x);
temp.z -= 10000;
temp.z -= 10000;temp.z = -c_trace (my.x, temp.x, IGNORE_ME | IGNORE_PASSABLE | USE_BOX);
However this made 'cbabe' walk with her feet and ankles in the floor!
The fix was an offset to allow for this, thanks George:
temp.z = -c_trace (my.x, temp.x, IGNORE_ME | IGNORE_PASSABLE | USE_BOX) + 20; // play with 20
My question is why is this offset "now" necessary when old(ish)code doen't appear to need it/show it?
Why doesn't c_trace return the correct distance?
(My code is running on A7.70 Commercial)