Paper Mario has two dominant modding tools: Star Rod Classic and Paper Mario DX.
Because the way all of the game's code and assets are laid out and how you approach modding the game are very different between eachother, most documentation will be split from here on.
Use Star Rod Classic Easier to get started with, but does not allow modding all of the game's code and assets, a lot of things are not documented with it, and a lot of more complex things require reading and/or modifying assembly. No longer recieves major updates.
Use Paper Mario DX More experimental but it is an exhaustive and pretty well-documented resource of everything in the game. Code is in C rather than assembly, making everything (aside from scripts) much more easily readable and modifiable. In active development.
Recommendations if you are unsure
Star Rod Classic has both a lower skill floor and a lower skill ceiling. It is easier to use, but it limits the types of mods you can make without writing a ton of assembly code.
Paper Mario DX is more complex but it allows you to do anything that Star Rod Classic does, and a lot more. Because you're working in the actual source code, you can change anything - new partners, new status effects, new overworld abiilites, or things nobody's thought of yet.
- If you are on Windows 7 or 8, use Star Rod Classic (DX is not supported).
- If you are sure you will never want to write any custom code (e.g. make new mechanics), use Star Rod Classic.
- If you want to make cutting-edge mods, use Paper Mario DX.
- If you are a programmer, use Paper Mario DX.
- If you will be working on your mod for a long time, consider Paper Mario DX because as it becomes easier to use, it will become the primary method for modding.