This is so funny because rust has one of the worst cheating situations and majority of their players are windows users, and theres lots of games that have anticheat that allows linux and have notably less significant cheating problems like marvel rivals. in reality rust doesn’t take cheating very seriously because if they did they would have more server side software that detects illegitimate behaviour like tons of other games do successfully… even most popular Minecraft servers have better functioning anti cheat that is completely server side than rust has while getting kernel access to your pc. its pathetic and lazy development tbh and this entire post from them reads like such extreme cope…

  • AAA@feddit.org
    link
    fedilink
    English
    arrow-up
    20
    arrow-down
    1
    ·
    edit-2
    10 hours ago

    It is. All games have this kind of server side verification which denies not allowed actions. The difference is in Minecraft it comes down to “no, you cannot fly, or” no, you cannot build a pig spawner because you don’t have one in you inventory". But in Counter Strike you need to decide if one player’s 14ms headsbot is legit, while some other player’s 20ms kill was not. Or if someone was acting on information they shouldn’t have (radar and wall hacks). That’s orders of magnitudes harder.

    Generally speaking, the slower a game, and the less hand eye coordination are necessary, the easier is server side cheat detection. On the other side, there’s chess…

    • Nibodhika@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      11 hours ago

      Well, yes, but, let me counter with this:

      You can completely remove wall hacks from the equation by doing some FoV calculations in the server, this completely solves that issue, there’s no client side hack that would be able to show you enemies behind the wall because the server isn’t sending them to you.

      And to the other point, if the 20ms kill is bad but the 14ms kill is good, there’s space to argue that the cheater is worse than the players so you don’t really need anti-cheat so solve that, Skill based matchmaking takes care of that for you, he would eventually be placed with people who are better than him even with hacks.

      Sure, server side anti-cheat can’t capture everything, but neither can client side, but server side anti-cheat can make it so that your client side cheats are pointless, because they can’t make you better than everyone, you have to remain averageish, and if you’re consistently above average skill based matchmaking will bump you up and up until you’re going to lose even with cheats or you will be playing against other people with the same cheats as you.

      • AAA@feddit.org
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        1
        ·
        10 hours ago

        Please see my other answer. Yes server side fog of war solves a lot, but not everything because it works with your FoV+some extra. On top of that there’s enemies’ sounds and objects that will make wall/radar hacks work.

        Yes, skill based matchmaking would take care of the consistent not-inhuman cheater, but unfortunately the number of games getting that right can be count on two hands, I would say. It’s an interesting problem on its own for team based games.

        • Nibodhika@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          10 hours ago

          I’ll reply to the server FoV there. Skill based matchmaking is hard to solve, but I think most games who have enough players to worry about anti-cheat to this level should have some level of skill based matchmaking in place, in my head that’s way more important than anti-cheat because even with cheaters the games are fun for everyone, and cheaters end up bubbling up into their own group.

    • Echo Dot@feddit.uk
      link
      fedilink
      English
      arrow-up
      6
      arrow-down
      3
      ·
      11 hours ago

      I’ve said this before about wall hacks. The only reason they are possible is because the positions of all players are being sent to the client and then the client just doesn’t draw them to screen. It would be extremely easy to simply not send the data for players you shouldn’t be able to legitimately see.

      • AAA@feddit.org
        link
        fedilink
        English
        arrow-up
        13
        arrow-down
        1
        ·
        11 hours ago

        And you are not the first person to have this idea.

        Most games do that to some degree. The thing is they are working with a threshold, which means they send your client the information of a few “extra meters” - beyond your field of vision. If they didn’t, enemies would sudddnly pop into existence, instead of smoothly running around the corner. Especially in fast paced games there’s nothing more frustrating than losing to this.

        But there’s more: non visual clues. If an enemy is outside your vision, but makes a noise, you cannot give that information to the client without revealing the enemies position. It’s simply not possible (again, not without risking giving completely wrong info by the time it reaches the client).

        Same goes for non-player objects, which are the result of a player’s action somewhere else. If a player kicks a bucket across the map, the bucket flying through your screen makes it trivially easy to calculate the point of origin - and you know something happened there / player was there.

        We’d be really really lucky if server side fog of war would be the kill-it-all solution to cheating.

        • grrgyle@slrpnk.net
          link
          fedilink
          English
          arrow-up
          2
          ·
          4 hours ago

          Hmm very well said. Thank you for explaining that. Definitely a harder problem to solve than I thought at first.

        • Credibly_Human@lemmy.world
          link
          fedilink
          English
          arrow-up
          3
          arrow-down
          1
          ·
          8 hours ago

          I find a number of problems with the level of authoritativeness that you speak and some of the arguments you’ve made.

          The core of your first argument lumped together is that a small amount of extra latency is the same thing as “impossible”. This is obviously not true as even with some relatively fast paced genres, what is acceptable varies wildly. Maybe such an argument could be used for Valorant, but not for Pubg or escape from Tarkov (games that are already known for netcode slow enough that this would not truly/notably harm the experiences of players if they were designed for this from the start).

          Same goes for non-player objects, which are the result of a player’s action somewhere else. If a player kicks a bucket across the map, the bucket flying through your screen makes it trivially easy to calculate the point of origin - and you know something happened there / player was there.

          This example is contrived, and just the type of thing where there are a number of options available.

          One could simply not send the bucket, send it with a delay, the bucket could not exist (the majority of games), the buckets origin could be randomized just enough to be at the tested limit of player perception, the game could include a trace shadow by default.

          For every example like this, there are options available which aren’t entrusting a black box to access all of your data with a pinky promise.

          We’d be really really lucky if server side fog of war would be the kill-it-all solution to cheating.

          There is no kill-it-all solution, and this is a clever little re-framing of the argument by you where the new solution has to be perfect, when the status quo can just be mid.

          • AAA@feddit.org
            link
            fedilink
            English
            arrow-up
            3
            arrow-down
            1
            ·
            7 hours ago

            I don’t understand how you lump my arguments into “extra latency”. Server side anti cheat doesn’t add latency (I mean technically it does, but that’s not the concern right now), but latency is very much the reason for the downsides I pointed out. The smaller the margins, the higher the chance one of the two players doesn’t see the other coming solmoothly around the corner, but suddenly materializing in full view.

            Your examples illustrate that very well. It’s OK for PUPG or Tarkov (and even there only long distances), but a hard for Valorant.

            This example is contrived, and just the type of thing where there are a number of options available.

            And now, instead of the irrelevant bucket, make the same argument for a relevant object - like a grenade, or tracers. You cannot just get rid of everything or implement random delays or randomized origins.

            There is no kill-it-all solution, and this is a clever little re-framing of the argument by you where the new solution has to be perfect, when the status quo can just be mid.

            It’s not reframing. The original argument I replied to claimed these hacks only exist because the server sends everything, and it would be extremely easy to fix this. Neither of which is true.

            • Credibly_Human@lemmy.world
              link
              fedilink
              English
              arrow-up
              1
              arrow-down
              1
              ·
              5 hours ago

              I don’t understand how you lump my arguments into “extra latency”.

              Followed by

              but latency is very much the reason for the downsides I pointed out.

              Is wild to me.

              Seems like you understand perfectly fine.

              Your examples illustrate that very well. It’s OK for PUPG or Tarkov (and even there only long distances), but a hard for Valorant.

              This is both you agreeing yet disagreeing with my argument and I don’t get the point exactly.

              If its feasible reasonably, the point of your argument is diminished.

              And now, instead of the irrelevant bucket, make the same argument for a relevant object - like a grenade, or tracers. You cannot just get rid of everything or implement random delays or randomized origins.

              You’re fighting a strawman by pretending that my argument was ever to “just get rid of everything or implement random delays or randomized origins”.

              My point applied in specific cases where relevant, and the dishonesty in your argument here is by acting like I am talking about not having a game. The bucket example was specifically about a bucket going towards a player from an unseen location with no line of sight.

              For a situation like a grenade, the grenades direction becomes visible, somewhat randomized, from when the player should be able to see it. This presents no gameplay problems and solves the edge case of figuring out its trajectory for cheats, especially as a little bit of randomization results in a wildly inaccurate origin point.

              As for the bullet, where are people shooting others without line of sight, where the bullets path would also simultaneously be visible? Its not a realistic scenario to bring up at all.

              If we’re going to that extent, we might as well also then say that all client side anti cheat is worthless because you can use a secondary machine to read the ram of a primary machine or other such high effort cheating strategies.

              It’s not reframing. The original argument I replied to claimed these hacks only exist because the server sends everything, and it would be extremely easy to fix this. Neither of which is true.

              Firstly, it absolutely is reframing, because they never claimed anything was a kill-it-all solution. They claimed one thing was a specific solution for a particular problem, which it is.

              The only part that you actually have shown good reason to disagree with is the last claim, as with the second you’ve admitted that it in fact would be effective, but that there would be downsides potentially (as if there arent downsides with every option).

              • AAA@feddit.org
                link
                fedilink
                English
                arrow-up
                2
                ·
                4 hours ago

                My point applied in specific cases where relevant, and the dishonesty in your argument here is by acting like I am talking about not having a game.

                It’s tellingly ironic that for you it’s totally okay to make a broad statement, then when being called out cut it back to “where relevant”. And in the same sentence you make a strawman yourself, claiming that I’m acting like you are “talking about not having a game at all”. If you want your arguments understood “where relevant”, maybe show the same consideration.

                As for the grenade and bullet examples I simply disagree. Given a certain observable trajectory it’s freakishly easy to get a good enough point of origin to get an unfair advantage with that information. As for an example about the bullets, I believe there’s enough FPS games with tracers out there. An extreme example would be Unreal Tournament Instagib matches. Where you see literally all tracers - directed at you or not.

                If we’re going to that extent, we might as well also then say that all client side anti cheat is worthless because you can use a secondary machine to read the ram of a primary machine or other such high effort cheating strategies.

                Correct. Client side anti cheat can only make it so hard. Never impossible.

                because they never claimed anything was a kill-it-all solution. They claimed one thing was a specific solution for a particular problem, which it is.

                Yes, they said wall hacks would not exist if the server would only send what a user can actually see:

                The only reason they are possible is because the positions of all players are being sent to the client and then the client just doesn’t draw them to screen.

                And that’s not true. Wall hacks would still exist, as necessary information can be used to determine an enemies position. To a certain extend.

                And yes, put to an unreasonable extreme it would eliminate wall hacks entirely. Just nobody would want to play such a game.

                Have a good day.

        • Nibodhika@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          9 hours ago

          If an enemy is outside your vision, but makes a noise, you cannot give that information to the client without revealing the enemies position.

          Sure you can, for starters audio is a lot less reliable to pinpoint location than video, so the server can randomize the position somewhat and still be accurate enough. Not to mention that sound bounces off walls, so it’s not exactly wrong to give the point of origin of a sound as a wall nearby the origin or destination, and an even more advanced system could use ray tracing to calculate sound path and give you a fully accurate sound point that doesn’t reveal the source exactly.

          If a player kicks a bucket across the map, the bucket flying through your screen makes it trivially easy to calculate the point of origin - and you know something happened there / player was there.

          But again if you’re not sending the bucket position until it’s in FoV that doesn’t matter at all.

          We’d be really really lucky if server side fog of war would be the kill-it-all solution to cheating.

          It’s not the end all, but it does take are of whole categories of hacks.

          • AAA@feddit.org
            link
            fedilink
            English
            arrow-up
            4
            arrow-down
            1
            ·
            edit-2
            9 hours ago

            Still both can be calculated back to the source of origin. It may not be enough for a wall hack to reliably point out the enemies exact position, but definitely enough for a radar or proximity hack.

            Edit: Your also completely ignoring the mandatory threshold where the server absolutely needs to send you enemy information already in order to avoid enemies popping into existence. The faster the game, the bigger that threshold.

            And by all means, sound (in video games) is a pretty linear thing. You can only randomize so much, until players complain that it’s not reliable.

            In the games were talking about these kind of additional info or heads-up are an unfair advantage in competitive play.

            The solution sounds easy, but I do believe that if it was, we would see it in at least some current games.