Disconnect unreachable adjacent nav areas 1.0.0
A script to improve auto-generated nav meshes for use with custom NPCs
This script identifies all nav areas on the map, checks if their adjacent areas are reachable without jumping, and disconnects them if they are not.
On release, Spineyard had a problem. The skeleton NPC pathfinding was kinda terrible, and they kept trying to go up walls. Turns out the basic navigation mesh we generated was the root cause. With no NPC clips or nav brushes anywhere on the map, it created the weirdest nav area connections, going up the walls or effectively trapping the NPCs in a small square because they had no idea they could just walk around the obstacle.
There were literally over 100 of these weirdly connected areas, and editing them manually would have been a pain, so I worked together with ficool2 to create a script that finds all nav area connections on the map and disconnects any that are inaccessible without jumping.
If you are using built-in NPCs (Horsemann, Skeletons, etc.), you probably won't need this, as they use something called PathFollower which will already ignore these kinds of areas.
Usage:
1.
2.
3.
4.
5. ???
6. Profit!
On release, Spineyard had a problem. The skeleton NPC pathfinding was kinda terrible, and they kept trying to go up walls. Turns out the basic navigation mesh we generated was the root cause. With no NPC clips or nav brushes anywhere on the map, it created the weirdest nav area connections, going up the walls or effectively trapping the NPCs in a small square because they had no idea they could just walk around the obstacle.
There were literally over 100 of these weirdly connected areas, and editing them manually would have been a pain, so I worked together with ficool2 to create a script that finds all nav area connections on the map and disconnects any that are inaccessible without jumping.
If you are using built-in NPCs (Horsemann, Skeletons, etc.), you probably won't need this, as they use something called PathFollower which will already ignore these kinds of areas.
Usage:
1.
nav_generate
2.
nav_edit 1
3.
script_execute disconnect_nav_areas
(highlights all affected areas on the map)4.
nav_analyze
(internally runs nav_save
)5. ???
6. Profit!
- License
- Credit is required. Permission to modify optional.