Tools, Tutorials & Resources Various tools to help you develop your hacks can be found here.

TrollandToad.com
Reply
 
Thread Tools
  #1    
Old July 21st, 2008 (7:51 AM). Edited April 15th, 2010 by Logan.
destinedjagold's Avatar
destinedjagold destinedjagold is offline
Oh Hai Thar~
  • Silver Tier
 
Join Date: May 2007
Location: Philippines
Age: 27
Gender: Male
Nature: Careful
Posts: 8,573
destinedjagold's Sprite Indexing and Inserting Tutorial
updated
Before anything else, here's RedYoshi's Indexing Sprites Tutorial, where I based my tutorial.
Oh, and if you find this tutorial difficult to understand, try viewing the video tutorial I have uploaded entitled 'How to Insert Sprites'


Introduction...
Okay, so hi everyone. I am destinedjagold, a ROM hacker/modder who stinks at spriting, but is showing you a spriting tutorial. o.O
Anyways, this thread is updated now since I lost my images. Blame PhotoBucket -__- ...
Anyways, I hope you'll find this tutorial useful, and pardon me for reusing this old thread of mine.
Since I saw this thread's still open, I decided to update it instead of making a new one. Might be a waste of space in the forums.

What You Need...
  • ROM
  • Unlz-GBA
  • MS Paint
  • Your sprite
  • IrfanView
  • Hex Editor (I'll be using Hex Workshop)

Before Anything Else...
Remember to make a back-up of your ROM. Just in case you messed something up.
Remember the golden rule in ROM-hacking... "SAVE BACK-UP"...


STEPS

Step 1...
1. Open your sprite through MS Paint. Then resize it to 64x64. If it's too big, then you'll have to reduce it. How? It's up to you. :\
2. Pick a colour which is not used by the sprite. Exampe, HAUNTER has a purple pallete, so you have to use Yellow or Orange or Cyan as it's back colour.
Spoiler:


Step 2...
1. After you saved your 64x64 sprite, open it with IfranView (if you don't have one, Google it).
2. Then on the 'Image' tab, click the 'Decrease Color Depth'.
3. A little window will show up. From 256, change it to 16 colors and press 'Ok'.
4. Then go to the 'Image' tab once again, but this time, go to 'Palletes' and click 'Edit Pallete...'.
5. A window will show up. You will see all 16 colours the sprite uses. On the left-most pallete/color, change it to the same color of the background color. Then change the other color which is the same color as your background color to the color you replaced in the left-most pallete/color.
6. Click 'Ok'. Then you'll have to save it. But here's a trick to make things easier. Don't replace your old 64x64 sprite. Save it with a different name.
Spoiler:


Step 3...
1. Open both your sprites;the IrfanView and the MS Paint ones.
2. Press CTRL+A or Select All on your old 64x64 sprite, and then Copy it.
3. Paste it on the MS Paint where you opened the sprite you edited through IrfanView. This will lessen the burden of fixing your sprite, in case it has been pixelized by IrfanView.
4. Save it. In this step, you can now delete the unindexed sprite to avoid confusion.
Spoiler:


Step 4...
1. Open your ROM with Unlz-GBA.
2. Find the old PKMN sprite you want to replace.
3. Click on the 'Import' button and select your newly indexed sprite.
4. Click the 'Write to ROM' button.
5. A window will pop-up. Check the 'Automatically Fix Pointers'.
6. Open your ROM with a Hex Editor and find a free space for your new sprite. You can use FSF as well if you want to. Memorize the free offset.
7. Close your FSF, or any programs that opened your ROM as well, such as A-Text or A-Map and the like.
8. Type the offset on the 'Image Offset' box. Don't remove those two zeros.
9. Click on the OK button and you're done. If a pop-up window appears and states 'Ptr found at . Changed.'.., then it means that you have successfully inserted a new sprite, or rather replaced an old sprite for a new one! Horay!
10. You can do the same for it's palletes, of if you're too lazy to run a search for free offsets, you can use APE or just check the 'Export Pallete', but remember to uncheck the 'Automatically Fix Pointers'.
11. Test it out on your ROM.
Spoiler:



Continuation...
Indexing the backsprite...
June 4, 2009

Introduction...
Okay... Now you know how to index and insert your new POKéMON's front sprite.
But now you ask, how to do the backsprite?
It's quite simple, actually...
Now, I'm gonna use Stormidran, Samson's fakemon.


I am assuming that by this time, you already know how to index your front sprites...
Spoiler:



STEPS

1. Open both your POKéMON's front and back sprites...
Spoiler:

2. Select All, then Copy your back sprite and paste it to your front sprite. Don't forget to make the background the same as your front sprite...
Spoiler:

3. Open the back sprite of the POKéMON that you will replace. In this example, I'll replace Tropius...
Spoiler:

4. Select All, then copy the back sprite of the POKéMON you'll replace and paste it to your back sprite. Notice that both back sprite is 'cut'. If you aren't bothered, put a line starting from the replaced POKéMON's back sprite to your new back sprite...
Spoiler:

5. After doing that, you should put the 'cut' of your new back sprite on the line, so it won't look floating on the game.
Spoiler:

6. After making sure that the new sprite's on the same level of the replaced sprite, turn it back to 64x64 in size, save it, and it should be in .png format...
Spoiler:

7. Then, open your ROM in Unlz-GBA and go to your replace-to-be back sprite. The same to inserting the front sprite, first try if you can insert it by checking both 'Auto abort if new data is bigger' and 'Export Image'...
Spoiler:

8. And if your new sprite's bigger, simply search for free offset, click 'Auto abort if new data is bigger', 'Export Image' and 'Automaticly Fix Pointers'...
Spoiler:


Note...
You might be asking about the back sprite's pallete if it will also be included to export.
Well, since you already inserted the front sprite along with the front sprite's pallete, you need not to export the back sprite's pallete, as long as you copied your back sprite and pasted it on your indexed front sprite.


Message...

Okay. I hope that this will help you all to insert new sprites for your hacks/mods. ;)
I had fun updating this tutorial though.
Thanks for sparing time to read this tutorial. :)
Well, good luck and have fun hacking/modding!
__________________


