The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > Tools, Tutorials & Resources
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

Tools, Tutorials & Resources Various tools to help you develop your hacks can be found here.
New threads in this forum are to be approved by a moderator before they are displayed.


Advertise here

Reply
 
Thread Tools
  #1    
Old July 21st, 2008, 07:51 AM
destinedjagold's Avatar
destinedjagold
Oh Hai Thar~ 'ω'
Community Supporter
 
Join Date: May 2007
Location: Philippines
Gender: Male
Nature: Careful

Advertise here
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 <offsets go here>. 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!
__________________

Last edited by hashtag; April 15th, 2010 at 07:52 AM.
Reply With Quote
  #2    
Old July 22nd, 2008, 08:11 AM
pokemonlover93's Avatar
pokemonlover93
The Crystal Sharder.
 
Join Date: Jun 2007
Location: Somewhat Peaceful Place.
Gender:
Nature: Timid
This si a Good Tutorial, very handy! Nice Job!
__________________
You know what they say...Where you are is where you are...

Last edited by pokemonlover93; July 22nd, 2008 at 08:13 AM. Reason: Messed up
Reply With Quote
  #3    
Old July 22nd, 2008, 08:37 AM
X-aveon's Avatar
X-aveon
IS BACK!!!!!!!!!!!!!!!!!!!
 
Join Date: Jan 2008
Gender:
Nature: Naive
Send a message via Yahoo to X-aveon
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, 03:33 PM
Ryousha's Avatar
Ryousha
Waiting for PokeSpe HG/SS
 
Join Date: Jun 2007
Location: Somewhere
Age: 18
Nature: Naive
Send a message via Windows Live Messenger to Ryousha
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, 03:33 PM
Lollypop's Avatar
Lollypop
Member since '07 <300 posts
 
Join Date: Nov 2007
Location: Melbourne,Australia
Age: 17
Gender: Male
Nature: Modest
Send a message via Windows Live Messenger to Lollypop
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!!
__________________
Send me random friend invites!!

Random Fact 1: i play maplestory. Global, that is.





I support DJG's hacks 100% as they are soooo good.

pokemon raptor!!

http://www.youtube.com/user/Salamance099?feature=mhee Subscribe please!
Reply With Quote
  #6    
Old July 22nd, 2008, 05:03 PM
destinedjagold's Avatar
destinedjagold
Oh Hai Thar~ 'ω'
Community Supporter
 
Join Date: May 2007
Location: Philippines
Gender: Male
Nature: Careful
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.
__________________
Reply With Quote
  #7    
Old July 23rd, 2008, 01:45 AM
Cy-Chan's Avatar
Cy-Chan
GSC Hacker
 
Join Date: Jan 2005
Location: UK, England.
Age: 23
Gender:
Nature: Timid
Send a message via Windows Live Messenger to Cy-Chan
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, 07:43 AM
marko_hacker's Avatar
marko_hacker
Beginning Hacker
 
Join Date: Jun 2008
Location: Bosnia and Herzegovina
Age: 20
Nature: Brave
DJG this is very great tut.
I learned so much from this
great job
Reply With Quote
  #9    
Old July 23rd, 2008, 03:12 PM
CureYoshiDarkness's Avatar
CureYoshiDarkness
Achtung! Panzer!
Community Supporter
 
Join Date: May 2008
Location: Southern NJ
Nature: Gentle
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
Mario_Bones's Avatar
Mario_Bones
Lazuli Version Creator
 
Join Date: Jun 2008
Location: Australia
Gender:
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?

Last edited by Mario_Bones; July 24th, 2008 at 01:28 AM.
Reply With Quote
  #11    
Old July 26th, 2008, 06:52 AM
jamieboy30
Beginning Trainer
 
Join Date: Feb 2008
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, 07:21 AM
destinedjagold's Avatar
destinedjagold
Oh Hai Thar~ 'ω'
Community Supporter
 
Join Date: May 2007
Location: Philippines
Gender: Male
Nature: Careful
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?
__________________
Reply With Quote
  #13    
Old July 26th, 2008, 09:30 AM
jamieboy30
Beginning Trainer
 
Join Date: Feb 2008
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/f...30/problem.jpg
__________________

Last edited by jamieboy30; July 26th, 2008 at 12:52 PM.
Reply With Quote
  #14    
Old July 26th, 2008, 03:13 PM
destinedjagold's Avatar
destinedjagold
Oh Hai Thar~ 'ω'
Community Supporter
 
Join Date: May 2007
Location: Philippines
Gender: Male
Nature: Careful
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. :\
__________________
Reply With Quote
  #15    
Old July 26th, 2008, 09:27 PM
Mario_Bones's Avatar
Mario_Bones
Lazuli Version Creator
 
Join Date: Jun 2008
Location: Australia
Gender:
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, 09:29 PM
destinedjagold's Avatar
destinedjagold
Oh Hai Thar~ 'ω'
Community Supporter
 
Join Date: May 2007
Location: Philippines
Gender: Male
Nature: Careful
oh, I see. good to hear.
good luck with your spriting projects!
__________________
Reply With Quote
  #17    
Old July 27th, 2008, 12:10 AM
jamieboy30
Beginning Trainer
 
Join Date: Feb 2008
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, 01:27 AM
destinedjagold's Avatar
destinedjagold
Oh Hai Thar~ 'ω'
Community Supporter
 
Join Date: May 2007
Location: Philippines
Gender: Male
Nature: Careful
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:

__________________

Last edited by destinedjagold; July 27th, 2008 at 06:05 AM.
Reply With Quote
  #19    
Old July 27th, 2008, 10:46 AM
jamieboy30
Beginning Trainer
 
Join Date: Feb 2008
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, 06:44 PM
Sportsmaniac1322's Avatar
Sportsmaniac1322
Beginning Trainer
 
Join Date: Apr 2008
Gender:
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, 06:58 AM
Xenomorph
Beginning Trainer
 
Join Date: Jul 2008
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?)

Last edited by Xenomorph; July 28th, 2008 at 02:53 PM. Reason: .
Reply With Quote
  #22    
Old July 28th, 2008, 11:29 AM
NoriakiZ's Avatar
NoriakiZ
Rookie
 
Join Date: Jul 2008
Nature: Timid
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
Beginning Trainer
 
Join Date: Jul 2008
Location: Earth
Age: 19
Gender:
Nature: Relaxed
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, 01:07 PM
NatureKeeper
No longer active here.
 
Join Date: Jun 2008
Location: Somewhere.
Age: 16
Gender: Male
Nature: Hasty
Send a message via Windows Live Messenger to NatureKeeper Send a message via Skype™ to NatureKeeper
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, 09:19 PM
PokemonCrystalWhite's Avatar
PokemonCrystalWhite
...Don't mess with me...
 
Join Date: Jul 2008
Location: Unknown
Gender:
Nature: Quiet
Great Sprite guide i've been looking for one for a long tim!

Time* sorry for double posting

Last edited by PokemonCrystalWhite; July 29th, 2008 at 09:19 PM. Reason: Your double post has been automatically merged.
Reply With Quote
Reply
Quick Reply

Sponsored Links


Advertise here
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
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 05:13 AM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.