Hacking Ammo - The Easy Way and the Hard Way by Viper187
An Infinite Ammo type code is almost always a simple task, but some games have a few tricks...
The Typical Approach
For the majority of games, finding ammo is a simple task. Do a known value search for the current amount of ammo, cap somebody, search for the new value, repeat. Test results, and enjoy Infinite Ammo.
Complicating Things
When the typical method of finding ammo fails, this may mean the game is using a float value. Floats are 32-bit hex values, which the N64's co-processor reads as decimal numbers (like 100.0). These can be found by using a 16/32-bit unknown value search and just doing less than searches while losing ammo. This is how it was done in the old days.
However, there is a shortcut, and it's called FloatConvert.
Now, say the game is Star Wars Shadows of the Empire. Dash has 10 Seekers. Punch 10 (or 10.0) into FloatConvert and click Convert to Hex. It spits out 0x41200000. Now do a 32-bit search for that value, shoot something, and repeat. Results will probably be down to one or two after the second search, so try them. If the result is 0x801A7174, setting the upper 16-bits there will change Dash's ammo. Use FloatConvert to find a suitable value, like 100.0 (0x42C80000).
Writing a 32-bit value on N64 requires two 16-bit codes:
811A7174 42C8
811A7176 0000
Writing the full 32-bits isn't required in most cases. The second line (lower 16-bits) can be omitted.
An Infinite Ammo type code is almost always a simple task, but some games have a few tricks...
The Typical Approach
For the majority of games, finding ammo is a simple task. Do a known value search for the current amount of ammo, cap somebody, search for the new value, repeat. Test results, and enjoy Infinite Ammo.
Complicating Things
When the typical method of finding ammo fails, this may mean the game is using a float value. Floats are 32-bit hex values, which the N64's co-processor reads as decimal numbers (like 100.0). These can be found by using a 16/32-bit unknown value search and just doing less than searches while losing ammo. This is how it was done in the old days.
However, there is a shortcut, and it's called FloatConvert.
Now, say the game is Star Wars Shadows of the Empire. Dash has 10 Seekers. Punch 10 (or 10.0) into FloatConvert and click Convert to Hex. It spits out 0x41200000. Now do a 32-bit search for that value, shoot something, and repeat. Results will probably be down to one or two after the second search, so try them. If the result is 0x801A7174, setting the upper 16-bits there will change Dash's ammo. Use FloatConvert to find a suitable value, like 100.0 (0x42C80000).
Writing a 32-bit value on N64 requires two 16-bit codes:
811A7174 42C8
811A7176 0000
Writing the full 32-bits isn't required in most cases. The second line (lower 16-bits) can be omitted.
Comment