Advertiser Content

BirdstarCat13

Male
RenSkall island
Seen 3 Days Ago
Posted April 10th, 2019
476 posts
1.8 Years
In short, I want to know if its possible to make the cap on EVs and IVs higher. I'd like to shoot for removing the 510 limit completely (can have up to 255 in each stat despite the fact that the 3 over 252 doesn't do anything bc you need 4 EVs to increase the stat lol) and I want IVs to go up to 63 instead of 31. I'd prefer to be able to do this with a few hex edits but if ASM is required then it would still be good to mention that so this thread can remain useful for others that want to do the same. :)
Seen 3 Weeks Ago
Posted May 23rd, 2019
88 posts
2.7 Years
That one answer isn't very helpful lmao
EVs are stored as single bytes, so increasing beyond 0xFF (255) will require altering the pokemon data structure and every function that loads relevant data from it.

Similarly, IVs are stored as bits, so increasing beyond 31 would require re-structuring the data structures and related functions.

BirdstarCat13

Male
RenSkall island
Seen 3 Days Ago
Posted April 10th, 2019
476 posts
1.8 Years
EVs are stored as single bytes, so increasing beyond 0xFF (255) will require altering the pokemon data structure and every function that loads relevant data from it.

Similarly, IVs are stored as bits, so increasing beyond 31 would require re-structuring the data structures and related functions.
Ok, then what about increasing the cap on total IVs? ie, more than 510 total?
-------------------------
I hate signatures that are just a line of text without any clear division. You weirdos know who you are ;)
Male
California
Seen August 11th, 2018
Posted July 27th, 2018
82 posts
1.5 Years
Similarly, IVs are stored as bits, so increasing beyond 31 would require re-structuring the data structures and related functions.
Tldr, raising the cap to either ev's or iv's would require major asm. Either rewriting the whole routine or hooking in and making your own. There is a routine that lowers evs, I'm sure that can be modified easily to lower even more but not raise.

BirdstarCat13

Male
RenSkall island
Seen 3 Days Ago
Posted April 10th, 2019
476 posts
1.8 Years
Tldr, raising the cap to either ev's or iv's would require major asm. Either rewriting the whole routine or hooking in and making your own. There is a routine that lowers evs, I'm sure that can be modified easily to lower even more but not raise.
That seems like really unintuitive coding. You'd think they'd literally just have it hardcoded with "510" just *in the code*
-------------------------
I hate signatures that are just a line of text without any clear division. You weirdos know who you are ;)

Mr.Pkmn

Ordinary ASM Magician

Seen 1 Week Ago
Posted July 31st, 2018
54 posts
11.3 Years
That seems like really unintuitive coding. You'd think they'd literally just have it hardcoded with "510" just *in the code*
Of course they did as you said. The label MAX_TOTAL_EVS holds the value 510, which can be easily changed.

However I suggest you to take another approach: change IVs and EVs by changing the formula for calculating pokemon stats. If you want more EVs, just make them increase stats for every 2 points instead of 4.

You don't have to change the structure, just how the value is used by the game! :laugh-squinted:

BirdstarCat13

Male
RenSkall island
Seen 3 Days Ago
Posted April 10th, 2019
476 posts
1.8 Years
just make them increase stats for every 2 points instead of 4.

You don't have to change the structure, just how the value is used by the game! :laugh-squinted:
I feel like an idiot for not thinking of that sooner >_<

So...how would I do that? I definitely should have mentioned I'm on FireRed, not Emerald.
-------------------------
I hate signatures that are just a line of text without any clear division. You weirdos know who you are ;)

Mr.Pkmn

Ordinary ASM Magician

Seen 1 Week Ago
Posted July 31st, 2018
54 posts
11.3 Years
Change with an hex editor the byte from 80 to 40 at following offsets:

0x03E582 hp
0x03E5CE atk
0x03E614 def
0x03E65A spd
0x03E6A0 satk
0x03E6E6 sdef

This changes the EV division from 4 to 2.

BirdstarCat13

Male
RenSkall island
Seen 3 Days Ago
Posted April 10th, 2019
476 posts
1.8 Years
Change with an hex editor the byte from 80 to 40 at following offsets:

0x03E582 hp
0x03E5CE atk
0x03E614 def
0x03E65A spd
0x03E6A0 satk
0x03E6E6 sdef

This changes the EV division from 4 to 2.
Nice! In theory, could I make those bytes 20, to make each 1 EV increase the stat by 1, or change it to 10, to make 1EV=2stats, or even 5, to make 1 EV=4, etc?
-------------------------
I hate signatures that are just a line of text without any clear division. You weirdos know who you are ;)

Mr.Pkmn

Ordinary ASM Magician

Seen 1 Week Ago
Posted July 31st, 2018
54 posts
11.3 Years
Nice! In theory, could I make those bytes 20, to make each 1 EV increase the stat by 1, or change it to 10, to make 1EV=2stats, or even 5, to make 1 EV=4, etc?
Unfortunately no, it would require to change the instruction with different bytes.
Advertiser Content