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

Help Thread: Quick Questions & Answers

Status
Not open for further replies.

C me

Creator of Pokemon League Of Legends
  • 681
    Posts
    10
    Years
    • Seen Apr 9, 2021
    Does anyone know the location of the menu text strings? e.g Options, Save etc
    In Emerald btw.

    I've tried searching for them in HxD but it found nothing.

    Thanks
     
    Last edited:

    Joexv

    ManMadeOfGouda joexv.github.io
  • 1,037
    Posts
    11
    Years
    Does anyone know the location of the menu text strings? e.g Options, Save etc

    I've tried searching for them in HxD but it found nothing.

    Thanks

    Chaos Rush found all of the information in regards to start menu
    So lately I've been studying ASM a bit and gonna try and finally get it down. I've managed to locate parts of the START menu's code simply by finding their text pointer, and then the pointer to that table of pointers, and then looking at the surrounding code in VBA's disassembler. Whenever I saw something such "mov r2, #0x8", I wondered what would happen if I had a different value load into that register. As a result, I've figured this out so far:

    0x0806EF94 = X positioning of [name] in the START menu.
    Change it and you can reposition [name]:
    Quick Questions & Answers


    0x0806EFD0 = the font used in the START menu.
    00 gives you the smaller font. Any other value doesn't seem to do anything.
    Quick Questions & Answers


    0x0806EFD4 = X positioning of the text in the START menu (except [name])
    The default value is 08. This is what it looks like if you change it to 00:
    Quick Questions & Answers

    (Changing it to FF/giving longer text strings will NOT magically make the menu box's width longer unlike the multichoice boxes that the script engine uses)

    0x0806F0DE = relative X positioning of cursor in START menu
    0x0806F0E0 = relative Y positioning of cursor in START menu
    By positioning, I don't mean the actual selection within the start menu, I mean the actual pixel coordinates of the cursor within the start menu.

    None of this info is useful yet, but eventually I would like to port Emerald's START menu look onto FireRed because I find it more aesthetically pleasing.

    But that's not all I found!

    At 0x083A7344 is a table that basically controls the START menu itself. The format of the table goes like this:
    [XX XX XX 08][YY YY YY 08]
    XX XX XX 08 = pointer to text string within START menu (such as POKéDEX, POKéMON, BAG, etc.)
    YY YY YY 08 = pointer to the routine of aforementioned function. Yes, I'm serious. You can literally switch around your START menu like this:
    Quick Questions & Answers

    Notice how POKéMON is in the first slot like in B/W/B2/W2/X/Y, not POKéDEX like in Gens I-IV. And no, I did not just switch the text string pointer, I switched around the function pointers too. Don't believe me? Try it yourself! It's fun!

    Here's the table at 0x083A7344 in detail:
    41627D = POKéDEX text string
    06F411 = POKéDEX routine (+1)

    415A66 = POKéMON text string
    06F44D = POKéMON routine (+1)

    416285 = BAG text string
    06F481 = BAG routine (+1)

    41628E = [name] text string
    06F4B5 = Trainer Card routine (+1)

    416291 = SAVE text string
    06F4E9 = SAVE routine (+1)

    416296 = OPTION text string
    06F4FD = OPTION routine (+1)

    41629D = EXIT text string
    06F541 = EXIT routine (+1)

    4162A2 = RETIRE text string (Safari Zone)
    06F555 = RETIRE routine(+1)

    41628E = [name] text string
    06F56D = ??? (+1) (fadescreen then freezes the game, I'm assuming its for the alternate Trainer Card shown during Link Battles/Trades)

    Unfortunately I haven't been able to find what dictates how many entries the START menu gets, but hopefully with this knowledge, it will be a lot easier to implement something like the a PokéGear onto FireRed. Not to mention that these offsets are the actual routines used for the Pokédex, party screen, bag, Trainer Card, Save menu, and Options. I'm not joking lol, if you literally put this in a script:
    Code:
    //---------------
    #dynamic 0x800000
    #org @main
    callasm 0x806F411 //this is the Pokédex routine offset from the START menu table
    end
    It will open up the Pokédex. You can literally use callasm and use any of the offsets from the table and it will load up that function!

    So say, you wrote a custom PokéGear code. You can edit one of the function pointers in the table to your new code and voila, you'll have a PokéGear within your START menu. Of course, what would be more ideal is if we could figure out how to expand the number of entries the START menu gets. I'm sure it wouldn't be that hard, the thing is that I have no idea how to find the routine that the game uses when you actually press the START button.

    https://www.pokecommunity.com/showthread.php?p=8168936#8168936
     

    C me

    Creator of Pokemon League Of Legends
  • 681
    Posts
    10
    Years
    • Seen Apr 9, 2021
    Chaos Rush found all of the information in regards to start menu

    Oops, that's awkward. Forgot to mention it's for Emerald. I've edited my original question now. Thanks for trying anyway. Sorry :s
     
  • 20
    Posts
    9
    Years
    Hey guys, I'm kinda new to ROM hacking and I got a problem, my last COMPUTER broke. Luckily I saved all my information on a flash drive. But anyway, my previous sprites that I indexed transfer into the game, no problem. But now when I index sprites and import them into my ROM of emerald the black becomes white. It's very annoying and I was wondering if any of you experienced any of the same problem. Any suggestions are welcome. I use unLZ.gba
     

    Sniper

    ふゆかい
  • 1,412
    Posts
    10
    Years
    Hey guys, I'm kinda new to ROM hacking and I got a problem, my last COMPUTER broke. Luckily I saved all my information on a flash drive. But anyway, my previous sprites that I indexed transfer into the game, no problem. But now when I index sprites and import them into my ROM of emerald the black becomes white. It's very annoying and I was wondering if any of you experienced any of the same problem. Any suggestions are welcome. I use unLZ.gba

    What do you mean by the black becomes white? Can you like show some screenshots so the issue is clearer c:
     

    Joexv

    ManMadeOfGouda joexv.github.io
  • 1,037
    Posts
    11
    Years
    This is how I insert it.
    View attachment 74300
    And this is how it comes out.
    View attachment 74302
    That's because your image isn't indexed correctly. The black turning "white" is actually transparent.
    to fix that, decrease the color depth in infranview to 16, save it as a bmp. Open character maker pro and click shift-e.
    In that menu highlight the first color, and click Copiar. Now highlight the color right underneath you background color and click Pegar Copia. Now high light your background color and then do the same thing but Pegar Copia it onto the first color of your pallet. Now finally highlight the color you pasted onto the second row and then click cortar, and then highlight your background color again and then pegar copai. Then click ok and then hit f12 and save your indexed image as a png and reinsert it.
     
  • 20
    Posts
    9
    Years
    That's because your image isn't indexed correctly. The black turning "white" is actually transparent.
    to fix that, decrease the color depth in infranview to 16, save it as a bmp. Open character maker pro and click shift-e.
    In that menu highlight the first color, and click Copiar. Now highlight the color right underneath you background color and click Pegar Copia. Now high light your background color and then do the same thing but Pegar Copia it onto the first color of your pallet. Now finally highlight the color you pasted onto the second row and then click cortar, and then highlight your background color again and then pegar copai. Then click ok and then hit f12 and save your indexed image as a png and reinsert it.
    Can you give me a link to Character Maker Pro?
     
  • 10,078
    Posts
    15
    Years
    • UK
    • Seen Oct 17, 2023
    What is it about FR/LG Route 17 that makes it a slope (aka, automatically riding downhill)?
     
  • 5,256
    Posts
    16
    Years
    What is it about FR/LG Route 17 that makes it a slope (aka, automatically riding downhill)?

    If you notice, the tiles it uses are not actually those from Tileset0, they're actually from Tileset7, and they each have behaviour bytes that make the player ride downhill. D0 is for regular ground, D1 is for grass,
     

    C me

    Creator of Pokemon League Of Legends
  • 681
    Posts
    10
    Years
    • Seen Apr 9, 2021
    How do you add fairy type moves to PGE? I already have the fairy type implemented but there is nowhere in the ini where you edit types.
     

    RoreyG

    Lizardon Man
  • 428
    Posts
    11
    Years
    Could someone please tell me if there is a ROM Hack in existence which merges R/G/B/Y Story and Events with G/S/C graphics? If so, I would much appreciate a link to said ROM Hack. If not, thanks anyway. Cheers!!! :)
     
    Status
    Not open for further replies.
    Back
    Top