Spring Of Linux Games

take 10 minutes to read
Home Points Main article

The Steam Deck is the hottest gaming handheld in recent memory, released earlier this year by Steam's parent company Valve, and has been hard to find so far. After its official release, we can see from various review videos that the Steam Deck is doing quite well with games.

But did you know that Steam Deck uses a Linux-based operating system, but can run all kinds of Windows-based games thanks to a compatibility layer called Proton? Valve has open sourced this compatibility layer to the community, so let's take a look at this amazing compatibility layer under Linux and see how it performs in practice.

What is the nature of Proton?

Valve describes Proton in the Github open source home as follows.

Proton is a tool for use with the Steam client which allows games which are exclusive to Windows to run on the Linux operating system. It uses Wine to facilitate this.

A few things are revealed here: Proton is a tool used in Steam's client; its goal is to get Windows games to run on the Linux operating system; it uses Wine (red wine) to do so.

As we know, Wine is a well-established compatibility layer for running Windows applications on the Linux platform. Unlike virtual machines or emulators that virtualize/emulate the Windows runtime, Wine is mainly compatible with Windows applications by dynamically translating Windows system calls into POSIX system calls.

However, looking at Wine's supported applications database appdb.winehq.org, we see that Wine is currently less compatible with new games and applications. So it shows that Valve has done a lot of custom development based on Wine to get it to work well.

How to install Proton?

The Proton Github page explains in detail how to compile and even build a Docker container, and which directory to put the compiled product in. But then I read the Readme and realized that **we don't need to compile and install Proton ourselves, the Steam Linux client already comes with the tool.

Here's a hitch, the Linux client that Steam currently provides is 32-bit, and on my fresh install of Ubuntu 20.04, it doesn't double-click to install it. There are two ways to install it, either by enabling the multiverse repository and installing the steam packages there, or by enabling the i386 32-bit architecture support and then installing the Steam installer downloaded from the website. See the tutorial on this site for details.

Then, be patient when opening the Steam client for the first time, it needs to install a lot of updates, including the Proton tool, which also requires a good network environment, if the installation of updates does not succeed, try several times. Then in the menu bar Steam> Settings> Steam Play, check the "Enable Steam Play for supported titles" and "Enable Steam Play for all other titles" options, by default it will select "Proton Experimental" is the Proton version, it is recommended to manually select the latest stable branch version. You need to restart the Steam client after confirming to take effect.

How did Proton actually perform?

Since I'm using a few years old laptop with i5-5200U CPU + GeForce 840M GPU and formatted full disk with Ubuntu 20.04 for experimental testing, the gaming performance won't be very impressive, FYI.

After installing Proton and restarting the Steam client, the otherwise grey unclickable install button turns blue (INSTALL), and then after a long process of downloading and installing the game, it sees that exciting green button (PLAY). After clicking it, there is another long initial launch process, which I observed is installing "Microsoft DirectX for Windows" and "Vulkan", and doing "Processing Vulkan shaders". This process is also to ensure that the network is in good condition.

And then you can get into the game pretty smoothly, with no additional user installation configuration or anything at all, very hassle free. I briefly played Witcher III and the game locked at 30FPS with the game on low effects mode, and also managed to stabilize at 25FPS (top left corner). The smoothness is subjectively similar to what I remember when I was playing on this PC back in the day.

How is Proton's support for the game?

Like Wine, Proton has its own database of supported games protondb.com. The popular games available are rated above, and with the exception of games natively supported by Linux, games rated Platinum can be played without additional tweaking, games rated Gold need some tweaking to be played, and games rated Silver may be poorly rated.

So how do you tweak a game? In one of the games in the database, a click will reveal various comments from players, not the least of which is a comment from the gods that will report a mysterious string of startup parameters. For example, in the comments for the GTA5 game, the gods left the DXVK_ASYNC=1 WINE_FULLSCREEN_FSR=1 %command% string of cryptic parameters. We can click on the settings cog in the Steam game interface and fill in the mystery parameters in the general menu to the startup options as is.

Summary

If you happen to use a Linux computer on a daily basis for deep learning research and also have a small gaming need, I think Proton is just right for this group, without the need for an additional dual system installation and configuration.

"War Wolf" Screenwriter's New Book Creates A Female Version Of War Wolf: Film And Television Copyright Has Been Sold
« Prev 05-19
Ubisoft Official Announced That The Free Sports PVP Game "champion Sprint" Was Launched On May 25
Next » 05-19