Steam proton: Difference between revisions
Line 38: | Line 38: | ||
= Install = | = Install = | ||
<blockquote> | |||
== Proton (official) == | |||
<blockquote> | <blockquote> | ||
Steam proton is a wrapper built around wine.<br> | Steam proton is a wrapper built around wine.<br> | ||
Line 58: | Line 60: | ||
Now search the [https://www.protondb.com/ protondb] for your game for additional hacks that may be necessary. | Now search the [https://www.protondb.com/ protondb] for your game for additional hacks that may be necessary. | ||
</blockquote><!-- Proton (official) --> | |||
== Proton-GE == | |||
<blockquote> | |||
An unofficial patched proton with extra features. | |||
<syntaxhighlight lang="bash"> | |||
aura -A proton-ge-custom-bin | |||
</syntaxhighlight> | |||
</blockquote><!-- Proton-GE --> | |||
</blockquote><!-- Install --> | </blockquote><!-- Install --> | ||
Revision as of 04:20, 12 November 2021
Steam Proton wraps wine with the goal of running windows games on linux.
Documentation
proton db https://www.protondb.com/explore
Locations
~/.local/share/Steam
default ${STEAM_DOWNLOAD_DIR}
~/.local/share/Steam/steamapps/common/*
default game install dirs ${STEAM_DOWNLOAD_DIR}/steamapps/compatdata/${APPID}/pfx
wine prefix for game (game saves, settings, etc here) Z:\home\will\.local\share\Steam\steamapps\common\*
games mounted from linux filesystem on Z: drive
Tools
wine wine protontricks winetricks for proton wine prefixes protonhax load multiple wine apps in same wineprefix (ex: cheat engine alongside game)
Install
Proton (official)
Steam proton is a wrapper built around wine.
It enables you to play unported windows games on linux.FileMenu > Settings: - Account Tab: - Beta Participation: CHANGE - Beta participation: Steam Beta Update Restart Steam FileMenu > Settings: - Steam Play: - [x] Enable Steam Play for supported titles - [x] Enable Steam Play for All titles - Choose latest beta versionNow search the protondb for your game for additional hacks that may be necessary.
Proton-GE
An unofficial patched proton with extra features.
aura -A proton-ge-custom-bin
Usage
# use 'protontricks' to identify your game's ID protontricks -s 'Elite' # run regular wine commands within prefix WINEPREFIX=~/.steam/steam/steamapps/compatdata/${APPID}/pfx/ \ wineconsole cmdI've been experimenting with overlayfs and bootscripts for mods.
If installing a mod that requires patching files in-place, mount your game and run installer from cmd.exe.
Controllers
DirectInput API
You may need to disable the wine controller driver for the game to work.
NOTE:
did not work for me, but both the stock
xpad
andxpadneo
drivers both worked fine.WINEPREFIX=~/.steam/steam/steamapps/compatdata/335300/pfx/ \ wine controlGame Controllers: Connected: - (choose your controller, and disable)Input should now come from linux, rather than be re-interpreted in wine.
Microsoft Xinput
should be fine once controller-type selected/enabled in steam settings.
Triple-Monitor Gaming
1. [nvidia] 3x monitors as 1x screen, restart Xorg
DisablenvidiaXineramaInfo
inxorg.conf
,
and restart your Display Manager (to restart Xorg with new options).# /etc/X11/xorg.conf Section "Screen" Option "nvidiaXineramaInfo" "Off" EndSectionsudo systemctl restart lxdm.service
2. Share monitor resolution on all screens
# something like this xrandr \ --output DP-2 --left-of HDMI-1 --mode 1920x1080 \ --output HDMI-1 --mode 1920x1080 \ --output USB-C-0 --right-of HDMI-1 --mode 1920x1080
3. Configure game
The configuration will likely be different from windows, even when native.
You may need an ini tweak, it may magically work, etc.Here are some games I have been able to make work with 3x monitors.
The easiest workflow is to symlink the used
xorg.conf
, and have 2x configurations available.
Restart your Display Manager to restart Xorg and re-login to your new configuration.
Mods
- Install supplementary tools into the same wine prefix, identified by protontricks (TODO)
- Game executable versions can be obtained with pev
peres -v game.exe | grep 'File Version'
- Use the steam ui#Disable Updates tricks to lock updates until you are ready
- Consider using overlayfs for mods, or for evaluating game versions
Debugging
Enable Logging
rclick game: - properties: - general: - LAUNCH OPTIONS: PROTON_LOG=1 %command%Logs will be written to
~/steam-*.log
cd ~/.local/share/Steam/steamapps/common/Proton X.XX cp user_settings.sample.py user_settings.py # run game # see crash log in ~/steam-XXXXXX.log