Linux is ridiculously powerful & versatile as I'm sure we all know...and having that much opportunity to mess with all the net/visual/input subsystems in a way the game can't even see (since it's trapped in WINE) is a major issue cheat wise.
Not ideal but I can totally see why a company might from a practical/commercial point of view just block it outright. Especially given player numbers of WINE players vs upsetting your entire user base due to cheaters.
Windows has no lack of power. All this anti-cheating stuff is mostly a scam to stop the dumbest of the dumb cheaters and probably collect information from your computer that's useful to advertisers/investors/law enforcement agencies.
If I wanted to aimbot in an FPS, I would just analyze the HDMI output from my computer (via an FPGA) and have it directly create the necessary USB transactions to move my mouse to the target's head. I would introduce randomness, "input lag", jitter, and even some misses, so that people looking at the kill cam wouldn't immediately think "aimbot" as they are apt to do whenever they die. (You also don't want to make your mouse movements statistically different from anyone else's, or it's the server that will pick up on your cheating... or at least a well-crafted MapReduce. Do game companies have MapReduce? I hope so.)
Executed well, the developer of the game could do nothing about it; maybe I'm really good, or maybe I'm aimbotting. My computer is completely normal, down to the device descriptors on my mouse and monitor. There's no wine, no virtualization, no additional software running.
In the end, trusting the client is crazy. If you want to decide win/loss based on things computers can do easily, your game is probably bad. And aiming is something computers can do in their sleep.
I think you're missing a major component of these deals restrictions: they also want to prevent running 30 headless VMs on a single computer all botting into games to grind whatever free content is available.
This is actually a major component of bot use for f2p games. A lot of companies try really hard to prevent anything that looks like playing in virtual envs. Having these bots fill up your games and play terribly is a bad look for any game that depends on multi-player interactions to keep people involved.
I believe you can get pretty affordable Windows VMs these days, however. I'm not sure that blocking wine really accomplishes a lot. (There are also companies that sell access to consumer Windows PCs on consumer ISPs these days. If you don't play Hearthstone, you probably don't mind $10/month in free money for letting someone bot Hearthstone on your computer. And it's not like Blizzard is going to say "look, enough Comcast, shut these people down or else we lock all Comcast customers out of battle.net". It's pretty tough to run a gaming client these days, I would imagine. So so much stuff is totally out of your control. I do not envy their engineers at all!)
It actually was a major issue for Valve with TF2. It used to be you could run the game headless and have it join a server to idle farm items for you. In college my roommate and I each bought about 3 copies of the game then ran them headless in VMs to try and farm hats. Never got anything super great sadly.
Analyzing the HDMI is definetely not an up-to-date hacking technique by any means.
Besides having to rely on real-time computer vision which is more expensive/resource consuming and harder, the results wouldn't be as good as with other techniques (although this might fit your argument of having some misses and jitter/lag/etc... to act as cover).
Already available in the form of the Tobii 4C for approximately 150 USD. Only accurate for most people to about a circle with diameter of about an inch on the screen though, and it feels strange to use it for an FPS.
What does MapReduce have to do with the rest of your post? MapReduce is used in distributed computing - I thought shooters were basically always single servers to keep the lag reasonable.
(I see two flagged posts asking the same question)
Can you please not snark or post unsubstantive comments here? We're trying for a bit better than that. If you know more, it would be great to share some of what you know so we all can learn something. Alternatively, it's always ok not to post.
I can tell you're a member of the gaming community because you have basically dismissed my comment in a condescending manner without providing any actual information.
Windows is the land of the reverse engineering. Linux, despite its powerful tools still lacks far behind in this area (reverse engineering and cracking apps).
It definitely it. Read up on anti cheating stuff...the windows stuff is down-right rootkit grade....to the point where there are privacy concerns from every the privacy tone-death crowd.
Very very different ballgame from "runs in a WINE container with no visibility beyond that".
Yeah, I know that it's a rootkit-type service. But I'm saying that still doesn't prevent you from going deeper than the checks. Especially if you're using custom code and not a known cheating tool. (Those will get picked up by signatures) Unless they require a fully certified system, you can always play with device drivers which are going to be lower level than anti-cheat.
It's an arms race, but whatever they can check, you can patch. Worst case, you can still virtualise everything.
"EAC/Wine compatibility is currently in a beta state with several games whose help we appreciate, but significantly more work is needed to get it to a suitably stable and hardened level for all." https://twitter.com/TeddyEAC/status/1125678854390067200
Probably not evil, just incompetent. Many internet multiplayer games today place trust in the client in order to grant a smoother experience on higher latency internet connections, which makes it easier to implement cheating mechanisms. The fight against this is all about verifying the client and the environment it is running in. WINE is quite hackable, so one can see why they'd want to blacklist the platform outright. Doing it in such a trivially bypassed way is pretty silly though.
They probably prevent it from starting and later do self checks (checksums), check for wine using other methods and then game-ban accounts in waves to hide how they detected cheating/wine.
There isn't a general way to prevent cheating on open platforms with this kind of game, so it ends up being a kind of cat and mouse game. Think of an aimbot (instantly moves your mouse cursor to an enemy as soon as the enemy is seen) or a wall hack that makes enemies visible behind obstacles. The only way to detect those is to check if your runtime environment is being modified by known methods. Opening a wine front (where you'd somehow have detect Linux processes/a modified wine or even a modified kernel etc.) is probably too costly compared to the number of non-cheating players on Linux.
CSGO (where leagues and MM use third-party anti-cheat) is an example where the community deems the vendor's AC insufficient. The most extreme example is Rockstar Games / GTA V, the multi-billion-dollar revenue AAA title where anyone with a free to download menu has far more power than all Rockstar administrators combined.
CSGO VAC is garbage though, and can't not be garbage without being granted extreme levels of access to the system. On Linux you can just run your cheats as root, and they will never get detected.
The slippery slope of giving companies higher access is also seen in CSGO where (Faceit/ESEA, dont remember who exactly) put a bitcoin miner in their anti-cheat. Capcom put a rootkit into Street Fighter V to check for cheaters. Is that acceptable?
That's a fair distinction here I suppose. From my perspective as a hobbiest game developer, and of course player, any benefits of trusting the client are far outweighed by the problems, but that's a matter of opinion I suppose.
I guess the GP refers to treating all linux gamers as "cheaters" is not cool.
Like another comment says, maybe it's easier to cheat using Wine, and thus banning the platform is faster/cheaper, even though they might end up catching a lot of legit users in this broad dragnet.
Not evil - it's what has been attracting users to their platforms. PUBG had terrible anti-cheat, really hurt them for a while. In all these claims a reminder that client is trusted. EPIC does "ok" with anti-cheat - be curious to hear others impressions. Cheaters are a TOTAL drag to online multiplayer, so calling efforts to fight cheating "evil" is silly.
Yeah, but how does running a Windows game on Linux = cheating? I understand the need for modern multiplayer games to have anticheat (however unfortunate, and I still refuse to play games that use literal rootkit-esque anticheat [1]), but just trying to run a game on Linux isn't cheating in itself. Does Wine help cheats cloak themselves?
Wine is a fully open implementation of Windows APIs on Linux. The game cannot assume that the API's behavior is fixed on WINE because anyone can change any of the functions to do something unexpected with a quick patch. One example may be hacking up the DirectX implementation to draw some objects as transparent rather than opaque.
Of course, it's possible (if much harder) to go in and hack up the DLLs on Windows. Anti-cheat addresses that by whitelisting known-good MS hashes and/or requiring some type of signing. There's a lot more overhead involved in doing something like that for WINE, since every distro's build would be different, it's common for users to have their own builds with game-specific patches enabled, etc.
I've been out of the WINE scene for a while, but I'll say that I don't believe many WINE users are trying to exploit the platform to cheat. I think it's purely a cost-benefit tradeoff. The vendor doesn't feel supporting a legitimate WINE use case is worth the expense of figuring out a reasonable way to validate behavior, handle integration with distro builds, support debugging/custom patchsets, etc.
Well, using Tor doesn't mean you're looking to abuse a website. But you may find out that 99% of your Tor traffic is abuse and decide it's worthwhile to you and your users to block it.
I find it hard to believe that a majority of people running Fortnite under Wine would be attempting to cheat. Even if Wine would make cheating somewhat easier, would it really be that significant?
It seems far more likely to that most players are just using Wine for its intended purpose—to play Fortnite on Linux.
>Does Wine help cheats cloak themselves?
Obviously it could, because it is providing windows API from an uncontrolled source. It would be significantly more difficult to provide hacked system libraries on a windows host.
> calling efforts to fight cheating "evil" is silly
their method (blocking Wine) is questionable though. it reminds me of websites that block Central/Eastern European IP's "because of bots" (yeah, it happens). the goal is nice, but the method hurts many honest users.
Epic Games are infamous for opposing openness in various forms. (Buy these games … only on the Epic Games Store. Install this spyware … no, you can't see the source code. Use any current OS you want … as long as it's from Microsoft.) Supposing that some of the ulterior motives behind this grant are questionable does not seem overly paranoid.
However, I don't see the contradiction in Sweeney's statement. One can appreciate the advantages of open tools, libraries and platforms, and still want to publish a proprietary game on top of that technology.
It's kind of like an omnivore chef joining a forum full of vegans to work on improving seasonings for braised veggies. They might not be pleased when they find out that she wants to make a side dish to be served with steak; but that in itself doesn't mean her goal is exploitation or sabotage, rather than mutually beneficial cooperation.
First, that is incorrect. It exists for Mac as well. Second, why on Earth would anyone care about the store as long as they can get the games on their platform?
"I don't give a rip whose money it is, mate" - Steve Irwin, when asked about accepting money from "unethical" groups and using it for conservation. https://youtu.be/-1gVkTFam1w?t=753
If accepting the money implies or enforces certain favors in return even if that is just silence, then it matters. If making the donation is used as a PR smokescreen to advance or obscure other unethical behavior, then it matters. That doesn't mean the money shouldn't be accepted it just means organizations should not allow donations to change their behavior and if a donation has a detectable nefarious ulterior motive then they should think twice about accepting the cash.
Some philanthropic donations are kinda prestige-for-cash deals. My employer, Oxford University, accepted a large chunk of change from Wafic Saïd to endow their business school. If they hadn't taken it, he'd certainly still have the money. But we wouldn't have lowered our own reputation by associating ourselves with a... not spotless businessman.
If it's done anonymously, then sure: you're quite right. But if it isn't then there is, in fact, a price. And it's not always a great deal.
> But that money is going to exist whether you accept it or not
But by accepting the donation you may be signaling that you're ok with how the donor made their money. By turning it down, you may also have a PR opportunity to spread a positive message.
Often when people see others do a good thing, they argue that those people aren't doing all the good things. They think this incentivizes doing all the good things. They are wrong.
He never call Win32 an "open standard." He calls it an open platform, or open experience, which he means anyone can build win32 games and distribute them on their own.
Using the word "standard", which he never does in that article, is quite misleading.
His statement is definitively true on the software distribution side. Google wants every App installed via play store and now even Microsoft Office is only available there. Classical Windows on the other hand allows Chrome to be installed without MS acting as gatekeeper.
Yes, it's not totally black and white. Android does kinda allow side-loading with shitty usability. MS did start its own store and lets not get into telemetry. Classical windows still gives the user a lot of control, though.
They may be alternative implementations, but they're still no good in this case. See elsewhere in the thread where it's pointed out that Epic's anti-cheat software intentionally fails to run the game if it's running on Wine.
There is a future where in the long term Unreal Engine (and maybe Unity3D as well) is FOSS in the same way that browsers are. Epic's business model would have to move away from engine royalties, which currently depends on the success of their store or potentially lasting longevity and growth of Fortnite.
That's not Open Source as defined by the OSI. You can't redistribute source code and commercial use requires paying license fees to Epic (5% of revenue). So just don't get the wrong idea about that license, please.
With UE4 they have created an engine that was extensible only via C++ and via their graphical scripting language. With the notorious instability and incompatibilities of ABIs of different C++ compilers, Epic didn't have a lot of options other than releasing the engine source so that their customers could recompile the whole engine with a single compiler version. And with Unity eating away at the indie market at that time, Epic needed a successor to the free, closed source UE3 UDK to keep a foot in that market. I don't think that Epic had a lot of other options at that point.
Unreal is source available, but not FOSS. There are a lot of restrictions in the license, sharing engine source without a (free) Epic login is against TOS for example, although you can fork the engine on GitHub and give other users that are part of the Epic organization access. I'm thinking a MIT (or some other permissive license) licensed UE.
Also considering their behavior regarding platform exclusives. This is at least the second time that Sweeney has said something in contradiction to his company's behavior in the past month.
EGS doesn't have DRM, it is up to each game to implement their own if they want, but the store itself doesn't provide any.
Which is great since most games do not bother :-P (although i'd prefer it if they had a DRM-free stance like GOG, but Epic is too publisher-friendly to allow that).
https://news.ycombinator.com/item?id=19844241