- 476
- Posts
- 7
- Years
- Seen Feb 26, 2020
Altering the premier ball catch rate would be relatively simple. Its catch rate subroutine is the last entry in the table at 0802D54C. You would need to make a simple routine like so:
Spoiler:
Code:.text .align 2 .thumb .thumb_func main: mov r4, #0xF Return: ldr r0, .CatchCalc mov pc, r0 .align 2 .CatchCalc: .word 0x0802d62a
In order to add your own custom ball you would have to go through the whole tutorial, with a catch rate function as above, except mov r4, #0x64.
Changing the catch rates of the others would require inserting an assembly routine wherever the catch rate calculation function checks for great ball, ultra ball, and safari ball.
By textures do you mean the throwing images? You can easily repoint them from the relevant tables from step four on the first page.
Hope this helps!
This is extremely helpful, however, I'm a total muggle with the scripting and stuff. All I have done thus far is edit stats/names/textures for Pokémon/moves. I'm not even sure if the offsets shown work across all gen 3 games (I'm performing my hack on Emerald, and didn't see any mention specifying what game was used in the tutorial)
About the scripts and such - how are they implemented and edited? I found a script editor a few weeks back but it didn't seem to have these Pokéball scripts anywhere.
With the textures, I mean the item textures and stuff for the actual Pokéballs themselves. Like, if I added an extra ball, and waned it to have its own texture, instead of what the ROM would defaul to (regardless of if it defaults to a regular ball,defaults to be invisible, or defualts to a placeholder texture like the (?) texture for empty Pokémon slots)
I know I'm a complete noob with this and more than likely am not qualified to do something so (seemingly) complex so early on, so thanks for your patience :)
Last edited: