Guide
Half the compatibility reports on the internet end with “just add this launch option” — and half of those are cargo-culted strings nobody can explain. Here’s how launch options actually work, the one mistake that silently disables them, and a shortlist that’s genuinely useful.
Last fact-checked 2026-07-03
A Steam launch option line (game → Properties → General → Launch Options) follows one pattern:
[environment variables] [wrappers] %command% [game arguments]
NAME=value pairs that configure Proton, the graphics stack, or drivers. They go first. Example: PROTON_LOG=1 or DXVK_HUD=fps.mangohud, gamemoderun, gamescope. A wrapper’s own flags go right after it.%command% — the placeholder Steam replaces with the game’s real command line. Type it exactly once, exactly like that.%command%. Example: -dx11 or -windowed.A complete line using every slot:
PROTON_LOG=1 mangohud %command% -dx11
If you only use game arguments, you don’t need %command% at all — -dx11 alone works. The moment an env var or wrapper is involved, %command% becomes mandatory so Steam knows where the real command goes.
Never write %command% twice. Everything after the first one is handed to the game as arguments, so in a line like this:
MY_VAR=1 %command% gamemoderun %command%
…the second half is junk passed to the game and silently ignored (or worse, misread). If you’re combining options from two different reports, merge them into one line: env vars together up front, wrappers next, one %command%, game args last.
| Option | What it does |
|---|---|
| PROTON_LOG=1 %command% | Writes a Proton debug log to ~/steam-<AppID>.log — the first thing to attach when reporting a broken game. |
| mangohud %command% | FPS/frametime/CPU/GPU overlay (MangoHud). Some titles need mangohud --dlsym %command%. |
| gamemoderun %command% | Feral GameMode: temporarily switches CPU governor and priorities to performance while the game runs. (CachyOS ships an equivalent game-performance wrapper; don’t run either together with ananicy-cpp — they fight over process priorities.) |
| DXVK_HUD=fps %command% | Minimal FPS counter from DXVK itself — no extra software needed. |
| gamescope -W 2560 -H 1440 -F fsr -- %command% | Runs the game inside Valve’s gamescope compositor — fixes stubborn fullscreen/resolution problems and adds FSR upscaling on desktop. |
| %command% -dx11 | A game argument, not a Proton one: many titles accept renderer flags like -dx11 when their DX12 path misbehaves. Game-specific — check its own docs. |
Launch options execute with your user account’s permissions. A malicious “fix” can hide anything in a wrapper or env var, so don’t paste strings you can’t read from people you don’t trust. This is also why Protondex reports don’t just collect a raw string: contributors categorize each option — required to launch, performance/stability, hardware-specific, or personal preference — and say what breaks without it. An option nobody can explain is an option you can skip.
Usually: no. Start with none. If a game misbehaves, check its Protondex page for reports from a setup like yours — a different Proton version fixes more games than any launch option does. When an option did make the difference on your machine, put it in a report with the category and what broke without it — that’s what turns a magic string into an answer.