Proton: The Native Port Killer?

supraland

The thrill surrounding the announcement of Street Fighter V coming to Linux was real. It was a few years after SteamOS was announced. After years of silence, fans started to doubt that this was becoming a reality. It wasn’t until two years after the initial release of Proton that Valve started to work with Capcom to try and make the Windows version compatible with Linux. Some people are still salty that it took this long to get here, and even more upset that this isn’t a native port. On the other hand, fans like myself are pleased that Valve/Capcom held to their word, even though they may have compromised a bit by making it Proton-compatible.

Street Fighter 5 Made it to Linux in an unexpected way... with Proton

The same goes for Rocket League. End-users like myself naturally get upset when delays happen, even though we don’t understand what it’s like to be on the developer’s side. Several months came and went after the original announcement, and finally the Mac and Linux versions of the game went live on Steam. Fast forward a few years later, and Psyonix decides to drop the ball for said versions, leaving it up to Proton to pick up the slack on Linux and bootcamp for Mac OS. Don’t even get me started on the fact that they basically abandoned support on Steam altogether in favor of the Epic Crap Store.

One last example. Take Supraland, a 3D RPG that combines elements from Zelda, Metroid, and Portal. There were Windows, Mac, and Linux versions available at one point. Then a Linux user ran into a crash when trying to run the game. The developer is quoted as saying:

I know nothing about linux, I only know that everyone says it works perfect with Proton and also runs much smoother.

He further goes on to say, after receiving a second crash report:

I have no idea what to do with that and I couldn’t change anything about it. I just click “package for linux” and the engine [Unreal] does its thing. Maybe I should not release for Linux at all, if the windows version works better under Linux anyway. And it’s less work.

And sure enough, shortly thereafter Linux support gets dropped, although it’s still technically there on the testing branch for legacy support. The game seems to work better on Proton.

Many of us, to this day, are amazed at the work Valve and its partners have done to make Proton work so seamlessly on Steam during the two years it’s been around. Who would’ve thought you could download, install, and run a Windows-only game on a Linux machine just like you were running the game on Windows, without any extra steps or software to download? To be able to play Windows games without having to resort to Windows itself? Many titles work out of the box, with little or no configuration needed. Other games may need a couple of launch parameters, renaming some of the video files so they don’t play and break Proton, need a specific fork of Proton like Proton GE, or need Protontricks to get audio working. But those steps are fairly straightforward, and some may even find it a joy to figure out why their game isn’t working and what they can do to fix it.

Really, the only obstacles that hinder Proton from being able to play a game, as far as I’m aware, is:

  • Epic’s EasyAntiCheat (EAC) service, which, unfortunately, a lot of popular online multiplayer games use, including Fall Guys
  • Certain games that use DirectX12. GRID (2019) was unplayable prior to Proton 5.13-1 unless the user forced the game to use DX11. Now that Proton 5.13 has baked in the latest version of vkd3d-proton, DX12 support has now been added, and for all I know, that could mean most DX12 games work now
  • Games that play video files. Again, Proton 5.13 comes to the rescue by adding initial support for these files, although other titles still cannot be played, such as Her Story
fall guys, not working anymore on proton because of anti-cheat

For now, this where a native title would come in handy. Other than that, once Proton gets the necessary updates, I really don’t see any benefit of playing a native game versus a game run through Proton.

We’ve seen EAC temporarily see the light of day; Fortnite itself was playable for a short time. However, an update to EAC broke Proton compatibility once more. Though, we’ve seen a few games that offer the ability to disable EAC, such as Halo: The Master Chief Collection.

With the advent of Proton, I’m no longer begging the developer of a game to add support for penguins. Of course, we would all prefer to have a native version to be able to play, but playing a game through Proton provides the same experience. I really don’t mind the fact that I’m playing a game through a compatibility layer. Heck, a lot of the time the game simply runs faster, more smoothly, on Proton versus a native Linux experience. Hell, in some instances games run just a wee bit faster on Proton than on Windows itself!

Some folks still prefer the “No Tux, no Bux” approach. I can only feel sorry for them; as Proton is on the rise, the number of native titles seem to decrease, as shown in the chart below. I would cringe if I had only a few games in my Steam library available to play, which was why I was using Windows/Switch for a while until Proton came around. Two or three people boycotting Windows games, I tell you, is very much going to hurt developers (sarcasm intended).

Data courtesy of Nik Davis

As you can see here, the peak number of native titles for Linux on Steam was in late 2017. This number seems to have decreased a few months prior to the initial release of Proton, and that number only continued to decrease after that release. Bear in mind, too, that this only goes partway to 2019. I wouldn’t be surprised if there were even less native titles today.

