--- title: "Running CS 1.6 on Windows 11 (Compatibility Fixes)" excerpt: "The launch options, compatibility settings and renderer changes that make a 20-year-old GoldSrc engine run cleanly on Windows 11." category: "client" tags: "windows-11, compatibility" image: "" read_time: "8 min read" ---
Counter-Strike 1.6 runs on Windows 11, but the GoldSrc engine predates every display and DPI convention modern Windows assumes. The result is a familiar set of glitches: a tiny window in the corner, black bars, an unmovable mouse, crashes on Alt-Tab, or a launch that dies before the menu. Almost all of them are fixed by a handful of launch options and compatibility flags. Here is the working set.
Right-click Counter-Strike in Steam → Properties → Launch Options, and start with:
-full -noforcemparms -noforcemaccel -noforcemspd -freq 144
-full forces fullscreen (use -windowed if you prefer a window, often more Alt-Tab-stable on Windows 11).-noforcem* options stop the engine overriding your Windows mouse settings.-freq sets the refresh rate to match your monitor (change 144 to your Hz). A wrong value here causes a black screen on launch, so match your display.If you get a black screen, remove -freq first — it is the usual culprit.
Modern Windows scaling shrinks old games or letterboxes them. Fix it on the executable, hl.exe in the Half-Life install folder. Right-click it → Properties → Compatibility → Change high DPI settings, then tick Override high DPI scaling behaviour and set scaling performed by Application. Back on the Compatibility tab, tick Disable fullscreen optimizations. These two together resolve the small-window, wrong-scale, and Alt-Tab-crash trio for most people.
In the game's Video options, GoldSrc offers OpenGL, Direct3D, and Software modes. On Windows 11:
You can force software mode from launch options with -soft to get into the menu when OpenGL will not start, then switch the renderer from there.
Some Windows 11 setups block the engine from writing its config or reading input properly under standard permissions. On hl.exe Compatibility tab, tick Run this program as an administrator. This also helps when settings will not save because the install lives under Program Files, which is write-protected.
If the game dies before the menu with a message like "Could not load library client" or a bare crash, the fix order is:
Windows protects C:\Program Files and Program Files (x86) with UAC virtualization, which can quietly redirect or block the writes GoldSrc makes to its own folder — config saves, downloaded content, screenshots. That is a frequent cause of settings that never persist and content that fails to download. If you keep hitting write problems, move the Steam library (and with it Counter-Strike) to a folder outside Program Files, for example D:\Games\Steam, using Steam's Add Library Folder and then Move install folder. An install on a plain, unprotected path behaves far better with a 20-year-old engine than one buried under Windows' protected directories, and it removes the need to run as administrator just to save a config.
While you are tidying, keep your personal settings in cstrike/userconfig.cfg rather than only config.cfg. The engine rewrites config.cfg on every exit, so a permission hiccup at shutdown can lose your edits; a hand-maintained userconfig.cfg you exec is the durable place for launch-critical settings.
-freq, or an OpenGL/driver problem. Remove -freq, try -soft to reach the menu, update the GPU driver.hl.exe.-windowed or a borderless window, and disable fullscreen optimizations.-noforcem* options and set m_rawinput 1 per the sensitivity guide.cstrike DLL is the cause.userconfig.cfg.Launch the game and confirm it opens fullscreen at the correct resolution and refresh rate with a normal-size, movable mouse. Alt-Tab out and back in — it should survive without crashing. Load a map to confirm the renderer is stable:
map de_dust2
If it renders cleanly and your mouse feels 1:1, the compatibility set is correct. If it still crashes on a freshly verified install with no launch options, the remaining suspects are the GPU driver and the VC++ redistributables rather than the game.