• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Forum moderator applications are now open! Click here for details.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Code: Trainers with EVs

Mystery Man

Don't be like me!
207
Posts
12
Years
  • Age 28
  • Seen Aug 21, 2023
I completely over looked that, thanks a bunch! That said, it just begins freezing. I looked around and nothing else seems to be altered, not even 0x011624 (that's still 20 1C 33 1C 2C F0 14 FA like Mystery Man suggested in the ASM Help thread). Any other iceas

Just to be sure, have you made the changes at 0x115F6, 0x1162C, 0x3DC70, and 0xF90000 to your ROM? If not, go to those offsets in the bin file, copy the bytes before the sea of zeros, and paste them onto the EXACT same location in your ROM. Also, make sure that at 0xF00000 is not FF. This is where the game will read the EVs and such. If it is FF, the game will freeze.
 

kearnseyboy6

Aussie's Toughest Mudder
300
Posts
15
Years
  • Seen Jun 22, 2019
Just to be sure, have you made the changes at 0x115F6, 0x1162C, 0x3DC70, and 0xF90000 to your ROM? If not, go to those offsets in the bin file, copy the bytes before the sea of zeros, and paste them onto the EXACT same location in your ROM. Also, make sure that at 0xF00000 is not FF. This is where the game will read the EVs and such. If it is FF, the game will freeze.

Further to this, make sure you copy bytes aligned. It's explained in the thread but one of the 00's need to be copied.

Also the ROM will only crash if the nature is above 0x20 or something. And keep the IV's between 0x0 and 0x1F
 

Cruztown

Squirtle Squirt.
45
Posts
11
Years
  • Age 30
  • Seen Feb 1, 2024
Just to be sure, have you made the changes at 0x115F6, 0x1162C, 0x3DC70, and 0xF90000 to your ROM? If not, go to those offsets in the bin file, copy the bytes before the sea of zeros, and paste them onto the EXACT same location in your ROM. Also, make sure that at 0xF00000 is not FF. This is where the game will read the EVs and such. If it is FF, the game will freeze.

Thank you for the response. I have copied all of the altered bytes at those four locations. At xF00000, the exact first spread I put down was as follows
0F 00 00 00 1F FC 00 00 06 FC 00 07 01 00 00 00

Further to this, make sure you copy bytes aligned. It's explained in the thread but one of the 00's need to be copied.

Also the ROM will only crash if the nature is above 0x20 or something. And keep the IV's between 0x0 and 0x1F
Thank you, as well, for a reply. I haven't tried using any nature values above 0x20. The only one I've actually tried was modest, which seems to be 0x0F.
 
Last edited:

leyn09

Truant Trainer
84
Posts
12
Years
Hello. I have some questions.

It's confusing on what should I copy and paste-write from the assembled bin to the rom. Am I getting the correct bytes in the screenshot below (0x1162c,0x115f6,0x3dc70) ?
Spoiler:


I've put my EV spread table at 0x860510 and put the EV Trainer routine at 0x850000
screenshot of EV spread table:
Spoiler:


I tried testing it (Trainer with custom held item and moves, 2 pokemon set using unnamed editor with IV 0 and latter, 1) and fortunately, it doesn't restart or hang. Tho, the ev spread and the ball modification (default pokeball still shows) doesn't work. My ROM is supported by MrDollSteak Rombase and JPAN FR Hacked Engine. Here is my EV trainer routine:
Spoiler:


Is there any problem? Thanks in advance! :)
 
Last edited:

kearnseyboy6

Aussie's Toughest Mudder
300
Posts
15
Years
  • Seen Jun 22, 2019
Hello. I have some questions.

It's confusing on what should I copy and paste-write from the assembled bin to the rom. Am I getting the correct bytes in the screenshot below (0x1162c,0x115f6,0x3dc70) ?
Spoiler:

At 0x115F6 you grabbed 4 extra bytes at the end. That's all I can find sorry, it looks good.

Could be JPAN, but I'm sure Doesnt would have said something if it didn't work.
 
46
Posts
9
Years
  • Age 32
  • Seen Dec 16, 2015
The instructions for inserting this are beyond horrid. Has there been a tutorial made by someone who's competent?
 

DoesntKnowHowToPlay