So it seems like a win-win situation. As end users, we’re satisfied (most of us, anyway) because we don’t have to wait a year or two for the promised Linux version of a crowdfunded game to show up after the Windows release; for the most part we can start playing the game on Linux right away thanks to Proton. And for game developers, Proton has allowed their lives to be easier, since if they don’t want to include native Linux support, they can usually rely on Proton to get things done. It’s one less port that they have to worry about and have support for. Often times too, the developer doesn’t know much about how Linux works anyway — as demonstrated by the developer of Supraland — as Linux on the desktop is still very niche, and porting would likely require a significant amount of education (and money!) as to how Linux works (unless they’re using an engine that offers one-click support for different operating systems). And still, after all that, because we represent less than 1% of the market, sales would be insignificant. In the end I can understand why a developer would not want to take the time to port their game to Linux.

Store Fronts Galore

It seems like a lot of game store fronts for the desktop have popped up in the last couple of years: the Epic Games Store, Battle.NET, Bethesda, Uplay, Origin, etc. (some of these have been around for a while, but you get what I mean). This isn’t just a headache for us Linux users: Windows users have it bad too, because they have to launch a separate launcher to launch their game. At any rate, none of the launchers other than Steam have Linux functionality. This is where something like Lutris comes in; a launcher for your launcher to launch your game (have I given you a headache yet?). And Lutris uses the power of Wine/Proton to get those launchers to work. Obviously, if the launchers don’t support Linux, neither will any of the games they host. So again, this is where Proton and Lutris comes in handy. Who would’ve thought you could play Overwatch on Linux?

Overwatch works on Linux with Proton via Lutris

Understandably, however, these store clients may suddenly get an update that breaks Proton compatibility. In the end, though, Wine/Proton is pretty much the only thing we can rely on, as I doubt any of the developers of these clients will consider supporting something other than Windows. GOG announced six years ago that they were planning on bringing their Galaxy client to Linux. Nothing has showed up since then, and we have had to rely on unofficial, third-party resources like Minigalaxy to manage our DRM-free games in an organized fashion, or run Galaxy via Lutris.

It’s All Good, Right?

There’s always two sides of the coin. Proton has left developers who were once actively porting to Linux in the dark. A good example of this is the interview we had with Ethan Lee back in May. Author of the FNA project and the man behind quite a few Linux ports, including Transistor and Fez, he’s got a lot to say about how much Proton has affected his porting career:

It’s deeply troubling. Any developer who says otherwise knows they’re full of it and they’re just not ready to admit it yet. The short version: Watching the “this is fine” comic happen in real time with so many people has just been exhausting.

I encourage you to read the entire interview to get a better perspective of his situation. But essentially, because of Proton, he is no longer hired as frequently as he once was to help bring games natively to our platform. Now he has to look elsewhere, like porting games to the Nintendo Switch and to Google Stadia, to take care of himself.

When was the last time we heard from Feral Interactive, who many of us refer to as the “big daddy” of the Linux frontier? I haven’t heard anything from them in a while, at least on the Linux front. They’re still around porting titles to the Switch, iOS, Android, and to Mac OS, but, last time I checked, their last Linux port was Shadow of the Tomb Raider back in 2018. And with Apple moving their desktop lineup to the ARM architecture in a few years, I seriously wonder if they’ll even bother converting their algorithm or whatever program they use to convert games into an ARM format. (Will we even see Steam for ARM on Mac?)

Well, actually if we go to their “upcoming” radar, it seems Total War Saga: TROY seems to have a spot in the “Quite soon” category. But that seems to be about it for now. If anything, they certainly have a lot less porting tasks for Linux since Proton has been around. Whether that has financially hurt them or not, that obviously we don’t know, but I imagine it has to be a bit worrying.

So what’s the takeaway here? Proton has definitely been a blessing for us; there’s so many games out there that now work on Linux that would have taken so much more time, effort, and money if they had been ported manually. And a nice bonus is that, in many cases, running the game through Proton results in better performance in contrast to a native port — which, for all we know, might not even be native; it could be using a wrapper for example.

But because of this, Linux developers have been forced to move away and focus on other platforms. If this bothers you, support the developers by other means. Think of Ethan Lee, Cheese, Virtual Programming, Aspyr. If you’re buying a game that has been ported from Feral, buy the game from their website rather than on Steam itself. If the game you buy isn’t available on Linux, buy it on Linux anyway. That way, the developers can get a glimpse at where their sales are coming from.

