FE_Builder_GBA -- If you have any questions, attach report7z

About the question
If you have any question, please create a report7z and send it.
For how to create report7z, please click here.

How to Download

Installer.exe - always latest version


Access the github and compile from the open source code yourself.


This is a ROM editor of FE GBA trilogy.

Support to FE8J FE7J FE6 FE8U FE7U.

With reference to the screen of Project_FE_GBA,
We support a wide range of functions from image display, import export, map remodeling.

I wanted this kind of function I thought when making a Kaitou patch!

The origin of the name is from 某LAND.
However, the development language is C#. (People inside are together …)

Naturally, open source.
The license of the source code is GPL3.
Please use it freely.

To make this, I referred to various data and Communities.
We would like to thank our predecessors who released the analyzed data.

How to Download
Please access the github and look for the latest file.



Creating Chapters in FEBuilderGBA
Markyjoe made a video for commentary.

PentV: How to create a report.7z file in FEBuilder

Creating a Chapter in 16 Minutes

UltraxBlade’s #febuilder-help FAQ

Fix bug using 3-point Diff from backup

CTF Challenge content for intermediate level users

1.Intuitive editing


3.talk edit.

4.map edit (support mar ,map ,tmx format) and , map style

5.All Image Support

(CSA Create is not yet supported. We support only magic expansion of FEEditor. I want to support in the future.)

6.Unit Location

7. Many Patches

The patch of FE8J is most supported, but I want to transplant from now on.

8. You can change a lot

9.english support

A.Chinese support

Be sure to take a BACKUP before using.
If you have a bug, please tell me.

FEBuilderGBA Manual



How to Download

Installer.exe - always latest version


Access the github and compile from the open source code yourself.

Required Tools
All tools required by the setup wizard are automatically installed at first startup.
If the Setup Wizard is closed, you can start it from the menu.
MENU->Settings->Initial setup wizard

If you find a mistranslation, please fix it.
When you press the second button from the left in this wiki, it becomes the editing screen.

This software has nothing to do with official.
We do not need donation as we are making this software Non commercial.
If you really want to donate,donate to the charitable organization supporting the freedom of speech on the Internet, Freedom of Expression, including the EFF Electronic Frontier Foundation.

Of course, you are free to write articles about FEBuilderGBA.
In some cases, you may earn pocket money with affiliate. :slight_smile:
However, please do it at your own risk. :frowning:

If you have something you do not understand from hackrom, please read “Manual” in “Help”.
If you find a bug that you can not solve by any means, please create report.7z from ‘File’ → ‘Problem reporting tool’ in ‘Menu’ and consult with the community.(Do NOT send the ROM)


Neat! I’ll give it a try.


I had a quick look at it, the translation is a bit off but otherwise it works well, and it comes with so many offsets already in so it works as documentation too, the world map editors are great and will probably be the one feature I’ll use (at least as reference, or to rip and reinsert with the buildfile method the paths I make).

In general it looks like a great tool for anyone that isn’t using the buildfiles method, and good documentation for anyone else, though as any tool it’s bound to have problems at some point with custom stuff: for me it doesn’t show text ids past 902 because 903 points to ram, if you could get it to only show 903 as an error but still show the ones past it that would be nice.

1 Like

Oh wow.


