HeroEngine Forums
Welcome, Guest. Please login or Register for HeroCloud Account.

Author Topic: [Resolved] GameClient Cheat Protection  (Read 1628 times)

CodeMonkeyVirus

  • General Accounts
  • *
  • Posts: 2
    • View Profile
[Resolved] GameClient Cheat Protection
« on: May 02, 12, 05:25:38 PM »

Is there any Cheat protection around the game client, just as GameGaurd, Xtrap, etc, or Obfuscation, such as Thermeda?
« Last Edit: Sep 26, 12, 08:01:03 AM by HE-Cooper »
Logged

HE-Cooper

  • *****
  • Posts: 2221
    • View Profile
Re: GameClient Cheat Protection
« Reply #1 on: May 02, 12, 06:17:48 PM »

The client is connected to a server, so that handles that. If you were implementing a game that relied heavily on client calculation, then you'd use the server to check the large choices, and could either log and investigate, or go down the onerous path of wiring out to a cheat buster via the extension interface or something like that.

But if your team was large enough and capable enough to head down that path youd probably be licensing source to try various crazy bonkers stuff, and gutting the renderer, etc. :-)
Logged

Absolver

  • General Accounts
  • *
  • Posts: 6
    • View Profile
Re: GameClient Cheat Protection
« Reply #2 on: May 03, 12, 04:32:07 PM »

The most common way to prevent cheating in MMOs is never to trust the client; only the server. Don't let the client tell your server "I just hit player X for 20,000 damage"; let the client tell your game "I just fired this ability at player X, what happens?". Keep track of everything on the server side, money, hit points, gold, items and the works, and replicate the values down to the client. And doublecheck everything the client claims it is trying to do. ;)
Logged
Best regards,
Kenneth Aalberg
Periscope Games

Dablackfox

  • General Accounts
  • *
  • Posts: 3
    • View Profile
Re: GameClient Cheat Protection
« Reply #3 on: Jul 26, 12, 08:40:24 PM »

From my experience with mmo's the players prefer less anti-cheating/hacking software and would rather complain about it.
your far better off making the options to report a player for game abuse than try stop them yourself.
in the end its the players who will decide that hacking/cheating is bad, and not your game.

if you don't believe me look at Aion vs world of Warcraft.  wow has got warden and tbh thats just to catch some hackers off guard. where as Aion has Gameguard. you need your password to be super long. your characters require a pin number to log in with and use the auction house and so on. the whole game was broken on release because of warden.
Logged

FI-ScottZ

  • General Accounts
  • *
  • Posts: 1407
    • View Profile
    • Forever Interactive, Inc.
Re: GameClient Cheat Protection
« Reply #4 on: Jul 26, 12, 10:59:05 PM »

To expand on Absolver's point:

The approach of a completely non-authoritative client can work for a turn-based game or one without a lot of fast, real-time action.  But if the client needs to wait for the server to authorize every move, that can make for a lot of traffic and the game can grind to a halt.  Naturally, the server always has the official version and will not take client's claims without verifying (hence the reason the label for client-to-server functions is untrusted).

But a more reasonable approach is to start with the very reasonable assumption that most players do not cheat.  So most times the client can proceed and respond to player actions immediately in real-time the way it has been programmed to do.  Meanwhile, it still sends notification to the server of what actions were taken so the server can update its representation of the game, and at certain times the server sends an authoritative update to clients of what is going on. Whatever is in the update overrides anything local and so can correct clients that may have strayed to get back on course.  But that should usually not be necessary.

You're right though: as long as the server always enforces the rules for its representation of the game, then the most a hacker could do is affect their view of the game, such as making their health bar show that they had a lot more than they do.  It would have no effect on the actual game nor other players and the server still knows what is really going on. No harm done.
Logged
Scott Zarnke
Lead Programmer, Visions of Zosimos
CTO, Forever Interactive, Inc.

PN-Dwight

  • General Accounts
  • *
  • Posts: 465
    • View Profile
    • Pirates' Nest
Re: GameClient Cheat Protection
« Reply #5 on: Jul 27, 12, 10:27:06 AM »

My 2 cents on this subject:

Scott really pinpointed the networking behind the anti-cheat measures, but I would suggest to also incorporate a more "human" side to the anti-cheat.

Straight from our game (mind you that there is a fee to get an account started, say, X amount, and there are 3 levels of accounts [along the lines of Bronze, Silver and Gold; 1 time fee, and the higher you are are, the less you pay per month]):

- If you report a hacker, and we have succesfully verified the case, you will receive: premium coins (for some nifty effects, not stat-based) and you will receive the amount the hacker paid to activate his account in cash (not gametime).

Get rich by reporting hackers! :-)