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

Reply
 
Thread Tools
  #1    
Old March 28th, 2009 (7:43 AM). Edited April 15th, 2010 by Logan.
Pokepal17's Avatar
Pokepal17 Pokepal17 is offline
More cowbell~
  • Silver Tier
 
Join Date: Oct 2008
Location: Steeltown
Age: 22
Gender: Male
Nature: Modest
Posts: 1,511
In this tutorial, I will teach you how to resize an overworld sprite.

Requirements:
:pokeball:Overworld Editor RE
:pokeball:A Hex Editor (I’m Hex Workshop)
:pokeball:A ROM (I’m using Fire Red BPRE)
:pokeball:An Emulator (I’m using VBA)

Okay now first of all load up your ROM and find the overworld that you want to resize. In my case I will be resizing the fallen old man from Viridian City.
First enable Expert Mode by pressing Crtl + M. Now look at the data. The info 1 sprite header is the main data of the overworld and the info 2 sprite header is the data of the particular overworld frame.




Let’s look at this in a hex editor. My way of finding the hex data is by searching for the reversed sprite pointer.
So I would do this:
083A0A70 ---> 700A3A08
And when we search it we get a result. Now we find the beginning of the data by going back until we come to FFFF.



Now I will explain what each bit of data is:

FFFF – Starter bytes
04 – Palette Index
11 FF 11 – Unknown data 1
0002 – The data size (the number of bytes the sprite takes, reversed)
20 – Width (hex)
00 – Unknown byte 1
20 – Height (hex)
00 - Unknown byte 1
14 01 0000 - Unknown data 2
18 37 3A 08 – Unknown pointer 1 (reversed)
F0 37 3A 08 – Unknown pointer 2 (reversed)
68 33 3A 08 – Unknown pointer 3 (reversed)
70 0A 3A 08 – Sprite Pointer (reversed)
FC 1C 23 08 – Unknown pointer 4 (reversed)

And there is the layout

You will need to find a sprite which has equivalent dimensions to the new dimensions of the overworld you’re resizing. Now I will be resizing my sprite to 64 x 64. So what I need to do is find another 64x64 sprite (the speedboat) in overwold editor.




Now first of all edit the data size to equal the one of the sprite you just looked up in overworld editor. So I will need to change it to 00 08 because that’s the data size reversed.

Next change the dimensions to what you want them to be, I’m having 64 x 64 so I’ll change the length and width bytes to 40 (coz that’s 64 in hex).




Now for the important bit, change the unknown pointers 1 and 2 to the ones of the sprite you looked up in overworld editor. This will determine how the sprite appears in game. If you don’t change them, then the overworld won’t look right in-game.

So what I’ll do is:
18 37 3A 08 --> 20 37 3A 08
F0 37 3A 08 --> D0 37 3A 08

So for me I change




to




Save and look at the resized sprite in overworld editor. You’ll see that the frames have joined, so they need repointing.




Now follow the sprite pointer and you will come to the pointers of the frames (sprite pointer info 2). Find out how may frames your sprite has and repoint the first (number of frames) pointers to a clean offsets. For the offsets, just find some FF in your hex editor and reverse the offset and replace the first pointer with it. Now to tell how much space you’ll need for each frame, convert the unreversed new data size into decimal.

So I get 0800 ---> 2048

So I’ll need 2048 bytes for each frame. So I repoint the frames to new offsets with enough space. I’m going to repoint to the offset 71A23C for my first frame so I reverse it and get 3C A2 71 08

After each frame pointer there is the old data size for the frame; replace it with the new one (in my case 00 80.)

Since all my frames are going to have the same images I’m repointing the frames to one offset but you’ll need to repoint to more offsets if you have a different image on each frame.




Now save and go back to the resized overworld in overworld editor. If all went well, the frame will be the last colour in the palette.




Now make your new overworlds.




Test it ingame and it should be fine.




Credits to HackMew for the overworld editor readme file, Darthatron for his advanced overworld spriting tutorial and to Peyi for his tutorial on WAH.

Copyright 2009 Pokepal17
__________________
Pokémon Stardrop
Reply With Quote

Relevant Advertising!

  #2    