Translation is machine translation for now.
You can improve by changing config/translate/en.txt or config/data/*.en.txt.
After changing, restarting the tool will take effect.

I think that there are many, such as mistranslation.
If you tell me the point that this is wrong, I will improve.

for me it doesn’t show text ids past 902 because 903 points to ram
, if you could get it to only show 903 as an error but still show the ones past it that would be nice.

Can I recreate the error?
Which patches can be adapted to reproduce the error in me?

1 Like

To reproduce the error all you need to do is to write a non-rom pointer to a text id, for example I have 0x83004C0 as the pointer for text ID 903 (offset 0x15F898 in the usa rom), the first 8 being from the anti-huffman patch I believe, so if you go to 0x15F898 and write C0 04 00 83 the same should happen to you.

Obviously there is no way for the program to read that since it’s pointing to ram, so when you go to the editor called “string” it does not load that text ID, that’s fine, but the problem is it doesn’t show any text IDs past it either (so 904 doesn’t show even though it has a completely valid pointer, for example).

Also, if I fix the translation myself at some point I’ll upload the corrected file here if you don’t mind, though currently I don’t have plans to do it, I might in the future.

1 Like

I am making a routine corresponding to unhuffman patch.
Is not it working well?

I am making such a check routine.
public static bool IsUnHuffmanPatchPointer(uint pointer)
return (pointer >= 0x88000000 && pointer <= 0x8A000000);

Certainly, go to 0x15F898 and change it to C0 04 00 83, it does not work well.

However, this is related to another problem.

I would like to confirm the specifications of un-Huffman.
un-Huffman = pointer + 0x80000000 is not it just?

C0 04 00 83
↓ change ↓
C0 04 00 88

It works well with this.

In order to count the number of character string data, automatic scan until invalid data value comes up.
Currently, Pointer and UnhaffmanPointer are counted as valid values.

    uint p = Program.ROM.u32(addr + 0);
    if (U.isPointer(p))
        return true;
    if (FETextEncode.IsUnHuffmanPatchPointer(p))
    {//Common for overseas remodeling unhaffman patch
        return true;
    //Invalid value
    return false;

If C0 04 00 83 is accepted as valid data,
How should I interpret this data?

C0 04 00 83 ->

Endian resolution
83 00 04 C0 ->

According to the rules of An Huffman patch, -0x80000000

03 00 04 C0 ->

03 00 04 C0 is not a pointer. Because it’s less than 0x08 00 00 00.

When invalid values ​​are accepted, accurate counting of the number of character strings can not be performed.
Hmm, I was in trouble.

I’ll think about it for a moment.

1 Like

The anti-huffman part of your tool is working perfectly, 0x03 00 00 00 is a pointer, it just is not a pointer to rom, it points to the ram, I use it to get numbers as strings:

There is no way to display this properly in the editor as the ram only exists when the game is running, it should just say “invalid pointer”, my complaint is that any text ID after this one won’t show either.

1 Like

Has literally changed my life.

1 Like

03 00 04 C0 finally understood the meaning of the point of RAM.

In order to measure the length of the character string data,
It is searched until the data becomes an invalid value.

At the moment, all but the pointer to ROM are deemed to be invalid.
For character strings, let’s assume that pointers in RAM are also valid.

If you increase the effective value too much,
Even truly broken data is misleading as effective data and there are side effects.

1 Like

I made a new version that corrected the problem.



Are you the person who coded this, or did you just find it?

Edit: You made it, I see. Are you looking for suggestions to improve it?

First small bug:

When I load up a Sacred Stones USA rom, the map sticks into the left side.

If I drag the window out, it fixes.

1 Like

Thanks for the bug report.
I am a developer.
Position adjustment is affected by screen resolution and font size.
I do not seem to reproduce in my place.

If you can reproduce it, I would like to fix it with the next version.

1 Like

@7743 This can be expanded.

11, 12, 13, 22, 23, etc

There is a patch, the patch makes weapon range display properly with custom values.

EXAMPLE: 2-5 Range (25 value in ROM) will show up properly in the game.

Blazing Sword FE7: Dropbox - Free Range.ips - Simplify your life

Sacred Stones FE8: Dropbox - FE8 Free Range.ips - Simplify your life

Once you make it patchable, this can be set from minimum to maximum range, like in FEXNA.

1 Like

The scope of weapons,
You can change it with NumUpDown Control of Range.
This combo box is merely displaying frequently used examples.
The actual state of the data definition is NumUpDown, Range written on the left side.

If you want to create an undefined long distance weapon in a combo box,
Please change the data of Range directly.

1 Like

I missed that, thank you for the clarification.

I am trying to understand how to translate everything, but it is a little hard. What if I post the images along with proper translations?

I can translate some of these.

Change these to:

[Character Editor]
[Class Editor]
[Item Editor]
[Map Editor]
[Unit Placer]
[Map Data Editor]
[Other Editors]
[Song Table]
[Advanced Editors]

I will translate more shortly.

ALSO, I recommend putting [Other Editors] and [Advanced Editors] together.

1 Like

This is your original editor

This is my translation for the FE8 Sacred Stones USA ROM: (Some will not be changed because they are correct.)

Unit Capability - Character Editor
Unit Support - Support Thresholds
Support - Support Convo’s
Unit Different Palette - Palette Assigner
Support Effect - Support Stat Boosts
To stretch out - Portrait Height

Map Editor - Map Editor
Map Style - Tileset Palette
patch - Patches

Class basic ability - Class Editor
Movement Cost - Movement Cost
CC(Promotion) - Promotion Branches
Class appearance - ??? (I don’t know what this does, sorry.)

Item - Item Editor
Indirect effect - Magic Animations
Ability correction - Stat Boosts
Special effect - Weapon Effectiveness
shop - Shop/Armory Editor
CC(promotion) - Promotion Item
Shrinkage - Weapon Triangles
Item Other - Sacred Weapons

image background - Background Editor
image portrait - Portrait Editor
image icon - Item Icon Editor
image wait icon - Hover Map Animation
image move icon - Moving Map Animation
image combat - Weapon Anim Association
image additional - Magic Animations
image battle - Battle Backgrounds
image combat - Battle Platforms
image cg - Cutscene Images
chapter title - Chapter Title
Character palette - Character Palette

map settings - Chapter Data Editor
Map pointer - Map Pointer
event condition - Turn Events
event instruction - Event Editor (Adv)
unit placement - Unit Placer
convicted serif - Battle Quotes
serious death - Death Quotes
forced sortie - Forced Deployment
Map change - Tile Changes
Leaving point - Thief Escape Point

Disasm - Disassembler

World Map Event - World Map Events
Road - World Map Roads
Base - World Map Nodes
WMAP image - World Map Image
Demon probability - Monster Probability
Demonic belongings - Monster Item Rates
System Icon - System Icon
Road Editor - Road Editor
Road Movement - Road Movement

ED relationship - Character Endings
OP subtitle - OP Subtitle
Introduction of OP - Class Reel Editor
OP class - Class Reel Font
stuffed roll - Endgame Credits

string - Text Editor
Code table - Font Table
font - Font Previewer
Terrain Name - Tile Names
menu - Menu Commands

Class footsteps - Movement Sounds

The rest is acceptable.

Once you fix these translations, I can fix other translation issues.

1 Like

I took a look at the Character Editor or as it is currently, Unit Capability. Did some quick looking around, this should be right.

Face → Portrait
Attribute "Theory → Attribute “Anima”
Unit sort order → Character ID
Ability by unit - Unit Bases
attack - Power
//Power is shorter and it fits both STR/MAG
Techni - Skill
Magic → Res
Fortun → Luck
Physiq → Con

//There’s a lot of properties that don’t do

anything but probably good to clean them up

Property → Ability
Rescue25(20)- Mounted
Re-act - Canto
Incase rise - Critical Boost
Shooter available - Ballista Usage

Advanced class - Prepromote
Transporter - Supply Depot
Rescue (horse mark) - Mounted Unit
Rescue (Flying - Wyvern Unit
Rescue (Pegasus - Pegasus Unit
Suppressible - Seize Ability
Feminization - Female
Empowerment - Boss

Dedicated 2 - Weapon Lock 1
Dedicated 3 - Shamshir Lock
Dedicated 1 - Monster Weapon Lock
Temma horse - Triangle Attack 1
Armor - Triangle Attack 2
?? - Glitches

Experience score of zero → Gives no XP
Instantaneous death → Silencer
Dedicated 4 → Rapier/Sieglind Lock
Dedicated 5 → Reginleif/Siegmund Lock
Dedicated 6 → Mani Katti Lock
Dedicated 7 → Forblaze Lock

Incidentally, has anyone figured out what Character Ability 4 0x4 for is? In this program, it says “Evil Sealed Person (Enemy)” and I’m not quite sure what it is.


In the Item Editor.

Physics - Physical
magic - Magic
Cane - Staff
endurance - Unbreakable
Special (Cannot be sold) - Treasure (Unsellable)
Twice Attack - Brave Weapon (4x)
Magical Sword - Hits RES
Both sides can not - Uncounterable

Attribute inversion - Reaver Effect
Unrepairable - Unrepairable
Dedicated 1 - Weapon Lock (Monsters)
Dedicated 2 - Weapon Lock (Lords)
Dedicated 3 - Weapon Lock (Sword Users)
Only for exclusive marks? - Weapon Lock 4 (Unused)
Invalid flight special - Negate Flier Effectiveness
Deathburn - Negate Criticals

Usage prohibited - Weapon Unusable
DEF ignored - Negate Defenses
Dedicated 4 - Eirika Weapon Lock
Dedicated 5 - Ephraim Weapon Lock
Dedicated 6 - Lyn Weapon Lock
Dedicated 7 - Weapon Lock 1
?? - Weapon Lock 2
?? - Weapon Lock 3

ALL Values in Property 4
?? - Unused
?? - Unused
?? - Unused
?? - Unused
?? - Unused
?? - Unused
?? - Unused

1 Like

There was a bug and I will fix it.

There are several items that can not be expanded with the extension button, so we will fix it.

I also adapted several translations.
(I adapted to the point pointed out by Mr. Mystic two hours ago.

Class appearance - ??? (I don’t know what this does, sorry.)

This is the definition of the appearing class in the arena.

I decided it was Arena Enemy Editor.
However, due to the size problem of the width of the button, it may not have come out well.
In English, the length of the sentence will increase, so you have to reconsider the size of the button, too.
I will fix it later.