The site uses cookies that you may not want. Continued use means acceptance. For more information see our privacy policy.

Team Fortress 2: Surviving Bots

Playing Team Fortress 2 takes a certain amount of patience these days.

For some years now, Team Fortress 2‘s casual mode is full of automated clients that cheat. We call them bots. They go by various names, play different classes, have different behaviors, but it’s rare to go more than a match without seeing at least a few.

This post isn’t an attempt to fix the problem, as that’s something only Valve can do. But it is an attempt to help players understand the problem and improve their experience even a little bit.

First of all, what are the types of bots? There have been many names over the years. Different ones in different regions. Some of them go out of style, sometimes there are flashes of new names that don’t stick around. The named bots all have their own styles. Most wear achievement hats, some have a few extra items. Some are worse to deal with than others.

In particular, there are namestealer bots, which change their Steam name to match a real player. They do this by adding characters that aren’t normally visible. The purpose of namestealing is to make them harder to kick and make it more likely that players kick other players accidentally. Due to the lackluster player identification options, it’s easy to make a mistake. (If you do accidentally kick a teammate or vote to kick one, don’t feel bad. It’s not your fault. It’s primarily the people who run bots and secondarily Valve’s failure to fix their game. And if you play enough, a bot will steal your name and you’ll get kicked, too.)

Second of all, what are the types of bots? The most common by far is a Sniper bot. It may or may not spin or look in odd directions, and it will wander around and hit headshots almost all of the time. Some spam noisemakers or voice commands. They throw on an achievement hat. Some wear the Cozy Camper for additional survival. After Sniper, there are Heavy bots. Not a lot to say about them other than their standard Gibus headgear. There are also the occasional Medic and Engineer bots, which are less harmful in comparison to the others, but should still be kicked.

Other bot behaviors of note

Bots will eventually leave on their own. It’s not clear why this happens, but it does. It’s not unusual to see a group of bots all leave at the same time. It’s a sight to behold if you’re one of the only humans on the server, to see it go from infested with bots to a ghost town in no time.

The reasons behind them leaving aren’t known, but possibilities include:

  • Being ordered to go bother a specific server by whoever controls them.
  • Some kind of anti-detection mechanism. (This is doubtful.)
  • An attempt to spread their time bothering more players by not staying in one place too long.

Some bots will try to kick humans. Namestealers will try to kick the person they stole the name from, but some others will try as well. The people who make the bot software have a network service to let them recognize each other, but not all of them use it. The ones that do will avoid killing each other, and will vote against kicking each other, but only in some cases.

The bots that don’t recognize each other, or that only recognize their own subtype, will kill and kick other bots.

Kicking Bots

The best way to deal with bots is to kick them off the server. This requires vigilance, because the bots can vote too, and if enough of them get in a server, they can and will kick real players.

You can use the button on the main menu, or you can bind a key to callvote, which will open the menu if you’re allowed to call a vote and no votes are in progress.

There are some rules to how voting works:

  1. You can’t kick bots on the other team. They have to take care of their own and you of your own.
  2. You can’t call votes for the first two minutes you’re on a server unless you join when the map is starting (or up to 90 seconds thereafter).
  3. You can’t call votes for two minutes after the last one you called.
  4. The client being voted on always votes against being kicked. (As far as I know, this is done by the server.)

Other aspects to voting aren’t as clear. For example, there are times where even proper votes can fail. It’s not clear if that’s due to a bug or an exploit by the bots. The team will make an honest effort to kick and people will vote, but the vote just does not succeed.

On the other side, a majority may not always be necessary. I have seen at least one tie of four-to-four pass in recent memory. Again, not clear whether it’s a bug in the voting, in the display, or what. And while I’ve almost always seen needing four votes in favor of kicking, I’ve seen bots pull it off with a vote of three to two. There is definitely a minimum number of players required to successfully kick. I believe it is a majority of five. But it’s quirky.

