edge-blade / Dota-2-AI-Bot-Experiment

My Dota 2 Bot Script
GNU General Public License v3.0
11 stars 0 forks source link

Bots stuck at mid lane #24

Open RickyJuno opened 2 years ago

RickyJuno commented 2 years ago

Some bots seem to go towards mid lane and stand there stuttering. They might be going towards 0, 0 on the map for some reason. This is an issue because they will stand there and tank lane creeps until they need to retreat. Even if their allied creep wave comes by to help they continue to stutter and tank damage, then they do not push with their creepwave and stutter more. The hero that is stuttering needs to be killed or move to defend a tower in order to fix itself.

Bots that I've noticed this with: Batrider Brewmaster Slark Grimstroke Razor Elder Titan Every single Mid-lane hero (Bloodseeker, Qop, Zeus, Leshrac, etc.)

diegofontenelle commented 2 years ago

@edge-blade any info on this? I would like to help with fixing this issue. If you have any pointers on what may be going on let me know

edge-blade commented 2 years ago

I've been swamped with other things so I haven't had a chance to revisit the bots other than brief code reviews of issues. If you're running the DOTA 2 developer console, you could try some debug commands while playing practice matches and see what mode the bots are in when they're stuck, plus their rough coordinates to see if they are getting stuck close to the map center. My initial reaction is that there's an issue deciding what mode they're in, or they're having trouble reaching a destination and that could be corrected if we have a bad coordinate or invalid built-in location ref from Valve.

This command from the developer reference would tell you see a particular teams' current state live:

dota_bot_debug_team (Brings up a panel for the specified team (2 is Radiant, 3 is Dire))

You could just put 2 or 3 at the end to track either team to see if they're constantly switching modes. If they're in a particular mode then you could narrow the behavior to a given "mode" script such as "mode_farm_generic", otherwise I'd expect it to be in the base level bot behavior scripts. The issue could also be in their priority due to a distance calculation or something related to farming resulting in them trying to move to center like @RickyJuno was theorizing above.

Can't recall if I documented it, but if you open the properties of DOTA 2 in Steam and add the following with the dash included, it should permit you to use the Tilda button to open and close the terminal.

-console