So? I just want the games to run, I don’t care about that side of it at all, that side of it is essentially pointless to me. There were always workarounds anyway, what does it matter?
At that point you might as well not have a kernel level anti cheat and companies who insist on kernel level anti cheat will block wine. The only solutions I see are
Developers mainly use server side anti cheat
They make native Linux games
Distros provide a way to ensure a untainted (signed) kernel
You cannot realistically make it impossible to detect that you’re running on wine. Wine just implements the Windows ABIs. The actual code running is totally different. Even just reading any of the binary code of literally any function would reveal it’s different from the Windows code. How are you going to stop it from doing memory reads on stuff that it needs to be able to read? You can’t. You’d need a full hardware emulator for that.
Developers who use kernel anti-cheat don’t support Linux because userspace anti-cheat is largely pointless. It doesn’t matter if you personally don’t care, the companies that want anti-cheat do care.
The workaround for kernel anti-cheat requires hundreds of USD in hardware. The workaround for userspace anti-cheat is entirely software.
Because of this, you will have less cheaters if cheating has a $500 price tag. That’s why kernel anti-cheat is effective, there’s no way for that to be solved with a WINE patch.
It requires either a Direct Memory Access card and supporting software or a video capture card and enough processing power to run fast image classification for AI aim bots.
Anything running directly on the PC can be detected by the kernel anti-cheat.
It doesn’t stop cheating, it just makes cheating require spending a few hundred dollars and dealing with complex hardware setups. This means that relatively few people try.
Non-kernel anti-cheat can be bypassed by software. So it’s cheap and easily available.
That’s the only difference. Kernel anti-cheat doesn’t prevent cheating, it just makes it more expensive.
There’s a lot of study on this topic from the cybersecurity perspective. If you could create an undetectable virtualization layer then it would be used for real-world cyberattacks to steal money and the existence would be quickly noticed by security researchers (and future hardware would include changes to mitigate the vulnerability). It wouldn’t be used for creating aimbots for video games.
So? I just want the games to run, I don’t care about that side of it at all, that side of it is essentially pointless to me. There were always workarounds anyway, what does it matter?
At that point you might as well not have a kernel level anti cheat and companies who insist on kernel level anti cheat will block wine. The only solutions I see are
That would ba a massive win in my book, kernel level anticheat is malware.
make it so that they can’t block wine without blocking windows and kernel level anticheat is gone
You cannot realistically make it impossible to detect that you’re running on wine. Wine just implements the Windows ABIs. The actual code running is totally different. Even just reading any of the binary code of literally any function would reveal it’s different from the Windows code. How are you going to stop it from doing memory reads on stuff that it needs to be able to read? You can’t. You’d need a full hardware emulator for that.
Developers who use kernel anti-cheat don’t support Linux because userspace anti-cheat is largely pointless. It doesn’t matter if you personally don’t care, the companies that want anti-cheat do care.
The workaround for kernel anti-cheat requires hundreds of USD in hardware. The workaround for userspace anti-cheat is entirely software.
Because of this, you will have less cheaters if cheating has a $500 price tag. That’s why kernel anti-cheat is effective, there’s no way for that to be solved with a WINE patch.
I simply do not believe that it costs that much to cheat with kernel level anticheat.
kernel level anticheat is pointless malware in my book, let it burn
It requires either a Direct Memory Access card and supporting software or a video capture card and enough processing power to run fast image classification for AI aim bots.
Anything running directly on the PC can be detected by the kernel anti-cheat.
You can look online for the hardware and prices
What about a VM?
Anti-cheat just detects that it’s running on virtual hardware (VMs don’t try to lie to the kernel) and will refuse to allow you to connect.
You won’t get banned but it’ll either stop you when you try to launch the client or it’ll kick you when you try to connect to a game instance.
Is it actually effective tho?
It doesn’t stop cheating, it just makes cheating require spending a few hundred dollars and dealing with complex hardware setups. This means that relatively few people try.
Non-kernel anti-cheat can be bypassed by software. So it’s cheap and easily available.
That’s the only difference. Kernel anti-cheat doesn’t prevent cheating, it just makes it more expensive.
Can’t you just use a virtual machine?
That would let you hide things from the kernel anti-cheat but the AC can detect that it is running in a VM and just won’t let you play.
Is there really no such thing as a virtual machine that can’t pretend to be real hardware?
The short answer is no.
There’s a lot of study on this topic from the cybersecurity perspective. If you could create an undetectable virtualization layer then it would be used for real-world cyberattacks to steal money and the existence would be quickly noticed by security researchers (and future hardware would include changes to mitigate the vulnerability). It wouldn’t be used for creating aimbots for video games.
If you want to read into the technical details, this stackoverflow thread has a lot of links to various papers and articles on the topic: https://stackoverflow.com/questions/39533/how-to-identify-that-youre-running-under-a-vm