Skip to content

Instantly share code, notes, and snippets.

@niraami
Last active January 28, 2023 02:56
Show Gist options
  • Save niraami/bb81efbb1427e472f3f9cc024d1b59be to your computer and use it in GitHub Desktop.
Save niraami/bb81efbb1427e472f3f9cc024d1b59be to your computer and use it in GitHub Desktop.
Assetto Corsa Content Manager - Steam Proton Setup

Adapted from this guide, to be more accurate for (my) Arch Linux

Install AC from Steam

Force Proton compatibility version to 5.0-10 (right click Assetto Corsa in Steam library, select Properties..) and try to run the game - it will prompt you to install .NET 4.5.2, accept it. It will crash after that, that is to be expected. image

Run the wine configuration tool using that same version of Proton on the game's wine prefix:

WINEPREFIX=/home/$USER/.steam/steam/steamapps/compatdata/244210/pfx WINE=/home/user/.steam/steam/steamapps/common/Proton\ 5.0/dist/bin/wine winecfg

If you're getting the following error, shutdown and wait for Steam to fully exit and try the step above again

wine client error:0: version mismatch 621/755.
Your wineserver binary was not upgraded correctly,
or you have an older one somewhere in your PATH.
Or maybe the wrong wineserver is still running?

Install .NET 4.7.2 in the game's wine prefix (this still needs to be done on Proton 5.0, higher versions don't work yet)

protontricks 244210 -q dotnet472

If the installation isn't successful, then leave it be for now, and come back to it later after switching the proton version a few times, and restarting Steam. I could not find a consistent way of installing .NET from scratch...
Though it is only possible to install it with Proton 5.0, at least from my testing.

Download and extract the Assetto Corsa CM into your downloads directory, then copy it to the Assetto Corsa Steam folder as 'Content Manager Safe.exe'.
Why 'Safe'..? No clue, doubt it matters.

## They don't have a 'latest' link, so just download it manually:
## https://assettocorsa.club/content-manager.html

unzip ~/Downloads/Content\ Manager*.zip -d ~/Downloads
cp ~/Downloads/Content\ Manager.exe ~/.local/share/Steam/steamapps/common/assettocorsa/Content\ Manager\ Safe.exe

Optional cleanup:
rm ~/Downloads/{'Content Manager'*.{zip,exe},'ReadMe.txt'}

Create a Steam config directory in the game's Wine prefix and link the loginusers.vdf file from our host system to it

mkdir -p ~/.steam/steam/steamapps/compatdata/244210/pfx/drive_c/Program\ Files\ \(x86\)/Steam/config
ln -s ~/.steam/steam/config/loginusers.vdf ~/.steam/steam/steamapps/compatdata/244210/pfx/drive_c/Program\ Files\ \(x86\)/Steam/config/loginusers.vdf

Launch Steam again, and change the Proton compatibility version to 6.3-8 image

And then set the following game launch parameters: (do not run this command, it does not work standalone)

~/.steam/steam/steamapps/common/'Proton 6.3'/proton waitforexitandrun ~/.local/share/Steam/steamapps/common/assettocorsa/'Content Manager Safe.exe'; echo %command%

image

At this point, you can try to launch the game a few times while changing the Proton version and trying to install .NET if you weren't successful the first time

Now launch the game via Steam - this should open the Content Manager setup screen where you'll have to set the Assetto Corsa root folder to the following:

Z:\home\<USER>\.local\share\steam\steamapps\common\assettocorsa

ex.: Z:\home\niraami\.local\share\steam\steamapps\common\assettocorsa

Configure the rest of the CM options as you would normally.

It is quite possible that a window asking you to view or ignore some errors will appear, choose any option. AC Content Manager should launch after that.

Troubleshooting

dxvk::DxvkError

If it still doesn't not launch (while throwing a dxvk::DxvkError error - which can be seen if Steam is launched from a terminal), and you're using Nvidia, then check if you've got amdvlk installed (for some reason) and remove it

# Check
pacman -Qs vulkan

# Remove
pacman -Rns lib32-amdvlk
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment