
How to Hack This page is an explanation of how to use the hacking lists on my shrines for people who do not yet know how to hack save states. First off, you will need a hacking program. Go to the downloads page of this shrine and download and install the one there, that is the one I use. Once it is installed, open it up and open a Paper Mario save state. There is a column of 8 digit numbers all the way to the left. You can not alter that column. It is just there to determine where you are in the code. Then there are 8 columns of 4 digit numbers (or, to be more exact, 16 columns of 2 digit numbers with spaces after every second set of 2 digit numbers). Those are the things you alter. Ignore the stuff to the right of that. If you're opening this program for the first time there may be a small pop up window towards the upper right hand portion of the screen. Close that and don't ever worry about it again. On the status bar (the bar at the bottom of the hex editor) you will see a thing which says offset: then an 8 digit number. That is the place in the code your cursor is located. My hacking list is divided into two sections, places in the code and things to put into places in the code. If you want to edit Mario's Speed, it should read 20418, so go down a bunch of rows and over 8 columns so that it does. There are two different ways to hack a save state in Paper Mario. The first is just putting in a number. You use this one for altering things which are numbers (like a character's level, HP, agility, etc.). For example, if you want Mario's BP to be 7, you would go to the offset in the code which controls his BP, and change it to 7. Not tough. There is a catch though. Save states are saved in hexidecimal (base 16), which is not the normal way of counting. Normally the first number to the left of the decimal is the 1s column (note that 1 is 10^0), the one to the left of that is the 10s column (note that 10 is 10^1), the one to the left of that is the 100s column (note that 100 is 10^2), and the one to the left of that is the 1000s column (note that 1000 is 10^3). However, in hexidecimal the first column to the left of he decimal is the 1s column (note that 1 is 16^0), the one to the left of that is the 16s column (note that 16 is 16^1), the one to the left of that is the 256s column (note that 256 is 16^2), and the one to the left of that is the 4096 column (note that 4096 is 16^3). So in order to make 0 through 15 all fit into the 1s column they use letters in addition to numbers. A 0 in decimal (regular numbers) is a 0 in hexidecimal, a 1 is a 1, a 2 is a 2... a 9 is a 9, but a 10 in decimal is an A in hexidecimal, an 11 is a B, a 12 is a C, a 13 is a D, a 14 is an E, and a 15 is a F. Keep that in mind when entering numbers. Just as a quick reference, 99 in decimal is 63 in hexidecimal (9*10^1+9*10^0=6*16^1+3*16^0). If this is too hard for you, just remember that Hex Workshop comes with a calculator that will convert decimal to hexidecimal (and vice versa). The second is just plugging in the value for whatever it represents. This is used for items and badges. If you want Mario to have a Jammin' Jelly in his first item slot, go to the offset for the first item slot (10FBA0) and enter the value for a Jammin' Jelly (A200).
