• 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?".
  • 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.

[FR] Expanding the Pokedex

218
Posts
10
Years
  • Seen Nov 12, 2021
Does this work with Leafgreen since it does with firered?

Please stop posting in every thread to ask if it works with leafgreen. Most of the time the answer is no, if you have a problem with your Fire Red rom then it means it's not clean or it's not the 1.0 version. Most (if it's not all) of the time the features added for fire red won't work with leafgreen because the offset are slightly different
 
457
Posts
10
Years
  • Age 29
  • Seen Apr 9, 2024
Just after the first like 5 byte changes, when he says to test, my Pokedex does start up. The only thing is that it shows every Pokemon as being caught already. I'm near positive I made all of the byte changes right. I chose 0x720000 and 0x721000 as my CAUGHT and SEEN offsets. I tried putting them in with and without +1 with no change in the result. Yes, I flipped them to '00 00 72' and '00 10 72'.

Thanks with any help ahead of time.

Whoa! Are those RAM parts? I'm sure that part should be using RAM offsets not ROM offsets.
 
349
Posts
13
Years
  • Seen Dec 17, 2018
Please stop posting in every thread to ask if it works with leafgreen. Most of the time the answer is no, if you have a problem with your Fire Red rom then it means it's not clean or it's not the 1.0 version. Most (if it's not all) of the time the features added for fire red won't work with leafgreen because the offset are slightly different

I can go around asking if something works for one but not the other if i want, i want to know as much as i can and weigh my options although i thank you for your response because you may have helped with the firered. I will continue to ask what questions i would to be answered.


Nor is it Every thread. ._. i hardly post at all.
 
218
Posts
10
Years
  • Seen Nov 12, 2021
I can go around asking if something works for one but not the other if i want, i want to know as much as i can and weigh my options although i thank you for your response because you may have helped with the firered. I will continue to ask what questions i would to be answered.


Nor is it Every thread. ._. i hardly post at all.

Of course you can, I didn't meant to prevent you to do anything you want, I said "please stop" because my answer, as I said, was available for every future question concerning the compatibility.

Also before asking, use your "search" function, it'll bring you a ton of answers

Now enjoy the different hacks :)
 

pokefreak890

The One that will make everything great
853
Posts
9
Years
  • Age 26
  • Seen May 18, 2023
Okay sorry to bring this back but I need help I understand everything in this tutorial except

Using this, pick two locations in the RAM freed by JPAN's hack to be where Seen and Caught flags will go. Note that later steps will be easier if you put them next to each other.

Where do I find two free ram locations by the Joan save block hack isnit any two free space offsets with fsf and also I don't understand how to do this as well


Change x104B10 to point to new SEEN flags.

Same with the caught flags if anyone can help that would be great
 

Epsilon

Shiny Scizor
249
Posts
17
Years
I expanded the number of pokémon, and they work, complete with their dex entries. However, when I catch a new pokémon for the first time, this glitched screen shows up and sometimes crashes the game in VBA and always in No$GBA. Anyone familiar with this problem? Also, they only seem to show up in the National Dex list, not in the habitats, or weight categories, although these have been programmed.

LSCTCmv.png
 

pokefreak890

The One that will make everything great
853
Posts
9
Years
  • Age 26
  • Seen May 18, 2023
Okay epsilion I need your help I understand how to do everything except for
pick two locations in the RAM freed by JPAN's hack to be where Seen and Caught flags will go. Note that later steps will be easier if you put them next to each other

Is it like two new free space offsets?

And also how do I make these happen because I'm also confused here
Change x104B10 to point to new SEEN flags
Change x104B5C to point to new CAUGHT flags

Put a pointer to whichever set of flags comes first at x549D0.
Put 20 1C 00 00 at x549b0.
Put XX 22 at x549b6, where XX is the number of bytes taken by your dex flags.
Put 20 1C at x549bc.
Put YY 30 at x549be, where YY is the number of bytes between the sets of flags. YY is probably the same as XX, but it doesn't have to be.
Put XX 22 at x549c2, where XX is the number of bytes taken by your dex flags
 

pokefreak890

The One that will make everything great
853
Posts
9
Years
  • Age 26
  • Seen May 18, 2023
I need help I understand everything in this tutorial except

Using this, pick two locations in the RAM freed by JPAN's hack to be where Seen and Caught flags will go. Note that later steps will be easier if you put them next to each other.

Where do I find two free ram locations by the Joan save block hack isnit any two free space offsets with fsf and also I don't understand how to do this as well


Change x104B10 to point to new SEEN flags.

Same with the caught flags if anyone can help that would be great
 

DoesntKnowHowToPlay

Tiny Umbrella with Lots and Lots of Good
265
Posts
12
Years
  • Seen Feb 24, 2024
Updated to fix breeding, without this expanded evolved mons hatch as their current stage (e.g.: Lilligants produce eggs containing more Lilligant instead of Petilil)

To fix breeding, write the ID of your last slot with meaningful evolution data at x459EC (pick an odd number; it's okay to go higher as long as it's not past the number of mons you actually have)
Then, write half of one less than that at x459CC.
If that requires more than one byte, write a quarter of one less than that instead, and change the x40 at x459CE to an x80.
If you are also expanding the number of evolutions, change the x28s at x4598A and x4598E to the new size of the evolution struct.
 

Gamer2020

Accept no Imitations!
1,062
Posts
15
Years
At x1025ec, you'll find a byte. This byte times eight is the amount of memory allocated for the pokedex.
If you have less than 510 mons, replace the byte with 1/2 your dex length.
If you have less than 1020 mons, set it to 1/4 your dex length and put 40 01 at x1025EE.
If you have more than 1020 mons, you have issues.

If for some reason someone wanted more than 1020 for this, the following would work.

Code:
.text
.align 2
.thumb
.thumb_func
.global PokedexLimitFR
/*at 081025E8, place 00480047XXXXXXXX where XXXXXXXX is the location of this routine. */
main:

ldr     r0,[r5]
strb    r4,[r0]   
ldr  r0, .Limit
nop
ldr     r1, .Return_Offset
bx      r1

.align 2
.Return_Offset:
    .word 0x081025F1
.Limit:
    .word 0x00000C10
Quick and dirty but it gets the job done.
 
Last edited:

DoesntKnowHowToPlay

Tiny Umbrella with Lots and Lots of Good
265
Posts
12
Years
  • Seen Feb 24, 2024
Pretty sure you can also just bit-shift by one more, I just stopped grabbing opcodes at 1020 because I'm a lazy tutorial writer and going past 999 dex entries demands extra accommodations in various parts of the interface anyway. Edited that bit in the OP to clarify and be less rude.
 

Gamer2020

Accept no Imitations!
1,062
Posts
15
Years
Pretty sure you can also just bit-shift by one more, I just stopped grabbing opcodes at 1020 because I'm a lazy tutorial writer and going past 999 dex entries demands extra accommodations in various parts of the interface anyway. Edited that bit in the OP to clarify and be less rude.
Yeah I know. I just wanted an easy way for PGE to just add in the value without needing to worry about shifting.
 

Gamer2020

Accept no Imitations!
1,062
Posts
15
Years
If you decide to delete the old data while repointing you may notice that the intro may break because it is pointing to the old image pointer locations. Simply repoint the following pointers to the pointers for whatever Pokemon image you want to use in the intro.

130FA0 [Pointer to sprite pointer] [Pointer to pal pointer]

Also I seem to have 130F4C marked in my notes but I never labeled it. I think this is maybe the cry that is played in the intro???
 

thedarkdragon11

New World Pirate
530
Posts
14
Years
If for some reason someone wanted more than 1020 for this, the following would work.

Code:
.text
.align 2
.thumb
.thumb_func
.global PokedexLimitFR
/*at 081025E8, place 00480047XXXXXXXX where XXXXXXXX is the location of this routine. */
main:

ldr     r0,[r5]
strb    r4,[r0]   
ldr  r0, .Limit
nop
ldr     r1, .Return_Offset
bx      r1

.align 2
.Return_Offset:
    .word 0x081025F1
.Limit:
    .word 0x00000C10
Quick and dirty but it gets the job done.

This has no bugs right? Say for instance, someone wants to expand up to 2039 slots? Estimation for up to Gen. 9 including every form/es...
 

pokefreak890

The One that will make everything great
853
Posts
9
Years
  • Age 26
  • Seen May 18, 2023
How exactly does that routine work and does it have any bugs that is associated with it because this is very interesting and I'm not surprised if there is a drawback to this
 
23
Posts
9
Years
  • Age 34
  • Seen May 14, 2022
Good afternoon, I have asta 1089 slots, how can i do to be displayed on the pokedex ? Since it can only be asta 999
 

Gamer2020

Accept no Imitations!
1,062
Posts
15
Years
This has no bugs right? Say for instance, someone wants to expand up to 2039 slots? Estimation for up to Gen. 9 including every form/es...

How exactly does that routine work and does it have any bugs that is associated with it because this is very interesting and I'm not surprised if there is a drawback to this

Good afternoon, I have asta 1089 slots, how can i do to be displayed on the pokedex ? Since it can only be asta 999

This does nothing different than what is already stated in the tutorial. It is simply a lazier way to change the value. As DoesntKnowHowToPlay already stated, it is not possible to have more than 999 without other modifications.
 
Back
Top