... big snip ...
I suspect that all scripts already are aware of these terrain types because of the header file included in the scripting API. This definitely needs more testing.
Correct, all scripts have to include that header, and the overwhelming majority simply rely on one of the collective map specifications,
kTerrainSpace, kTerrainAsteroids, kTerrainNebula, kTerrainBlachkholes, kTerrainAnyTerrain
kTerrainSpace = kTerrainSpace1 | kTerrainSpace2 | kTerrainSpace3 |
kTerrainSpace4 | kTerrainSpace5 | kTerrainSpace6,
kTerrainAsteroids = kTerrainAsteroids1 | kTerrainAsteroids2 | kTerrainAsteroids3 |
kTerrainAsteroids4 | kTerrainAsteroids5 | kTerrainAsteroids6,
kTerrainNebula = kTerrainNebula1 | kTerrainNebula2 | kTerrainNebula3 |
kTerrainNebula4 | kTerrainNebula5 | kTerrainNebula6,
kTerrainBlackholes = kTerrainBlackHole1 | kTerrainBlackHole2 |
kTerrainBlackHole3 | kTerrainBlackHole4 |
kTerrainBlackHole5 | kTerrainBlackHole6,
kTerrainAnyTerrain = kTerrainSpace | kTerrainAsteroids | kTerrainNebula | kTerrainBlackholes |
kTerrainDustclouds | kTerrainShippingLane,
(with similar collective settings for the planet/base types)
Note that if a mission is generated in a map hex where the terrain type isn't recognized then the missions go with the default empty space map.
dave