A waypoint graph is useful for movement. It becomes more valuable when it also models exposure.
If each node knows what it can see, the graph can answer tactical questions, not just pathfinding questions.
Visibility is the tactical signal
Visibility tells you several things at once:
- whether a position is exposed
- whether it provides cover
- whether it is good for attacking from
- whether a route is safe to travel
- whether the position is likely to attract return fire
That makes visibility one of the strongest signals in tactical AI. It is cheap to reason about and rich in meaning.
Precomputing node visibility
The standard approach is to preprocess the terrain and store visibility information on waypoint nodes.
Each node can keep a compact record of which other nodes it can see. Bit strings work well for that representation because set operations are fast:
- and for overlap
- or for union
- not for exclusion
With that data, the AI can compare whole groups of nodes instead of doing expensive reasoning during combat.
Safe and dangerous nodes
Once visibility is stored, nodes can be scored by risk.
A node that is visible to enemies is more dangerous. A hidden node is usually safer. The useful part is not a strict safe/unsafe label. The useful part is a cost model.
That allows the pathfinder to do something practical:
- prefer low-exposure paths
- penalize dangerous nodes
- still allow risky movement when needed
That is much better than pretending exposed ground is always forbidden.
Attack positioning
The same data can be used to choose attack positions.
A good attack node is not just visible to the target. It is also hidden from other threats when possible.
A simple rule looks like this:
- find nodes visible to the target
- remove nodes visible to other enemies
- keep the remaining nodes as safer attack positions
This is a strong pattern because it turns a fuzzy tactical idea into a filter.
Flanking and sneaking
Flanking is not a special case. It is a visibility problem.
A flank route is useful because it changes who can see whom. Sneaking works the same way: stay out of sight for as long as possible, and arrive from a direction that creates advantage.
That is why visibility data belongs in the navigation layer.
Practical takeaway
Waypoint graphs become tactical when they stop describing only movement and start describing exposure.
That shift makes the AI better at choosing routes, selecting attack positions, and avoiding unnecessary risk.
The next layer is broader than visibility. It measures pressure across the whole map.