Old March 29th, 2009 (8:04 AM).
Matteron (96)'s Avatar
Matteron (96) Matteron (96) is offline
Difference is everything...
  • Gold Tier
 
Join Date: May 2008
Age: 20
Posts: 270
U no there i programs to do this right?
__________________
Matteron(96)
Currently Playing--->
Progress: Post-Game
Current Team:


In Terms of Hacking...
Favorite ROM
Skills
Working On
In Terms of Game Dev...
Working On
News
I'm currently up for hire, for almost anything in ROM hacking, so just send me a PM.
Reply With Quote
  #3    
Old March 29th, 2009 (9:16 AM).
Pokepal17's Avatar
Pokepal17 Pokepal17 is offline
More cowbell~
  • Silver Tier
 
Join Date: Oct 2008
Location: Steeltown
Age: 22
Gender: Male
Nature: Modest
Posts: 1,511
Quote:
Originally Posted by Matteron View Post
U no there i programs to do this right?
Yep and programs can screw up ROMs. Besides this way shows people how to do it for themselves and not depend on a program.

The only program that I know that can do this can also screw up a ROM. And this is more practical
__________________
Pokémon Stardrop
Reply With Quote
  #4    
Old March 29th, 2009 (9:20 AM).
machomuu's Avatar
machomuu machomuu is offline
  • Crystal Tier
  • Crystal Tier
 
Join Date: Apr 2008
Location: Americalanavania
Gender: Male
Nature: Relaxed
Posts: 10,235
Quote:
Originally Posted by Pokepal17 View Post
Yep and programs can screw up ROMs. Besides this way shows people how to do it for themselves and not depend on a program.

The only program that I know that can do this can also screw up a ROM. And this is more practical
By "only program" do you mean the overworld changer?
__________________
Paired to and madly in love with a literal Symphony of legs.
Collab de
Los Video JUEGOS

I also watch anime sometimes. Just a little.
Reply With Quote
  #5    
Old March 29th, 2009 (9:26 AM).
Pokepal17's Avatar
Pokepal17 Pokepal17 is offline
More cowbell~
  • Silver Tier
 
Join Date: Oct 2008
Location: Steeltown
Age: 22
Gender: Male
Nature: Modest
Posts: 1,511
Quote:
Originally Posted by machomuu View Post
By "only program" do you mean the overworld changer?
Yeah, I think that's it. I heard it messes up ROMs
__________________
Pokémon Stardrop
Reply With Quote
  #6    
Old March 29th, 2009 (12:14 PM).
machomuu's Avatar
machomuu machomuu is offline
  • Crystal Tier
  • Crystal Tier
 
Join Date: Apr 2008
Location: Americalanavania
Gender: Male
Nature: Relaxed
Posts: 10,235
Quote:
Originally Posted by Pokepal17 View Post
Yeah, I think that's it. I heard it messes up ROMs
So...you've never tried it?
__________________
Paired to and madly in love with a literal Symphony of legs.
Collab de
Los Video JUEGOS

I also watch anime sometimes. Just a little.
Reply With Quote
  #7    
Old March 29th, 2009 (1:03 PM).
Pokepal17's Avatar
Pokepal17 Pokepal17 is offline
More cowbell~
  • Silver Tier
 
Join Date: Oct 2008
Location: Steeltown
Age: 22
Gender: Male
Nature: Modest
Posts: 1,511
Quote:
Originally Posted by machomuu View Post
So...you've never tried it?
I once tried it and it worked okay, so if you want to use it then fine, but if you want some more understanding of overworld sprites and you would like to know how to do it manually then that's what this guide is for

Besides, I like to do as much practical hacking as possible
__________________
Pokémon Stardrop
Reply With Quote
  #8    
Old March 29th, 2009 (1:27 PM).
machomuu's Avatar
machomuu machomuu is offline
  • Crystal Tier
  • Crystal Tier
 
Join Date: Apr 2008
Location: Americalanavania
Gender: Male
Nature: Relaxed
Posts: 10,235
Quote:
Originally Posted by Pokepal17 View Post
I once tried it and it worked okay, so if you want to use it then fine, but if you want some more understanding of overworld sprites and you would like to know how to do it manually then that's what this guide is for

