Well there is the room flag AVOID that you can set (#map {roomflag} {avoid} {on}) in the room concerned (use #map {goto} {<vnum>} to get there if you don't want to return there in your MUD) which should prevent the route finding mechanisms from using that room.

If the desire is not so strong to stay out of that room but you'd rather go around it if you possibly can, you can just assign it a high weight, default is 1.000 (so #map {set} {roomweight} {100.00} ought to do it). I think 500.00 is the limit for the system in that if that total is exceeded than such a route is no longer considered a route; otherwise if that is the only way to read the destination will it be used (for the value I just quoted in reality the mapper should prefer an alternative route of up to 99-ish extra rooms instead).

You can lock an exit from a room with #map {exitflag} {<exit>} {avoid} {on}, which IIRC also ought to stop a particular way out of a room from being used by the route finder - though I think I put in extra code in my hacked TinTin++ to either moan loudly if I tried to manually use such an exit or to enforce NOT being able to use it - but I can't recall now what the standard issue code does...

I hope that gives you some ideas as to what is possible, you can also "embed" extra stuff in an exit direction with the #map {exit} {<exit>} {command} {<extra stuff>} which could include things like {open door; e; close door} for things that work in real time in the MUD (i.e. the door opens instantly), if you have to wait for something to happen (a reply from the MUD) before you can pass you can get fancy with an #ACTION and #UNACTION in that "extra stuff" but I'd advise to also lock the exit as in the previous paragraph otherwise you will run into problems when the route finder tries to run through the exit...