I’m proposing a tweak to how AI detects players who are concealed at a distance; however, I could see this applying to (some) vehicles as well but will stick to talking about players below.
I have no idea how the AI targeting algorithms work but as a developer I can imagine how I might attempt to implement them. That said (and I'm making a leap/assumption here) but if the AI "sees" essentially what would be rendered for a non-AI player by the rendering engine then I can extrapolate some ideas as to what give it this god-like power even when the other player is almost entirely concealed. Note that when I say the AI "see" I obviously mean what the algorithms let the AI detect/sense given they are not coupled to the rendering engine.
Before I continue, I actually plan to address the rendering issues/suggestions presented here in a separate bug/tweak as I feel this can be incorporated into the rendering engine thereby improving the overall immersion and realism of combat. That said I need to go into detail on those rendering algorithms so I can use them as a comparison to what I would sense the AI “see.”
Since I think ARMA 2 (or maybe an ARMA 1 patch – I’ve played since OFP in ’02 and I know it was one of the ARMAs) concealment in grass or other objects that only render to a certain distance leads to just a portion of the players body being rendered at greater distance (i.e. distances beyond where grass and some shrubs are rendered). For example if one player is prone and the other player is at a distance of 1000 meters they may only see the top of the other players head and backside in the grass.
While a great feature the way that blends into the background coupled with the fact that the grass is replaced with the flat ground texture makes finding the players relatively easy depending on the cover involved (especially if they move a little but it’s not required). This is because other players tend to stick out like rocks/objects and hence this becomes a way to detect players (i.e. just zoom in on anything that looks like a rock or other outcropping). I feel this really hinders game play because otherwise concealed players stick out like a sore “rock.” :P
Shifting back to AI. If the AI “sees” the same kind of information and in their case the bits of the player that are “visible” are sensed/discerned as a player and not rocks or other objects I can see how the AI get their abilities. Note that I feel the AI is also bel to discern between a rock and a player’s clothing/body nearly instantly so this probably should be tweaked as well per the adjustment factors I propose below.
I suggest that the AI engine (and rendering engine but that’s another tweak/bug) apply a few adjustment factors to determine how discernable something is from the background. As a first go, I can see a percentage concealed modifier coupled with size/area, player camouflaging (uniform), and distance of the player being concealed.
The concealment modifier would be based on the percentage of the player’s body that is concealed (or conversely exposed).
Size would take into account not just the physical size (i.e. body plus holstered/stowed weapons, vehicle size, etc) but also the overall “area” of what is visible. For example a prone player at level height will only expose their head/weapon while the same player viewed from a vantage point that is 10 meters higher would potentially expose far more of their body (legs, back etc).
Coupled with the concealment modifier, size, gives a rough estimate for the magnitude of what is potentially exposed to another player/AI. I would say that depending on the size a player would have to be at least 70% concealed for any rendering/detection modifiers I propose to be applicable but I leave such a threshold up to BI .
Player camouflaging (fatigues, color vs background color, ghillie, civilian clothing, etc) would then be coupled with distance to slowly blend and eventually fade out a player. A character with bright red clothing would not blend or fade out at nearly the same distance as the same player wearing terrain favorable fatigues.
Effect of Optics:
Optics would be treated as a distance modifier to these adjustment (i.e. reduce distance). That said care needs to be taken here as well. If they reduce distance they should also potentially re-enable the rendering/effect of grasses/objects otherwise the player will be just as visible as before. If rendering or effect of grasses can’t be enabled via optics then they need to start blending per the other adjustment factors. To be clear effect of grass in the last 2 sentences relates to the AI algorithms.
Continue to work as is
The net effect is this allows a player to stay hidden more effectively from both the AI and players. In terms of the impact to the AI detection algorithms I think it will keep the AI looking a bit longer before they hone in on a player.
I fully realize there is a lot more that needs to be flushed out on a design suggestion like this but this is at least the start of a conversation. For example do irregular/mechanical objects stand out more thereby affecting adjustments (i.e. rocket launcher).
Furthermore I realize that while this makes sense to me it could be alien to whoever reads it so I’m more than willing to expand and clarify these ideas.