Thanks, MDI. My model origins are on the bottom.

Code:
function village_func()
{
my.polygon = on;
vec_set (temp, my.pos);
temp.z -= 10000;
trace_mode = ignore_me + ignore_sprites + use_box;
my.z -= trace (my.pos, temp );
}
function sioux_camp()
{
temp.x = -96;
temp.y = -1164;
ent_create("tepee_village.mdl",temp,village_func);
}



That didn't produce an error, but it didn't work, either.
Since trace is old syntax, I changed it to this:
Code:
function village_func()
{
my.polygon = on;
vec_set (temp, my.pos);
temp.z -= 10000;
my.z -= c_trace (my.pos, temp, ignore_me + ignore_sprites + use_box );
}


and that didn't work.