Tiny Umbrella with Lots and Lots of Good
265
Posts
12
Years
  • Seen Feb 24, 2024
It's confusing on what should I copy and paste-write from the assembled bin to the rom. Am I getting the correct bytes in the screenshot below (0x1162c,0x115f6,0x3dc70) ?
You've got four bytes too many at x115F6. Rule of thumb is that instructions other than bl are two bytes; bl is four bytes. With the exception of lsl r0, r0, #0x0, instructions won't be 00 00 either.

I don't know if JPAN's engine would do anything, to be honest. I do know that it messes around with trainer loading for its level scaling options though, so there's a significant possibility it does.


The instructions for inserting this are beyond horrid. Has there been a tutorial made by someone who's competent?
You should probably double-check which subforum you're posting in.

Read this if you haven't: http://www.pokecommunity.com/showpost.php?p=8526603&postcount=199

If you have then just implement this your own way, since you clearly know what you're doing better than me ^_^
 

kearnseyboy6

Aussie's Toughest Mudder
300
Posts
15
Years
  • Seen Jun 22, 2019
Spoiler:


This is meant to be an extension of this hack, you can apply it if you want it to load a specific entry in the EV table depending on the var you select.

Eg: 0x40F7 set to 0x1 will load entry number 1.

If it is set to 0x0 it will load the routine as normal.
 

leyn09

Truant Trainer
84
Posts
12
Years
At 0x115F6 you grabbed 4 extra bytes at the end. That's all I can find sorry, it looks good.

Could be JPAN, but I'm sure Doesnt would have said something if it didn't work.

You've got four bytes too many at x115F6. Rule of thumb is that instructions other than bl are two bytes; bl is four bytes. With the exception of lsl r0, r0, #0x0, instructions won't be 00 00 either.

I don't know if JPAN's engine would do anything, to be honest. I do know that it messes around with trainer loading for its level scaling options though, so there's a significant possibility it does.

EDIT: Thanks for answering. I'll try your suggestions!

EDIT2: Still doesn't work. :( Perhaps, it really is JFRHE's incompatibility? It's quite saddening. :O How could I make this work? :(
 
Last edited:

leyn09

Truant Trainer
84
Posts
12
Years
Spoiler:


This is meant to be an extension of this hack, you can apply it if you want it to load a specific entry in the EV table depending on the var you select.

Eg: 0x40F7 set to 0x1 will load entry number 1.

If it is set to 0x0 it will load the routine as normal.

If I were to utilize this, should I insert it to the EV trainer routine or I'll compile it on a separate routine?

If I'm inserting this, should insert the contents of org .F90000 to the org .F90000 of my original routine and the contents of .align2 to the .align2 of my original routine
 

Mystery Man

Don't be like me!
207
Posts
12
Years
  • Age 28
  • Seen Aug 21, 2023
If I were to utilize this, should I insert it to the EV trainer routine or I'll compile it on a separate routine?

If I'm inserting this, should insert the contents of org .F90000 to the org .F90000 of my original routine and the contents of .align2 to the .align2 of my original routine

I went through a similar problem myself. My issue stemmed from the set trainer level specials JPAN made, so my solution was to revert the conflicting changes the trainer level specials made to what an unhacked Firered has. This is what resolved it for me:

Go to 0x11624. If you are using JPAN's hacked engine or the particular special I was talking about, the bytes there should be "00 48 00 47 ?? ?? ?? 08". Overwrite those bytes with what an unhacked Firered has, which is "20 1C 33 1C 2C F0 14 FA". That should stop the freezing.
 
Last edited:

leyn09

Truant Trainer
84
Posts
12
Years
I went through a similar problem myself. My issue stemmed from the set trainer level specials JPAN made, so my solution was to revert the conflicting changes the trainer level specials made to what an unhacked Firered has. This is what resolved it for me:

Go to 0x11624. If you are using JPAN's hacked engine or the particular special I was talking about, the bytes there should be "00 48 00 47 ?? ?? ?? 08". Overwrite those bytes with what an unhacked Firered has, which is "20 1C 33 1C 2C F0 14 FA". That should stop the freezing.

This will really help me! Though, if I were to use this, The EV trainer routine will work but I'll need to sacrifice the set trainer level (var 0x4052)?
 

Mystery Man

