Funny how after near endless searching I post, then almost instantly find a solution. Here it is:
http://www.opserver.de/ubb7/ubbthreads.p...true#Post328564I just replaced my stuff with this, followed by my original c_move:
vec_set(temp_vec, vector(my.x-(trace_dist*cos(my.pan-90)), my.y-(trace_dist*sin(my.pan-90)), my.z+my.min_z+1) );
c_trace(vector(my.x,my.y,my.z + my.min_z+1),temp_vec, IGNORE_ME | IGNORE_PASSABLE); //TRACE LEFT
roomleft = vec_dist(my.x,hit.x);
vec_set(temp_vec, vector(my.x-(trace_dist*cos(my.pan+90)), my.y-(trace_dist*sin(my.pan+90)), my.z+my.min_z+1) );
c_trace(vector(my.x,my.y,my.z + my.min_z+1),temp_vec, IGNORE_ME | IGNORE_PASSABLE); //TRACE RIGHT
roomright = vec_dist(my.x,hit.x);
Hope this helps someone with a similar problem!