Update: I am now using C-trace to check for objects with skill30 (which I am using as an object type reference for WED models) along the vector from the center of the player's model (a rolling sphere) to the corners of its bounding box. This is simpler than the code i had imagined. Basically, I'm using

Code:
if(c_trace(player.x,vector(player.min_x,player.min_y,player.min_z),IGNORE_WORLD|IGNORE_FLAG2){collision_event();}



for each of the combinations of min, max, x, y, and z.

This works fairly well, however there are issues - objects well past the end of the tracing vector are detected when they are directly under the player. And perhaps I should use a wait() function to only detect passable objects every other frame, to save proc time.