It’s not likely that the sale numbers will cause them to add support for the penguins, but a nice bonus you’ll get is the game will work on Proton in most cases.

3.9 16 votes
Article Rating
cow_killer

cow_killer

Subscribe
Notify of
guest
15 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Jaime Antonio González

Total War Saga: TROY is 1-year exclusive to the Epic Crap Store so probably the Linux port will be available when it hits Steam.

Proton has decreased the number of native titles (mostly indies tbh) but has enabled us to play more AAA games which previously we couldn’t.

Until we get a bigger market share, that’s a good tradeoff.

Ekianjo

Yeah, I agree. I also can only count on one hand the number of really good AAA ports on Linux (as in, technically sound), so Proton has made things better performance-wise as well.

Maxi

Another benefit from using Proton: You don’t have to fiddle with the compatibility mess of Linux libs. Older Linux ports tend to stop working because they are somehow written to work with system libs or runtime libs (like in Steam’s “Ubuntu”-libs when not using native libs) which often break over the years. Sadly, using binaries targeting Windows, you get a better backwards compatibility.
But it comes with a caveat: Oracle’s trial versus Google resulting in API patents could endanger the whole commercial Proton/Steam story.

Ekianjo

Are there such games that stopped working because of older Linux libs? I can’t remember seeing any in my own Steam Linux library.

Patola

A lot. One good example are the anomaly series, which stopped working due to a change in glibc 2.20. BTW, Steam also has something to help with that, the “Steam Linux Runtime” compatibility option, which works just like proton — it makes the native game work with older libraries, and there’s even a newer version called “Steam Linux Runtime Soldier”. Regretfully, none of those work with Anomaly.

leillo1975

About GRID, the performance in DX12 mode (VKD3d) is significantly worse than with DXVK.

I think that VKD3D needs more development to be a good alternative

Ekianjo

VK3D is still young compared to DXVK, things will probably improve over time.

Michael B

I’m 100% okay with this happening. Using the developer you mention in the article as an example, they said clearly that they know nothing about Linux and all they do is “click package for Linux”. Now while I do find it weird that someone who programs in C/C++ or other similar video game language doesn’t know at least a little bit of Linux or bother to create a small partition on their hard drive to test it out and play around with Ubuntu, I would rather that developer to put an effort into making sure their game is compatible with… Read more »

Ekianjo

I think the number of people dual-booting on Linux may have dropped at the same time as Proton took off.

DMG

I’m really happy, that proton came to Linux. Because ported games usually, from my experience, works worse, that proton version. Ported versions usually are not up to date. And even, when ported still tested only on one distribution and does not work on other. For example Total War: WARHAMMER II, which is ported by Feral. At some point it just stopped to work for me. Constantly crashed in certain points. Reinstalling the game did not help. I reached feral about this and they answer was short: “We are not supporting Linux Mint and can’t investigate this issue”. I switched to… Read more »

Last edited 1 month ago by DMG
PublicLewdness

This is a really poor article. If you don’t care about whether Proton has a negative effect on native Linux games then why do this at all ? Furthermore why do you care whether people want native games ? Linux gaming needs more people period yet you whine about those who prefer native. Would you prefer they stop gaming on Linux at all ? This website has been going downhill for a while now.

Ekianjo

Not the author but let me share my views. > If you don’t care about whether Proton has a negative effect on native Linux games then why do this at all ? Because every change in the environment brings potential drawbacks. It’s been pretty clear in the article that we don’t care per se that native games are gone, but the fact that people who were active in porting games to Linux are losing their livelihood is concerning nonetheless. This is the point and this is why we interviewed Ethan Lee a few months back as well. > Linux gaming… Read more »

Todd

On a daily basis, I end up reaching out to a lot of game developers. Asking for a port and hopefully providing some solid incentive to issue a native Linux build. But over this past year or so, more and more developers are either avoiding Linux support. Largely due to the small market share and costs to maintain builds. Or they are looking at Proton/Steam Play as their means to a port. Actually, it used to be that 7 out of 10 developers, when requested, would port to Linux. Now it’s more like 5 developers or less out of that… Read more »

Sargent_D

I’m a bit late to this discussion, but I think Proton won’t spell the end for Feral. Feral can branch out to providing porting support to developers for Proton, such as testing and patching the games for better Proton support while also providing an option for developers to make native ports if needed, perhaps based on performance evaluations.

Ekianjo

Feral’s overall business was not tied to Linux in the first place so i don’t think it would spell the end for them anyway.

However doing Proton support would strike me as odd since codeweavers is in a better place to do that and they recently launched PortJump which seems pretty cheap.