This is UnitVisibility.txt in view mode; [Download] [Up]
This gives two simple examples of how the game manager determines the visiblity of units. sub (U) land (L) sea (S) air (A) Is: Can See: ULSA ULSA a army -*-- -*** f figher ---* -*** t transport --*- -*** s submarine *--- *-*- d destroyer --*- -*** c cruiser --*- **** C carrier --*- -*** b battleship --*- -*** h hovercraft ---* -*** <city> --*- **** Player 2 submarine moves north, and we have to figure out what it can see. .. .. .. .. .. .. .. .. .. .. .. b1 b1 f1 .. .. b1 b1 f1 .. .. .. .. .. .. => .. .. s2 .. .. .. .. s2 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. First, we figure out what types of units the sub can see: .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. *- .. .. .. .. *- .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. Then, we extend these flags to the surrounding area: .. .. .. .. .. .. .. .. .. .. .. *- *- *- .. .. *- *- *- .. .. *- *- *- .. .. *- *- *- .. .. *- *- *- .. .. *- *- *- .. .. .. .. .. .. .. .. .. .. .. Next, we determine the flags that the enemy units represent: .. .. .. .. .. .. .. .. .. .. .. -- -- -- .. .. *- *- -* .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. Finally, we AND the flags together, and we remove enemy icons from the locations we can't see: .. .. .. .. .. .. .. .. .. .. .. -- -- -- .. .. *- *- -- .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. And the final map looks like this to player two: .. .. .. .. .. .. b1 b1 .. .. .. .. s2 .. .. .. .. .. .. .. .. .. .. .. .. ====================================================================== Here is the same scenario if player 2 has a transport next to the fighter: .. .. .. .. t2 .. .. .. .. t2 .. b1 b1 f1 .. .. b1 b1 f1 .. .. .. .. .. .. => .. .. s2 .. .. .. .. s2 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. First, we figure out what types of units player 2's units can see: .. .. .. .. -* .. .. .. .. ** .. .. .. .. .. .. .. .. .. .. .. .. *- .. .. .. .. *- .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. Then, we extend these flags to the surrounding area: .. .. .. -* -* .. .. .. ** ** .. *- *- ** -* .. *- *- ** ** .. *- *- *- .. .. *- *- *- .. .. *- *- *- .. .. *- *- *- .. .. .. .. .. .. .. .. .. .. .. Next, we determine the flags that the enemy units represent: .. .. .. .. .. .. .. .. .. .. .. -- -- -- .. .. *- *- -* .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. Finally, we AND the flags together, and we remove enemy icons from the locations we can't see: .. .. .. .. .. .. .. .. .. .. .. -- -- -- .. .. *- *- -* .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. And the final map looks like this to player two: .. .. .. .. t2 .. b1 b1 f1 .. .. .. s2 .. .. .. .. .. .. .. .. .. .. .. .. ====================================================================== Again, it's a bit more involved than this. First, we have what we think is there. Then there are the types we can see, and if we can see a type and it really isn't there, we can clear the icon from the map. If we think there is a unit type at a location, and there isn't but we can't see the type we think is there, we don't really know that the unit isn't there.
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.