• 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