Besides, I like to do as much practical hacking as possible
Now that's the sign of a good worker!
__________________
Paired to and madly in love with a literal Symphony of legs.
Collab de
Los Video JUEGOS

I also watch anime sometimes. Just a little.
Reply With Quote
  #9    
Old April 8th, 2009 (6:00 AM).
destinedjagold's Avatar
destinedjagold destinedjagold is offline
Oh Hai Thar~
  • Silver Tier
 
Join Date: May 2007
Location: Philippines
Age: 26
Gender: Male
Nature: Careful
Posts: 8,512
Have mercy to those who have a slow internet connection... T_T
make the screenshots smaller and easier to be uploaded...
Reply With Quote
  #10    
Old April 8th, 2009 (6:40 AM).
Pokepal17's Avatar
Pokepal17 Pokepal17 is offline
More cowbell~
  • Silver Tier
 
Join Date: Oct 2008
Location: Steeltown
Age: 22
Gender: Male
Nature: Modest
Posts: 1,511
Quote:
Originally Posted by destinedjagold View Post
Have mercy to those who have a slow internet connection... T_T
make the screenshots smaller and easier to be uploaded...
Okay The screenshots will be made smaller and hopefully that should fix your problem It's annoying having slow internet. ¬_¬
__________________
Pokémon Stardrop
Reply With Quote
  #11    
