• 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?".
  • Forum moderator applications are now open! Click here for details.
  • Welcome to PokéCommunity! Register now and join one of the best places on the 'net to talk Pokémon and more! Community members will not see the bottom screen advertisements.
  • Want to share your adventures playing Pokémon?
    Check out our new Travel Journals forum for sharing playthroughs of ROM Hacks, Fan Games, and other Pokémon content!
  • IMPORTANT: Following a takedown request, the following hacks have been delisted from PokéCommunity:

    • Pokémon Glazed
    • Pokémon: Giratina Strikes Back
    • Pokémon Flora Sky
    • Pokémon Stranded
    The downloads and discussion threads for these hacks will no longer be accessible, and staff will be unable to return questions regarding accessing this content.

[FireRed] Expanding Sprites / Walking Animations for Pokemon

Trev

[span="font-size: 8px; color: white;"][font="Monts
1,505
Posts
11
Years
  • Age 27
  • Seen Nov 15, 2023
Hi! Okay, so there's not a ton of tutorials that go into detail about how to expand sprites, even though it's very possible. Afaik, there also isn't a tutorial that shows how to give walking animations to the Pokemon (which imo should exist already, this is very crucial to a good hack). I have figured out how to both of these, and have decided to share my knowledge. This works for all overworld sprites, including the hero/heroine. You can completely eliminate the need to resize the sprites you want to insert with this simple trick.

Prerequisites
  • Nameless Sprite Editor
  • Knowledge of how to use NSE
  • Overworld to Import (optional - you can draw it by hand if you want)
  • Advance-Map (optional - this is to see if the sprite works in-game by putting it on a map)

Important Note: It should be recognized that repointing sprites takes a lot up space, and it should be done 1.) After any patch that takes up free space has been applied 2.) Before you edit anything else that could take up space. The sprite data is very space-conscious and will ruin anything that tries to overwrite it, so if you plan to change anything drastically e.g. expanding a map, do your sprites first. It'll save you the pain that I've gone through >.<

Expanding the Dimensions of Sprites

Step 1: Open your ROM in NSE.
Spoiler:


