Finding new data offsets

Method 1, binary diff

Method 2, find value with HxD

To use this method you need two save games, before and after a change. In this example I want to find the offset for the 'Mystic Potion', to do this I first find a save that has at least 1 of the item, then I use / sell one of the item and save in another slot. In theory the only difference between the two save games is having one less of the potion, the increase in gold because of selling it, and the files play time.Once you have two save files press ctrl-k in HxD to start a compare and select the two save files, this will open the two files in two windows, you can now press F6 which jumps to the next difference in the save file until you find the change you want, in this example I had 6 mystic potions and I sold 1 to give me 5 so I press F6 until I find a change in the data that matches which will be the offset for the item.In some cases it is simply searching the file is good enough to find what you want, this works best with large numbers since there are way more unique two or four byte integers than one byte ones.In this example I know the value for the party's gold in game is 35507 so I open up the save file in HxD and press ctrl-f to search. The data type we want is an integer number, this means that it it will search the integer values that the hex represents rather than the hex itself. Make it is searching Little Endian values since it is the format used in Grandia II saves, If you know bitwidth of the data you are searching for set it, otherwise set it to any. Finally enter the integer value and search.