Hacker News new | past | comments | ask | show | jobs | submit login

In the spirit of supporting open software, it would be fantastic if Epic Games Store and its DRM warmed up to Linux next.

https://news.ycombinator.com/item?id=19844241




The anticheat they use (EAC) for fortnite checks if Wine is in use, and will fail to run the game if it is.

This is taken directly from the EAC dll:

https://i.imgur.com/a4wBVWz.jpg


Can't say I blame them.

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.


Ah, that sounds like a very fair argument to me.

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).


Next generation aiming for twitch shooters will use a camera that tracks eyeball movements.


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)


It would be used for analysing past gameplay, not during live matches


Aimbots...map reduce...HDMI outputs...and jitter all in one post.

...pretty comfortable in saying that you're not up to speed on 2004 era hax.


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.

https://news.ycombinator.com/newsguidelines.html


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.


Please don't respond to a bad comment by breaking the guidelines yourself. That doesn't help and only makes this place worse.

https://news.ycombinator.com/newsguidelines.html


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).


I'm not sure that's different in windows. What do you think is stopping you from messing with net/visual/input there?


>I'm not sure that's different in windows.

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


Wow, that's just evil.


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?


>Probably not evil, just incompetent.

Incompetent, or rational decision in terms of bang-for-buck to reduce cheats?


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.


Evil is a strong word. Can you explain?


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?

[1] e.g., https://en.m.wikipedia.org/wiki/NProtect_GameGuard


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 would imagine Wine is in a similar predicament.


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.


As far as I understand, the problem with wine is that the wine sandbox prevents other anticheat mechanism from working.


Epic owns EAC for the record.


I'm sure there's ways to hide/change that.


"“Open tools, libraries and platforms are critical to the future of the digital content ecosystem,” said Tim Sweeney, founder and CEO of Epic Games."

Contradictory sentiments like these are what lead me to believe this grant is mostly for marketing purposes. (tin-foil hat mode)


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.


> Use any current OS you want … as long as it's from Microsoft.

..or Google or Apple. Or Nintendo. Or Sony.


The Epic Games Store only works on Microsoft Windows.


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?

https://www.polygon.com/2018/12/6/18129978/epic-games-store-...


Who cares?

"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 it helps a good goal, what does it matter?


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.


Source on that quote?


Updated to slightly correct quote and post source


What matters is if the accepting of the money outweighs the good of turning it down. It's not always an easy equation.


But that money is going to exist whether you accept it or not. You not accepting the money doesn't mean the way it was acquired stops happening.


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.


I'm sure the Blender community will welcome this grant with open arms, as they should.

I am merely pointing out that Epic's list of bad things outweighs their list of good things, regarding the open source community.


Blender is a complimentary offering. Improving it indirectly boosts business.

Assuming there are tax benefits for donating, it becomes a win-win.


Tim Sweeney thinks Win32 is an open standard.

I think he's operating with a different understanding of the word "open" than the rest of us.


Quote on that?

Also, there's Wine and ReactOS, no? Aren't those two alternative (even if somewhat incomplete) implementations of Win32?


See "The Solution", where he argues for Win32 as a truly open standard, as explicitly opposed to UWP and Android, which he considers to be closed.

https://www.theguardian.com/technology/2016/mar/04/microsoft...


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.


I don't think it's worthwhile to split hairs over standard/platform; I've heard Win32 called both, many times, by respectable sources.

As it is, he argued that Win32 is more open than UWP or Android; regardless of whether you think the API is a standard or a platform.


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.


I would not claim that any of Android, UWP, _or_ Win32 are open.


They do share a lot of code, though; so there's really more like 1.2 alternate implementations of win32.


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.


Those are reverse engineer not blessed by Micrsoft's nor it is win32 an open standard

Further if the Oracle v Google suit does not get overturned MS could put an end to both Wine and ReactOS in a heartbeat


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.


Unreal Engine kind of already is open source, for weak definitions of open source: https://www.unrealengine.com/en-US/ue4-on-github


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.


> Epic Games Store and its DRM

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).


Try downloading assets from the Unreal store on Linux.


What does EGS not providing DRM itself have to do with downloading assets from the Unreal store on Linux? AFAIK EGS isn't even supported on Linux.


They should offer DRM-free options, and Linux options as well. And no more of that exclusive nonsense.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: