-
Notifications
You must be signed in to change notification settings - Fork 18
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
When a bot detects a wrong connection it should remove it (learn) #17
Comments
hostage rescue logic. Also log more about the troubled connection - for #17
Video of this at: https://www.youtube.com/watch?v=AmFJZURwoF4&feature=youtu.be |
- remove wrong connection when detected, works fine as long there is no opportunity to jump/crouch - for #17
- bots still hang too much around invalid connections and dont decide fast enough that they should severe the connection - for #17
The logic has improved a bit, but not as much as I'd like. While working on this I broke bomb planting, hostage rescueing and bomb defusion. Now those things seem to work fine again. |
Playing in A bit dark picture, but you can see 3 bots trying to get down. They don't duck and they are pretty close to each other. Probably the Regardless, the bots take their time removing connections and this takes too long. |
also please fix moment when bots try go up where no laders. I use plugin that add more spawn ponts. And i add 16 more spawns on iceworld above head. Bots fall in start and try go up. Maybe make one side connections or other fix |
can u give me last build dll ? i can test it |
@Overitab could you tell me which map you use? Perhaps even record it (youtube video?) so I can see for myself? |
ok i make video, give me 30 min |
The latest |
I was wrong, I didn't use the spawn above head . But still bots behave strangely, look up, dont run. |
@Overitab just to be sure, there are nodes in the map? Looks like as if the bots have no clue where to go. It could also be that the map type is unknown and the bots wouldn't know what to do. Although.. in the most basic sense they would always go to the opponent spawn point. So two things:
|
fy_iceworld , but i add more spawns. Ok i can test , please upload dll |
I can't create a new DLL now - I'm on a different OS. However, I did run a quick test and saw 2 things:
I created #24 for proper support of FY_ maps. And a different issue for better goal/spawn point plotting. Do understand that the nodes are not created like waypoints in Podbot (manually). You create them on the fly by playing the level. Please play the level first (with realbot enabled) and add bots later, they should start moving. See also a bit more about this here: https://www.youtube.com/watch?v=j9CjnLd2nHU&t=201s |
ok good, i wait |
@Overitab here you go. Latest version. (Windows DLL). Replace DLL with the current one. No warranties ;-) |
- this is now a timed thing - we can now see when it gets < 20 or so, it usually means 'stuck'. Although I haven't tested with crouching yet, which probably results into distances of 20 by default. So the 'check' how much moved should also be done against the kind of movement (jumping, ducking, running, etc) - for #17
expected moved distance should be - for #17
The learn rate is improved significantly. As it now uses a shorter time window. Also with #22 fixed there is a lot less false positives: ie bots know when they are stuck by other bots with more accuracy. The stairs in |
… bad connection when we can't see it anymore. - for #17
I noticed the bots ignore Here is a wireframe of cs_italy, with a func_illusionary (orange): |
More info at #29 while dealing with |
…on and when to learn about bad connections - for #17 for instance - When considered stuck, it will only try a few things and bail immediately. Ie, either jumping, ducking or it just logs its findings (but there is still work to do to make bot behave) - When time is up to reach node, it will remove the connection. Even when not 'stuck'. - take freezetime into consideration so we don't mark spawn points as bad nodes - refactored Button/Door interaction and Stuck logic into their own functions. Making path_walk easier to read. Slow steps to a state machine at some day???
It looks like when a bot walks a path and encounters a 'troubled' connection it won't forget (after too many retries) the connection. Although the logs seem to indicate it would forget it - it does'nt.
Examples
Ideas
Example of troubled connection not working:
Logs saying:
Still even with 'forgetGoal' and such being called (which should clear the path!) it keeps going to this node.
The text was updated successfully, but these errors were encountered: