RubyGuides
Share this post!

Game hacking: messing with game saves.

Would you like to skip that annoying level or perhaps get some extra cash? Well, you are in the right place! We are going to have some fun by editing a savegame and get a small advantage. Welcome to game hacking. 🙂

Out test subject is going to be Capsized. A platformer game I picked up from HumbleIndieBundle. Let’s get right into it!


Finding the file

Our first step will be finding where the save data is located. We can start in our user profile, usually c:\Users\ and look for a folder with our game name. In this case we won’t find Capsized, but Revenge of the titans likes to save its data this way.

1

Now we can look under %userprofile%\AppData\Local. This is a hidden folder so you will have to manually type the name or enable showing hidden folders to be able to see it. Again, we will look for a folder with the game’s name. If this doesn’t work we will have to bring the guns out, its the turn for Process Monitor.

Procmon is a tool that will let us see all the file and registry operations happening on our system. We can use this to locate the save file. To make things easier for us we are going to add a filter for the executable name, so we will only see events coming from the game itself, we will also disable registry logging.

game hacking

The event types are: Registry, File, Network, Process, Profiling. Click on the first one to disable it so we can focus on files for now. The other types produce far less events, but you can also disable them if you want.

3

Now we will launch the game and we will see the events scroll by. To cut the amount of noise we will filter out the FileRead event and look for writes, because they are less common, to do this we can right-click on this event and select ‘Exclude ReadFile’.

4

Now we want to force a save game, in the case of Capsized the most reliable way I found is completing a level. After this we look at procmon and there it is, looks like we found our save game.

5

The next step will be to figure out how we can edit the saved game data for our own benefit. To be continued in part 2!