How do I make it impossible for players to edit the save files?

0 favourites
  • 5 posts
From the Asset Store
Template for a generic save / load system, fully documented in comments and video
  • So, I have a game that the "save game system" is saving .save files to %AppData% but I noticed it's extremely easy to manipulate these values, since the player can just edit the .save file and change the number inside, for example number of coins, how can I make it impossible for the players to edit the save files so easily?

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • You can either store the information in a format that the user can't easily figure out or encrypt the information.

    To save in a format the player can't easily figure out, you would convert the data prior to saving to something like a bit stream. A bit stream is a line of 0s and 1s built from converting your information to bits, zero padding each piece so the stream has each piece of information in exactly the same location, then appending all together so it is one long line. You have to parse and convert this back to the actually data when the file is loaded. This type of save is still able to be edited by more clever users but it will be harder.

    Encryption may be easier if you use a plugin. There are couple encryption plugins. I haven't tried them but they may be what you are looking for. You simply run the encrypt action when saving. Then decrypt when loading. This will make the file nearly impossible to modify and if the user tries to edit it, it will most likely corrupt the file. The only way to see and change the file information is with the correct encryption key and algorithm.

  • You can either store the information in a format that the user can't easily figure out or encrypt the information.

    To save in a format the player can't easily figure out, you would convert the data prior to saving to something like a bit stream. A bit stream is a line of 0s and 1s built from converting your information to bits, zero padding each piece so the stream has each piece of information in exactly the same location, then appending all together so it is one long line. You have to parse and convert this back to the actually data when the file is loaded. This type of save is still able to be edited by more clever users but it will be harder.

    Encryption may be easier if you use a plugin. There are couple encryption plugins. I haven't tried them but they may be what you are looking for. You simply run the encrypt action when saving. Then decrypt when loading. This will make the file nearly impossible to modify and if the user tries to edit it, it will most likely corrupt the file. The only way to see and change the file information is with the correct encryption key and algorithm.

    Thank your for the information, I found an encryption plugin called Forge which seems to be a good plugin and the most simple to use, however I'm still not sure how to use...

  • So, I have a game that the "save game system" is saving .save files to %AppData% but I noticed it's extremely easy to manipulate these values, since the player can just edit the .save file and change the number inside, for example number of coins, how can I make it impossible for the players to edit the save files so easily?

    Generally speaking, DON'T USE plugin for such tasks. Build your own simple algorithm:- just make the save data so complicated that it is practically impossible for user to become oversmart

    Issue with plugin is that you can't be sure how it works. Even worse,you can't be sure that whether it will be maintained in the future.

    Just spend some time on a basic algorithm. Remember the task:- make the data unreadable to the user.

  • > So, I have a game that the "save game system" is saving .save files to %AppData% but I noticed it's extremely easy to manipulate these values, since the player can just edit the .save file and change the number inside, for example number of coins, how can I make it impossible for the players to edit the save files so easily?

    Generally speaking, DON'T USE plugin for such tasks. Build your own simple algorithm:- just make the save data so complicated that it is practically impossible for user to become oversmart

    Issue with plugin is that you can't be sure how it works. Even worse,you can't be sure that whether it will be maintained in the future.

    Just spend some time on a basic algorithm. Remember the task:- make the data unreadable to the user.

    Ok but how do I do it? I have no idea.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)