Games

How Valve’s Long-Standing Embrace of Linux Is Helping Games Run Better

Coding wizardry is what happens when 'Elden Ring' on a Steam Deck can run better on Linux than Windows.
A photo of the Steam Deck.
Image courtesy of Valve

The Steam Deck is an impressive piece of hardware, a gaming laptop in a functional and enjoyable portable form, but it’s not a high-end PC, and it wouldn’t be shocking that many modern games would struggle to run on it. It was surprising, then, to learn that not only did Elden Ring run pretty well on the Steam Deck right out of the box, but Valve had been personally working on optimizing Elden Ring for the Steam Deck, helping it run even better.

Advertisement

This wasn’t a patch issued by developer FromSoftware, specifically targeting Steam Deck, nor did FromSoftware explicitly built a port of Elden Ring for Steam Deck, the way we’re used to (see: port begging related to the announcement of any exclusive). The game just runs. And here, It’s not “fixing” the code in Elden Ring so much as Valve doing sorcery.

“Proton running on SteamOS together make up the full array of software running underneath a game,” said Valve developer Pierre-Loup Griffais to Waypoint, “which means that by definition we have access to not only the entire underlying operating system but also its graphics APIs and driver subsystems. That access gives us more opportunity to optimize the game experience than if we were responsible for a single component and reliant on vendors for the other pieces.”

That’s a lot of complicated jargon, so let’s run that through a translation tool for a second. 

Proton: What’s called a “compatibility layer,” allowing a game for Windows to run on Steam Deck, which is built on an alternate operating system (OS) called SteamOS. Proton interprets Windows code, and lets it be translated and run on Proton. Valve controls Proton.
SteamOS: Valve’s custom OS, based on the open source OS Linux. Chances are you’re reading this article on a computer OS (Windows/macOS) or phone OS (iOS/Android). The OS does a lot of things, but most simplistically, it’s how you interact with a computing device.
Graphic APIs and Driver Subsystems: The underlying technology that helps render computer games on your screen, Steam Deck or otherwise, and runs a game’s code.

Advertisement

FromSoftware doesn’t have a great track record when it comes to optimization and performance. While some people are vaulting through hoops to make Elden Ring run as fast as possible, series veterans remember slowly rolling through Blighttown in Dark Souls, one frame at a time

Because Valve controls the technology pipeline for Steam Deck and SteamOS, Griffais pointed out that it didn’t have to wait for anyone to optimize Elden Ring for its architecture. If the game was running on Windows, Valve would be forced to wait on third party companies. 

In theory, any optimization FromSoftware does to Elden Ring in the future will only benefit what Valve is doing on top of FromSoftware’s work. 

Griffais said Valve is working on more Elden Ring optimizations, and considers its ability to target and optimize games to be “an inherent part of the Steam Deck's value proposition.”

Valve’s embrace of Linux started a long time ago, and the company even ported a number of its games to Linux. What’s interesting is that Valve doesn’t always recommend the Linux-native versions of its own games, instead telling players to use the ones that run through the Proton filter. The translation tool is more powerful than the native code—in its current form, anyway.  

Advertisement

“We don’t necessarily recommend players playing Proton versions over Linux,” said Griffais. “Our compatibility testing is agnostic, and only recommends what works best. If a title has a Linux build, we test that first, and only if we find that it has issues do we test the Windows build through Proton to see if that fares better.”

Steam Deck can run Windows, and Valve even encourages people to install Windows in order to play games like Destiny 2, but SteamOS and Proton are Linux-based because they’re open sourced and because Valve can control every piece of the assembly line.

“Shipping a different OS than our own would mean that we would be reliant on other parties for driver updates or bug fixes, with different priorities than our own,” said Griffais. “That said, Steam Deck is a PC and other OSes can definitely be installed should the user want to go down that route.”

There’s nothing stopping you from running Elden Ring on a Steam Deck on a Windows installation, but because it’s not through Proton/SteamOS, you miss those improvements.

Proton does such a good job (most of the time) that while a native Linux version could, in theory, perform better, Proton being “good enough” probably means a lot of developers won’t bother. Just recently, I played through a good chunk of the very cute Tunic on my Steam Deck, a game that had not yet been tested by Valve because I was playing it before the game was even out. There is no native Linux version of Tunic, and yet it ran completely fine! 

“In the long term, there may be more reasons to build Linux-native versions of games,” said Griffais, “but we’re working hard now on making Proton as performant and complete as possible so that game developers can have faith that relying on it will provide a great experience for their players.”

Follow Patrick on Twitter. His email is patrick.klepek@vice.com, and available privately on Signal (224-707-1561).