Doodad field:
Art: CactorDoodad/(basic) Art: Occlude Height (default 0.75)
The tooltip writes : When the footprints of this doodad has cells marked as Block Vision, units below the height specified here will not be able to see past this doodad. By increasing this value, it allows you to make line of sight blocking doodads that can block vision for flying units.
Unit field:
(basic) Stats: CUnit VisionHeight/(basic) Stats: Vision Height (default 0 land, 4 for air and colossi)
Tooltop writes : Height of the unit's field of vision.
UI: Occlusion height/UI: CUnit OccludeHeight/UI : Occlusion height (default 0.75 for all units) : How much the unit adjust the vision LOS for cells in his footprint that request it. (does nothing since units have no LOS blocker footprint)
As I understand if "vision height" is equal or lower than "occlude height" it should block LOS, but it does some weird stuff with cliffs and air units.
There's three ways* I see to achieve air LOS blocker:
A: Increase the occlusion height of the footprint/doodad.
Pros: Create one doodad and simply apply where needed.
Cons: Doesn't work, whatever value you put in the field, vision height 4 units will see through.
B: Reduce vision height of air unit
Pro: Does work under certain conditions with same vision height between 1 and 3.
Cons: Blocks vision up cliff in certain conditions. Under 4 vision height, air units don't see upcliff, lower the number lower the step of cliff they can see. Does not work on high grounds. Over 3 doodad doesn't block LOS whatever value the doodad has. Also have to change the field on every units, it's long and outside the field of a melee map.
C: Combining the two, by experiment though I found it only conserves the cons of both previous methods. Changing doodad occlusion height over default value seems to have no effect on the maximum level of the LOS blocking effect.
At low ground level, doodad height and vision height seems to work like the tooltip says, but only in values under 3.
Do you think it may just be a bug in the editor or me that doesn't understand what the field values means
As a bonus question is there a ways to make unpathable air area with polygons instead of just circle shapes? I can't find any "air path block" actor or propriety. This must exist somewhere since there's a "no fly zone" included. It as an actor, but seems to only contain the editor model.
*I know it may be doable with bunch of triggers and zone, but it wouldn't be practical or simple to implement.