A fork of the buildnav tool from the uthgard-opensource repository, originally created by thekroko.
- 64-bit Environment: All components must be built and run as 64-bit.
- GameServer DLL: This project references
GameServer.dllfrom the main OpenDAoC-Core project to use itsLocalPathingMgr. Copy the resulting 64-bit into this project'sbasedirectory. - Detour DLL: Build
Detour.dllfrom the OpenDAoC-Core Detour project. Copy the resulting 64-bit into this project'sbasedirectory.
- The tool reads game asset files from DAoC’s
zonesfolder. - The processed data is fed into
RecastDemo.exeto generate initial navigation meshes. - The final navigation meshes (
*.nav) are used by the game server.
Recast is included as a precompiled executable in the base directory.
This RecastDemo.exe is a repurposed 64-bit build of the official RecastDemo, slightly tweaked to accept command-line arguments and handle large worlds.
Parameters for navmesh generation (agent size, etc.) are currently hardcoded and not configurable.
It can also be used to manually inspect the generated meshes:
- Open
RecastDemo.exefrom the output directory. - Select "Tile Mesh" as the sample.
- Select any generated
*.gsetas the input mesh. - The corresponding
*.navfile will also be loaded for inspection.
- Build and run
buildnav.exe --daoc=<gamedir>. Use either--all=true, or--zones="id1,id2..."and/or--regions="id1,id2...". - Copy the generated
*.navfiles from the output directory into your server's/pathingdirectory.
bin/Release/.../
├── OpenDAoC-BuildNav.exe
└── base/ # Copied from the project's `base` folder
├── RecastDemo.exe # Pre-compiled and tweaked Recast executable
└── zones/ # Generated intermediate files and navigation meshes (*.nav)