I will not be able Io find the cause of the problem until I can access the source code when I get back home.
However; I can give some background.
A bug has appeared in the AI altitude code relating to single missions in one of the more recent exes, and has remained there ever since.
Until Modred did nobody had raised this issue, so I was unaware of it.
There are many different situations regarding altitude.
1. In the "special" versions that use MSN files the were three values which were in the default MSN files, but not used.
They were for the altitudes of enemy primary, enemy secondary and friendly secondary AIs.
I made use of them, and these altitudes (in feet) are set by the front end that creates the MSN file, and used by the "special" exe.
This sytsem works well and is a decided advantage of the "special" exes.
2. In multiplayer the host can set the altitudes of enemy primary, enemy secondary and friendly secondary AIs.
3. There is conditional code for aircraft carrying torpedoes or bouncing bombs, and they tend to fly low.
4. Ralf had introduced code where the single mission altitudes for AIs was set with the "altitude.mpf" file.
This set altitudes in feet based on the nationality, year and type of aircraft (fighter, bomber etc).
The source code set the altitudes, but then modified them if the "altitude.mpf" file was present.
I strongly suspect that the problem is somewhere in this code. Sometimes I fiddle around with hard coded values to see if they are being used, and if I forget to restore them after a test then I may have introduced a bug.