Cities: Skylines II – How to Skip Paradox Launcher on Linux

This is how to go straight from Steam to playing the game in one simple step.

The Trick

The usual method of skipping the Paradox Launcher we know from Cities: Skylines 1 and other Paradox games – putting “<path to executable> %command%” in the launch options – doesn’t work with Proton.

You can use this command instead:

eval $( echo "%command%" | sed -E "s#Launcher/dowser.exe#Cities2.exe#g" )

How?

  1. Right click Cities: Skylines 2 in your Steam library, and select Properties
  2. In the “General” section, at the bottom, under “Launch Options”, paste the aforementioned command
  3. Hit Play!

How It Works

When Steam runs a game using Proton, the compatibility layer commands become part of the game’s command line. For me, it looks something like this:

/home/outfrost/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=949230 -- /home/outfrost/.local/share/Steam/ubuntu12_32/steam-launch-wrapper -- '/home/outfrost/.local/share/Steam/steamapps/common/SteamLinuxRuntime_sniper'/_v2-entry-point --verb=waitforexitandrun -- '/storage/warehouse/outfrost/Steam/steamapps/common/Proton - Experimental'/proton waitforexitandrun  '/storage/warehouse/outfrost/Steam/steamapps/common/Cities Skylines II/Launcher/dowser.exe'

We can’t just replace the whole command with the path to the game, since that won’t invoke Proton properly.

Instead, we take the whole command line text (%command%), and filter it through sed to replace “Launcher/dowser.exe” with “Cities2.exe” in the command line text. Then, we use eval to execute the resulting text as a command.

The command Steam ends up running, on my machine, looks something like this:

/home/outfrost/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=949230 -- /home/outfrost/.local/share/Steam/ubuntu12_32/steam-launch-wrapper -- '/home/outfrost/.local/share/Steam/steamapps/common/SteamLinuxRuntime_sniper'/_v2-entry-point --verb=waitforexitandrun -- '/storage/warehouse/outfrost/Steam/steamapps/common/Proton - Experimental'/proton waitforexitandrun  '/storage/warehouse/outfrost/Steam/steamapps/common/Cities Skylines II/Cities2.exe'

If you want to see what your full command looks like, you can change the launch options to:

eval $( echo "%command%" | sed -E "s#Launcher/dowser.exe#Cities2.exe#g" | tee ~/cities2_cmd.txt )

And then open the file cities2_cmd.txt in your home directory.

Created by Outfrost

Be the first to comment

Leave a Reply

Your email address will not be published.


*