A "Milenko bot" is an "anti-bot bot" that helps to remove malicious bots from Team Fortress 2 casual matches by detecting, reporting, votekicking, and killing them in the interim. They also automatically collect data about bots that can be used with Pazer's TF2 Bot Detector program to help you kick bots faster.
The project is named after the song "The Great Milenko" by Insane Clown Posse.
  • Milenko bots join casual matches in Team Fortress 2 and automatically detect malicious bots.
  • Milenko bots will join as the Spy class and perform either the Disco Fever or Luxury Lounge taunt in the spawn room.

  • If a malicious bot is detected in the match, Milenko bots will:
    1. Announce a list of the malicious bots on each team in the chat every 20 seconds
    2. Try to call vote kicks on these bots as soon as possible
    3. Switch to the Sniper class and target only these malicious bots
  • This helps to prevent malicious bots from ruining the fun of innocent players and makes it immediately obvious when malicious bots are present.

  • When a votekick is called, they will also inform players in chat whether or not the player being kicked is a known bot.
  • This helps to prevent innocent players from being kicked by malicious bots or other players.
  • Milenko bots will automatically vote Yes on malicious bots and No on regular players.

  • If there are no bots detected after about 15 seconds, Milenko bots will leave automatically.
  • You don't need to kick Milenko - focus your efforts on malicious bots instead.
I strongly encourage you to use Pazer's TF2 Bot Detector, a program that helps to identify malicious bots and automatically kick them!
You can download his program from GitHub here.

By default, it does not detect a lot of bots. You can add third party player lists and rules from the wiki page here.
In fact, we maintain our own list of malicious bots which you can add to the tool!
Most malicious bots are automatically detected by Milenko bots using signals that they broadcast to everyone in the game, which they do to avoid shooting each other.
As such, this list is extremely accurate and contains mostly malicious bots. A few cheaters using cathook may also be on the list.

Certain bots that tend to use the same name (e.g. "braaaap 23") may be detected by their in-game name. If you're brilliant enough to set your name to that of a bot, players will kick you pretty quickly. As such, it's reasonable that Milenko bots should add you to the list as well. If you think you got added by mistake, just join the Discord server and send a message to The Great Milenko#6950 (that's me), and I'll remove you from the list.

You can download the cumulative Milenko playerlist here.
In addition to our player list, we also have an automatically-generated rules list that lets you detect bots by their in-game name. You can download it from: https://milenko.ml/api/namerules
Whereas the player list is generated by Milenko bots as they encounter malicious bots, the rules list is generated by the GLaDOS API by constantly scanning all TF2 servers and looking for patterns in names. This makes it an extremely effective tool for automatically detecting new bots!

Read Pazer's TF2 Bot Detector wiki page for information on how to add the lists to the tool. (Just save the list file and move it to the bot detector "cfg" folder.)
In the future, we hope to make multiple lists available for download that isolate different detection methods. This would let you see how a bot was detected.
Down the hall and to your left: https://discord.gg/NrmTrSesPX
We use the server to post updates on development, accept feedback, provide real-time statistics, and more. Check it out!
If you like what we're doing, show us some support! It costs hundreds of dollars per month to host the bots in the cloud.
Please consider subscribing to the project's Patreon here.

Bitcoin donations are also welcome: 35ASdQQ55ALDU9NSu2unTcRzYe9LckG6M5
If your Bitcoin wallet supports it, you should send to this bip32 address instead for reduced transaction fees: bc1q728r5n9mkeege7783tzhqgcayy8s44qwhwllsz
If you would prefer to donate Monero, you can send to this address: 83bvucMFZh72A5BrEeaNBAeZnfbrAdcGNME9o9mydnjsc1rhDK4st5MHdg1qguXrpf4Sf67dcyNmy6TrKZ9eeTVd5h5Chn7