Old August 7th, 2009 (7:35 AM).
mat1554 mat1554 is offline
French Translator
     
    Join Date: Feb 2008
    Location: Quebec
    Gender: Male
    Nature: Calm
    Posts: 28
    Hi,
    I have a question for you, do you give me autorization to translate your tutorial in french for my forum please ? I you want, can you answer me by MP please.

    Thank you !
    Mat1554
    Reply With Quote
      #12    
    Old August 7th, 2009 (9:27 AM).
    SharpPoint's Avatar
    SharpPoint SharpPoint is offline
    Suicune used Surf!
       
      Join Date: Jul 2009
      Location: Stalker...
      Gender: Male
      Nature: Adamant
      Posts: 479
      Quote:
      Originally Posted by mat1554 View Post
      Hi,
      I have a question for you, do you give me autorization to translate your tutorial in french for my forum please ? I you want, can you answer me by MP please.

      Thank you !
      Mat1554
      Well, I like that he actually asks for permission first. Most people would just go translate it without permission. This is the internet nowadays.
      Reply With Quote
        #13    
      Old August 8th, 2009 (3:01 PM).
      mat1554 mat1554 is offline
      French Translator
         
        Join Date: Feb 2008
        Location: Quebec
        Gender: Male
        Nature: Calm
        Posts: 28
        xD I my head if you translate tuto without permission, it's thief the project and work that people who had make.
        (sorry my english is not very good xD)
        Reply With Quote
          #14    
        Old August 8th, 2009 (3:52 PM).
        Pokepal17's Avatar
        Pokepal17 Pokepal17 is offline
        More cowbell~
        • Silver Tier
         
        Join Date: Oct 2008
        Location: Steeltown
        Age: 22
        Gender: Male
        Nature: Modest
        Posts: 1,511
        Quote:
        Originally Posted by mat1554 View Post
        xD I my head if you translate tuto without permission, it's thief the project and work that people who had make.
        (sorry my english is not very good xD)
        Well said, Also, while translating it, please credit the people I credited in the tutorial.
        __________________
        Pokémon Stardrop
        Reply With Quote
          #15    
        Old August 8th, 2009 (6:06 PM).
        mat1554 mat1554 is offline
        French Translator
           
          Join Date: Feb 2008
          Location: Quebec
          Gender: Male
          Nature: Calm
          Posts: 28
          Yeah, when I translate in title tuto

          Quote:
          Tuto name
          Author
          Credit Author
          Tranlate By : me xD
          Thanks you so much for you're permission
          Reply With Quote
            #16    
          Old August 9th, 2009 (5:37 AM).
          Sarcastic Prince's Avatar
          Sarcastic Prince Sarcastic Prince is offline
          Starting anew...
             
            Join Date: Aug 2007
            Location: Kwun Tong Mountains
            Gender: Male
            Nature: Timid
            Posts: 3,066
            Quote:
            Originally Posted by Pokepal17 View Post
            Yep and programs can screw up ROMs. Besides this way shows people how to do it for themselves and not depend on a program.

            Actually, that Program doesn't screw up the Rom. I've used that Program bunches of times in a "so called unstable rom", a Emerald Rom. Well, I do depend things on programs, most of the Time unless I have to insert OW's from a sheet in a Emerald Rom.
            __________________
            I am now an anime dubber, cover singer and a fan of anime. I can still apply as a translator and grammar corrector, though.
            Reply With Quote
              #17    
            Old August 10th, 2009 (6:39 AM).
            Pokepal17's Avatar
            Pokepal17 Pokepal17 is offline
            More cowbell~
            • Silver Tier
             
            Join Date: Oct 2008
            Location: Steeltown
            Age: 22
            Gender: Male
            Nature: Modest
            Posts: 1,511
            Quote:
            Originally Posted by Ruka Prince View Post
            Actually, that Program doesn't screw up the Rom. I've used that Program bunches of times in a "so called unstable rom", a Emerald Rom. Well, I do depend things on programs, most of the Time unless I have to insert OW's from a sheet in a Emerald Rom.
            I see. Well using programs is fine IMO, but this is a method using mainly a hex editor.
            __________________
            Pokémon Stardrop
            Reply With Quote
              #18    
            Old August 12th, 2009 (2:15 AM).
            Satoshi Ookami's Avatar
            Satoshi Ookami Satoshi Ookami is offline
            Memento Mori
            • Gold Tier
             
            Join Date: Jul 2008
            Location: Abyss of Time, Great Seal
            Age: 24
            Gender: Male
            Nature: Calm
            Posts: 14,467
            This is cool tutorial but I have a huge problem...
            After I repoint the frames and the black 64x64 square in OWE appear I import some bitmap (I used Giratina and Rayquaza) but in game it's just blank space... but for some reason in A-Map the OW appear...
            __________________
            ROM hacking FAQ - Read before asking how to play a hack.

            Anime List | PSN Trophy List
            Reply With Quote
              #19    
            Old August 12th, 2009 (10:12 AM).
            Pokepal17's Avatar
            Pokepal17 Pokepal17 is offline
            More cowbell~
            • Silver Tier
             
            Join Date: Oct 2008
            Location: Steeltown
            Age: 22
            Gender: Male
            Nature: Modest
            Posts: 1,511
            Quote:
            Originally Posted by Ash493 View Post
            This is cool tutorial but I have a huge problem...
            After I repoint the frames and the black 64x64 square in OWE appear I import some bitmap (I used Giratina and Rayquaza) but in game it's just blank space... but for some reason in A-Map the OW appear...
            Check, the sprites pointers and compare it to the ones I used. Sometimes, the wrong pointers makes it appear wrong in game.
            __________________
            Pokémon Stardrop
            Reply With Quote
              #20    
            Old August 12th, 2009 (11:20 PM).
            Satoshi Ookami's Avatar
            Satoshi Ookami Satoshi Ookami is offline
            Memento Mori
            • Gold Tier
             
            Join Date: Jul 2008
            Location: Abyss of Time, Great Seal
            Age: 24
            Gender: Male
            Nature: Calm
            Posts: 14,467
            Quote:
            Originally Posted by Pokepal17 View Post
            Check, the sprites pointers and compare it to the ones I used. Sometimes, the wrong pointers makes it appear wrong in game.
            I wasn't resizing the Old Man
            I was doing the biker...
            And the problem is also that I can't do it with Overworld Changer...
            __________________
            ROM hacking FAQ - Read before asking how to play a hack.

            Anime List | PSN Trophy List
            Reply With Quote
              #21    
            Old August 13th, 2009 (2:38 PM).
            Pokepal17's Avatar
            Pokepal17 Pokepal17 is offline
            More cowbell~
            • Silver Tier
             
            Join Date: Oct 2008
            Location: Steeltown
            Age: 22
            Gender: Male
            Nature: Modest
            Posts: 1,511
            Quote:
            Originally Posted by Ash493 View Post
            I wasn't resizing the Old Man
            I was doing the biker...
            And the problem is also that I can't do it with Overworld Changer...
            Well the pointers for unknown 1 and 2 were for 64x64 OW sprites. So if you were resizing the biker to 64x64 you should have made the same alterations as I did in the tutorial.
            __________________
            Pokémon Stardrop
            Reply With Quote
              #22    
            Old August 13th, 2009 (11:20 PM).
            Satoshi Ookami's Avatar
            Satoshi Ookami Satoshi Ookami is offline
            Memento Mori
            • Gold Tier
             
            Join Date: Jul 2008
            Location: Abyss of Time, Great Seal
            Age: 24
            Gender: Male
            Nature: Calm
            Posts: 14,467
            Quote:
            Originally Posted by Pokepal17 View Post
            Well the pointers for unknown 1 and 2 were for 64x64 OW sprites. So if you were resizing the biker to 64x64 you should have made the same alterations as I did in the tutorial.
            Yeah I think I wrote those correctly...
            I'll try it again and if not can I send ya the ROM so ya can check it?
            __________________
            ROM hacking FAQ - Read before asking how to play a hack.

            Anime List | PSN Trophy List
            Reply With Quote
              #23    
            Old August 18th, 2009 (12:51 PM). Edited August 18th, 2009 by Robert Conley.
            Robert Conley's Avatar
            Robert Conley Robert Conley is offline
            GPXPlus.net/user/Robert+Conley
               
              Join Date: Oct 2008
              Location: The Anti Spiral Homeworld
              Gender: Male
              Nature: Docile
              Posts: 330
              I tried following this to change the may ow in FR and when i search in the hex editor it says it cant find the pointer.

              The sprite pointer is 083A0470 and I search for 70043A08 which seems to match what you did but it still doesnt find it. But when I copy/paste what you did it finds the old man.
              __________________
              Reply With Quote
                #24    
              Old August 28th, 2009 (5:05 PM). Edited August 28th, 2009 by TehBazzard.
              TehBazzard's Avatar
              TehBazzard TehBazzard is offline
              Main creator of FireRed+
                 
                Join Date: Aug 2009
                Posts: 66
                Quote:
                Originally Posted by Robert Conley View Post
                I tried following this to change the may ow in FR and when i search in the hex editor it says it cant find the pointer.

                The sprite pointer is 083A0470 and I search for 70043A08 which seems to match what you did but it still doesnt find it. But when I copy/paste what you did it finds the old man.
                I am having the same problem too.
                I am changing Deoxys's Defense Form OW sprite, which the pointer is 08930328. I looked for 28039308 and nothing came up.
                EDIT:Never mind I fixed it. I used the wrong pointer, its in Info1prite Header.
                EDIT2:Ok how did you find the offset of 71A23C? I would like to know so I can do it myself. I have no idea how you got to that offset so I can't continue.
                __________________

                The thread for my hack is here http://www.pokecommunity.com/showthread.php?t=192355

                Team Silvery Sparks:
                http://www.pokecommunity.com/showthread.php?p=5043741
                Reply With Quote
                  #25    
                Old August 28th, 2009 (6:00 PM).
                Pokepal17's Avatar
                Pokepal17 Pokepal17 is offline
                More cowbell~
                • Silver Tier
                 
                Join Date: Oct 2008
                Location: Steeltown
                Age: 22
                Gender: Male
                Nature: Modest
                Posts: 1,511
                Quote:
                Originally Posted by TehBazzard View Post
                I am having the same problem too.
                I am changing Deoxys's Defense Form OW sprite, which the pointer is 08930328. I looked for 28039308 and nothing came up.
                EDIT:Never mind I fixed it. I used the wrong pointer, its in Info1prite Header.
                EDIT2:Ok how did you find the offset of 71A23C? I would like to know so I can do it myself. I have no idea how you got to that offset so I can't continue.
                Use FSF and search for the data size converted into decimal. Or do the same with a hex editor.
                __________________
                Pokémon Stardrop
                Reply With Quote
                Reply
                Quick Reply

                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 4:58 AM.