FC: 0061-1111-6462
TSV: 1364(X), 0790(OR)

Reply With Quote

Relevant Advertising!

  #2    
Old July 22nd, 2008 (8:11 AM). Edited July 22nd, 2008 by pokemonlover93.
pokemonlover93's Avatar
pokemonlover93 pokemonlover93 is offline
The Crystal Sharder.
     
    Join Date: Jun 2007
    Location: Somewhat Peaceful Place.
    Gender:
    Nature: Timid
    Posts: 29
    This si a Good Tutorial, very handy! Nice Job!
    __________________
    You know what they say...Where you are is where you are...
    Reply With Quote
      #3    
    Old July 22nd, 2008 (8:37 AM).
    X-aveon's Avatar
    X-aveon X-aveon is offline
    IS BACK!!!!!!!!!!!!!!!!!!!
       
      Join Date: Jan 2008
      Gender:
      Nature: Naive
      Posts: 233
      will this overwrite the oddish sprite? or put this sprite somewhere else in the rom. if you do that, how will you be able to find it to edit the attacks.???
      __________________


      I want that apple......
      Reply With Quote
        #4    
      Old July 22nd, 2008 (3:33 PM).
      Ryousha's Avatar
      Ryousha Ryousha is offline
      Pokespe Scanlator
         
        Join Date: Jun 2007
        Location: Somewhere
        Age: 21
        Nature: Naive
        Posts: 958
        Quote:
        Originally Posted by FriendsRoxYourSox View Post
        will this overwrite the oddish sprite? or put this sprite somewhere else in the rom. if you do that, how will you be able to find it to edit the attacks.???
        It repoints the data,

        though if u still look in unzl, it's still there, just not useable anymore .
        Reply With Quote
          #5    
        Old July 22nd, 2008 (3:33 PM).
        Lollypop's Avatar
        Lollypop Lollypop is offline
        Member since '07 <300 posts
           
          Join Date: Nov 2007
          Location: Melbourne,Australia
          Age: 20
          Gender: Male
          Nature: Modest
          Posts: 250
          Thanks Alot! I've been waiting for a tutorial like this. I've read red yoshi's tutorial but I couldn't quite understand it. Thx alot!!
          __________________
          N.W.A

          (N-words with attitude)
          Reply With Quote
            #6    
          Old July 22nd, 2008 (5:03 PM).
          destinedjagold's Avatar
          destinedjagold destinedjagold is offline
          Oh Hai Thar~
          • Silver Tier
           
          Join Date: May 2007
          Location: Philippines
          Age: 27
          Gender: Male
          Nature: Careful
          Posts: 8,573
          Quote:
          Originally Posted by FriendsRoxYourSox View Post
          will this overwrite the oddish sprite? or put this sprite somewhere else in the rom. if you do that, how will you be able to find it to edit the attacks.???
          it doesn't replace Oddish's sprite. we're telling the ROM that the oddish will have the Giratina sprite located in offset 845000...

          also, you can edit Oddish's data/stats/moves/type/etc for your new pokemon inserted.
          __________________


          FC: 0061-1111-6462
          TSV: 1364(X), 0790(OR)

          Reply With Quote
            #7    
          Old July 23rd, 2008 (1:45 AM).
          Cy-Chan's Avatar
          Cy-Chan Cy-Chan is offline
          GSC Hacker
             
            Join Date: Jan 2005
            Location: UK, England.
            Age: 26
            Gender:
            Nature: Timid
            Posts: 152
            Gosh, is it me, or is pallete editing normal image files a huge pain in the stomach? Either way, this is a great tutorial, and it really gave me some insight.
            Reply With Quote
              #8    
            Old July 23rd, 2008 (7:43 AM).
            marko_hacker's Avatar
            marko_hacker marko_hacker is offline
            Beginning Hacker
               
              Join Date: Jun 2008
              Location: Bosnia and Herzegovina
              Age: 23
              Nature: Brave
              Posts: 15
              DJG this is very great tut.
              I learned so much from this
              great job
              Reply With Quote
                #9    
              Old July 23rd, 2008 (3:12 PM).
              CureYoshiDarkness's Avatar
              CureYoshiDarkness CureYoshiDarkness is offline
              CATCH PHRASE!
              • Crystal Tier
               
              Join Date: May 2008
              Location: Hoenn's Trumpet
              Gender: Male
              Nature: Gentle
              Posts: 1,094
              Honestly, i must THANK YOU! this is the tutorial i needed for spriting...
              RedYoshi's tutorial was great too. Thank you.
              __________________


              Reply With Quote
                #10    
              Old July 24th, 2008 (12:07 AM). Edited July 24th, 2008 by Mario_Bones.
              Mario_Bones's Avatar
              Mario_Bones Mario_Bones is offline
              Lazuli Version Creator
                 
                Join Date: Jun 2008
                Location: Australia
                Gender:
                Posts: 42
                Ah, that's how you get free space to work. Thanks a bunch!
                EDIT: I tried it, and inserted a sprite over Mudkip in Ruby. When I chose the Pokemon in Birch's bag, the game froze... What do I do?
                EDIT2: I used the Free Space you used in your tutorial and it worked fine. I think the Free Space that I got from Free Space Finder may have been wrong or something. How do I use a Hex Editing Program to find free space?
                Reply With Quote
                  #11    
                Old July 26th, 2008 (6:52 AM).
                jamieboy30 jamieboy30 is offline
                   
                  Join Date: Feb 2008
                  Posts: 23
                  nice tutorial!, but I have a bit of a problem... when i try to insert a lucario sprite (indexed, 64x64) over the gulpin one in firered, all it changes is the palette, not the actual sprite...any help?
                  __________________
                  Reply With Quote
                    #12    
                  Old July 26th, 2008 (7:21 AM).
                  destinedjagold's Avatar
                  destinedjagold destinedjagold is offline
                  Oh Hai Thar~
                  • Silver Tier
                   
                  Join Date: May 2007
                  Location: Philippines
                  Age: 27
                  Gender: Male
                  Nature: Careful
                  Posts: 8,573
                  Quote:
                  Originally Posted by Mario_Bones View Post
                  Ah, that's how you get free space to work. Thanks a bunch!
                  EDIT: I tried it, and inserted a sprite over Mudkip in Ruby. When I chose the Pokemon in Birch's bag, the game froze... What do I do?
                  EDIT2: I used the Free Space you used in your tutorial and it worked fine. I think the Free Space that I got from Free Space Finder may have been wrong or something. How do I use a Hex Editing Program to find free space?
                  no idea why it does that, sorry. :\
                  Also, I am not using Free Space Finder.
                  I clearly stated how to use a hex editor in the tutorial.

                  Quote:
                  Originally Posted by jamieboy30 View Post
                  nice tutorial!, but I have a bit of a problem... when i try to insert a lucario sprite (indexed, 64x64) over the gulpin one in firered, all it changes is the palette, not the actual sprite...any help?
                  Yes, it doesn't replace the sprite.
                  Have you tried meeting up with Gulpin(or rather, Lucario) in the game?
                  __________________


                  FC: 0061-1111-6462
                  TSV: 1364(X), 0790(OR)

                  Reply With Quote
                    #13    
                  Old July 26th, 2008 (9:30 AM). Edited July 26th, 2008 by jamieboy30.
                  jamieboy30 jamieboy30 is offline
                     
                    Join Date: Feb 2008
                    Posts: 23
                    I just tried what you said, and when i got into a wild pokemon battle with gulpin(lucario) and the screen went pitch black. I then went into pokemon editor pro and changed the image offsets for gulpin to the new ones it had in the top right of unlz, and went to meet gulpin again, this time though, it just showed the sprite of the messed up gulpin.

                    EDIT: I tried it again but with swalot and a darkrai sprite, this is this the result:
                    http://i240.photobucket.com/albums/ff251/jamieboy30/problem.jpg
                    __________________
                    Reply With Quote
                      #14    
                    Old July 26th, 2008 (3:13 PM).
                    destinedjagold's Avatar
                    destinedjagold destinedjagold is offline
                    Oh Hai Thar~
                    • Silver Tier
                     
                    Join Date: May 2007
                    Location: Philippines
                    Age: 27
                    Gender: Male
                    Nature: Careful
                    Posts: 8,573
                    are you sure that the image is 64x64...?
                    also, is it in .PNG format?

                    post your sprite here and I will try and fixing it if what I stated above are true in your case. :\
                    __________________


                    FC: 0061-1111-6462
                    TSV: 1364(X), 0790(OR)

                    Reply With Quote
                      #15    
                    Old July 26th, 2008 (9:27 PM).
                    Mario_Bones's Avatar
                    Mario_Bones Mario_Bones is offline
                    Lazuli Version Creator
                       
                      Join Date: Jun 2008
                      Location: Australia
                      Gender:
                      Posts: 42
                      Quote:
                      Originally Posted by destinedjagold View Post

                      no idea why it does that, sorry. :\
                      Also, I am not using Free Space Finder.
                      I clearly stated how to use a hex editor in the tutorial.
                      I got it working now, I figured out how to use the Hex Editor I have.
                      Reply With Quote
                        #16    
                      Old July 26th, 2008 (9:29 PM).
                      destinedjagold's Avatar
                      destinedjagold destinedjagold is offline
                      Oh Hai Thar~
                      • Silver Tier
                       
                      Join Date: May 2007
                      Location: Philippines
                      Age: 27
                      Gender: Male
                      Nature: Careful
                      Posts: 8,573
                      oh, I see. good to hear.
                      good luck with your spriting projects!
                      __________________


                      FC: 0061-1111-6462
                      TSV: 1364(X), 0790(OR)

                      Reply With Quote
                        #17    
                      Old July 27th, 2008 (12:10 AM).
                      jamieboy30 jamieboy30 is offline
                         
                        Join Date: Feb 2008
                        Posts: 23
                        Quote:
                        Originally Posted by destinedjagold View Post
                        are you sure that the image is 64x64...?
                        also, is it in .PNG format?

                        post your sprite here and I will try and fixing it if what I stated above are true in your case. :\
                        Okay, here are the sprites:





                        I replaced gulpin with lucario, and swalot with darkrai if that helps.

                        Thanks.
                        __________________
                        Reply With Quote
                          #18    
                        Old July 27th, 2008 (1:27 AM). Edited July 27th, 2008 by destinedjagold.
                        destinedjagold's Avatar
                        destinedjagold destinedjagold is offline
                        Oh Hai Thar~
                        • Silver Tier
                         
                        Join Date: May 2007
                        Location: Philippines
                        Age: 27
                        Gender: Male
                        Nature: Careful
                        Posts: 8,573
                        okay... they work pretty fine and perfect in my case. :\
                        Spoiler:





                        I really do not know why it doesn't work in your case. however, I am also sure this works in FireRed as well.
                        I got no time though, busy in real life. :\
                        but if you wish, I can post some proof that this method does work in FireRed as well. But maybe later. :\

                        Maybe you have overwritten an offset which was already have been used. :\


                        EDIT

                        here's proof that it also works with FireRed. :\
                        Spoiler:

                        __________________


                        FC: 0061-1111-6462
                        TSV: 1364(X), 0790(OR)

                        Reply With Quote
                          #19    
                        Old July 27th, 2008 (10:46 AM).
                        jamieboy30 jamieboy30 is offline
                           
                          Join Date: Feb 2008
                          Posts: 23
                          thanks alot for the help, I'm gonna try using the program that you're using to find the offsets, I think it may be down to the fact that I'm using FSF, but I may be wrong, but thanks again for all the help you've given me
                          __________________
                          Reply With Quote
                            #20    
                          Old July 27th, 2008 (6:44 PM).
                          Sportsmaniac1322's Avatar
                          Sportsmaniac1322 Sportsmaniac1322 is offline
                             
                            Join Date: Apr 2008
                            Gender:
                            Posts: 55
                            This probably isn't the right place to post this, but I've been trying to take the hero sprite from one ROM and put it in another. Is there a tutorial/program that would let me do that?
                            __________________
                            My Supported hacks:

                            Reply With Quote
                              #21    
                            Old July 28th, 2008 (6:58 AM). Edited July 28th, 2008 by Xenomorph.
                            Xenomorph Xenomorph is offline
                               
                              Join Date: Jul 2008
                              Posts: 2
                              Hey, I was wondering if someone could help me. My screen goes black when i try to catch the custom sprite.

                              I would also like to know how to add a custom back sprite to my custom front sprite (if that's what its called?)
                              Reply With Quote
                                #22    
                              Old July 28th, 2008 (11:29 AM).
                              NoriakiZ's Avatar
                              NoriakiZ NoriakiZ is offline
                              Rookie
                                 
                                Join Date: Jul 2008
                                Nature: Timid
                                Posts: 18
                                I need help!!!

                                I can't get the background to be transparent. Why can't I do this?
                                Reply With Quote
                                  #23    
                                Old July 28th, 2008 (11:05 PM).
                                Mr. Absol's Avatar
                                Mr. Absol Mr. Absol is offline
                                   
                                  Join Date: Jul 2008
                                  Location: Earth
                                  Age: 22
                                  Gender:
                                  Nature: Relaxed
                                  Posts: 41
                                  Ahahah, So Helpful, thanx you
                                  __________________
                                  This signature has been disabled.
                                  280 pixels too wide.
                                  Please review and fix the issues by reading the signature rules.

                                  You must edit it to meet the limits set by the rules before you may remove the [sig-reason] code from your signature. Removing this tag will re-enable it.

                                  Do not remove the tag until you fix the issues in your signature. You may be infracted for removing this tag if you do not fix the specified issues. Do not use this tag for decoration purposes.
                                  Reply With Quote
                                    #24    
                                  Old July 29th, 2008 (1:07 PM).
                                  NatureKeeper NatureKeeper is offline
                                  No longer active here.
                                     
                                    Join Date: Jun 2008
                                    Location: Somewhere.
                                    Age: 20
                                    Gender: Male
                                    Nature: Hasty
                                    Posts: 1,234
                                    JAgold, I appreciate yur work but....

                                    Where are the offsets? all i find are scribbles. I really want to Insert my cute PIPLUP...
                                    Reply With Quote
                                      #25    
                                    Old July 29th, 2008 (9:19 PM). Edited July 29th, 2008 by PokemonCrystalWhite.
                                    PokemonCrystalWhite's Avatar
                                    PokemonCrystalWhite PokemonCrystalWhite is offline
                                    ...Don't mess with me...
                                       
                                      Join Date: Jul 2008
                                      Location: Unknown
                                      Gender:
                                      Nature: Quiet
                                      Posts: 8
                                      Great Sprite guide i've been looking for one for a long tim!

                                      Time* sorry for double posting
                                      Reply With Quote
                                      Reply

                                      Quick Reply

                                      Join the conversation!

                                      Create an account to post a reply in this thread, participate in other discussions, and more!

                                      Create a PokéCommunity Account

                                      Sponsored Links
                                      Thread Tools

                                      Posting Rules
                                      You may not post new threads
                                      You may not post replies
                                      You may not post attachments
                                      You may not edit your posts

                                      BB code is On
                                      Smilies are On
                                      [IMG] code is On
                                      HTML code is Off

                                      Forum Jump


                                      All times are GMT -8. The time now is 12:13 PM.