Step 2: Navigate to the Sprite you want to edit (I'll be changing the Kid Swimmer to the Mew from RSE, so I go to 36)
Spoiler:


Step 3: Click on Edit -> Preferences
Spoiler:


Step 4: Go to the Secondary Tab. If you want to have more/less frames than the current sprite has, change the amount now (it's best to leave it at the standard number - 9 [0-8]. The swimmer kid has a 9th frame that most sprites in FireRed have. This frame is never used and therefore never needs to be edited, so don't worry about it if it's there). If the box labelled "Copy Frames" is checked, uncheck it (I'll explain this later). After everything you want is set, click change and click yes on the notification that comes up.
Spoiler:


Congrats, your sprite has been successfully repointed! Now it won't overwrite any other sprites when we edit it, and it should still show up in-game.

Step 5: Go back to the Primary tag and edit the height and/or width to what you want. Since the Mew OW from RSE is 16x32, I have to change my height from 16 to 32. Click save when you're satisfied. Your sprite should now be the size you want it to be.
Spoiler:


Don't edit your sprite yet! Even though the sprite itself was repointed, the frames still act as a the size of the previous sprite. If you draw your sprite in the box now and go to the next frame, you'll see that most of the sprite you just drew is now in the next frame. In my case, I went from a 16x16 sprite to a 16x32 sprite. The frames only have enough space to display a 16x16 sprite - anything else will write into the next frame, which looks terrible. In order to have enough space to add our sprite, we have to repoint every frame; yeah, it's a hassle, but NSE has a handy feature to save us the trouble of having to hex edit everything.

Step 6: Next to the save button, there's a drop-down box with the word index on it. Click it and choose Frame. On the right side, you should see a box with the label "Pointer" and an offset written in it, alongside a magnifying glass. This is how we will change the offset of the frame to give us more space. Click on the magnifying glass, and the offset should change. Click save, and a box should come up - click Yes. The sprite box should go completely black - this is normal, it means that the frame has been repointed and is ready for use.
Spoiler:


Step 7: Repeat Step 6 until you have finished editing every frame for the sprite. You must repoint EVERY frame, or the sprite will look very weird in-game. Always repoint the frame before you edit the sprite to prevent it from writing over into the next frame (also because when you repoint the frame, it erases whatever is in it. This is okay for people who import stuff - not okay for people who draw it by hand). The picture below shows my imported Mew sprite - aka SUCCESS! ^^
Spoiler:


Important Note: Be wary when going from 16x16 to 32x32 - the frames tend to not match up, which makes it look weird when the sprite walks. You could go around this by going from 16x16 to 16x32 and then to 32x32, but I haven't tested this so it's just theory.

That's how to expand sprites! This could come in handy for a lot of things, like using DS sprites without having to resize them! Most DS sprites would use 32x32 as they are much larger than GBA sprites, but the same method for repointing the sprite and each frame still applies.

Walking Animations for Pokemon

You know how FireRed has Pokemon sprites built in? Well, yeah, duh! You need Pokemon sprites in a Pokemon game! However, the overworlds are just... pathetic. Almost all of them are 16x16, they look terrible, and none of them having walking animations! The first two are fixed by simply repointing and expanding the sprites. However, to add walking animation, there's a simple fix.

Important Note: Some Pokemon only have 1 frame (0) e.g. Snorlax, so you'll need to change the number to 9 (0-8) for most of these Pokemon.

Step 1: Open your ROM in NSE and navigate to the sprite you want to give walking animations to (I'll use Zapdos because f*ck yeah Zapdos [my Zapdos is pink in this because the Mew sprite from the last part changed the palette when I imported it])
Spoiler:


Step 2: Go to Edit -> Preferences and go to the Secondary tab. Before hitting Change, if you need to change the amount of frames, do so now. Uncheck "Copy Frames" and hit Change. Click Yes on the box that comes up.
Spoiler:


If you left Copy Frames checked, you're gonna have to repeat that step. If you don't uncheck the box, you'll be stuck with the same sprite in every frame - and that looks terrible.

Step 3: Your Pokemon can now walk (or fly!) You can now edit the sprite to whatever you need it to be. If needed, you can resize it after unchecking Copy Frames, using Steps 5 & 6 from the section above (I could have combined these but lol).

Important Note: Flying Types whose walking animations show them flying require a different frame structure. I'll use Pidgeot's HGSS sprite to demonstrate how this should look in NSE:

Spoiler:


This should make it look like the Pokemon is flying in-game. I recommend to have it constantly moving during the game, but it's okay to have it stationary (it'll look like it's roosting with it's wings up ^_^)

Well, there's the tutorial! I hope to see games using larger sprites and animated Pokemon sprites come out soon after this. As another goody, I give to you all a wonderful gift: Indexed, ready to insert HGSS overworlds of a few Pokemon using FRLG palettes! Credit goes to AimayBee for recoloring these sprites in the correct palettes. These can be inserted directly into NSE with no indexing or recoloring.

Okay, that's all I have. Thanks for reading, and good luck!
 
Last edited:

X-Tyranitar

Professional Rom Hacker
53
Posts
10
Years
This was a great tutorial! Good job:)

Maybe you would like to join my team? Project Hyperion , PM me if interested:)
 
Last edited:
1
Posts
11
Years
  • Seen Jun 11, 2013
Early to bed and early to rise , makes a man healthy , wealthy and wise
.(Benjamin Franklin , American president )
 

Leaf Dragon

Leaf Dragon
4
Posts
10
Years
Sometimes when I add new sprites into my game they change color if they are near each other.

Does anyone know why? I really do not like my hero sprite to be green when in the presence of celebi.

I have not tried to insert with NSE, so I will attempt it before I give up. I have been using Overworld Editor Rebirth Edition.
 

Trev

