Had to install and activate DirectX 9 as previously explained on ProtonDB
You need a wine version which is the same as proton uses. This is hard to achieve. So we just use protons wine and not the one you may have installed on your system.
Save this script to a file, e.g. anno_directx9.sh
:
#!/bin/bash
# change this to where your steamapps folder resides
# important: no space before or after the equal sign!
STEAMAPPS_DIR="/home/nick/.local/share/Steam/steamapps"
# Only enter here your major and minor version of proton.
# E.g. if you use Proton 6.3-6, enter 6.3 here
# if you use Proton 4.11-13, enter 4.11 here
# basically enter everything until the hypen
# important: no space before or after the equal sign!
PROTON_VERSION="6.3"
WINEPREFIX="$STEAMAPPS_DIR/compatdata/33350/pfx/" "$STEAMAPPS_DIR/common/Proton $PROTON_VERSION/dist/bin/wine" "$STEAMAPPS_DIR/common/Anno 1404/DirectX/DXSETUP.exe"
- Replace the variables
STEAMAPPS_DIR
andPROTON_VERSION
to your environment. - Save the script
- Make it executable (
chmod +x anno_directx9.sh
) - Run the script (
./anno_directx9.sh
) - Click through the DirectX installation until it is done
Edit the file $STEAMAPPS_DIR/common/Anno\ 1404/Engine.ini
that it looks like this:
<InitFile>
<UbiSurveyTime>-1</UbiSurveyTime>
<UbiSurveyTimeStatus>2</UbiSurveyTimeStatus>
<DirectXVersion>9</DirectXVersion> <!-- This is the line you have to add -->
</InitFile>
Save the file.
Go to your anno 1404 and right click -> Properties... -> General
Enter as "Launch Options":
PROTON_USE_D9VK=1 PROTON_FORCE_LARGE_ADDRESS_AWARE=1 PROTON_NO_D3D11=1 %command%
After that close the settings window.
If the game starts and does work you can delete your script file anno_directx9.sh
.