If a voter leaves a match or gets autobalanced during a vote, their vote is discarded. There is an exception: a client being voted on can be autobalanced, in which case I believe their vote still stands. (If the vote passes, even though they are now on the other team, they are still kicked.) If someone being voted on leaves, they are automatically kicked.

As long as some clients haven’t voted, the vote will remain active up to its time limit (perhaps 30 seconds). While a vote is in progress, other votes cannot be called. So you should always vote if you can (against if there’s any doubt). (This doesn’t matter too much in practice, because there’s usually at least a few idle players about that hold up the votes.)

Kick namestealers first

It doesn’t do any good if someone accidentally kicks you, so if you see someone that’s stolen your name coming or already on the server, prioritize that player for a kick. (This is the airplane rule about putting your oxygen mask on first.)

After that, you should try to kick namestealers that stole someone else’s name, because bots often vote to kick humans and against kicking bots. The more humans on the server, the better.

Mute the bots

A bot account isn’t going to turn into a real player. And some bots can and will spam either the chat or the voice channel. By muting bots you see, you avoid that the next time you see them. But you also can use it as a lazy metric for deciding who’s a bot and get a general sense of how often you’re seeing the same bots. It’s not perfect, because if you play enough you’ll want to mute some actual people who abuse the communication tools, but those numbers are tiny compared to the number of bots.

For me, at least 80% of the bots I see playing are ones I’ve seen before, based on how often I need to mute bots. I’ll see a new batches come through, but most of the bots are the same accounts over and over. (I haven’t tried to parse the file where mutes are saved to try to get an idea of how many there are. There are some third-party efforts to track bot accounts (and to automate kicking). See Github: PazerOP: tf2 bot detector for Windows, for example.)

