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

[ASM & Hex] Pokedex Glitch with Capturing Certain Expanded Pokemon (Fire Red)

  • 62
    Posts
    5
    Years
    Hi all, i have seen to run into a strange glitch that seems to effect my pokedex when catching certain expanded Pokemon

    I have a link to a video showing off the glitch below, but in short sometimes when I capture pokemon they just straight up skip the "Pokemon's data will be added to the Pokedex" cutscene and go straight to the nicknaming. When this happens the pokemon will sometimes not register to the dex at all. Other times I will run into a pokemon I've never encountered and when I select "bag" or "pokemon" and go back to the battle screen, the pokemon will appear caught. Going to my pokedex after running away or knocking it out will show that I have caught this pokemon even though I didn't.

    I was wondering if anyone has run into this issue in the past or if someone has any insight as to where I need to point my attention. All my expanded Pokes have habitat placements, so I'm not exactly sure what I'm missing here. I used PGE to expand my dex btw.

    Video with Glitch example: https://www.youtube.com/watch?v=0TfdKnjb2f8
     
    looks like pge didn't expand the flags properly/other routines are accessing the same area that the flags for being seen/caught are located. does it stay after battle or fluctuate at all?

    if it's relatively permanent, then it's probably an issue w pge not expanding properly (i.e. it repointed seen and caught flags to the same space)
    however, if this were the case, then it would apply to all the pokemon and not just buizel, especially if it were the exact same space

    another possibility is that the seen and caught flags overlap somehow (so that setting some of the seen flags sets other caught flags). but again, this doesn't seem to apply here, as seen flags overlapping that far into the caught flags would be kind of weird.

    EDIT: if it fluctuates (i.e. the flags are getting set and unset on various conditions), then something else is manipulating the flags, perhaps an asm routine you inserted or something. or maybe a wbto script you have in the game. something like that

    so my question to you: what asm routines have you used, if any? do any of them access the ram? have you disabled the "Previously on your quest..." memory system?
    a lot of the implementations of pokemon expansion use ram taken up by that

    EDIT2: and then another question for you: you willing to mess around with the rom in a hex editor directly?
     
    Last edited:
    Hi thanks for answering. I've used quite a few ASM routines over the passed year or so while working on the rom. Regarding getting rid of the Previously on your quest memories, I believe I used the GBA intro manager or some similar program to erase them. I'm comfortable using a hex editor, I've used it to repoint habitats and what not. In terms of specific routines that I've used, I've added a ton of abilities from the ability thread and have added a routine that can make a pokemon shiny upon interaction, however I'm not proficient enough in ASM to know whether or not they use RAM, I'm assuming they do. Also, this is just a random thought, but back when I was first learning how to use XSE, I remember using flags like 0x1200 and what not. The first "intro" part of the hack uses flags 1200-1210. Do you think that this could be part of the issue? I've since been using unused flags from the safe flag list, but when I first started I was using those flags. I'm not sure if they could have had an effect on the pokedex or not. Also I'm not too sure what WBTO means. Thanks for helping me figure this out I really appreciate it and sorry for the late reply
     
    looks like pge didn't expand the flags properly/other routines are accessing the same area that the flags for being seen/caught are located. does it stay after battle or fluctuate at all?

    if it's relatively permanent, then it's probably an issue w pge not expanding properly (i.e. it repointed seen and caught flags to the same space)
    however, if this were the case, then it would apply to all the pokemon and not just buizel, especially if it were the exact same space

    another possibility is that the seen and caught flags overlap somehow (so that setting some of the seen flags sets other caught flags). but again, this doesn't seem to apply here, as seen flags overlapping that far into the caught flags would be kind of weird.

    EDIT: if it fluctuates (i.e. the flags are getting set and unset on various conditions), then something else is manipulating the flags, perhaps an asm routine you inserted or something. or maybe a wbto script you have in the game. something like that

    so my question to you: what asm routines have you used, if any? do any of them access the ram? have you disabled the "Previously on your quest..." memory system?
    a lot of the implementations of pokemon expansion use ram taken up by that

    EDIT2: and then another question for you: you willing to mess around with the rom in a hex editor directly?

    I realize I didn't tag you in my first post so I'm tagging you now so you get the notif lol
     
    Hi thanks for answering. I've used quite a few ASM routines over the passed year or so while working on the rom. Regarding getting rid of the Previously on your quest memories, I believe I used the GBA intro manager or some similar program to erase them. I'm comfortable using a hex editor, I've used it to repoint habitats and what not. In terms of specific routines that I've used, I've added a ton of abilities from the ability thread and have added a routine that can make a pokemon shiny upon interaction, however I'm not proficient enough in ASM to know whether or not they use RAM, I'm assuming they do. Also, this is just a random thought, but back when I was first learning how to use XSE, I remember using flags like 0x1200 and what not. The first "intro" part of the hack uses flags 1200-1210. Do you think that this could be part of the issue? I've since been using unused flags from the safe flag list, but when I first started I was using those flags. I'm not sure if they could have had an effect on the pokedex or not. Also I'm not too sure what WBTO means. Thanks for helping me figure this out I really appreciate it and sorry for the late reply
    alrighty sorry for not getting back to you in so long, i don't really browse here all that frequently as i used to
    karatekid552 said here that flags above 0x900 weren't safe to use because they overlapped variable memory space, while vars x5EF4-x7FFF were all in pc box space (your flag isn't large enough to get there either)
    but that wouldn't be part of the issue
    wbto means writebytetooffset and it's the xse command for modifying the ram as the script goes
    first of all, use fbi's save block hack. it's an improved version of jpan's that eliminates a few more features that nobody hacking would use while rendering the ram it used as free
    what are your pointers at 0x104B10 and 0x104B5C? these pointers should be ram pointers (i.e. 0x02XXXXXX). how many pokemon do you have? these addresses taken from here btw
     
    alrighty sorry for not getting back to you in so long, i don't really browse here all that frequently as i used to
    karatekid552 said here that flags above 0x900 weren't safe to use because they overlapped variable memory space, while vars x5EF4-x7FFF were all in pc box space (your flag isn't large enough to get there either)
    but that wouldn't be part of the issue
    wbto means writebytetooffset and it's the xse command for modifying the ram as the script goes
    first of all, use fbi's save block hack. it's an improved version of jpan's that eliminates a few more features that nobody hacking would use while rendering the ram it used as free
    what are your pointers at 0x104B10 and 0x104B5C? these pointers should be ram pointers (i.e. 0x02XXXXXX). how many pokemon do you have? these addresses taken from here btw

    Hey now worries! and yea I'm going to replace those flags above 1200, just in case they might have caused some craziness. As far as number of pokemon go, I have space for 940 pokemon, and 886 pokedex entries. I don't have any writebytetooffset codes that I've implemented as far as I can tell.

    As for the pointers at those locations, they don't appear to be formatted correctly. Or at least that's what it looks like.

    At offset 0x104b10: it reads: 0C 50 00 03 11 48 02 68 10 1C 28 30 00 19 01 78 31 40 00 29 44 D0 10 1C 5C 30 00 19 00 78 30 40 81 42 3D D1 0A 48 02 68 BF 23 DB 00 D0 18 00 19

    At offset 0x104B5C it reads: 0C 50 00 03 08 50 00 03 18 3A 00 00 0A 48 01 68 5C 31 09 19 0A 78 30 1C 10 43 08 70 07 4B 19 68 BF 20 C0 00 09 18 09 19 0A 78 30 1C 10 43 08 70 19

    There aren't any pointers that land on that offset. Is this possibly part of the issue? Thanks again!
     
    Hey now worries! and yea I'm going to replace those flags above 1200, just in case they might have caused some craziness. As far as number of pokemon go, I have space for 940 pokemon, and 886 pokedex entries. I don't have any writebytetooffset codes that I've implemented as far as I can tell.

    As for the pointers at those locations, they don't appear to be formatted correctly. Or at least that's what it looks like.

    At offset 0x104b10: it reads: 0C 50 00 03 11 48 02 68 10 1C 28 30 00 19 01 78 31 40 00 29 44 D0 10 1C 5C 30 00 19 00 78 30 40 81 42 3D D1 0A 48 02 68 BF 23 DB 00 D0 18 00 19

    At offset 0x104B5C it reads: 0C 50 00 03 08 50 00 03 18 3A 00 00 0A 48 01 68 5C 31 09 19 0A 78 30 1C 10 43 08 70 07 4B 19 68 BF 20 C0 00 09 18 09 19 0A 78 30 1C 10 43 08 70 19

    There aren't any pointers that land on that offset. Is this possibly part of the issue? Thanks again!
    alrighty so you see that first step from the thread i linked you? doesnt's tutorial on fire red expansion (the last of the three links)
    your seen and caught flags are pointing to the same saveblock offset. install fbi's expanded save block and repoint to somewhere in there, following the other things detailed in the first step from this thread.

    EDIT:
    0x0300500C is a pointer to a place in the iwram
    i'm gonna pull up the code in ida and try to label what's happening for you

    EDIT2:
    nevermind ida decided to not work on me right now
     
    Last edited:
    Not to hijack this thread but would you happen to know if this would be why my game crashes every time I run into Unown?

    I expanded the Dex and so far it's the only Pokemon giving me issues. I can't even get to the encounter; it just freezes when I would normally run into him.

    I did research and some similar (much older) threads were saying it could be an issue with the National Dex.

    Any help would be greatly appreciated!
     
    Not to hijack this thread but would you happen to know if this would be why my game crashes every time I run into Unown?

    I expanded the Dex and so far it's the only Pokemon giving me issues. I can't even get to the encounter; it just freezes when I would normally run into him.

    I did research and some similar (much older) threads were saying it could be an issue with the National Dex.

    Any help would be greatly appreciated!
    did you use the slots immediately after chimecho (as new mons)? there's a slot for the egg sprite and a slot for each of the unown letters after chimecho
     
    alrighty so you see that first step from the thread i linked you? doesnt's tutorial on fire red expansion (the last of the three links)
    your seen and caught flags are pointing to the same saveblock offset. install fbi's expanded save block and repoint to somewhere in there, following the other things detailed in the first step from this thread.

    EDIT:
    0x0300500C is a pointer to a place in the iwram
    i'm gonna pull up the code in ida and try to label what's happening for you

    EDIT2:
    nevermind ida decided to not work on me right now

    Okay thanks I'm going to install FBI's hack right now and let you know the results! appreciate it. When it comes to ram and ASM I'm not familiar at all but anything in the hex editor doesn't bother me. Ill let you know how it goes:)
     
    alrighty so you see that first step from the thread i linked you? doesnt's tutorial on fire red expansion (the last of the three links)
    your seen and caught flags are pointing to the same saveblock offset. install fbi's expanded save block and repoint to somewhere in there, following the other things detailed in the first step from this thread.

    EDIT:
    0x0300500C is a pointer to a place in the iwram
    i'm gonna pull up the code in ida and try to label what's happening for you

    EDIT2:
    nevermind ida decided to not work on me right now

    Strange.. I tried patching the file: fbi_save_expansion.ups and my NUPS gave me an error message saying that the files aren't compatable :S
     
    find a patcher where you can force the patch regardless of checksum differences

    Okay I'll do that lol I was scared it would screw up my game if I did that lmfao. Also after I patch it I'll have to start a new game right? because I'm pretty sure I've used the help menu in previous save states
     
    Okay I'll do that lol I was scared it would screw up my game if I did that lmfao. Also after I patch it I'll have to start a new game right? because I'm pretty sure I've used the help menu in previous save states
    you wouldn't after fbi's hack but would have to after the dex flag repointing 😁
     
    Back
    Top