a) DT detector (tells you if there is a DT in the zone).
An automatic DT detector (depending on how 4D is set up, and how the script works) might be taxing on 4D itself (particularly if it's a random script which fires every few seconds). Might be better to hard code this. A DT detector that has a cool down but gives a list of DTs in the zone / adjacent rooms would be better, but I was thinking one a DT detector which you hold (like a diving rod), and overrides the cardinal direction commands.
The first one just suggests a detector which tells you: yes, there is or no, there isn't. For this, all you need is code which searches for room-flags to find all the dt rooms. Add a zone-flag for any zone with a dt room and then use either a script or a hard code with checks for the zone flag. I think the zone flag should be accessible no matter which room in the zone you're in.
I see two possible problems with this. The first is that I (as a non-coder) find it simple to say, "Sure, easy-peasy! Just get someone to write code that does this!" The second is if dts here are not hardcoded but are triggers or a mix. On TBA, I can easily do a search for any triggers that are named dt, deathtrap or whatever and then find out if they're used or not. The only thing I would have trouble finding is a scenario like so: You irritate a mob and the mob turns a room into a dt. I don't think I've ever seen anything like that and I don't expect I ever will. 4D and TBA don't have all the same code so I don't know if it's possible here.