tf2-cheat icon indicating copy to clipboard operation
tf2-cheat copied to clipboard

Linux cheat for Team Fortress 2 made in C

#+title: Enoch #+options: toc:nil #+startup: showeverything #+author: 8dcc

Linux cheat for Team Fortress 2 made in C.

#+TOC: headlines 2

  • Deprecated. Note about =x86_64=.

I decided to continue the development of the 64-bit version of the cheat privately. I don't want to spend time upgrading and fixing the whole project so people can use it for making bots or selling a cheat.

I made this project because I enjoyed reversing the game in a platform with not much reference, and I enjoy the low level aspect of programming the cheat. The "cheating" part is not my main goal, and I publish this projects for people who might find the code itself useful. I believe the current state of the project serves that purpose.

If you just want to cheat on TF2, search somewhere else.

#+begin_center [[rip.png]] #+end_center

  • Features

You can see the full list of features in [[./FEATURES.org][FEATURES.org]].

  • Dependencies

We need the 32 bit SDL2 and GLEW libraries for linking the final shared object.

Arch-based distros:

#+begin_src bash

Enable the [multilib] repository in /etc/pacman.conf, then pacman should pull

the 32-bit gcc libraries.

$ sudo pacman -S lib32-glibc lib32-sdl lib32-glew #+end_src

Debian-based distros:

#+begin_src console $ sudo apt install libglew-dev:i386 libsdl2-dev:i386 gcc-multilib #+end_src

The cheat uses the [[https://github.com/slavfox/Cozette][Cozette Vector]] font for rendering using =ISurface=. You can install it with with the following command.

Arch-based (With [[https://aur.archlinux.org/packages/cozette-ttf][AUR]] helper):

#+begin_src console $ yay -S cozette-ttf # Has to be ttf #+end_src

Arch-based (Without AUR helper):

#+begin_src console $ git clone https://aur.archlinux.org/cozette-ttf.git $ cd cozette-ttf $ makepkg -si #+end_src

Manually (other distros):

#+begin_src console $ wget https://github.com/slavfox/Cozette/releases/download/v.1.22.2/CozetteFonts-v-1-22-2.zip $ unzip CozetteFonts-v-1-22-2.zip $ cp -R CozetteFonts /usr/share/fonts/truetype $ fc-cache #+end_src

  • Building

Simply clone the repository and build the project using =make=.

#+begin_src console $ git clone https://github.com/8dcc/tf2-cheat $ cd tf2-cheat $ make -j$(nproc) ... #+end_src

  • Injecting

Uses the [[https://www.gnu.org/savannah-checkouts/gnu/gdb/index.html][gdb]] debugger for injecting the library.

#+begin_src console $ sudo ./injector.sh [sudo] password for username:

...

Done. Unload cheat using: ./inject.sh unload ... #+end_src

  • Screenshots

#+begin_quote Note: Some screenshots might be a bit outdated. #+end_quote

[[https://user-images.githubusercontent.com/29655971/292682114-6b8ab549-335e-4c36-b98a-da484b1a5c48.png]] [[https://user-images.githubusercontent.com/29655971/292682112-e3bd95d0-b5e8-4217-9856-e62b59f143e9.png]] [[https://user-images.githubusercontent.com/29655971/292682103-bd9c2b6b-8165-4aec-b4e7-f54c39965a94.png]] [[https://user-images.githubusercontent.com/29655971/292682095-72796611-6302-468a-afa5-7e765ddced4d.png]] [[https://user-images.githubusercontent.com/29655971/292682139-789eca45-6c34-4a90-8816-c2c22f35e0f3.png]] [[https://user-images.githubusercontent.com/29655971/292682091-100c76ec-f95f-4ddf-82bf-ea6187fd3066.png]]