Xonotic Forums
bot navigation mesh creator - Printable Version

+- Xonotic Forums (https://forums.xonotic.org)
+-- Forum: Creating & Contributing (https://forums.xonotic.org/forumdisplay.php?fid=10)
+--- Forum: Xonotic - Development (https://forums.xonotic.org/forumdisplay.php?fid=12)
+--- Thread: bot navigation mesh creator (/showthread.php?tid=4780)



bot navigation mesh creator - poVoq - 02-21-2014

I remember that there was some discussion about bot navigation meshes, so maybe this is of help:
https://github.com/memononen/recastnavigation


RE: bot navigation mesh creator - rocknroll237 - 02-21-2014

This sounds really cool but what engines does it work with? (or is that irrelevant?)

(Sorry for being a coding noob haha)


RE: bot navigation mesh creator - Maddin - 02-22-2014

Looks interesting!

rocknroll237 Wrote:This sounds really cool but what engines does it work with? (or is that irrelevant?)
As far as I understood after reading the documentation of this project it is just doing the navigation mesh generation and processing the paths. So it´s up to the game developer how he/she implements that system.


RE: bot navigation mesh creator - tZork - 02-22-2014

Recast, while being a great project, requires engine level integration and things that do rarely happens in Xonotic due to lack of engine developers. And yeh it "just" produce the navmesh and pathing.. but thats a huuuuge part as far as navigation go.

I had some dealing with recast and it does produce good quality solutions, tough sometimes can use some hakking / workarounds to support special transitionals (ledges to jump off etc) or conditional environmental medium (water vs slime for example).

In all i think it would be a great addition to DP/Xonotic (and quite some work to make it happen). Oh and BTW, Morphed suggested its integration in DP years ago Tongue


RE: bot navigation mesh creator - Maddin - 02-22-2014

Path-creation is in my opinion not the problem. Recently I modified the entities file for Radiant a bit so I could place and link waypoints in my maps. Obviously the information of the waypoints was then stored in the map itself. Q3Map2 doesn´t bother about this which is good. Tongue But I was able to convert the information in the map file to .waypoints and .waypoints.cache files by writing my own little program in a few weeks (I have basic knowledge of C++ so that´s why it took so long) which automatically did that. The game could then use them for bot navigation. So far so good... not. It turned out that bots tend to ignore waypoints (and their paths) and just attack the next visible enemy. And that is also the case if you´d create the waypoints in the game with g_waypointeditor. If any improvements should be made then it is to force bots to go along the defined waypoints and don´t ignore them. I have no idea why this simple thing doesn´t work in Xonotic when it does in any other idTech3 and earlier/similar engines.


RE: bot navigation mesh creator - tZork - 02-22-2014

Waypoint based navigation is really limited in what it can do. And yes the Xonotic bots are terribad, we all know this Tongue

The whole point of things like recast is to remove the manually adding of navigation info. This has more than the obvious artist work-load benefit; for example it can deal with dynamic objects, it works with procedural environments and so on. Moreover using a navigation mesh rather than a waypoint grid (potentially) allows better AI spatial awareness as its a volume; waypoints are just a pile of interlinked lanes. For the same reason the navigating AI does not need to do nearly as much enviroment checking on its own (it it a ledge? lava? ....) as the navigation system already did this. While more important in situations where you have a lot of agents, its can be a big optimization even with smaller numbers.