-
Notifications
You must be signed in to change notification settings - Fork 160
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bots obstacle avoidance is broken #1493
Comments
The original description happens because of several bugs:
This issue will only be fixed when either 1. or 2+3 will be fixed. Ideally, all problems should be fixed, of course. |
Won't be trivial to fix, but this is an important one to get rid of, since this allows a lot of improvements with the current path-finding system we have. |
Sorry for not reacting to the ping. I don't have time to check the map geometry but I would also suspect this to be a factor; for instance it might be that the floor has holes where the generator traces down (I think this was a problem with stairs on parpax) or possibly that parts of the floor are considered nonsolid by the generator but not by the game (which would then be an inconsistency bug). |
To be honest, that bug is rare enough so I don't consider it a blocker: it's easy to generate a .navcon file to work around it. And the 2nd problem about "Slopes of Hell" I have fixed, but since master does not have the changes yes, I've only created and used a tag, instead of closing the issue. |
For the record, several non-official tremulous maps have this problem, as @sweet235 will know. |
You listed 3 reasons here,
I think that means we can close the issue and track what's left in UnvanquishedAssets/map-perseus_src.dpkdir#5 |
Bots have a code to find path around obstacle when they are stuck ( https://github.com/Unvanquished/Unvanquished/blob/master/src/sgame/sg_bot_nav.cpp#L471). This code probably does not work, as can be seen by:
This will trigger the following behavior:
Bot will evolve to tyrants, try to go to "Crusher" area by the alien base door, but will be stuck in the right hand side of the door.
I do not know the exact causes. This bug was somehow revealed by my rewrite of BotGetRushScore and my BTs.
Note that this is likely the most obvious failure.
Normally, stuck bots should, after some time, find a new target (https://github.com/UnvanquishedAssets/unvanquished_src.dpkdir/blob/c1dbbf36ec480c637a84c546c0fe6d345c0baedb/bots/unstick.bt#L34). This, also, seems to not work as expected.
Desired behaviors here are:
To check: are all entities placed on the navmesh? If no, there is no way the navmesh handling code can find correct pathfinding.
It might also be desirable to find a way to use DetourCrowd, but considering the use of various navmeshes this seems unlikely to be doable (amongst other problems that crowd would bring)
[edit]
french word sneaking in text + some precisions
The text was updated successfully, but these errors were encountered: