Arch Posted February 21, 2011 Share Posted February 21, 2011 (edited) [spoiler=Regarding screwed up palettes] Note the two cavalier map sprites with odd palettes. (4/1/16): if your image palette is screwing up, it's because the graphics that the game uses have "indexed palettes", which means there's an extra bit of info contained within the image that designates what colours go where. Using Paint and most other image editors destroys indexing, so we recommend ripping a map sprite from the game, opening it in Usenti, and then pasting your new graphic over the top of it. You will know that the image has an indexed palette as to the right side there will be a series of palettes - one for the player side, another for the enemy side, etc. - Agro An image file with an indexed palette. I was absolutely shocked today when someone (AstraLunaSol) told me they couldn't figure out importing map sprites. It never struck me as something particularly hard, I'd even describe it as a simple procedure. I figured I'd write this tutorial using his hack, in case anyone else. The same procedures work for inserting custom ones, so long as you've formatted them properly (shadowofchaos added onto the tutorial in a post below with extra details). Here's what you'll need: Nightmare Modules. A game to import from and a game to import to (I'm not linking to those ). A hex editor, HxD is my personal favorite. Nintenlord's GBAGE (found in here). For this tutorial, I am going to import the Eirika Lord map sprite into Fire Emblem: Dream of Five. Our starting position in the tutorial. Alright, so the first thing we need to do is open up the ROM we're importing from in Nightmare. In my case it's FE8. We're going to get the standing sprites and the moving sprites.[spoiler=Step 1: Importing the Standing Sprites]First we'll tackle the standing sprites. Open the "Standing Map Sprite Editor." Should look something like this: See the highlighted text? That's the pointer to the standing graphics for Eirika Lord. Guess where we're going in GBAGE? Click "Save a bitmap," save it to wherever you'd like, and we've got our standing sprites ready and available. Let's import them to FE7, shall we? I'm going to import the map sprites to free space at 00DD0000. Open the ROM that you want the map sprites to be imported to, and with "Image Control" in GBAGE, click "Import a bitmap." This window should come up. DD0000 is the offset that I'm writing the data to. You can write it anywhere your heart desires. Click "Ok" and your map sprites will now magically be in the game. But that's not all, folks! Now we need to make sure the game knows where to find your freshly imported map sprites. Open the "Standing map sprites editor" for your respective version (in my case it's FE7). I replaced the original pointer for Lyn Lord with DD0000, where I wrote Eirika Lord. After Step 1, we have Eirika Lord standing there. But when you move her or hover over her with the cursor we still get Lyn Lord. [spoiler=Step 2: Importing the Moving Sprites]Alright, now we have to import the other half of a map sprite. Back to FE8 I go! This time, I'm opening the "Misc Map Sprite Editor." I highlighted "0x81C3ED4," guess where we're going in FE8 with GBAGE? 1C3ED4! Save the bitmap, just like last time! Okay, now that we've gotten our moving sprites, it's time to import it to FE7. But where do we write it? Well, I'm going to write it where the standing map sprite ended. How do we know where it ended? Open up your hex editor, go to the offset where you wrote it (DD0000 in my case) and scroll down until you're back to free space. Looks like DD0160 is our lucky offset! I'll be writing the moving sprites to DD0160. Time to open up the receiving ROM with GBAGE and complete the transplant. Just like before, on the "Image Control" window click "Import a Bitmap." This should look very familiar. GBAGE will notify you that the graphics have been inserted. So now it's time for the last leg of our tutorial/journey, referencing the moving sprites in the map sprite's new ROM. Open up the other game's "Misc Map Sprites Editor" (FE7 in my case) and replace the pointers for your map sprite of choice. If you've been following along, you'll notice that I replaced Animation Pointer but did not alter Another Pointer. I tested the map sprites and they worked fine with the existing pointer. Just test things out and if everything doesn't work as it should, then you'll have to change the pointer. Sometimes you'll have to change the pointer, sometimes you won't. When you do have to change the pointer, it's safe to just use the same value for both pointers. The same ROM after importing the map sprites. Hope you enjoyed the tutorial, hope you learned something. Happy hacking! Edited January 4, 2016 by Agro Quote Link to comment Share on other sites More sharing options...
Crimson Red Posted February 21, 2011 Share Posted February 21, 2011 Hah you just fixed the extra tag, slick of you, I was about to post about it too... Anyway it's a nice tutorial, if it didn't have pictures of the Dream of Five hack I'd ask to put it in the Ultimate Tutorial which would save me the time of doing it myself. Good job and all~ Quote Link to comment Share on other sites More sharing options...
shadowofchaos Posted February 21, 2011 Share Posted February 21, 2011 Btw if people want to save said map sprites for editing, for it to be more "editing friendly": [spoiler=Standing Sprites]For Standing Map Sprites, in GBA Graphics editor, set the width to 2: When it's like this: It's the "16x16" option on the Nightmare Module. When it's spaced a little bit like Ephraim's: It's the "16x32" option. When it's something large like the Fire Dragon or Ninian's Ice Dragon form, change it to Length 4: As well as it's the "32x32" option on the Nightmare Module. [spoiler=Moving Sprites]Map sprites are the same way, except they are of Width 4, and Height of 60 (I put 64 just to be safe): Palette offsets (just so you can see if it works with others): FE7 Map Sprite Palette Offsets: Player Team (Blue): 194594 Enemy Team (Red): 1945B4 NPC Team (Green): 1945D4 Stoned?: 1945F4 Link Arena Team 4 (Grey): 194614 Flashback Palette: 194654 Evil looking Palette?: 1946F4 FE6 Map Sprite Palette: Player Team (Blue): 100968 Enemy Team (Red): 100988 (Follows the same pattern, Green and Gray Arena palettes probably are the two after them) FE8 Map Sprite Palette: Player Team (Blue): 59EE20 Enemy Team (Red): 59EE40 Alternatively, when you enter the "Player Team (Blue)", you can increase the "Palette Index" from 0 to see the other ones, instead of entering them manually. Example, I bet you've never seen these before. Quote Link to comment Share on other sites More sharing options...
Crimson Red Posted February 21, 2011 Share Posted February 21, 2011 ^You'd be wrong owned I had too much freetime one day but anyway that stuff IMO doesn't belong in an importing tutorial since we usually distinguish between importing and inserting with importing being transferring from one game to another and inserting being inserting an edited/custom creation. Could be easily remedied by changing the topic title though. Quote Link to comment Share on other sites More sharing options...
shadowofchaos Posted February 21, 2011 Share Posted February 21, 2011 "Too much free time one day" - BLAZ.RAR You practically wrote a book on hacking the game... Quote Link to comment Share on other sites More sharing options...
ChachaDruid Posted April 22, 2011 Share Posted April 22, 2011 I'm sorry for sounding so noobish, but I tried following the guidelines and apparently I still fail. I'm trying to get the Female Druid map sprite for Lute in FE8. I did use a codebreaker to change her class, and in the battle animations, she is a female druid. The overworld map sprite, however, remains male. I would like to change it, so if anyone would help me with it I would appreciate it, or unless some has the time, could they edit that part of the game so Lute starts as a female Shaman and promotes to Female Druid, with all the sprites? Then just send it to me if possible. If no one wants to or can, then a step-by-step guide showing me would be okay. Thank you very much~ Quote Link to comment Share on other sites More sharing options...
shadowofchaos Posted April 22, 2011 Share Posted April 22, 2011 I did use a codebreaker to change her class, and in the battle animations, she is a female druid. The overworld map sprite, however, remains male. This tutorial refers to ROM hacking, not RAM hacking. There should be a value that makes her sprite a female druid. Heck, if you change her class in memory, it should have the map sprite correspondingly change after it refreshes (aka R button info menu). That or, you're confusing the Male and Female druid battle animations. Quote Link to comment Share on other sites More sharing options...
ChachaDruid Posted April 22, 2011 Share Posted April 22, 2011 (edited) This tutorial refers to ROM hacking, not RAM hacking. There should be a value that makes her sprite a female druid. Heck, if you change her class in memory, it should have the map sprite correspondingly change after it refreshes (aka R button info menu). That or, you're confusing the Male and Female druid battle animations. Oh no, I can tell the difference. Male is blocky, female you can see more of a face. The battle animation is female, but not the map sprite. I don't know why, but even as a female shaman, it still was male and not female but her battle animation was definitely female. And I did exactly that, moved her sprite around, checked info such and such .. didn't change. I know she's not supposed to be a shaman at all, since Lute joins as a mage. When I changed her, she lost her purple color and became a generic blue color like it looks in the multiplayer battle arena thing. The overworld sprite may not have gone through with the female battle animation, which makes no sense. Edited April 22, 2011 by ChachaDruid Quote Link to comment Share on other sites More sharing options...
Book of Ereshkigal Posted May 11, 2011 Share Posted May 11, 2011 I'm pretty sure in SS female druids/shamans have Male OW sprites, weird, I know. ...That is what your talking about, right? Quote Link to comment Share on other sites More sharing options...
go9999 Posted August 16, 2011 Share Posted August 16, 2011 Hi all, This is my first time inserting a custom map sprite into FE7, and I am kinda lost as to what to do right now. I tried to import the bitmap but didn't quite work out. (The format and layout is the same as the bitmaps for the current characters. Expert guidance would be well appreciated. Thanks! Quote Link to comment Share on other sites More sharing options...
Blademaster! Posted August 16, 2011 Share Posted August 16, 2011 Hi all, This is my first time inserting a custom map sprite into FE7, and I am kinda lost as to what to do right now. I tried to import the bitmap but didn't quite work out. (The format and layout is the same as the bitmaps for the current characters. Expert guidance would be well appreciated. Thanks! No one will be able to help you with that little of an amount of information. Quote Link to comment Share on other sites More sharing options...
go9999 Posted August 16, 2011 Share Posted August 16, 2011 No one will be able to help you with that little of an amount of information. Problem is, I'm kinda lost as to where I am myself XD. Ok basically what I have done so far, I have followed the 2nd post of this tutorial http://forums.grandbell.net/index.php/topic,2709.0.html and finished my map sprites. However, when I try to do the 1st post, I can't seem to import the picture correct (i.e. after I import, I get junk and when I try to put a pointer to it, the game crashes). The sprite I am trying to put in is 16x32, and uses the palette provided in the link above. I suspect I am having a problem at step 3 of the first post, (i.e. I am not sure what is going wrong with my compressor.) Any help would be greatly appreciated. Thanks! Alternatively, you can provide a completely different pathway to insert a map sprite if you think this method is inappropriate. ^^ Quote Link to comment Share on other sites More sharing options...
Blademaster! Posted August 16, 2011 Share Posted August 16, 2011 Problem is, I'm kinda lost as to where I am myself XD. Ok basically what I have done so far, I have followed the 2nd post of this tutorial http://forums.grandbell.net/index.php/topic,2709.0.html and finished my map sprites. However, when I try to do the 1st post, I can't seem to import the picture correct (i.e. after I import, I get junk and when I try to put a pointer to it, the game crashes). The sprite I am trying to put in is 16x32, and uses the palette provided in the link above. I suspect I am having a problem at step 3 of the first post, (i.e. I am not sure what is going wrong with my compressor.) Any help would be greatly appreciated. Thanks! Alternatively, you can provide a completely different pathway to insert a map sprite if you think this method is inappropriate. ^^ There is probably something wrong with the palette. Make sure it is only using the 16 colors that it is supposed to use, and then paste that image over a pre existing map sprite you already dumped out of the rom. Then, check the palette again and insert it into the rom. Quote Link to comment Share on other sites More sharing options...
go9999 Posted August 17, 2011 Share Posted August 17, 2011 (edited) There is probably something wrong with the palette. Make sure it is only using the 16 colors that it is supposed to use, and then paste that image over a pre existing map sprite you already dumped out of the rom. Then, check the palette again and insert it into the rom. The palette is the one given on the website right? If yes, then yes, I did go according to the palette. Just checking, am I supposed to recolour it black and white before compressing it into the ROM?Oh am I supposed to import the palette, no right? Thanks BTW, and sorry for the slow response. It was 12:00 AM where I was around my last post, and I had school the next day.I attached some samples below JIC I got it wrong and have no idea what you are saying. XD Once again, thanks! EDIT: Sorry outdated file. Updated Update: Tried the replacing, worked like a charm. Just can't get the addition to work though. TT Update 2: The movement one doesn't work though, for some weird reason. It gives me weird lines across it when I import. Spritestanding.bmp Spritemoving(glitched).bmp Edited August 17, 2011 by go9999 Quote Link to comment Share on other sites More sharing options...
FalconVegeta1986 Posted October 30, 2011 Share Posted October 30, 2011 Everything works fine for me, except one thing. The game doesn't seem to like ephraims standing sprite. When he's on-screen, the sprite blinks in and out with his movements. I tried moving his sprites closer together on his sprite sheet, but all that does is cause the game to reset itself when he loads. Is there any way to fix his standing sprite so it works? All moving sprites are fine. Quote Link to comment Share on other sites More sharing options...
shadowofchaos Posted October 30, 2011 Share Posted October 30, 2011 Everything works fine for me, except one thing. The game doesn't seem to like ephraims standing sprite. When he's on-screen, the sprite blinks in and out with his movements. I tried moving his sprites closer together on his sprite sheet, but all that does is cause the game to reset itself when he loads. Is there any way to fix his standing sprite so it works? All moving sprites are fine. The 16 x 16 and the 32 x 16 options. That's usually the main cause. Quote Link to comment Share on other sites More sharing options...
FalconVegeta1986 Posted October 30, 2011 Share Posted October 30, 2011 Is that changed in Nightmare or GBAGE? Quote Link to comment Share on other sites More sharing options...
ThatGuyDownTheStreet Posted October 30, 2011 Share Posted October 30, 2011 Is that changed in Nightmare or GBAGE? That would be in one of the map sprite nightmare module editor. Quote Link to comment Share on other sites More sharing options...
FalconVegeta1986 Posted October 30, 2011 Share Posted October 30, 2011 (edited) The 16 x 16 and the 32 x 16 options. That's usually the main cause. Yep. Looks like that might have been the problem. But whatever I did to make it keep resetting isn't going away, but I think I know why. EDIT: Fixed. Thanks guys. Edited October 30, 2011 by The Smithy Gang! Quote Link to comment Share on other sites More sharing options...
Onmi Posted February 9, 2012 Share Posted February 9, 2012 (edited) My problems with the animation sprite. Or more specifically 'Another Pointer' We've inserted our animation at 00FF0150 which is Free Space according to HxD. leaving 'Another Pointer' as is results in the animation not being the inserted one, but rather a Paladin animation. Changing 'Another Pointer' to 00FF0150 only causes the game to lock up and crash whenever the animation should play. Nevermind got that working as well. Hooray for experimentation EDIT Actually I do have a question. Arch you say you're importing the movement sprite at DD0160. However from my own experimentation, movement sprites write to a much larger area. So are you sure that insertion didn't overwrite something else in the rom? Edited February 11, 2012 by Onmi Quote Link to comment Share on other sites More sharing options...
CT075 Posted February 23, 2012 Share Posted February 23, 2012 it's not a necropost if it's the same month I'm fairly sure that no graphic ever will take up 0x2FEA0 (that's almost two-hundred thousand) bytes of space. Just for reference - I could assemble ten full-length event scripts and chances are that wouldn't even take up half of that space. The entire area from D00000 to E00000 (well there might be something in the DE0000? area but we don't know) is free. I highly doubt that you'll take up any significant portion of that with graphics. Quote Link to comment Share on other sites More sharing options...
Agro Posted January 4, 2016 Share Posted January 4, 2016 (edited) For some reason it's never been specified that using Paint will destroy palette indexing, so I've added a slight addendum to this tutorial instructing users to ALWAYS USE USENTI. You're allowed to copy and paste graphics from Paint into Usenti, but your final product should always be put together in Usenti. Sorry to anyone whose lives we fucked up over the last... 5 years. Edited January 4, 2016 by Agro Quote Link to comment Share on other sites More sharing options...
MisakaMikoto Posted January 11, 2016 Share Posted January 11, 2016 For some reason it's never been specified that using Paint will destroy palette indexing, so I've added a slight addendum to this tutorial instructing users to ALWAYS USE USENTI. You're allowed to copy and paste graphics from Paint into Usenti, but your final product should always be put together in Usenti. Sorry to anyone whose lives we fucked up over the last... 5 years. It adds some colors during resizing, right? Quote Link to comment Share on other sites More sharing options...
Agro Posted January 11, 2016 Share Posted January 11, 2016 No, I don't believe so. It just strips the image of any additional palette data. Quote Link to comment Share on other sites More sharing options...
Tchyrimi or halfrohp Posted May 22, 2016 Share Posted May 22, 2016 (edited) don't b& me please I have a wife and 3 children I hope I don't come off as dim, but I searched through Resources and couldn't find any other topics about inserting map sprites. I was wondering how I would go about that. Would I just replace a vanilla sprite with the custom one in GBAGE using the import bitmap option, or is there some other way? Do I need to mess with palettes? Edited May 22, 2016 by Tchyrimi or halfrohp Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.