If its possible, i think it would remove quite a bit of frustration while spawning if the map had a defined spawning level.
Players would be allowed to spawn on, below, or just above (not high enough to take fall damage) a certain level (defined in the map file or server configuration maybe?) so they dont spawn on tall buildings or other landforms. Maybe a spawn height range could be defined or calculated for gen maps so you can still spawn in valleys / hilltops but not on rooftops. This method would also prevent people from spawning on user build structures.
Another way to do this would be to use an algorithm which calculates whether a structure is tall enough to cause fall damage if fallen off of and if it has flat or sloped sides and prevent players from spawning on top of it. This method is less optimised, but automates the process and allows for dynamic spawn levels instead of a set height / range. It also wouldnt stop people from spawning on user generated structures unless the algorithm is continually calculated throughout gameplay. It could be done at intervals, though to reduce strain on the server, and it would also be a game engine modification rather that a map data modification, meaning current maps would still work.
Discuss :)