Cheats

● ARCHIVED · READ-ONLY
Started by Koblas 13 posts View original ↗
  1. What can I do to remove the possibility to use cheats in game? I know that everyone should be free to play a game as he wants, but I really don’t like that
  2. Define cheats?
  3. If you mean hack the game, not even AAA games are safe, so the answer is "you can't". Someone, somewhere will find a way, no matter what you do.
  4. What is cheating for you? Open the game files and modify the game?
  5. You can't. No matter what you do, I can always deal with the game somehow.

    It's not hosted on a server: I can always fiddle with it in memory. If it's hosted on the server, you still need to let the user have the game data, which I can manipulate. I can also redirect the packets I send to a proxy as well.

    So no, there's no way to prevent users from cheating.
  6. Poryg said:
    You can't. No matter what you do, I can always deal with the game somehow.

    It's not hosted on a server: I can always fiddle with it in memory. If it's hosted on the server, you still need to let the user have the game data, which I can manipulate. I can also redirect the packets I send to a proxy as well.

    So no, there's no way to prevent users from cheating.[/QUOTEe en
    Poryg said:
    You can't. No matter what you do, I can always deal with the game somehow.

    It's not hosted on a server: I can always fiddle with it in memory. If it's hosted on the server, you still need to let the user have the game data, which I can manipulate. I can also redirect the packets I send to a proxy as well.

    So no, there's no way to prevent users from cheating.
    Even if
    Milennin said:
    Define cheats?
    MushroomCake28 said:
    What is cheating for you? Open the game files and modify the game?
    Some players said that they have access to infinite items, can level up etc... just with some clicks
  7. Ask them how they did it. If it is in-game it could be a bug in how you did your events
  8. lol

    if you can type in the command window (press F12 on browser), you can trigger ANY piece of code that is defined. Such as $gameActors.actor(1).levelUp()
  9. Koblas said:
    Some players said that they have access to infinite items, can level up etc... just with some clicks
    Either you didn't set your events to only give out items once, or they're opening it in the editor, which very few would bother to do, so I'm guessing it's the former.
    Check your events that hand out items and see if they can be triggered more than once.
  10. one way I can think of, would be to not save final values, but increments.

    regular cheats would add values to the value held in memory, and save it back to file (usually), and load it back into memory, from file.
    one way to counter that would be to record not the data, but the increments to a base value, and rebuild the value on demand.
    it would be harder to spot a specific value in memory when comparing against displayed value, if that memory value is not the displayed value, but a delta, based on a formula, which is not saved in memory.

    it's a twisty method, but it is in essence procedural content at it's finest.
    that, and obfuscation of the code, and encryption, would add layers of protection.
    either way, all a hacker needs to decrypt the code is the coding method (the start of the line), so once they have it, they can follow it down the line.
    (think about the Enigma code.... broken by figuring out headers of regular messages, by common sense)
  11. You misunderstood the question "define cheats". There are three ways how something like indefinite items can happen, and some of them depend on you as the developer.

    1) developer cheats
    These are codes that were intentionally added to the game by the developer, and if you don't add those cheats then nothing will happen.
    In a lot of cases these cheats are needed for playtesting - your playtesters already have to play the game a dozen times from the beginning to test for errors and balance problems, and they don't want to restart a test just because they forgot to purchase an item or because a transfer doesn't work and so on.
    To help with that, the developer create cheats to speed up playtesting, and sometimes they forget to remove them (or intentionally let them stay in the game.

    2) bugs
    as explained above some cheats are the result of bugs in the game you made, and then you need to start bughunting.
    and sometimes game developer simply don't have the money for bughunting anymore, so those bugs are not removed.

    3) savegame or memory editors
    These are programs that check and manipulate data in any game.
    And there simply is no protection agains that short of a server-based DRM-controlled game checking all data at any time.
  12. dont forget cheat engine :p
  13. @?????? Cheat engine is category 3, memory editor.