Internal project base for Counter-Strike: Source on Linux
Go to file
aixxe d3ed74068a Adjust code style and fix unloading in NetVar scanner.
Signed-off-by: aixxe <me@aixxe.net>
2017-01-08 16:47:03 +00:00
include Replace IPanel::PaintTraverse hook with IEngineVGui::Paint. 2016-12-23 12:15:31 +00:00
src Adjust code style and fix unloading in NetVar scanner. 2017-01-08 16:47:03 +00:00
CMakeLists.txt Link library against libGL 2016-12-25 12:42:38 +01:00
LICENSE Add license and readme files. 2016-12-20 21:12:28 +00:00
README.md Add example event listener on player_footstep. 2016-12-23 12:22:27 +00:00

README.md

cstrike-basehook-linux

Internal project base for Counter-Strike: Source on Linux. Includes full OpenGL ImGui rendering and input handling, a minimal Source SDK implementation, virtual hooking class and various other features for quick prototyping.

Features

  • Retrieves interfaces directly from the s_pInterfaceRegs linked list.
  • ImGui drawing and input handling via ILauncherMgr virtual hooks.
  • Engine drawing with ISurface functions via IEngineVGui::Paint hook.
  • IBaseClientDLL::CreateMove hook with CUserCmd checksum validation.
  • CInput and CGlobalVars pointers retrieved from IBaseClientDLL virtuals.
  • Can easily be unloaded, modified and reloaded without restarting the game.
  • Includes an example game event listener in a self-contained class.

Requirements

You will need cmake, a relatively up-to-date C++ compiler and 32-bit SDL2 headers.

If you are on a 64-bit system you may need to enable 32-bit repositories.

pacman -S cmake base-devel lib32-sdl2

Usage

After you have cloned or extracted an archive of the repository you can use cmake . to create a Makefile and make to build the shared library. When finished, load the output file into the game while it is running. Using gdb is recommended.

Press INSERT to toggle the configuration window.

Credits

Special thanks to luk1337 for the ImGui SDL2 input fix.