[span="font-size: 8px; color: white;"][font="Monts
1,505
Posts
11
Years
  • Age 27
  • Seen Nov 15, 2023
Sometimes when I add new sprites into my game they change color if they are near each other.

Does anyone know why? I really do not like my hero sprite to be green when in the presence of celebi.

I have not tried to insert with NSE, so I will attempt it before I give up. I have been using Overworld Editor Rebirth Edition.

This should really be in the Simple Questions thread but whatever. The only thing that could be causing your problem is if you overwrite palette 10 with the Celebi palette. Palette 0 and Palette 10 are linked together, so if two overworlds on the screen are using one of each, they'll be the same color.
 

Chrisario

Friend code :0018 2912 2366 let me know
108
Posts
10
Years
So can like put let say I want to put 32x32 size sprite to make it bigger how do I make like it looks like in the 4th and 5th games if you can help me with that that be cool
 

Orifiel

Priestess
413
Posts
10
Years
I was wondering how I change the size.
Thanks a lot! Still I need to change mine without
ruining the rest of the palette of the other sprites.
 

Lance32497

LanceKoijer of Pokemon_Addicts
792
Posts
9
Years
What the Heck!
I dont know whats the problem,
I followed the tutorial correctly,, but my rom has been corrupted!
I made so many things in my rom!

Please help me!
How can I fix that?
 
8
Posts
12
Years
  • Seen Sep 8, 2019
Your post's Attachment Link isn't working for me; Do you think that you could re-upload/re-attach it, preferably to a site like Mediafire?
 
3
Posts
7
Years
  • Age 23
  • Seen Jul 16, 2016
Awesome tutorial!
but there was a problem with mine. I can't uncheck the "Copy Frames" on the Edit>Preferences>Secondary, Resulting weird frames when walking in-game. Please help
 

Froosty

The_Learner
535
Posts
9
Years
Hi! Okay, so there's not a ton of tutorials that go into detail about how to expand sprites, even though it's very possible. Afaik, there also isn't a tutorial that shows how to give walking animations to the Pokemon (which imo should exist already, this is very crucial to a good hack). I have figured out how to both of these, and have decided to share my knowledge. This works for all overworld sprites, including the hero/heroine. You can completely eliminate the need to resize the sprites you want to insert with this simple trick.

Prerequisites
  • Nameless Sprite Editor
  • Knowledge of how to use NSE
  • Overworld to Import (optional - you can draw it by hand if you want)
  • Advance-Map (optional - this is to see if the sprite works in-game by putting it on a map)

Important Note: It should be recognized that repointing sprites takes a lot up space, and it should be done 1.) After any patch that takes up free space has been applied 2.) Before you edit anything else that could take up space. The sprite data is very space-conscious and will ruin anything that tries to overwrite it, so if you plan to change anything drastically e.g. expanding a map, do your sprites first. It'll save you the pain that I've gone through >.<

Expanding the Dimensions of Sprites

Step 1: Open your ROM in NSE.
Spoiler:


