Ok. I think I have a decent understanding of all this - we need elevation for every space. However, tracking that then becomes very difficult, because elevation is lost if you edit a space. And I can now see that dealing with this properly is difficult. Certainly the approach is use the elevation for which spaces it exists, and interpolate the elevation for the missing spaces works. It wouldn't be hard to make elevation much easier to get (just like mapflags (blocked, alive, etc) are stored in the MapSpace structure, one could copy the elevation into that, so one doesn't need to search the objects for the elevation (although, probably not a really big gain on that, since there aren't many objects per space anyways - its just a lot easier to code something like GET_MAP_ELEVATION(map, x+1, y)) However, one thing I have learned through my years with crossfire is computing values should be seen as a last resort - it almost never gives as good as a result as desired. As an aside, it would be cool for elevation to actually play a role in line of sight. Thus, instead of mountains just blocking view, they have elevation - if you are of lower elevation, you can't see through them, but if you are on the highest mountain, you'd get quite a nice view. Doing this probably wouldn't be that hard, but probably really need to store the elevation in the map cell to make this at all efficient). Could also make fly much more interesting (fly up to see more). Anyways, to me, the ideal solution would seem to be to keep in the object itself. We apparantly have scripts that will backfill elevation data - presumably, these scripts can be/are smart enough to only fill in spaces where elevation has been removed, and not to write over elevation for spaces player explicity sets. What's the problem of using these? It seems much simpler than writing a new system to deal with this, especially because the tool is already in place. Presumably, it wouldn't be hard to also make these have a little bit of logic (eg, the area on this map in spaces x,y -> x1, y1 shouldn't be backfilled, but instead of an elevation of 1200 ± 200 ft, to mimic variation in landscape. _______________________________________________ crossfire-devel mailing list crossfire-devel at lists.real-time.com https://mailman.real-time.com/mailman/listinfo/crossfire-devel