Provides external turnbinds (+left/+right
) with customizable yawspeed for movement game modes in Source games.
This program aims to fill the gap created by Valve disabling access to the cl_yawspeed
, cl_anglespeedkey
convars in the most recent versions of Counter-Strike (CS:GO, CS2), forcing useless unchangable defaults.
These convars, which control the turning speed for the +left/+right
commands, are essential for movement game modes like surf.
Download and run turnbinds.exe
.
Settings are stored in <exe-name>.ini
.
- Esc/CTRL+C - quit
- Up/down arrows - navigate
- Return - rebind key/edit variable
- Left/right arrows - cycle between values/switch on/off
- cl_yawspeed - The desired turning speed
- sensitivity - Should match your in-game
sensitivity
value - cl_anglespeedkey - The factor by which cl_yawspeed is scaled while holding down the +speed key
- m_yaw - Should match your in-game
m_yaw
value
Each of these can have multiple values (space-delimited), which are cycleable while in-game by pressing the cycle key (less useful for m_yaw).
You can use this program in a number of different ways,
- cycle between multiple cl_yawspeed values while using cl_anglespeedkey as a constant "slowdown" factor (the more common approach)
- have a single sensible cl_yawspeed and cycle between multiple cl_anglespeedkey values
- cycle both cl_yawspeed and cl_anglespeedkey
Optionally, you'd might want to cycle between sensitivity values (increasing both cl_yawspeed and sensitivity for sharper turns).
In this case, the program's sensitivity and the in-game
sensitivity
need to be kept in sync. This is because the program is external to the game and cannot control your in-gamesensitivity
- sensitivity values in the program are only used to calculate the correct turning speed.You'd want to bind your cycle key in-game to cycle between your sensitivity values, and make sure the in-game
sensitivity
and the program's current sensitivity value are the same.So, for this config:
cycle : X1 Mouse Button cl_yawspeed : 120 [210] 300 sensitivity : 1.0 [2.0] 3.0Run the following in-game commands:
bind MOUSE4 "toggle sensitivity 1.0 2.0 3.0" sensitivity 2.0
Navigate down until the selector is hidden and press Return to enter developer mode.
- rate (default 1000) - maximum number of simulated mouse inputs per second, lower values decrease CPU usage in favor of turn smoothness
- sleep (default 3500) - main loop sleep duration (measured in 100ns units, 3500 = 0.35ms), higher values decrease input polling rate and overall CPU usage
The program does not patch or inject anything into the game.
Apart from simulating mouse input, it doesn't really do anything suspicious.
It would be fair to say it's as VAC bannable as an AutoHotkey script.
Standalone anti-cheat software (FACEIT AC, ...) can easily detect mouse movement simulation, and either prevent it or completely prevent the program from running.
To build into ./build
:
docker build . -o ./build --progress=plain