Step 2: Navigate to the Sprite you want to edit (I'll be changing the Kid Swimmer to the Mew from RSE, so I go to 36)
Spoiler:


Step 3: Click on Edit -> Preferences
Spoiler:


Step 4: Go to the Secondary Tab. If you want to have more/less frames than the current sprite has, change the amount now (it's best to leave it at the standard number - 9 [0-8]. The swimmer kid has a 9th frame that most sprites in FireRed have. This frame is never used and therefore never needs to be edited, so don't worry about it if it's there). If the box labelled "Copy Frames" is checked, uncheck it (I'll explain this later). After everything you want is set, click change and click yes on the notification that comes up.
Spoiler:


Congrats, your sprite has been successfully repointed! Now it won't overwrite any other sprites when we edit it, and it should still show up in-game.

Step 5: Go back to the Primary tag and edit the height and/or width to what you want. Since the Mew OW from RSE is 16x32, I have to change my height from 16 to 32. Click save when you're satisfied. Your sprite should now be the size you want it to be.
Spoiler:


Don't edit your sprite yet! Even though the sprite itself was repointed, the frames still act as a the size of the previous sprite. If you draw your sprite in the box now and go to the next frame, you'll see that most of the sprite you just drew is now in the next frame. In my case, I went from a 16x16 sprite to a 16x32 sprite. The frames only have enough space to display a 16x16 sprite - anything else will write into the next frame, which looks terrible. In order to have enough space to add our sprite, we have to repoint every frame; yeah, it's a hassle, but NSE has a handy feature to save us the trouble of having to hex edit everything.

Step 6: Next to the save button, there's a drop-down box with the word index on it. Click it and choose Frame. On the right side, you should see a box with the label "Pointer" and an offset written in it, alongside a magnifying glass. This is how we will change the offset of the frame to give us more space. Click on the magnifying glass, and the offset should change. Click save, and a box should come up - click Yes. The sprite box should go completely black - this is normal, it means that the frame has been repointed and is ready for use.
Spoiler:


Step 7: Repeat Step 6 until you have finished editing every frame for the sprite. You must repoint EVERY frame, or the sprite will look very weird in-game. Always repoint the frame before you edit the sprite to prevent it from writing over into the next frame (also because when you repoint the frame, it erases whatever is in it. This is okay for people who import stuff - not okay for people who draw it by hand). The picture below shows my imported Mew sprite - aka SUCCESS! ^^
Spoiler:


Important Note: Be wary when going from 16x16 to 32x32 - the frames tend to not match up, which makes it look weird when the sprite walks. You could go around this by going from 16x16 to 16x32 and then to 32x32, but I haven't tested this so it's just theory.

That's how to expand sprites! This could come in handy for a lot of things, like using DS sprites without having to resize them! Most DS sprites would use 32x32 as they are much larger than GBA sprites, but the same method for repointing the sprite and each frame still applies.

Walking Animations for Pokemon

You know how FireRed has Pokemon sprites built in? Well, yeah, duh! You need Pokemon sprites in a Pokemon game! However, the overworlds are just... pathetic. Almost all of them are 16x16, they look terrible, and none of them having walking animations! The first two are fixed by simply repointing and expanding the sprites. However, to add walking animation, there's a simple fix.

Important Note: Some Pokemon only have 1 frame (0) e.g. Snorlax, so you'll need to change the number to 9 (0-8) for most of these Pokemon.

Step 1: Open your ROM in NSE and navigate to the sprite you want to give walking animations to (I'll use Zapdos because f*ck yeah Zapdos [my Zapdos is pink in this because the Mew sprite from the last part changed the palette when I imported it])
Spoiler:


Step 2: Go to Edit -> Preferences and go to the Secondary tab. Before hitting Change, if you need to change the amount of frames, do so now. Uncheck "Copy Frames" and hit Change. Click Yes on the box that comes up.
Spoiler:


If you left Copy Frames checked, you're gonna have to repeat that step. If you don't uncheck the box, you'll be stuck with the same sprite in every frame - and that looks terrible.

Step 3: Your Pokemon can now walk (or fly!) You can now edit the sprite to whatever you need it to be. If needed, you can resize it after unchecking Copy Frames, using Steps 5 & 6 from the section above (I could have combined these but lol).

Important Note: Flying Types whose walking animations show them flying require a different frame structure. I'll use Pidgeot's HGSS sprite to demonstrate how this should look in NSE:

Spoiler:


This should make it look like the Pokemon is flying in-game. I recommend to have it constantly moving during the game, but it's okay to have it stationary (it'll look like it's roosting with it's wings up ^_^)

Well, there's the tutorial! I hope to see games using larger sprites and animated Pokemon sprites come out soon after this. As another goody, I give to you all a wonderful gift: Indexed, ready to insert HGSS overworlds of a few Pokemon using FRLG palettes! Credit goes to AimayBee for recoloring these sprites in the correct palettes. These can be inserted directly into NSE with no indexing or recoloring.

Okay, that's all I have. Thanks for reading, and good luck!


I dont know if its happening to me only but Every time i click on the download link I get redirected to a blank page.
Pls help me
 

Bulbadon

Might or might not come back
106
Posts
9
Years
  • Age 26
  • Seen Aug 26, 2016
I dont know if its happening to me only but Every time i click on the download link I get redirected to a blank page.
Pls help me

It's not only happening to you. The link is broken, there was an attack or something on Pokecommunity which left a lot of the links broken.
 

Vytron

Just an ordinary Romhacker
399
Posts
7
Years
I changed the pointer and it gave me a 7 digit number....
And it doesn't let me repoint the sprite.
 
Back
Top