I will admit I am truly surprised at how quickly people managed to find a way to run Halo: The Master Chief Collection on Linux with Steam Play.
343 Industries included an option to turn off Easy Anti-Cheat, to allow people to play single-player and mess around with modding which was the first thing needed to get it working on Linux. While Easy Anti-Cheat supports Linux, it does not work with Proton/Wine.
Sadly though, there was a major problem right at release—it required a login that didn't work with Proton/Wine. However, user LukasRuppert managed to find a workaround for that and posted it on GitHub (with updates after too). So it only took around 8 hours after launch and someone found a way to play Halo: The Master Chief Collection on Linux, simply amazing.
There's a caveat though, it probably will take multiple tries to login before it gets through. It goes without saying but I will anyway, use this at your own risk.
If you don't fancy messing around with building your own Wine with the linked patches, you don't have too. Proton GE already has a test build up on their GitHub. Download it, extract it and place the contents into:
~/.steam/root/compatibilitytools.d/
Restart Steam and then you will be able to select it by right clicking on the game, going to Properties and at the bottom you will see it:
Actually logging in really can take a while. Sometimes it will give a fatal error and need you to restart it, but eventually it should tell you login failed and allow you to hit retry until it works. Took me a good 5 minutes to get in, and even after that you then need to link up an Xbox Live account which also takes multiple tries (so make sure you have a password ready to copy/paste…).
Eventually though, you get in. After that, you can play the campaign and custom multiplayer modes (no matchmaking due to EAC). Here's a video I took earlier of it running on Manjaro Linux:
Direct Link
If you want all the details shown in the left HUD, use this as a launch command:
DXVK_HUD=full %command%
Performance is actually good, once you get past the usual shader compiling stutter and everything else works as expected. I didn't try messing with any VSync settings, which is why the gameplay is locked to 60FPS. Unless you're a Halo super-fan though, it might be better to wait for a less finicky fix. Hopefully a more complete solution will be worked on and make its way into the official Wine and Proton builds.
This is a great start and it's hard not to appreciate being able to play one of Microsoft's top new PC releases on Linux, that's pretty incredible really. Who would have thought 2-3 years ago, or even 1 year ago that this would be at all possible.
You can find the Halo: The Master Chief Collection on Steam here.
Update 13/12: The latest version of Steam Play Proton adds out of the box support.
Anyway, never played Halo in my life, so nostalgia for me to worry about.
Last edited by Ehvis on 4 December 2019 at 11:39 am UTC
Quoting: EhvisAnyway, never played Halo in my life, so nostalgia for me to worry about.
I only played the first one on PC back in the days and it looked outdated even then and controls were slow and unresponsive, story seemed to be nonexistent and it was really not fun to play.
So yeah no nostalgia for me either.
Rest of the games were mostly on consoles only is what i hear. Since i havent owned a console since the first NES, i havent even heard about the rest of the Halo games lol
Quote343 Industries included an option to turn off Easy Anti-CheatThat's something more companies could do. But hey, I think a whole year has passed since Valve announced they were working to get EAC working on Proton, am I right?
Quoting: gustavoyaraujoGetting EAC working with Proton/Wine is not an easy or quick task, it's still going to take a long time to get it right from what I understand. Work is ongoing though. Proton 4.11-1 released back in July did specifically note in the changelog about it too:Quote343 Industries included an option to turn off Easy Anti-CheatThat's something more companies could do. But hey, I think a whole year has passed since Valve announced they were working to get EAC working on Proton, am I right?
QuoteMany Wine modules are now built as Windows PE files instead of Linux libraries. As work in this area progresses, this will eventually help some DRM and anti-cheat systems. If you build Proton locally, you will likely need to re-create the Vagrant VM to build PE files.
TBH, I don't like any of these possibilities because this anticheat gets full access to your memory, processes and devices and can potentially steal passwords, keys and whatnot.
Quoting: rkfgI think the biggest issue with EAC is how intrusive it is. It clearly includes a kernel-level driver (I found issues describing BSoDs caused by EasyAntiCheat.sys) and Wine, being a userspace set of libraries, simply can't emulate kernel APIs because it would require root access and a kernel module. So Epic/Valve will either develop such a module and provide a way to build/load it from Steam (more likely) or drop the low-level part of anticheat which would make Linux a more preferable platform for cheaters (much less likely). Or maybe they'll find a middleground and do whatever's possible from userspace but with elevated privileges (access to /dev/mem, /dev/kmem and such).That's really a thing We should care about. But maybe Valve is planning to do this inside the Steam Linux Runtime. What you think?
TBH, I don't like any of these possibilities because this anticheat gets full access to your memory, processes and devices and can potentially steal passwords, keys and whatnot.
See more from me