Muting bots has a few other useful side effects. Visiting the mute menu does show the player avatars and time-on-server. Both of those can clue you in to which is the real player and which is a namestealer. (There are broken parts of the HUD that are supposed to show avatars on hover ID and on votes. See Github: ValveSoftware: Source-1-Games: issue #2233: “[TF2][Bug] Avatars during vote kick events do not show” for the votes part of that.)

Playing on servers with bots

Sometimes the server is overrun with bots. The easy fix is to quit and requeue, hoping to find a better server. But if you want, you can see what it’s like to live in the Terminator future when killer bots are everywhere.

Some people swear by the Fists of Steel, which give Heavy bullet resistance. Often this is paired with a Medic using the Vaccinator with bullet protection as well. Through teamwork and grit, this combo can keep several bots in check for a whole match.

As I suck at the team part of Team Fortress 2 (and I often find myself alone on servers with bots), I use Soldier or Demoman. My strategy relies on the fact that your explosions can go places where the bots can’t see you. This is more true for Demoman, but depending on the map and where the bots are, you can land some rockets with Soldier, too.

Different maps make killing the bots easier or harder. Maps with less cover make it harder to counter them. You need to find places to hide and spam the explosives at them. (Sniper bots will shoot your sticky bombs, but spamming them will still get damage in over time.)

Why not community servers

Some people advocate for community servers, which is good. In the old days I played on community servers, and I like them. But they aren’t a replacement for Valve servers. Most official maps are available on Valve servers, when there aren’t any community servers running a good portion of them. And you play with a broader set of the world on Valve servers, rather than the limited numbers you’ll see on community servers.

Why it’s up to Valve to solve

Ultimately, this is a problem that can’t be fixed by players. We can only try to get better at kicking bots and making the best of a neglected game. Valve, for whatever reason, hasn’t made this problem a priority. But it will take Valve to end this sad era of Team Fortress 2.

What Valve could do

The most obvious change would be to add a CAPTCHA when clients queue for casual mode. Valve probably views this as an extreme solution, or thinks they would be mocked for doing so. On the other hand, their own feedback form on their own website uses a CAPTCHA to block spam, so maybe they should take a cue from themselves on this one?

There are other things, like reworking Sniper and Heavy to make them less abusable, or implementing some of the tech they use in Counter-Strike to improve the experience there.

But the most important changes are ones I can’t speculate on. I don’t have access to the source code or resources Valve has. What they can do to fix the problem is something they know or can find out. It’s beyond my reach.

Why Valve might not care or might not want to fix the bot problem

I think the ultimate reasons Valve doesn’t fix the problem are simple enough:

  1. They don’t catch enough heat for allowing this problem to fester.
  2. They don’t have what they perceive is a workable solution.

If there were more outcry, they might pick a solution they don’t see as optimal but would still reduce the problem. If they had a better solution available, they would also implement it. But lacking either of those, it’s easy enough for them to ignore the problem.

What Valve could do regardless

Even if they don’t care to, can’t, or don’t want to fix the bot problem, there are still things they could do to make players have a better time. They all center around making it easier to identify and kick bots with less trouble.

  • Fix the avatar bugs mentioned above.
  • Make it harder for bots to namesteal.
  • Allow concurrent votes.
  • Show the opposite team’s votes.
  • Show parties and mutes on the scoreboard.

Making it harder to namesteal

There are several ways to do this, but again it’s Valve’s game.

Disallowing some characters is possible. Or limiting how frequently you can change your Steam profile name. Alternatively they could let you change it as often as you like, but only show the in-game name as your profile name from some time ago.

There are better options, including adding a player number to all in-game activity (think sports jerseys). A non-player-input identifier would remove all ambiguity. The funny thing is that they already have this! It’s just not displayed in the relevant places. It only shows up in the output of the status console command. (This would actually serve other purposes, as well. For example, some people use names that are mostly blank, or are punctuation, or in non-Roman-alphabets that most of the players can’t type. Being able to refer to them by a jersey-number would help all of these cases.)

And, obviously, changing the code so that players can always see the invisible characters that bots use to conceal the differences in their names from the real player. There is at least one HUD that does this: Github: andy013: “votehud custom font” It handles the problem by using a customized typeface that makes those characters visible as boxes.

Allow concurrent votes by both teams

Currently only one vote can be active at a time, so if bots join both teams, only one can be kicked while the other may start causing problems.

Show the opposite team’s votes

It’s common to see an opponent ask for you to kick a bot when the vote’s already started. This would eliminate the question. It would also help in knowing when you can call a vote for a bot on your team, if they can’t allow concurrent votes by both teams.

(If this were added, it would be appropriate to allow people to turn it off if they want less vote noise.)

Show parties and mutes on the scoreboard

When they added the unfortunately-disused competitive system, they also added parties. This lets a group of players join a server together. But there’s no indication of this to others. While this ignorance makes it easier to find yourself getting rolled by a group of well-coordinated opponents, it also makes it easier for bots. Bots can join together. It’s not clear how common it is for them to do this, precisely because there’s no in-game indication!

Knowing that bots are in a party together would make it easier to kick them all. (Whether it would be useful to add a kick-party voting feature is beyond my knowledge.)

Mutes, for those who use them to help track bots and in general, could be shown on the scoreboard. It would make it easier to see if you have anyone muted on joining a game, rather than relying on the mute menu. The mute menu works okay, but it has to be accessed from the main menu, and it doesn’t update as players join and leave the server.


Bots are an added layer of complexity to the game. The bots are a kind of spam. We have to take out the sentry and kick the bots. We have to steal the intelligence and kick the bots. We have to block the cart and kick the bots.

Valve should respect their customers and themselves by fixing the problem to the best of their ability. Their neglect and lack of communication speaks quite loudly against their reputation. That is key: you should blame the people who make and maintain the bots, but you also should blame Valve for failing to take ongoing action about the problem.

Valve has taken steps in the past to make things better, and hopefully they will give it more effort in the future. The mute and vote dialogs used to be barer, without avatars or time-on-server included, for example. Most bots are on free-to-play accounts, which are no longer allowed to chat (a double-edged sword, as new players can’t chat either). Whether Valve has more updates planned to help isn’t clear. Only time will tell.

But until then, keep kicking the bots! F1! Wait, no! F2! Wrong one, that’s me! Bye! Disconnected.

Review of ISLANDERS

A chill game of filling islands with buildings.

ISLANDERS (Wikipedia: “Islanders (video game)”) is a building placement game that takes place on a series of randomly generated islands. It can be thought of as a board game in which the island is the board and the buildings are the cards you get dealt. Presented with a fresh island, you add a batch of buildings to your hand and from there you place them on the board—on the island.

Each building has a bubble representing its range of influence, and you get points based on what is inside the sphere when you place it. You can also undo the last move (unless you’ve added a new batch of buildings). Each building has a set of others that it wants and doesn’t want near it—call them friends and enemies. Friends add points, enemies subtract.

Different building types take up different amounts of space (and there are some variations of some building types that have their own distinct footprints). Equally important, some buildings are worth more points. These need to be played strategically to max out your score—building up an area you plan to place these in. But the game nudges that as most of their friends want to be near each other anyway.

It’s not too challenging once you play a few islands. You start to figure out roughly where things should go by trial and error. You’re free to hover the ghost building all over the island and try to find the highest score you can get. Advanced strategies mean in some cases you’re better off not going for the best score for a single building, so that you’ll have spaces to place things later and so that you keep future buildings from losing points by being too near to their enemies.

For most of the game, you will want to add new buildings to your hand as soon as they become available. The exception is an achievement for always exhausting your buildings before getting more and scoring 1000 points. Having more buildings available means you can try different placements or hold some for later while adding their friends to the board ahead of time.

Once you have enough points, you have the option to move on to a fresh island. You can keep adding buildings to the current island until you fail to get enough points to get a new batch of buildings. At that point, if you’ve unlocked the next island you can go on to that. Otherwise, you’ve hit the end of the world and your score is your score. Early islands are easier to fill out: you add more buildings to your hand for fewer points, and you can move on to the next island sooner too. The first islands are also give you more space to play.


There weren’t any bugs for me on Linux. There are ways you might be able to shove some buildings where they don’t look like they fit, but nothing too crazy. The biggest annoyance was the yellow point text when placing a building could have poor contrast with the background (especially the sand and some of the levels with yellow grass areas). In those cases you might need to spin the level around so that you get an orientation with enough contrast to read it. (A simple drop-shadow on the text could probably have solved this.)

I enjoyed my time with ISLANDERS. Including achievements, it took me about 30 hours to play through. While I was playing I wondered about the people who would build these cities, the architecture and the world they would live in. A calm and easy enough game, I’d call it contemplative. No quick thinking is needed as you can take all day to make a move (though there are a few achievements for getting through some of the early islands quickly). If you want to try harder to maximize your score in the early rounds, some math will come into play. You’ll try to calculate which order to place things. But as the game progresses, it becomes more about space management and making use of your undo to try things.

There is a sandbox mode where few restrictions are placed on what you build. You can add as many of the various building types as you want there. And from the main menu there is a photo mode where the UI is hidden so you can take pictures of your current island. There isn’t a way to save islands, which is a small heartbreak, but it also adds to the charm of the game that what you build is quickly washed out, like a sandcastle.

The title, Islanders, written using the wall building in sandbox mode.
A simple example of what can be done in the sandbox mode. In high score mode, this would be terrible.

Worth a look if you want to slow down and fill up islands with buildings.

Ideas for a New Heavy Update

The Ball and Chain, the Counter-Sniper, and the Disc of Throwing: three silly concepts for Heavy Weapons Guy. Plus a bonus: the Communists’ Can o’ Pesto!

While Team Fortress 2 is holding its annual Scream Fortress event, it’s been years without any major update. The last one, Jungle Inferno, focused on the Pyromaniac, and at the time it was expected that the Heavy would be next. It probably won’t happen, but here are some ideas all the same.

Behind every set of unlockables, there’s an answer to the question: what does this class need? How would changing this class make the game more fun?

In Heavy’s case, one of the big ticket items is mobility. The game is dominated by mobility and healing. Soldiers and Demomen have the most mobility, followed by Scouts. Pyros gained some added mobility in Jungle Inferno. The Heavy Weapons Guy doesn’t have much mobility. The Gloves of Running Urgently do help a bit, but that’s speed which isn’t equivalent to mobility. Mobility in TF2 involves being able to get places as much as getting to them quickly. Mobility is synonymous with versatility, because being able to show up in unexpected ways is essential to breaking a standoff in the game.

The second factor is countering Sniper. An earlier unlockable, the Fists of Steel, grant some protection to sniper fire, but the Heavy has no offensive counter. In general, unlockable counter-weapons tend to be defensive rather than offensive. When they also have an offensive component, it is general rather than being a class-specific counter.

The Ball and Chain

A melee weapon with two attacks. The primary attack swings it close, with limited range. Having the B&C out slows Heavy by a third.

The secondary attack lets Heavy throw it about half the distance of a Demoman charge. He can then switch weapons and at any time he can pull himself to the position of the ball quickly. A mobility tool of sorts.

Implementing this should be fairly straightforward, as the Mannpower mode already features a grappling hook, and this would be a modified version. It might need a cooldown, and there’s a question of how to handle bad throws. Can the Heavy cancel a bad throw, possibly incurring the cooldown time as though they’d reeled in?

The main goal of this item is adding a mobility option to Heavy that expands the playstyle without being too powerful.

Can you imagine TF2 with Heavies throwing big heavy balls around and pulling themselves over?

The Counter-Sniper

Tight-spread, slow-firing abomination consisting of six standard sniper rifles frankensteined together with a rotating ammo feed and fixed trigger. Fires a burst of six rounds in a second with high accuracy, minimal spread, and high power. But it has a two second cooldown between bursts and is limited to 60 rounds of ammo. Features a loud discharge but otherwise silent operation.

At a distance, this weapon is capable of suppressing a single target, particularly a sniper who’s caught off-guard. It would take a lot of skill to kill the sniper, but this bad boy will definitely slow them down.

The main goal of the weapon is to provide a way to focus snipers (and to a lesser extent sentries). A weak weapon for close and medium range combat, stinging but not high-damage, Heavy should carry a secondary weapon. At close range it also has a weak airblast-type effect when fired, capable of reflecting projectiles but not pushing enemies quite as much as the Pyro’s does.

Can you imagine TF2 with Heavies having a slow blast cannon?

The Disc of Throwing

A secondary weapon, throw the frisbee and watch as it follows a shallow ballistic trajectory. On contact, it marks enemies for mini-crits. A rechargable/ammoless item, it can ricochet off of enemies and bounce between multiple in a group.

It also distracts sentries. When sentries spot a frisbee, they give it priority and lock on. Until the frisbee is destroyed, the enemy has a chance to sneak past or attack the sentry. It can withstand only a brief attack, whether from a sentry or a player.

Enemy airblast changes ownership of frisbee/sends it back as expected. In addition, both friendly and enemy melee attacks on a flying frisbee will redeploy it (similar to airblast). A five second cooldown penalty is added if the frisbee lands outside of reachable parts of the map.

The frisbee will encourage Valve to add the tenth class: Dog.

Can you imagine TF2 with a bunch of frisbees flying around?

The Communists’ Can o’ Pesto

What Heavy update would be complete without a new lunchbox item? Not this one, that’s for sure! The Communist Can o’ Pesto is a saucecan that even the Spy would kill for. Dropped, it acts as a small healthkit, but when consumed by Heavy, it drops his health down to half of normal, shrinks him to half-size, and triples his speed. He is small-Italian-Plumber for ten seconds!

An alternative to the Ball and Chain, if small-Heavy gets touched by an enemy it’s insta-death, but if he lands on their head, they die! (Might need tweaking—make it damaging but not lethal?) Has the ability to jump slightly higher than mercenary-height.

Can you imagine TF2 with a bunch of small Heavies running around trying to jump on each others’ heads?


There are other possibilities. What new weapons do you think the Heavy Weapons Guy should have?