A list of all TFBot Bugs (I could find - so far)

Discussion in 'Team Fortress 2 Talk' started by Star Bright, Mar 28, 2017.

  1. Star Bright

    Star Bright L2: Junior Member

    Positive Ratings:
    If you know me you know I have a pretty big fascination with TFBots. I think they're really cool, if not really freaking dumb sometimes. So I decided to start keeping a running list of every bug I could find inside their behavior, as well as other little things I personally think would make for good features, since bots aren't the best at certain behaviors like spy-checking.

    Here's the list so far: https://pastebin.com/tjP3urH5

    Do I expect these to get fixed? Probably not, by this point bot behavior is old, probably outdated, and probably irrelevant to 98% of the TF2 population, and MvM bot behavior is... kind of different, a bit more refined, I'd dare to say. But I still think it'd be cool to shed light on exactly WHY bots are dumb, rather than dismissing their AI entirely.

    I will probably be updating this list in the future, with more bad puns and crappy one-liners to boot.
    • Like Like x 2
    • Thanks Thanks x 1
  2. suber36g

    suber36g L3: Member

    Positive Ratings:
    I won't called them bugs, more like unique personality traits. They have feelings too.

  3. Muddy

    Server Staff Muddy Muddy

    Positive Ratings:
    Would be nice for TFBots to be updated so that they can use non-stock weapons, like the Huntsman snipers in MvM
    • Agree Agree x 1
  4. Micnax

    aa Micnax I maek map

    Positive Ratings:
    I guess robots as a whole would come with programming errors :rolleyes:
  5. Crowbar

    aa Crowbar perfektoberfest

    Positive Ratings:
  6. Da Spud Lord

    aa Da Spud Lord L0: Crappy Member

    Positive Ratings:
    I think it's safe to say that I share your fascination with the bots. Although stupid and predictable, they're good enough to work. I can play normal matches and feel like an actual contributing member of the team, instead of either rolling the other team or getting rolled, like in casual matchmaking, and I can play on maps that I can't find a server for, like TrainSawLaser. I do wish the bots would be improved- even just a few small changes could make a world of a difference.
    3. I've never encountered this bug. I've seen bots stand still while being healed before, but that's usually because they're defending an objective. Bots don't like to wander far from the objective.
    4. All bots with a sightline to the spy who did the sapping will know the identity, however other spies on the same team as the spy who did the sapping will not be revealed. This sightline principle applies to most spy-like action, such as cloaking/decloaking, disguising, and backstabbing (but curiously, it does not apply to bumping an enemy- only the enemy you bumped will identify you as a spy).
    6. Sniper bots aren't really objective-based bots. Although they usually start by heading near the objective, that's only because they expect all the enemies to be near the objective as well. I've seen them hang out away from where the actual fight is occurring in an area with no enemies, but they usually reposition after a bit of seeing no enemies, and to say they head in the exact opposite direction of the objective is overkill IMO.
    7. This is usually due to bugs in the navigation mesh. Bots will blindly follow the navigation mesh, even to their death sometimes- the navigation mesh is like the holy bible for bots. These can usually be fixed with some tweaking with the navmesh. I recommend reading this guide, it's very comprehensive and taught me a few things I didn't know about editing navmeshes: http://steamcommunity.com/sharedfiles/filedetails/?id=143779904
    9. Engineers in general could use an overhaul, as engineers are the derpiest class- you could bump into them as a spy while they're turtling their nest, and they'll completely ignore you. Sap their stuff, and they'll still ignore you. Keep spamming the sapper and they'll just abandon their buildings. They'll ignore any combat happening around them, instead trying to set up in a hailstorm of bullets when it's clear they're going to die. Occasionally, they'll wait to build their teleporter entrance until they get to where they're setting up their nest- creating a teleporter that goes nowhere. Speaking of teleporters, they also completely ignore them- they won't upgrade their teles and if the tele takes damage, they ignore it. They're bad at choosing sentry spots, relying on sentry spots placed in the navigation mesh, and if none are available, they just pick a random spot with a sightline to the objective and build there. Sometimes they build sentries facing a wall, other times they build sentries facing away from the objective. And the fact that they stand still while turtling their sentries instead of spreading out their gear makes them easy pickings for demos, spies, and snipers.
    10. The ability for engineers to walk through their buildings was probably intentional, as it would make creating a navigation AI for engineers harder as they would have to route around their buildings- otherwise engineers would get stuck trying to walk through their buildings. Valve probably decided it was easier to just let them stand in their buildings, and I can't blame them too much, although it is kinda annoying when I'm trying to kill an engineer completely shielded by his sentry.
    11. It doesn't usually matter- bots (should) automatically avoid jumps higher than the standard jump height. Don't worry about making all of the large dropdowns one-way, trust me, it doesn't make a difference- it saves tons of time editing navmeshes.
    12. Never encountered this bug, and I play with bots with nav_edit 1 a lot when I'm testing newly-made navmeshes. I do know that if you try editing the navigation mesh with bots on the server, it causes the game to crash.
    14. It appears to be a bug with dispensers, not engineer nests in general- I've seen spies do this with just lonesome dispensers, but never with a lonesome sentry. Something about looking at a dispenser causes the spy to enter a regressive loop that can only be fixed by bothering the spy in some way- either attacking him, disrupting his view of the dispenser, or destroying the dispenser.
    15. Firstly, getting enemy medics to heal you can be difficult based on what class you are disguised as due to the medic bot's healing order and the fact that they love to pocket heavies. If a medic does know you are a spy, they won't heal you- if you get too close, they might even whip out their syringe gun for a sec before going back to healing their pocket.
    18. If I decloak in front of an enemy, I will get destroyed. However, decloaking behind an enemy does not appear to garner the same reaction.
    19. This is a bug specifically with expert bots.
    22. That's because medics are not objective-based bots in the slightest- they are the least objective-based of all the classes, meaning their actions do not revolve around the gameplay objective at all. If they can't find a power class to pocket, then they won't wander out of spawn to try and find an ally to heal- they'll wait for a power class to spawn with them. Healing is all they know.
    23. They will occasionally backstab multiple targets standing really close, but this is rare and I think only hard and expert bots will do this.
    25. This can be fixed by covering the other stages with nav_mark_walkable. Every couple hundred hammer units, aim at the ground and use that command. Then, once you've placed them all, use nav_generate_incremental. The game will do a bit of navmesh generating. Once it is done, you'll still need to use nav_analyze, as nav_generate_incremental does not analyze the mesh automatically.
    29. This is probably due to the lack of sentry spots defined in the navigation mesh, at which point the engineer will pick a random spot. This problem doesn't happen on Valve maps with premade navmeshes as Valve added their own sentry spots (that's also why engineers will repeat sentry spots). Use tf_mark SENTRY_SPOT to mark sentry spots on the navigation mesh.