ROM Hack {Fire Emblem Echoes: Shadows of Valentia} - How to Add a Character to Your Save File

TheObsceneSoul

Member
OP
Newcomer
Joined
Oct 3, 2017
Messages
16
Trophies
0
Age
25
XP
129
Country
United States
Greetings.

Today I'm going to show you how one would go about adding a character, whether it would be a generic character or boss character, into one's save file through save editing.

Things You'll Need
A copy of Fire Emblem Echoes: Shadows of Valentia (I've only tested this with a legal copy, and I don't endorse piracy.)
Your choice of save manager (I personally use JKSM, which you can find here)
A hex editor (I use HxD Hex Editor, which one can find here)
A character Block. Here are a bunch of character blocks you can use. Most of them are based off of an amiibo character block, which was kindly provided by this thread.
FEST. You can find the latest release here.

Want to edit your own character block? I'll show you how at the end of the tutorial!

Step One - Extract your Save Data

If you haven't already done so, use your save manager to extract your save data from your copy of FE Echoes. Make sure to make a backup just in case something goes wrong whilst editing it.

Step Two - Decompress and Open Your Save Data

This part is relatively straightforward. You'll want to click and drag your save data into FEST.exe and it'll decompress it for you. Then, just open it up with a hex editor. Now, it should look something similar to this, except for the highlights.

2018-02-07 (1).png

The Highlighted offsets are reversed pointers for where some important information is stored. The first one is TOPS, and is unaffected by this guide. The second one is TINU, and this is where all of the player units' information is stored, along with how many units in total the player has. This is also unaffected by the guide. The last three, NART, IFER, and ILER, are all affected by the guide and will be talked about later. I'm not sure what NART does so if someone can clarify that for me, that would be appreciated. IFER stores Custom Item Names. For example, if you named a Lightning Sword, Levin Sword, it would show up here. Lastly, ILER stores convoy information.

Step Three - Open and Copy Your Selected Character Block

Next, you'll want to copy all of the information stored within the file of the character block you want to add. All you have to do is open it with your hex editor, and copy every byte inside the file.

Step Four - Go To TINU, and Insert Your Character Block

Now, in your hex editor, go to TINU's offset, which we can find be swapping the two bytes that are in the TINU pointer. There should be a byte that is exactly two bytes after the last byte in TINU. Add 1 in Hexadecimal to that number (If you don't know adding in hex, find a programming calculator or ask Google.;) ) This is important because otherwise, you would be losing one character. Now, look for a spot where a character block starts (you can get an idea of what one looks like by looking at the various character blocks I've provided), and paste your character block into your save data. It should not overwrite anything, but instead extend the file by however many bytes long the character block was.
2018-02-07 (2).png


In this image here, I can see that a character block starts at offset 0x6900. The main giveaway is the 15 and the zeroes before it.

Step Five - Changing the Pointers

Now that we have our character block inserted and part of TINU altered to account for it, we have to change the three remaining pointers we discussed beforehand, NART, IFER, and ILER, because the character block has offset where they should be pointing to. Find NART first, as it comes right after TINU, and write down the offset of the first letter. Then, simply repeat that for IFER and ILER.

Let's go back to those pointers. Remember that I said that the offsets of the pointers were reversed? That means you just have to swap the two bytes of each offset you found for each pointer. So, if your offset was 89EF, you would replace the pointer with EF89. Referring back to the first picture, the third highlighted pointer is the NART pointer, the fourth is the IFER pointer, and the fifth is the ILER pointer. Once you're done, save you decompressed save file and feel free to close your hex editor.

Step Six - Compress and Replace Your Save File

We're almost done now. All that's left is to drag your decompressed save file into FEST, which will compress it, and then copy it into your save manager's save file folder. Last of all, simply use your save manager to replace your game's save data, and if you did everything correctly, you should now have a brand new character in your game!

Disclaimer: I have not been able to fully test all of these characters yet, so I don't know how buggy they be, but what I do know is that they all should be, in theory, functional. Special thanks to the creator of this thread for teaching me how to do this effectively.

Bonus - Making your Own Character Block

So you want to make your own character block? I would recommend that you use one of my generic units as a baseline. Information on what parts of a character block does what can be found on this thread's page.

1. You're going to need some sort of character ID. You can get this by either extracting it from a bookmark, extracting it from another character block, or from here (Please note that it is currently incomplete, so any help finishing it will be appreciated. Also, I haven't added the bosses I've found the IDs for yet, so I'll remove this part once I do that.)

2. You'll need a class. All of the class IDs, except for the Tomb Lord, which doesn't seem to work for me, can be found here.

3. You can either edit the stats or leave them be. That's up to you.

4. You can add skills. The thread mentioned at the beginning of this segment has a small resource of skills you can add, but I don't really know how it works.

5. Last of all you can add items. The previously mentioned resource has some items and provisions, and most of the weapons and equipment, whilst mine just currently has almost all of the weapons and equipment. It's your choice on which one to use. The byte after the two hashes that make up the item includes how many times it was forged, if it's able to be forged. Also, don't forget how many times the item can actually be forged, as weird stuff may happen if you over-forge an item.

Credits

@DeathChaos25 For the Berkut and Fernand Blocks.
@Koko-Kun For creating the original save editing discussion thread and providing the amiibo blocks.
Anyone who contributed to the resources mentioned
 

Ztutur

New Member
Newbie
Joined
Feb 21, 2018
Messages
1
Trophies
0
Age
18
XP
21
Country
France
oh men there is a video for this ?
because it's impossible for me like this and i really whant to add characters
 

Ishtiaq1234

What exactly should i write here?
Member
Joined
Apr 22, 2016
Messages
160
Trophies
0
Location
Somewhere with trees and buildings
XP
164
Country
United Kingdom
i've actually put together an ntr plugin that will allow you to add characters. it currently supports European games only but in the coming weeks should also have an american version of it

https://gbatemp.net/threads/fire-em...racters-ntr-plugin.479619/page-3#post-7852289

if you just cant be asked waiting and have cfw just download a European version of the game import your main save from your normal game, use the plugin, import it back
 
Last edited by Ishtiaq1234,

GrimaTheEnd

Member
Newcomer
Joined
Jul 9, 2017
Messages
6
Trophies
0
XP
47
Country
United States
I edited the Chapter 0 file (first save slot in the game) to add some characters and I tested it using a emulator and it works but now I need to replace the original one in my 3DS with the edited chapter 0 file but I noticed that there is a .sav file instead the Chapters and Global files. How I can use my edited Chapter 0 file in the 3DS?
 
Last edited by GrimaTheEnd,
General chit-chat
Help Users
    Swagboi308 @ Swagboi308: i mean i have the game so im probably gonna get it