Love this? Wanna give something back? buy me a coffee!
I'm planning on implementing more code for different bot types, an online database, and an auto-updater
- Download everything from here
- Unzip the file in a folder
- Startup Steam and go to your library
- Right-click on Team Fortress 2
- Click "Properties"
- Go to "General"
- Under "Launch Options" add
-condebug
- Configure
./config.properties
to your wishes (see below) - You're good to go! Simply run the script using
start.bat
!
Open the config.properties file with a simple text editor (I prefer Notepad++, regular Notepad will work as well) If there isn't anything specific you want to change and just want to make sure it runs, you only need to worry about the 'path' key. This is done as follows:
- Startup Steam and go to your library
- Right-click on Team Fortress 2
- Click "Properties"
- Under "Local Files" click "Browse..."
- Replace everything after 'path=' with the path to the folder you just opened
- Save the file, and you're done!
If you want to a specific bot based on their name or their steamid, you can do so in the ./bots.properties
file. As with the config,
open it in a text editor and follow the documentation and styling to add a bot. If you truly believe the player is a hacker,
consider commenting on an existing report in the bugtracker with more evidence, or, if there hasn't been a report, creating an issue with "REPORT: <name or steamid>" in the title of the issue.
If the report gets enough traction it will be added to the online database.
No. And here's why:
- No code is changed on the client-side
- Every interaction with TF2 is done through the console and scripting, which is allowed
- This program simply automates and recreates what you would do manually, but does it faster
- The program sends a key press to the system, which TF2 will read.
- TF2 responds by outputting the result of the
status
command in the console. - Because we enabled
-condebug
in our Launch Options, the output of the console will be written to/tf/console.log
in our TF2 files. - We read the
/tf/console.log
and store all necessary information. - Next, we go through the player list, and see if any name matches to the name of a bot
we specified in our
./config.properties
. - We also check if any name is in the list twice, and if so, we get the player with the shortest connection time.
- If a bot is found, we write the required command to votekick it in
tf/cfg/votekick.cfg
. After that, we send a different key press to the system, which TF2 will read. - TF2 will respond by executing the command stored in
tf/cfg/votekick.cfg
and starting a votekick.
You can also look in ./code.py
where I commented on what every piece of code does, so you can
look in detail on how it works.
Oh no! Look through the bugtracker and see if your issue can be found there. If not, consider creating an issue and I'll try and get back to you.
Amazing! All help is appreciated! Consider forking the project and changing what you believe needs to be changed. Make sure you follow the license.
- michaelshumshum