Warning: Changing the executable could get you banned in online games.

There are many reasons why you would want to change the executable that is used to launch a game under Steam. You might want to use a different launcher. Specifically for MODs you might want to launch an alternate launcher or you need a pateched executable.

Warning: Be carefuly with any executable you download. If you do not trust the source, don’t use it.

A good way to do all those things on your SteamDeck is to install SteamLink on your desktop or attach mouse and keyboard to our SteamDeck.

Go to the game in the steam client. There should be a cogwheel at the right. Click on it and select Properties. On the General you will find the Launch Options. These usually are there to add options to the game file, .e.g. ‘-console’ to activate a console in a game that supports that. There is also a hidden option. You can use %comman% to get the actual command. That is useful if you want to execute something before the game binary.

Figure out the contents of %command%#

The contents of %command% is <path to game>/<game executable>. If you want to make absolutely sure that this is the case, read on. Else jump to the next headline.

Set the following launch option:

eval $(echo "%command%" | tee $HOME/gamelaunch.txt)

Now launch the game. This will create a file gamelaunch.txt in your user directory. On SteamDeck that would be /home/deck/gamelaunch.txt. You can then close the game and check the contents of the file.

Replace the executed file#

To replace the executable in the %command% you can do something like this:

eval $(echo "%command%" | sed 's/<string>/<replacement>/')

The sed command basically does a search and replace in %command%

  • string: Is the stringthat will be replaced. Important: Make sure this string is only once in %command%. Only the first time it shows up it will be replaced. So be precise.
  • replacement: Is the string it will be replaced with.

As an example. If you want to start Elden Ring without the anti cheat on. The contents of %command% would be /home/deck/.local/share/Steam/steamapps/common/ELDEN RING/Game/start_protected_game.exe In the same directory there is an executable eldenring.exe which would start the game without anti cheat. Which means we want to replace start_protected_game with eldenring. The command we need to put into the launch options is:

eval $(echo "%command%" | sed 's/start_protected_game/eldenring/')