Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)ME
Posts
10
Comments
586
Joined
11 mo. ago

  • Short answer: Yep, cheat softwares regularly do this too, but it's costly and prone to being immediately patched, and it's potentially illegal.

    Anticheat systems are designed around this since a cheat client would try to do exactly that. One way for example is for the anticheat to provide a cryptographic key to the game which it uses to prove to a multiplayer server that the anticheat is functioning and untampered with. Even if you bypass anticheat locally, you still have to prove that the game client is legitimate to the server. This does happen! But kernel anticheats are much harder to access and tamper with, and in our case of using WINE are unlikely to even work from the outset.

    So okay, let's hypothetically bypass anticheat locally. We modify the game to tell the server it's legit, and it works! A few days later the game gets patched, and suddenly our bypass is defunct. For cheat sellers this part of the cost of business but for people just trying to game on Linux there's little money in it, and if there is it won't ever be spent on circumventing anticheat (which also falls under some legal grey areas if not outright illegal depending on your country).

    Given enough time and resources we could probably find some novel way to crack anticheat on a game as such as it becomes playable on Linux. But it's so much easier to use that effort somewhere else or just use a Windows VM that is guaranteed to work even if slightly slower.

  • There's also the challenge of getting developers to retroactively fix AC support for games that are still popular but not otherwise maintained. Though this is usually an issue with kernel level stuff that can't easily be fixed on Proton's end on a case by case basis.

  • WINE Is Not an Emulator (that's what the acronym actually stands for).

    At a program level, WINE creates a dummy Windows directory structure, slaps files where an exe expects them, and executes the program.

    EXEs (well, all programs) will use system calls to request resources (ie. files, access to hardware like GPUs, data from other processes) which Windows maps to certain areas of memory and has its own protocols for how to handle requests. Linux has its own protocols and methods that are incompatible, hence why Windows and Linux apps can't run natively together.

    Then the magic happens: WINE maps these requests to Linux requests so that the running program is none the wiser. It asks for GPU resources like a Windows app would, then gets those resources back just like a Windows app would expect. There are thousands of edge cases, hundreds of system calls, and a bunch else that complicates things but that's how WINE (and Proton) works.

    The reason this fucks up Kernel-level anticheat is that it isn't trying to communicate via these established channels. They usually operate with full resources outside of the jurisdiction of your OS, and scan your memory bit-by-bit rather than asking the OS politely via system calls for info on other processes.

    With WINE, whilst a typical application will not notice the differences they're designed to not throw a fit if your underlying OS is configured differently, a kernel anticheat will not even recognise the system as a valid OS even if it was able to run in the first place.

    The solution here is systems like EasyAC that give up the benefits of being able to analyse processes at the kernel level in favour of portability. Another potential solution (though unlikely imo) is a cross-platform kernel anticheat protocol, that all major operating systems agree to implement, similar to how operating systems will implement the TCP/IP protocol to communicate across networks regardless of underlying OS.

    Now the reason "WINE"s acronym is particularly important is that if it DID emulate windows, as in what most virtual machine providers do, then anticheat would be running in an environment mapped out like a real Windows install - because it is. This is how many Linux gamers prefer to run certain titles, and something that should always be functional. It is much more annoying to maintain, However - balance how much you really wanna play the latest COD with your willingness to debug GPU passthrough shit.

  • Permanently Deleted

    Jump
  • I've tried! but recently it seems to not work anymore? Github seems to imply it doesnt after my failed attempt (it picked up requests but cloudflare bot protection beats it).

    i think there's other alternatives that can beat cloudflare bot detection but now that Ive got access to 2 private trackers I'm not usually picking through public stuff now.

  • Permanently Deleted

    Jump
  • True, but like any piracy system there are endless heads to the hydra that pop up every time. 1ficher is a bit worse since those files are gone, but at least mirrors for trackers have some utility in finding old torrent swarms.

  • The UK is pretty bad for tenants rights but they do force landlords to putting deposits into special accounts that have legal protections for the tenant, and if said landlord tries to avoid it you can usually easily win back a multiple value of your deposit with little the landlord can do.

    Landlords regularly take the piss with claiming exorbitant amounts for "damages" which is harder to contest, and many of us just accept a few deductions even knowing they will just pocket it.

  • I feel this as a mid level dev of 3 years lmao. Maybe straight up ask your supervisors for feedback but im sure some of your thoughts are imposter syndrome rather than genuine poor performance.

    If you're working on a legacy codebase it might even be worth using that knowledge to lobby for technical debt sprints to actually deal with the issues you're running into. I don't believe for a second that it's a problem unique to yourself (though some are weirdly adept at it!)

    Good luck pal, it's a pain for sure

  • This is just how all FOSS works. Everyone scrambles to do their own projects, either for fun or for necessity, and eventually some fizzle out and funnel people to contribute to alternatives. Trying to start immediately with one solution to rule them all just kills that early progress unless you're part of some corporate gig willing to dump loads of money on it in the meantime.

  • pi zero for streaming is insane not gonna lie. What sort of resolution do you stream it at?

    A decently newish phone would blow even a pi 5 out of the water I bet. Modern GPU drivers from snapdragon or mediatek plus core designs that arent 7 years old out of the factory would be a godsend for low-watt homelabbers