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

Adding new types into Fire Red without replacing

6
Posts
14
Years
  • Okay. This is probably what happened. You exported the image, edited it, and you probably edited the palette somehow via indexing or something else. Then, you inserted it, BUT, you didn't import the new palette, so the old palette stuck, giving you strange effects OR, you DID insert the new palette but you didn't repoint it. So what I say is insert it again, with the palette, and repoint it.

    Thanks! I figured it out; at the part where I had to repoint the palette, I put the hex in as: FE DC BA 08 instead of EF CD AB 08
     

    ShyRayq

    Unprofessional Unprofessional
    1,856
    Posts
    16
    Years
    • Seen Apr 2, 2024
    the part after find DC5DE908.on HxD since i'm new to hacking
    Spoiler:

    Okay, so first, find the offset that you put your image at. When you imported it into the rom, NSE should have told you the offset. For this example, I'll say its 0xABCDEF.
    Now, search up DC5DE908 in your hex editor using Ctrl+F. There should be only 1 occurance if I recall. Now, take your offset, in this case 0xABCDEF.
    Split it into groups of 2: AB CD EF
    Now reverse the order: EF CD AB
    Then slap 08 onto the end of it. : EF CD AB 08, this is your pointer.
    Now replace DC5DE908 with your pointer, in this case, EFCDAB08.
    If you're gonna create a hack, you'll need this skill as you'll most likely be moving, extending and changing lots of data that requires the usage of pointers.
     

    Shiny Quagsire

    I'm Still Alive, Elsewhere
    697
    Posts
    14
    Years
  • Okay, so first, find the offset that you put your image at. When you imported it into the rom, NSE should have told you the offset. For this example, I'll say its 0xABCDEF.
    Now, search up DC5DE908 in your hex editor using Ctrl+F. There should be only 1 occurance if I recall. Now, take your offset, in this case 0xABCDEF.
    Split it into groups of 2: AB CD EF
    Now reverse the order: EF CD AB
    Then slap 08 onto the end of it. : EF CD AB 08, this is your pointer.
    Now replace DC5DE908 with your pointer, in this case, EFCDAB08.
    If you're gonna create a hack, you'll need this skill as you'll most likely be moving, extending and changing lots of data that requires the usage of pointers.

    Just to clarify for the curious, but the reason you put the 08 at the end is because of how the GBA's memory works. The GBA has access to a slew of 32 bit registers, and each area of the GBA's memory has a certain area it's allocated to. The bios is at 00XXXXXX, Working and Internal RAM at 02XXXXXX and 03XXXXXX, IO registers at 04XXXXXX, video RAM at 05XXXXXX, 06XXXXXX and 07XXXXXX, and finally, the actual ROM at 08XXXXXX (and 09XXXXXX for the upper ROM if you expand your ROM).

    In a hex editor however, you don't have this full memory map, you just have the ROM. So when you insert a pointer, you flip it so that the GBA's processor can read it properly (ie endianness), and you add the 08 to denote which part of the GBA you're actually trying to access (in our case it's usually the ROM).
     
    93
    Posts
    12
    Years
    • Seen Dec 26, 2023
    Okay, so first, find the offset that you put your image at. When you imported it into the rom, NSE should have told you the offset. For this example, I'll say its 0xABCDEF.
    Now, search up DC5DE908 in your hex editor using Ctrl+F. There should be only 1 occurance if I recall. Now, take your offset, in this case 0xABCDEF.
    Split it into groups of 2: AB CD EF
    Now reverse the order: EF CD AB
    Then slap 08 onto the end of it. : EF CD AB 08, this is your pointer.
    Now replace DC5DE908 with your pointer, in this case, EFCDAB08.
    If you're gonna create a hack, you'll need this skill as you'll most likely be moving, extending and changing lots of data that requires the usage of pointers.

    thx btw stupid me didn't relized that the image offset
    well another question
    if i add 2 new type and replace ??? type with fairy how to get the co-ordinate
    this part
    Spoiler:
     

    ShyRayq

    Unprofessional Unprofessional
    1,856
    Posts
    16
    Years
    • Seen Apr 2, 2024
    thx btw stupid me didn't relized that the image offset
    well another question
    if i add 2 new type and replace ??? type with fairy how to get the co-ordinate
    this part
    Spoiler:

    Well it depends: where are the 2 new type icons?
    Using the co-ordination system will tell you where they are. Also, since you're adding 2 new types, you'll need to repoint and expand the co-ordination table.
    As a further note, why are you replacing the ??? icon? This tutorial was made so that you DIDN'T do that. You don't want Fairy typed eggs do you?
     

    loldamaru

    say lol
    80
    Posts
    10
    Years
  • Hey ShyRayq! I have the formation of new icon like this.
    test_zpsf61e55ea.png


    And i'm confused when i'm repointed this.
    icon_zps9380c93d.png


    First, The circled code is the code for Wood, Gas, and Sound. And the rest of hex code which is uncircled is the code for all coordinate include the fairy type. Nah, if i want to add the coordinate of Wood, Gas and Sound, what code i must write there.
    One thing, you said that the hex code of 100 is A0, meanwhile in hex calculator it is said 64 instead of A0. Also, when you add 8 to A0, it must be in decimal or hex, if mine is 12.
    I'm too confused. Thanks before

    P.S: I dont want someone steal my icon image so i cover some part of it.
     

    ShyRayq

    Unprofessional Unprofessional
    1,856
    Posts
    16
    Years
    • Seen Apr 2, 2024
    Hey ShyRayq! I have the formation of new icon like this.
    test_zpsf61e55ea.png


    And i'm confused when i'm repointed this.
    icon_zps9380c93d.png


    First, The circled code is the code for Wood, Gas, and Sound. And the rest of hex code which is uncircled is the code for all coordinate include the fairy type. Nah, if i want to add the coordinate of Wood, Gas and Sound, what code i must write there.
    One thing, you said that the hex code of 100 is A0, meanwhile in hex calculator it is said 64 instead of A0. Also, when you add 8 to A0, it must be in decimal or hex, if mine is 12.
    I'm too confused. Thanks before

    P.S: I dont want someone steal my icon image so i cover some part of it.

    Okay, first of all: you overwrote the ??? icon. I guess Abnormal-typed eggs kinda fits but...
    From what I can see, you have it set up correctly for Fairy and Sound so that's good.
    Wood and Gas shouldn't be any diff.
    Remember: think of it as a grid. Each column you add 0x04, each row you add 0x20.
    You should be able to figure out the co-ordinates, but in case you're having difficulty, they're
    0x108 and 0x10C.
    Also, did I say that 100 was A0? I think I said that after 0x80 came 0xA0. After that its 0xC0 then 0xE0, then back to 0x100.
     

    loldamaru

    say lol
    80
    Posts
    10
    Years
  • Okay, first of all: you overwrote the ??? icon. I guess Abnormal-typed eggs kinda fits but...
    From what I can see, you have it set up correctly for Fairy and Sound so that's good.
    Wood and Gas shouldn't be any diff.
    Remember: think of it as a grid. Each column you add 0x04, each row you add 0x20.
    You should be able to figure out the co-ordinates, but in case you're having difficulty, they're
    0x108 and 0x10C.
    Also, did I say that 100 was A0? I think I said that after 0x80 came 0xA0. After that its 0xC0 then 0xE0, then back to 0x100.

    Hahaha, I really want Abnormal Type instead of ???
    Waiiit, you need to explain clearly, how to change between decimal and hex, i used windows calculator and it didn't work. How can 100 converted into A0?
    I know the logic of grid, but how to convert hex and dec without window calculator?
    I'm too confused sir... could you send me a PM instead of comment?
    Thanks
     
    93
    Posts
    12
    Years
    • Seen Dec 26, 2023
    Well it depends: where are the 2 new type icons?
    Using the co-ordination system will tell you where they are. Also, since you're adding 2 new types, you'll need to repoint and expand the co-ordination table.
    As a further note, why are you replacing the ??? icon? This tutorial was made so that you DIDN'T do that. You don't want Fairy typed eggs do you?

    this my position of the 2 new type and yeah it weird if the fairy type replace it so i redo it and add it like this and i didn't change the height of the picture
    this my picture is
    Spoiler:


    am i doing fine ?
    are the image and palette pointer still the same ?

    bmhw.pnghttp:
     

    ShyRayq

    Unprofessional Unprofessional
    1,856
    Posts
    16
    Years
    • Seen Apr 2, 2024
    this my position of the 2 new type and yeah it weird if the fairy type replace it so i redo it and add it like this and i didn't change the height of the picture
    this my picture is
    Spoiler:


    am i doing fine ?
    are the image and palette pointer still the same ?

    bmhw.pnghttp:

    Big Problem Numero Uno: Count the amount of colours. If x > 16, delete some colours.
    Concerning the height, its the same as before so there isn't a problem. Just there are TOO many colours.

    -----

    I didn't want to double-post so I'll just alert it here. If you didn't see the edit, the tut has been edited due to some new 'discoveries'. So please re-read the tut. If you've already followed the tut, you'll have to repoint and edit a lot of things now.
     
    Last edited:

    BadgerLordZeus

    Spooniest of Bards
    11
    Posts
    9
    Years
  • Hey, I have a couple questions regarding the tutorial. I'm a fairly new to hex editing so bear with me.

    First: I know how to get the image\palette pointers from the data when you're inserting the new icon file, but I need to relocate the icon position table, so will the pointers be affected? Do I have to get new pointers, and, if so, how do I get he information for them?

    Second: When you're actually relocating the icon position table, does it matter where you put it as long as its near the end of the rom? For instance, could I put it around offset F80B70?
     

    ShyRayq

    Unprofessional Unprofessional
    1,856
    Posts
    16
    Years
    • Seen Apr 2, 2024
    Hey, I have a couple questions regarding the tutorial. I'm a fairly new to hex editing so bear with me.

    First: I know how to get the image\palette pointers from the data when you're inserting the new icon file, but I need to relocate the icon position table, so will the pointers be affected? Do I have to get new pointers, and, if so, how do I get he information for them?

    Second: When you're actually relocating the icon position table, does it matter where you put it as long as its near the end of the rom? For instance, could I put it around offset F80B70?

    Okay 1st: To get the pointers. Go to the start of your icon position table. That's the pointer you want. You could count from the very left, or it'll display it somewhere.

    2nd: It doesn't matter where you put it. Just put it in free space and you're good to go.
     

    BadgerLordZeus

    Spooniest of Bards
    11
    Posts
    9
    Years
  • Well, almost there. Inserted my icon, changed the pointers and everything, but now the palette is a bit weird, mainly the font. Since I only joined recently I can't put links or images in my posts, so I put a few screenshots in my attachments (you can see those right?).

    Also just a few more questions.

    Do you have to erase the old icon position table data after you copy it? I didn't, but I was curious.

    Also, in my icon sheet I put the types I added in, Fairy and Sound over the Water and Grass icons. Would I be correct in assuming the coordinates would be 0x08 and ox0C respectively?
     

    ShyRayq

    Unprofessional Unprofessional
    1,856
    Posts
    16
    Years
    • Seen Apr 2, 2024
    Well, almost there. Inserted my icon, changed the pointers and everything, but now the palette is a bit weird, mainly the font. Since I only joined recently I can't put links or images in my posts, so I put a few screenshots in my attachments (you can see those right?).

    Also just a few more questions.

    Do you have to erase the old icon position table data after you copy it? I didn't, but I was curious.

    Also, in my icon sheet I put the types I added in, Fairy and Sound over the Water and Grass icons. Would I be correct in assuming the coordinates would be 0x08 and ox0C respectively?

    For the palette problem. I suggest this: check the original palette in NSE. As in the exact order of the colours. Probably like Image > Palette or something. Now, open up your edited type icon file in like Photoshop/Irfanview. Now change that palette to the exact order as the previous one. It'll mess up the colours for a bit but just save it as a new image. Now take the old image and paste it over the new image and save. Now insert and, if you added new colours, replace the palette.

    Or, the problem is that the Black that you used is the first colour in your new palette, which makes it transparent. Just swap it with the background colour.

    Or, you screwed up the palette inserting somehow.

    Anyway, aside from that, yes, those are the co-ordinates. Hope it works.
     

    BadgerLordZeus

    Spooniest of Bards
    11
    Posts
    9
    Years
  • For the palette problem. I suggest this: check the original palette in NSE. As in the exact order of the colours. Probably like Image > Palette or something. Now, open up your edited type icon file in like Photoshop/Irfanview. Now change that palette to the exact order as the previous one. It'll mess up the colours for a bit but just save it as a new image. Now take the old image and paste it over the new image and save. Now insert and, if you added new colours, replace the palette.

    Yeah, the palette order was messed up, that was the problem. It seemed to happen when I edited the file with Paint, and save it as a png file, because, when I saved it as a bmp file, the colors would be screwy.

    But, anyways, it worked! Thanks a bunch! Now on to part 2.
     

    henrxv

    Ol'Schooler
    5
    Posts
    9
    Years
  • Excuse but, What type would be the new type (Fairy) be? Special i'd guess but why? is it possible to change that?
    I'm sorry if this was asked already. Thanks for the awesome post.
     

    ShyRayq

    Unprofessional Unprofessional
    1,856
    Posts
    16
    Years
    • Seen Apr 2, 2024
    Excuse but, What type would be the new type (Fairy) be? Special i'd guess but why? is it possible to change that?
    I'm sorry if this was asked already. Thanks for the awesome post.

    In order to get the new type to work, you need the Physical/Special Split. It's somewhere in the Research&Development Section under the heading : The 4th Gen Split or something.
     
    Back
    Top