
- •Downloads:
- •Update Log:
- •Table of Contents:
- •Prologue: Bare Basics
- •Chapter 1: Key Terminology & Abbreviations
- •7Zip Archive – Supposedly the best file archiver there is, but not used as much, and thus less convenient. Requires 7zip or winRar to use.
- •VisualBoyAdvance – most people’s emulator of choice, almost always referred to as “vba” for short.
- •Chapter 2: Using Nightmare Modules
- •I upload anything that I think might be useful to someone on that site. Just use the menus and search until you find it.
- •Chapter 3: File Management
- •In order to be a successful hacker you need to have a lot of good management.
- •Chapter 4: Pointer Tables
- •Chapter 5: Battle Animation Editor
- •Chapter 6: Character Editor
- •Chapter 7: Class Editor
- •Chapter 8: Item Editor
- •Item icon – obvious
- •Chapter 9: Spell Association Editor
- •Chapter 13: Movement Cost Editor
- •If the value next to a type of terrain is ‘255’ then it is uncrossable because a unit won’t have 255 movement points.
- •Chapter 16: Battle Palette Reference Editor
- •If you want to know how to actually edit battle palettes’ colors, you can find that in a later chapter that I will make.
- •Chapter 17: Arena Class Editor
- •It’s a bit of work, but making cGs is quite rewarding, and it’s easier than some stuff, that’s for sure! Good luck with your cg making!
- •Chapter 20: Lyn’s Ending Editor
- •Chapter 21: Tutorial Editing/Getting Rid of the Tutorial
- •Part 2: Downloading the Programs
- •Part 3: Preparing Your midi
- •If you still have more than 10 tracks, you should find another midi. Sorry but, there are limits in life.
- •Part 4: Applying Blazer’s Beta Music Insertion/Instrument Patch
- •Part 5: Converting Your midi
- •Part 6: Making Your midi Repeat and Transferring it to Your rom
- •If the b1 and bc are next to each other then I can almost guarantee you want to replace it, so hit “replace” and do that with every instance and once you’re finished you’re good to go.
- •Part 7: Track Pointers & Repointing
- •Part 8: Finale- Assembling Your Song & Profit
- •If you don’t have this module, you’ll have to use this outdated way of doing it. Do check to see if you have the latest Nightmare Modules in general, but otherwise… well, sorry I guess. Xp
- •Part 9: Possible Errors & Wrap-up
- •Part 10: Documentation and Stuff
- •Atrius’ Notes:
- •Charon’s Notes:
- •Part 11: The Music Hacking Run-Down (Shorter Version of Tutorial & Walls of Text)
- •Part 12: Credits & Thanks
- •Chapter 25: Music Editing with Zahlman’s Song Editor
- •If you actually do type in help and press ‘enter’ on your keyboard, it’ll give you a list of commands, and tell you some stuff. Here’s the important stuff:
- •It worked! Great! I know how to import a song!
- •Chapter 26: Exporting Music with gba2midi
- •Chapter 27: Battle Background Graphics
- •If it doesn’t, I suggest double-checking all your settings (everything should be compressed) and make sure your width is set to 30 and your height is set to 32.
- •Chapter 28: Music Array Module
- •Chapter 29: Sound Room Editing
- •Chapter 30: Chapter Unit Editing with Nightmare
- •Chapter 31: Death Quotes
- •Chapter 32: Event iDs
- •Chapter 33: Battle Conversations
- •Chapter 34: Triangle Attacks
- •Chapter 35-36: The Animation Modules & Repointing Tutorial
- •It should look like this:
- •Chapter 37: Support Editing
- •Chapter 38: Miscellaneous Nightmare Modules
- •In this chapter I’m going to quickly run through what some other nightmare modules do.
- •Vendor/Armory Editors – edits the contents of vendors and armories.
- •Vulnerary Editor – edits the amount of hp restored by a vulnerary. (Default: 10)
- •Vulnerary Editor – edits the amount of hp restored by a vulnerary.
- •Chapter 40: Text Editing with fEditor Adv
- •Chapter 41: Portrait Formatting & Preparation
- •Chapter 42: Portrait Insertion with fEditor Adv
- •I wouldn’t mess with the palette editor (the colorful boxes).
- •Chapter 43: Locating Palettes
- •Chapter 44: Editing Palettes
- •I don’t exactly have a color I want to use for this title screen background, so I’m just going to show you how to get the rgb of some random color on a portrait.
- •If something didn’t work right, make sure you:
- •Chapter 45: Working with gbage
- •Chapter 46: Chapter Data Editor
- •Vision Distance is for Fog of War (fow). If it’s ‘0’, it’s assumed there is no fog of war.
- •Hold it! (Unless you aren’t hacking fe7!)
- •Chapter 47: Map Creation
- •I’m tired of writing this tutorial. Honestly. So from now on, I’m going to stop making so many wasteful comments like the one I am typing right now.
- •Chapter 48: Map Insertion
- •If you’re looking to make a totally new chapter (instead of being limited to the old game’s exact same scenes with exact same events) then read on, because I’m going to hack events next!
- •Chapter 49: Event Assembler Basics
- •I would just always add end guards since it’s not something you need to worry about too much.
- •Chapter 50: Events – The Layout
- •Including the stlb
- •Chapter 51: Events – The Event Codes
- •Items is just a list of items with a max of 4 starting items. I prefer to use the 3rd method of writing them, with the brackets and all. Each item is separated by a comma.
- •Chapter 52: Event Construction
- •VillageGate: // name of tile data group
- •Chapter 54: Chapter Creation Finishing Touches
- •Chapter 55: Importing Tilesets
- •Part 2: The First Frame
- •Part 1b: Palette Preparing
- •Part 2: Testing the Foundation to Your Animation
- •If all goes well, your guy should be standing, kinda like this.
- •Part 3: Making the Rest of Your Frames
- •Chapter 58: Custom Battle Animations – Scripts
- •I just pulled a Xeld. Had to do that at least once in this tutorial.
- •If you don’t know what a sound sounds like, just test it out with your animation and find out. Experiment with the codes if you need to.
- •Chapter 59: Custom Spell Animations
- •0X85 command count for this spell: 10
- •It’s true! It did work! It’s still very much a work in progress, as you can see, but the point is we got he test frame working. The rest just takes time, patience, and the attitude that you can do it!
- •Chapter 60: Weapon Icons
- •If you did, you are successful. Despite the odd format of the icons, you have spotted them, and that is what is most important, in my honest opinion.
- •I have this show up:
- •Chapter 61: Map Sprites
- •Chapter 62: Proper Betatesting
- •Chapter 63: vba’s Tools
- •Chapter 64: Other vba Options
- •In this chapter I’m going to detail some of vba’s semi-obscure but not totally obscure options. Knowing how to use vba will help you test your game in various ways.
- •Chapter 65: Recording Videos & Sound
- •Chapter 66: Fixing the Desync with VirtualDubMod & Video Rendering
- •Chapter 67: ips Patching & General Patching Information
- •Chapter 68: ups Patching
- •I suggest you read the ips patching tutorial (at least the beginning) if you haven’t done so as I will not be as thorough with this chapter as I was the previous.
- •In an extremely similar manner you can apply patches. Take a look.
- •Chapter 69: jfp Patching
- •Chapter 70: xDelta Patching
- •Chapter 71: Nightmare Module Format
- •It is recommended (for reasons of readability by humans) that a newline
- •Is unused ("null") for editboxes.
- •Chapter 72: Miscellaneous Information Archive
- •Chapter 73: Useful Links & Websites
- •Chapter 74: Bonus – Assembly Hacking
- •Preparations:
- •Part 1: Background Info
- •Part 2: Inserting an Assembly Hack
- •Part 2: Breaking Down Your First asm Hack
- •I digressed a lot, but back to the point:
- •Part 3: Second Example – More Codes, More Fun
- •Read other people’s doc.
- •Part 4: More Examples – “Speed-Analyzing”
- •It’s thumb. Write to offset 0. Start with label “Initial”. Push 5 registers and the last register, then start a loop counter in r2 with starting value 0x00.
- •Ifat *Conditional id* *asm routine pointer*
- •I may have mentioned this before, but finding where to hack routines is difficult. And I’m sure I mentioned that finding space for them is difficult.
- •It’s not super long, but it’s got some new things we need to learn. Let’s get started.
- •Part 5: Finding asm Routines & Basics of Using a Debugger
- •Warning: terms may not be accurate. In fact, they almost definitely aren’t accurate, as you’ve probably figured out by now.
- •I don’t know what the flags do either, but they’re there, right next to the window. That’s g.
- •I hope to hear of your achievements in the near future!
- •Final Chapter: Credits, Thanks, and the Epilogue
It’s a bit of work, but making cGs is quite rewarding, and it’s easier than some stuff, that’s for sure! Good luck with your cg making!
Chapter 20: Lyn’s Ending Editor
This module changes what text is used in the Lyn’s ending module as well as what character’s data is used. You see, the ending shows a record of battles fought, won, and lost, and it gets that from the character #. Depending on whether the character “died” (got injured) or not, there are two different text.
Actually, there’s an error in the current Lyn’s Ending Editor (if you do not see this error in your version, don’t worry about it). It says that there is an Injured Text for the Tactician, but from my foggy memory, I think the latter text is actually for the female tactician, while the former text is for the Male tactician. The game knows the male/female thing based off of what you chose when you started the game and stuff.
The “Lyn Hilltop” text is just some text near the end that has a CG of Lyn on a hilltop. For simplicity’s sake I made the whole module one entry.
There’s one more thing I want to say about this. When editing the text, there is a trick to it—after each line on the text, you have to add a bunch of spaces. For whatever reason, this is how the game knows to make a new line, and if you don’t add a bunch of spaces, the text glitches.
So your ending should look something like this, except you don’t need the words ‘space’ and you won’t SEE the spaces, but the game will know they are there.
Gravyman, Saucy Boy (spaces)
(invisible linebreaks)
He served gravy to people (space space space space space space)
in all the kitchens of the (spaces)
world, disgusting people with (spaces)
his inferior cuisine. (spaces)
I don’t know exactly how many spaces you need after each line so I would just add as many as necessary, really. Experiment, play around, and work it out.
One more chapter, down!
Chapter 21: Tutorial Editing/Getting Rid of the Tutorial
This is a frequently touched upon subject. I want to make this quick.
To get rid of the very basic tutorial events, you can A) use the Tutorial Editor nightmare module B) use the Event Assembler or C) use some patch somewhere.
Method A:
Load the tutorial editor module for FE7. Repoint each pointer to an empty space of 4 00s. If you don’t know of a space, you can type in 0x80000B4 because at that very offset are 4 kinda-random-but-probably-important-for-something 00s.
Just do that for every pointer and bam.
Method B:
At the very top of events, before even the #include stuff, put DISABLE_TUTORIALS and the Event Assembler should disable the tutorials when you insert your events.
Method C:
I don’t know where this patch is but it does the same thing as the stuff above. It’s just a patch way. There is a ‘Tutorial Killer Patch’ I made but it gets rid of complex tutorial events as well. However, it is reported as glitchy, but I have given up on trying to fix it after such a long time.
Chapter 22: Legendary Weapon Editing
FE7:
There is a nightmare module thanks to Xeld that can edit which weapons have the special stuff that goes with the legendary weapons Armads, Durandal, Forblaze, and Aureola. It’s very simplistic.
However, if you want to add more weapons to this list, you have to do some different stuff (you can’t just expand it like normal). See this topic for more information-- http://forums.feshrine.net/index.php?showtopic=3285
Chapter 23-24: Music Insertion Tutorial (ELF Method) & Documentation
This is a copy/paste from my music hacking tutorial I released. It tells how to insert music using the “Elf Method” (tr.exe, a hex editor, Nightmare, and a few other things). It also tells how to make a song loop and includes documentation.
This tutorial does NOT cover how to rip music from other games and import them, however.
This tutorial, created by me, Blazer, will guide you step-by-step on how to take a MIDI and insert it into either Fire Emblem 6 or Fire Emblem 7. I have not made an instrument patch for Fire Emblem 8 so you’ll have to either find some other way to hack music or bribe me into making one for FE8. :P
Tools Needed:
Required:
Music List.txt
Your MIDI, i.e. a song file ending in .mid
Midi2AGB/Midi2GBA*
Anvil Studio (or another good MIDI editing program, although Anvil is preferable)
HxD (or another good Hex Editing program)
A Fire Emblem ROM (or another GBA ROM—this tutorial is direct towards Fire Emblem hacking, however)
Blazer’s Instrument Patch (found in tutorial)
NUPS
Optionals:
Sappy 1.6
Sappy 2005
*(Same programs, I’ve seen them under both names, I will reference it as Midi2GBA)
YOU CAN FIND MOST PROGRAMS AT HTTP://WWW.FESHRINE.NET/
Part 1: Background Information
Before trying to insert custom music into Fire Emblem or any other GBA game, you should:
Know how to manipulate a hex editor and its basic commands (go to, find, opening, saving, copying, pasting, and editing)
Know how to make patches as well as apply patches
Use Visual Boy Advance to play ROMs, savestate test, etc.
Know how to back-up ROMs. Backing up is very important. I will not constantly warn you to back up your ROM, but I will on occasion—it’s up to you to do it.
Terms: (note: some definitions may have been simplified or otherwise defined as something else for the sake of making it easier to understand, please don’t talk to me about technicality terms, I’m a casual hacker and I don’t care for 100% accurate definitions.)
MIDI- a song file that contains all the tracks of a song.
Track- one part to a song, a track contains all the info about what a certain instrument should play. Each track has one instrument and the track has all the notes for it.
Instrument- Digital instruments, an instrument is a sound or set of sounds to play. Acoustic Grand is a type of instrument. The track would tell what sounds of the instrument to play, when, for how long, etc.
General Hex Editing Terms- This includes—offset, hex, byte, word, pointer, little-endian, header, etc.
Pitch- How high or low a sound is.
Octave- What set of pitches to use. A lower octave has lower, deeper sounds, while a higher octave will produce higher pitched sounds.
Volume- The loudness, in this case, the loudness of a track or song.