While previously you've been able to play League of Legends on Linux, and there's some pretty die-hard fans using Wine to play it, that's set to end soon with Vanguard being introduced.
Cheating in online games is a constant battle for game developers, so I certainly appreciate it's a difficult subject to approach. Developers want players to have the easiest time getting into the game, that's obvious, but with so many cheats out there it's a difficult balancing act. They stated that "as many as 1 in 15 games globally has had a scripter or botter in it, but in some regions, this number is as high as 1 in 5" which is pretty problematic.
For those curious on their thoughts about Linux, and people playing LoL on Linux going forward they said this:
Q: What about Linux?
We've never officially supported Linux, and it's true that the current Lutris-based implementation for League (that uses wine) will not be able to satisfy the Vanguard driver requirements. Linux does not currently afford us sufficient ability to attest boot state or kernel modules, and the difficulty in securing it is only compounded by all the frustrating differences between distributions. Even allowing emulation is an exceptionally dangerous game, as many cheats could then just run on the host, manipulating or analyzing the VM in a way that would be invisible to Vanguard within it.
Half of anti-cheat is making sure the environment hasn't been tampered with, and this is extremely hard on Linux by design. Any backdoors we leave open for it are ones developers will immediately leverage for cheats, and yesterday, there were just over 800 Linux users on League. We have evaluated this risk to not be worth the payoff.
And about having it be open source:
Q: Why not open source the driver?
Anti-cheat is an iterative, indefinite battle. Many of the preventative checks that Vanguard makes to ensure system integrity are deliberately stealthy, bleeding-edge, and in some cases, built on total pillars of sand. We benefit extensively from the confusion that the system inflicts on cheaters, and letting them simply browse the detection methods would exhaust our supply faster than we could invent new ones. An open source anti-cheat application would be totally useless (April Fools 2021).
So there you have it, you simply won't be able to play it on Linux with the introduction of Vanguard. We already knew this but at least they're trying to give more detailed explanations.
See their full blog post on the LoL website which goes into plenty more detail on their struggle against cheaters.
Quoting: MarrondSo let me get this straight... MILLIONS of people are playing League of Legends and between 1/5 to 1/15 depending on the region is cheating. By their own admission they say Linux playerbase is tiny. They basically say ALL of the cheating is happening on Windows where allegedly Vanguard works better. Sorry, am I missing something here or it's just blatant bullshit talk?To be fair, this is a game that does not officially run on Linux in the first place. Some people manage to run it on Linux, but it's not like they ever supported that. So now they have what they see as a crisis on the OS they do support, Windows, and so they're introducing a solution they imagine will help solve that crisis on Windows, and if that causes collateral damage to a platform they don't support that they have no real reason to consider important, we cannot really expect them to care.
The solution they're introducing for Windows is bad and dangerous and will probably not help solve their problem anyway, but that's a different issue.
Last edited by kaktuspalme on 13 April 2024 at 6:57 am UTC
Quoting: Purple Library GuySo now they have what they see as a crisis on the OS they do support, Windows, and so they're introducing a solution they imagine will help solve that crisis on Windows, and if that causes collateral damage to a platform they don't support that they have no real reason to consider important, we cannot really expect them to care.That could be a valid argument however there is one little caveat they like to ignore - Vanguard already is implemented in Valorant and IT STILL HAS CHEATERS... it's as disingenuous as Epic saying no EAC support for Linux in Fortnite (not that I care about that game but it's about the principle) as if EAC was preventing any cheating on Windows to begin with. It's nuts.
They say "We can't control what goes on in a Linux environment". Well, you developers can't even control what goes on in a Windows environment either, so pot meet kettle. Cheater are NOT hacking the binaries anymore. Those days are long gone. Hackers are modifying data packets being sent to servers which falls outside what Vanguard and other anticheats do. All anticheats handle is processor and memory address tagging. They lock the process to a CPU core and then lock the memory address used. However, that have NEVER targeted the data packets sent to the server. Why? Because Vanguard is a client side anticheat, not a server side anticheat.
By contrast, it's easier to defeat cheaters in Minecraft than it is on League of Legends. Why? Because Minecraft uses, with PaperMC and similar servers, serverside anticheats which scan for inbound data packets and block functions that would be on the blacklist of allowed executions. It's 1000x harder to defeat Minecraft anticheats because once they update, trying to rebreak the anticheat to re-enable a hacked client function, can be months out or longer.
These developers are pathetic and making excuses only peoves how inept they are. They could easily link against AppArmor to prevent execution and memory address tampering and implement a server-side anticheat and Linux would be 100% playable and they'd see less hackers.
Quoting: MarrondSo let me get this straight... MILLIONS of people are playing League of Legends and between 1/5 to 1/15 depending on the region is cheating. By their own admission they say Linux playerbase is tiny. They basically say ALL of the cheating is happening on Windows where allegedly Vanguard works better. Sorry, am I missing something here or it's just blatant bullshit talk?They claim that cheating occurs in 1/15 to 1/5 of matches. These matches are 5v5 so there are 10 players in a match. Only one of them needs to cheat for the match to be tainted.
Your math is off: you would only need a tenth of the cheaters you’re claiming there are for the original claim to be true.
This is for clarification… no offense.
Quoting: benstor214Valid point...Quoting: MarrondSo let me get this straight... MILLIONS of people are playing League of Legends and between 1/5 to 1/15 depending on the region is cheating. ...They claim that cheating occurs in 1/15 to 1/5 of matches. These matches are 5v5 so there are 10 players in a match. Only one of them needs to cheat for the match to be tainted. ...
...so around TENS OF THOUSANDS of people are cheating on LoL, while Linux is 800 people in total (and no word on how many are actually cheaters per the current anticheat criteria)!
Does anyone ever remember Valve's new anticheat approach from "Trust Factor"? Why isn't this all the rage now? Did it not work?
tl;dr: detect cheaters but let them play (among other cheaters) instead of banning them, then most of them will stop looking for new ways to pretend they're not cheating... the goal is not forbidding cheating, just letting non-cheaters play in peace
I also like this as a concept, because ages ago i actually enjoyed cheating in some games where this was just allowed and built into the games... anyone remember the cheatcodes at the game chat from old blizzard games? "power overwhelming"!
Last edited by Marlock on 13 April 2024 at 10:46 am UTC
Quoting: reaperx7The ignorance of their developers is staggering. Saying nothing can be done on Linux to mitigate this and that is hogwash drivel. They're just bad developers with no talent.
They say "We can't control what goes on in a Linux environment". Well, you developers can't even control what goes on in a Windows environment either, so pot meet kettle. Cheater are NOT hacking the binaries anymore. Those days are long gone. Hackers are modifying data packets being sent to servers which falls outside what Vanguard and other anticheats do. All anticheats handle is processor and memory address tagging. They lock the process to a CPU core and then lock the memory address used. However, that have NEVER targeted the data packets sent to the server. Why? Because Vanguard is a client side anticheat, not a server side anticheat.
By contrast, it's easier to defeat cheaters in Minecraft than it is on League of Legends. Why? Because Minecraft uses, with PaperMC and similar servers, serverside anticheats which scan for inbound data packets and block functions that would be on the blacklist of allowed executions. It's 1000x harder to defeat Minecraft anticheats because once they update, trying to rebreak the anticheat to re-enable a hacked client function, can be months out or longer.
These developers are pathetic and making excuses only peoves how inept they are. They could easily link against AppArmor to prevent execution and memory address tampering and implement a server-side anticheat and Linux would be 100% playable and they'd see less hackers.
According to their post they've already moved the entire game server side and the client is just a requester and the only thing they're still fighting is scripting.
Scripting can't be defeated with moving the game server side, because it can use standard input controls, just inhuman fast.
One could implement server side pattern recognition, but that is a really expensive way of doing anti-cheat, because you're basically reverse engineering all the known bots.
This's what Minecraft does and can afford, because major parts of the gameplay are really hard to script in the basis(it's creativity reliant game with way too much content that randomly spawns).
LOL is a lot more scriptable, because scripts can be essentially:
if(warning)
{
dodge();
}
else
{
act();
}
Which according to me is a mistake and can be easily fixed by adding more hard to scrip elements in the game(some don't even have to be noticeable by the player, such as not sending coordinate information to a client that doesn't do business logic anyway, lets see these scripters implement unnoticable image and sound recognition.)
Quoting: MarrondThat could be a valid argument however there is one little caveat they like to ignore - Vanguard already is implemented in Valorant and IT STILL HAS CHEATERS... it's as disingenuous as Epic saying no EAC support for Linux in Fortnite (not that I care about that game but it's about the principle) as if EAC was preventing any cheating on Windows to begin with. It's nuts.That's addressed in their post linked at the bottom of the article they claim that their metrics show that it has a lot less cheaters.
What I find most shocking about this's not that Riot games doesn't care about Linux(duh), but that they're planning to demand TPM2.0, because they found Microsoft's Windows 11 requirements not draconian enough and that they brick keyboards if they can be used for cheating(yes not crashing the game, bricking the keyboard)
Last edited by LoudTechie on 13 April 2024 at 11:20 am UTC
Quoting: MarrondAs I said, it being a bad solution is a separate issue.Quoting: Purple Library GuySo now they have what they see as a crisis on the OS they do support, Windows, and so they're introducing a solution they imagine will help solve that crisis on Windows, and if that causes collateral damage to a platform they don't support that they have no real reason to consider important, we cannot really expect them to care.That could be a valid argument however there is one little caveat they like to ignore - Vanguard already is implemented in Valorant and IT STILL HAS CHEATERS... it's as disingenuous as Epic saying no EAC support for Linux in Fortnite (not that I care about that game but it's about the principle) as if EAC was preventing any cheating on Windows to begin with. It's nuts.
Quoting: Ali_JohnI have M1 Max with 32 gb and LoL on MacOS does not have Vanguard. Even with the Metal option on(which gives great FPS improvement over OpenGL), the OS is so garbage that if you move the camera game goes from 144 Frames to 100ish and keeps jumping up and down. I have to restart the system just so that OS does not get weird with it's resource management system. MacOS being supported while Linux not is more like a side-effect that we are playing the windows version. If someone can find a way to run MacOS build on Linux we might be fine.
The relevant project for that is theoretically speaking darling, but if I hear you correctly it seems to run on Rosetta, which means that making a port could be achieved with Wine and a good Arm emulator(or an ARM device).
Further research shows: LOL runs on emulated the emulation layer of Rosetta and probably also on the wine part obtaining the relevant x86 binaries could be enough.
Last edited by LoudTechie on 14 April 2024 at 12:18 pm UTC
Quoting: kaktuspalmeClient side anti cheat will never work. I don't get why no one tries server side cheat detection. I think AI in server side cheat detection might be a very useful thing.
Unfortunately it's not that simple. You kind of need both. Server side is needed, obviously, but there are ways to cheat that can be entirely invisible to the server.
For example, imagine a cheat that takes the app's wall rendering shader, and makes it semi transparent. Now the cheater can see through walls. They could still be playing with mouse and keyboard, no scripting involved.
Quoting: GetBeanedQuoting: EnkhielFrom the "big" 4 MOBAs, I am glad I enjoy Heroes of the Storm the most running excellently on Linux. I feel sorry for those peeps though that will be affected. Maybe give HotS a try :)
I stand by HotS being the best of the lot, even though it never reached the popularity of the others. How's the playerbase nowadays? I always get an urge to go back, but I know a few years ago it seemed like they were winding down development.
I personally think HotS is in a good spot for what it is.
Queue times are very fast if you are not a grand master, and Khaldor is still hosting a lot of enjoyable tournaments.
I'd say give it another shot!
Quoting: ShabbyXFor example, imagine a cheat that takes the app's wall rendering shader, and makes it semi transparent. Now the cheater can see through walls. They could still be playing with mouse and keyboard, no scripting involved.
That example is still a server problem. It's giving the client information that it doesn't need.
Quoting: EhvisQuoting: ShabbyXFor example, imagine a cheat that takes the app's wall rendering shader, and makes it semi transparent. Now the cheater can see through walls. They could still be playing with mouse and keyboard, no scripting involved.
That example is still a server problem. It's giving the client information that it doesn't need.
It's not as simple as that though. Even if the server doesn't disclose players / items that should not be visible, it can't do that very precisely for the simple reason that latency exists. You can't afford to reveal players _just_ as they become visible, because to the client it looks like they pop through doors. So taking latency into account and revealing another player earlier with a margin of error, that can still give an edge to such a cheater.
Maybe **then** will they realize they are approaching cheating wrong.
Seriously, what if instead people voted if someone is pleasant to play with or not after a match, and you match pleasant people together and unpleasant people together. That also solves the toxicity problem with the same mechanism.
See more from me