Don't be like me!
207
Posts
12
Years
  • Age 28
  • Seen Aug 21, 2023
This will really help me! Though, if I were to use this, The EV trainer routine will work but I'll need to sacrifice the set trainer level (var 0x4052)?

Correct. These changes are integral to making the set trainer level specials work. So it's either that, or the EV trainer routine for now at least.
 

leyn09

Truant Trainer
84
Posts
12
Years
Correct. These changes are integral to making the set trainer level specials work. So it's either that, or the EV trainer routine for now at least.

Hmmm... Both of those features are important to me. :O There must be some way, like ASMing set trainer level in a different approach though I have currently no idea about that. Setting that aside, thank you Mystery Man!
 
417
Posts
9
Years
  • Age 33
  • Seen Nov 20, 2016
First of all, this looks incredibly useful, so thank you :)

Now the question: in your instructions for the EV Spread Table, your list only adds up to 15 bytes. Am I correct in my assumption that you're merely missing the new spot for IV? Based on the second post in the thread, I'm guessing right before the HP EV?
 
Last edited:

Splash

But nothing happened.
658
Posts
14
Years
I managed to make it work after looking at all the posts xD Thanks to Doesnt, Mysteryman, leyn09 and kearnseyboy6!

Noob question here:
I already have something in the EV Value of 0 but what if i dont have anything set in 255 will something go wrong if I use that value? Or will it just ignore the EV Value? I dont have a clue how they work so I just wanna play it safe hehe
 

Criminon

Forever Spriting
265
Posts
11
Years
Hmmm, damnit. I just spent a good while looking into this and following what everyone is saying, and it looks like there might be incompatibility with the JPAN engine. I have also followed the steps, and it seems like its not working. The pokeballs aren't changing and that's really my only indication. I made sure custom item / moves were on. Made sure to copy all addresses to their proper places. There doesn't seem to be a crash. Nothing odd happens, it just acts like the code isn't there.
 
Last edited:

kearnseyboy6

Aussie's Toughest Mudder
300
Posts
15
Years
  • Seen Jun 22, 2019
Hmmm, damnit. I just spent a good while looking into this and following what everyone is saying, and it looks like there might be incompatibility with the JPAN engine. I have also followed the steps, and it seems like its not working. The pokeballs aren't changing and that's really my only indication. I made sure custom item / moves were on. Made sure to copy all addresses to their proper places. There doesn't seem to be a crash. Nothing odd happens, it just acts like the code isn't there.

You could be 100% right, to be 100% sure test it on a clean fire red ROM and it should work. Then you will know that JPAN is to blame...
 

leyn09

Truant Trainer
84
Posts
12
Years
Hmmm, damnit. I just spent a good while looking into this and following what everyone is saying, and it looks like there might be incompatibility with the JPAN engine. I have also followed the steps, and it seems like its not working. The pokeballs aren't changing and that's really my only indication. I made sure custom item / moves were on. Made sure to copy all addresses to their proper places. There doesn't seem to be a crash. Nothing odd happens, it just acts like the code isn't there.

I think this would help you. I've had encountered that kind of frustration too.

I went through a similar problem myself. My issue stemmed from the set trainer level specials JPAN made, so my solution was to revert the conflicting changes the trainer level specials made to what an unhacked Firered has. This is what resolved it for me:

Go to 0x11624. If you are using JPAN's hacked engine or the particular special I was talking about, the bytes there should be "00 48 00 47 ?? ?? ?? 08". Overwrite those bytes with what an unhacked Firered has, which is "20 1C 33 1C 2C F0 14 FA". That should stop the freezing.
 

Criminon

Forever Spriting
265
Posts
11
Years
You could be 100% right, to be 100% sure test it on a clean fire red ROM and it should work. Then you will know that JPAN is to blame...

I wouldn't say JPAN is to blame, but I definitely will. I still have the bin, so it should be easy replacing.

I think this would help you. I've had encountered that kind of frustration too.

Thanks! I'll give it a shot! Was really looking forward to making all trainer battles in the game follow this type of color coded system. pokeball, greatball, ultraball, masterball indicating their level of power. Kind of like rares and elites in mmos etc. Was hella bummed when it didn't work, so I'm really hoping this does the trick.
 
Back
Top