←back to thread

379 points mobeigi | 1 comments | | HN request time: 0.001s | source
Show context
ZeroCool2u ◴[] No.41862659[source]
Server side only anti-cheat is one of the problem domains that I'd really love to work on at some point in my career. This is the type of adversarial arms race that just seems really fun to think long and hard about.
replies(4): >>41862725 #>>41864365 #>>41864555 #>>41871291 #
Night_Thastus ◴[] No.41862725[source]
Only problem is, a lot of companies do NOT want to pay for it. It's 'treadmill work'. No matter how many people and how much money you throw at the problem, it still ends up just coming back. It's a losing battle because there are many, many more players than there are developers.
replies(3): >>41862790 #>>41862959 #>>41864654 #
willcipriano ◴[] No.41862959[source]
My idea:

1. Determine minimum human reaction times and limit movement to within those parameters on the client side. (For example a human can't swing their view around [in a fps] in a microsecond so make that impossible on the client) this will require a lot of user testing to get right, get pro players and push their limits.

2. Build a 'unified field theory' for your game world that is aware of the client side constraints as well as limits on character movement, reload times, bullet velocities, etc. Run this [much smaller than the real game] simulation on server.

3. Ban any user who sends input that violates physics.

Now cheating has to at look like high level play instead of someone flying around spinbotting everyone from across the map. Players hopefully don't get as frustrated when playing against cheaters as they assume they are just great players. Great players should be competitive against cheaters as well.

replies(8): >>41863120 #>>41863132 #>>41864409 #>>41864592 #>>41864724 #>>41864936 #>>41865792 #>>41867394 #
Workaccount2 ◴[] No.41864592[source]
The vast majority of cheaters are not "rage hacking", but instead using cheats as a skill assist.

Take a moment and think about how you would design cheats that would be undetectable. Hot keys, real time adjustments, all the options and parameters you could provide cheater to dial in their choice experience while also keeping them looking legit.

Then realize cheat developers thought of all that decades ago and it is waaayyyy beyond what you can dream up in a few minutes. Hell cheats nowadays even stop cheaters from inadvertently doing actions that would out them as cheaters.

replies(2): >>41864734 #>>41865643 #
willcipriano ◴[] No.41865643[source]
You misidentify the core problem, or at least why it is a problem from a business perspective.

The problem isn't cheating itself, the problem is players feeling like they have been cheated (and thus not buying micro transactions in the future).

If you can limit player action to things that look plausibly human, less players will feel cheated and will be less likely to drop out.

This system would be put in place on top of existing systems and if implemented as I have described could be done so fairly cheaply from a operational perspective (getting it off the ground will require a good bit of dev time).

If you had ELO based matchmaking (that dropped matches where the player performed far below what they had previously done to prevent sandbagging) a cheater with "perfect play" would end up only playing against other cheaters after a time.

replies(1): >>41867189 #
1. autoexec ◴[] No.41867189[source]
> The problem isn't cheating itself, the problem is players feeling like they have been cheated (and thus not buying micro transactions in the future).

Any game I pay for that pressures me to pay with micro transactions already makes me feel like I've been cheated. "Free" to play games might be motivated that way though.

Although I doubt it would stop cheating, making sure that players can't do impossible things is absolutely a good idea and something that should have been done ages ago.

The best solution to avoid cheating is to play with people you know. Expecting a good time when playing with internet randos from all over the globe is maybe too optimistic.