ELI5: What causes a Steam game not to run on an operating system like a Linux distro?
ELI5: What causes a Steam game not to run on an operating system like a Linux distro?
I primarily use my pc for gaming, and want to avoid upgrading to Windows 11. Beginning the journey of looking into alternatives.
I am ignorant, trying to be less so. I have a hard time understanding what exactly makes a game not work just because of OS.
Put simply, it's like a translator that knows many of the languages Windows will speak. However, it's not always fluent in every language it might speak. This is what proton does, it translates system calls into Linux, essentially. It almost always will work, specially with Steam games.
In other cases, it's game devs making desicisons to disallow use of Linux. Specifically anti cheat. Not all anticheat is disallowed, but game devs could allow it. They just choose not too.
Most games will run just fine on Linux. I've switched entirely to Linux and said goodbye to those few online anitcheat games that disallow. Most everything works.
Also to add to this is if windows users understood what kernel level anti-cheat does most people wouldn't want it on windows ether.
What does it do? Could you explain?
Very accurate comment, and to expand on this, things like media codecs, windows dependencies, etc also cause problems. Luckily Proton can play just about any game on Steam.
For example, Marvel Rivals is a new game that just came out and its anti-cheat works with Linux. I play it with ProtonGE, which installs extra codecs that regular proton versions don't include and it works awesome.
Check out protondb.com to search what specific games work for others on linux.
Does Steam ever deliver Linux-native builds instead of running games through Proton?
To expand on the translation metaphor:
Trying to run a window program on Linux (without proton) is like trying to read a completely alien text. Your have basically 0 in common and no way to understand it
Proton is doing the translator job of helping. And it's doing a great job for a lot of the alien language. Which is why so many programs and games work on Linux with proton
But even it can't always be perfect, and if the language is using some weird dialect, it might not understand or misinterpret things, which causes games to be buggy or unplayable on Linux