I'm believing SAFSO will have atmospheric missions eventually, and those missions will have physical ground geometry.
The player has no problem seeing (and in general, avoiding) the ground. The AI does.
Thus, I have a potential solution for the shortcomings of the AI - we introduce a sexp where, unless an override sexp is given to a ship, the ships of a given mission will stay at a minimum distance above the xz(horizontal)-plane, and if necessary, below an altitude. This would mean that if the AI were to fly below the minimum altitude, it would attempt to chage its flight vector after doing so, thus returning to the specified movement area. If the craft would need to land (just as an example), an override flag could be set when the event was ready, and the craft might then follow a path to its required destination (waypoints, for example).
In fact, if we could get a setup similar to the asteroid field bounding box, that would be great! Not only would this be extremely useful for atmospheric mods, it would also serve projects as the RTS mod (if anything is to be done with it), where bounding all directions of the mission region would be necessary. The downside to this approach is that
all directions will be limited, not just two sides of a cube. Ultimately, it might just be better to have a single, large parameter declaration sexp for use in the respective mission. Thus, a certain direction may have no distance limitations, or every direction might have a limit.
In terms of operation, I precieve you'd need these elements:
(a.) A "flight vector change" algoritm - As as example, "If the ship is below the minimum altitude, it is in a region which is in the negative normal direction of a given bounding plane. If when doing this, the ship is inverted, that ship will roll so as to put its top direction at some positive component direction in relation to the bounding plane positive normal (this may be a debatable feature - space mods may not need a fighter to go upright after leaving a restricted altitude). The ship will then pull up according to some apprpriate algorithm - this may range from a simple inverse slope algorithm to, should there be a "warning altitude" region and an "absolute altitude" region ("hard deck"), an algorithm which computes the minimum pull out rate. AI profiles should determine how quickly the ship pitches up as well as how much of a percentage higher than the minimum pull-out rate the craft exits the minimum altitude region."
(b.) AI profile change/addition - a least a double value which determines how quickly the ship reacts to a negative altitude region.
I understand this is quite a bit, but I do think it would be very, very useful. Any consideration here would be appreciated.
