Invisibility is positive values in camoAtX (Where X is day or night)
Camouflage is negative values in camoAtX
antiCamouflageAtDay is the ability to negate camouflage (But not invisibility?)
antiCamo negates also "invisibility".
Exact algorithm here:
https://github.com/MeridianOXC/OpenXcom/blob/oxce3.5-plus-proto/src/Savegame/BattleUnit.cpp#L3137Examples A, B and C are correct.
Example D is not correct.
On another relationated aspect. How do you determine visibility in smoke?. How the heatVision works? I´m asking too much question in the incorrect thread?.
Normal smoke effects are roughly described here:
https://www.ufopaedia.org/index.php/Smoke_Grenade#Visual_rangeThere is no easy answer how far you can see through smoke, the algorithm is relatively complicated and very hard to describe in words!
Heat vision (or thermal vision) affects the normal algorithm by reducing the thickness of the smoke by a given percentage.
So for example if:
- heat vision = 0%, smoke density = 16 everywhere... you can see let's say through 4 tiles of smoke (depending on various factors)
- heat vision = 25%, smoke density = 16 * (1 - 0.25) = 12 everywhere... you can see probably through 6-8 tiles of smoke (depending on various factors)
Sorry for not having an exact answer for you, but smoke calculation algorithm is really not human-friendly.
What you need to remember is:
- "
heat vision reduces the thickness of smoke (for the unit with heat vision only)"
- setting heat vision above 60% or so gives you practically full vision in many cases... so don't set it too high... 25-35% is already enough to make a big difference