Part 87: Trial Maps - Addendum
It's been a long road, folks, but here we are. We've seen the entire game (and the latter half of Maniac Mode) cleared legit, and we've blazed through the trial maps mostly legit... what else is there to do? What's left to show?I'll tell you what's left; what's left is to abandon all notion of subtlety and fairness, throw together all the Action Replay related hax we have, blow the game wide open and give it a sendoff it'll not soon forget.
I suppose we should probably start with a quick primer on AR codes, what they do, and what you can achieve with them.
A videogame is, to put it a tad oversimply, a big bunch of code and a big block of data (memory), talking to eachother. Any time the game needs to store variable information, it puts it into memory, and any time it needs to recall something, it pulls it out of memory. AR is, and this time I'm not oversimplifying at all, a memory editor. Its sole function is to edit the values in memory without any input from the game's code. It's really that simple.
(From a program's perspective; AR is Inception.)
AR codes are written by finding, though brute force, trial and error experimentation, what values in memory are used for what purposes. Once you know where, for example, a player character's health is kept in memory, you tell AR to constantly write some arbitrary high number to that location, and bam - infinite health.
The problem with Fire Emblem, though, is that you've got a whole lot of information to keep track of, even at the most abstract levels. It's very difficult to directly edit anything specific besides a few known things; everything else is just nudging global settings just slightly and seeing how the game interprets the results, then hoping you can keep things stable long enough to save (and not cause any crashes thereafter).
We're going to start with not quite the simplest code, but certainly the Best Goddamn Friend of anyone trying to hax the shit out of an otherwise legit PoR file without starting over from scratch; the level select code.
All you have to do is turn on the code (one variable (in two addresses) specifying a chapter), hold down the Designated Button Combination, and load up a file that's between chapters (Epilogue doesn't work), and...
...presto.
Be prepared for some serious discontinuity depending on how far into the game you were before doing this.
We'll talk a bit more about units and their data problems soon enough, but rest assured that Prologue Boyd is a wholly distinct entity from the one who goes on to join your team (as far as the code is concerned, anyway).
This is for all those shitty levels, asshole.
Damn right.
Greil must be so proud... if a little bit confused.
There's an issue with the level select code where clearing the chapter puts you right back at the start of the same chapter, but that can be fixed by quitting and reloading (the save you make after clearing the chapter will work correctly, don't worry).
The continuity issues can sometimes get a bit weird. You probably noticed during the main playthrough that, at the start of most chapters, the first X units in your unit list will accompany Ike onto the battlefield and be the initial choices for units to bring. This chapter is supposed to force Oscar, Boyd and Titania into the second, third and fourth slots, but it seems to have forgotten, and now we've got Tormod, Tibarn and Elincia instead. As you can see, this isn't stopping Titania from lecturing us.
Interesting fact; the game obviously doesn't bother to connect the units on the field with the units speaking, but clearly it's clever enough to check with the unit speaking to see what their portrait is supposed to be (as seen with General Ike last chapter) rather than just forcing certain portraits to appear. This kind of stuff is fascinating if you're into programming. Maybe.
Compounding our problems, Tormod, Tibarn and Elincia have all somehow spawned outside the selectable area, so we can't actually control them. How annoying.
We can briefly select the next unit in line after Ike by using the X button to scroll through available units, but the cursor is quickly forced back onto Ike before we can do anything.
Hrm. I am impatient to clear this fight.
What to do?
Ah! I know! Turn on another code, press the Designated Button Combination and...
Bam. Every unit on the map is now blue.
And under our control.
Despite being forced into our command, enemy units are still limited in their interactions with player units. In fact, they're even more limited than before; they can't attack eachother, nor can they trade (with us or amongst themselves). But we can move them!
But most players who use this code aren't using it just to control enemies. Oh no. It has another purpose entirely.
When a unit is removed from the map while under Player control (either when the map is cleared or when they leave during a scripted event)...
...they join your team.
If you skip ahead to a chapter with a Soren Report, it will correctly reflect all of this.
Now, you may be wondering, given the discontinuity you've already seen so far, what happens to units who appear in events mid-battle.
That Marcia is already here should give you an indication of where this tangent is going.
The short version is; weirdness happens.
The good news is; recruitable units are, again, distinct from the ones that are already in our army. However, the game clearly realizes that they're the same unit, because this stuff only happens to units we already have.
Let's try the talking thing.
Nope. These surplus units are officially not our problem. They can even die and nothing will happen.
Let's warp to chapter 7. This time, the correct units are with us.
Or are they? Nope; looks like we've got surplus Titania and surplus Soren.
Here's a thing though. If we save and reload at this point...
Once you load up the file again, any surplus units disappear. It seems these units are only generated at chapter start, and are recognized and erased when you load up mid-chapter.
Surplus Mia appears. She is of little consequence. The actual reason we're here...
Is because this is the chapter in which Greil appears.
Did I mention that the aforementioned Control All Units code can be turned on and off during cutscenes? Cutscenes like this one. Featuring Greil.
And this one.
And this one.
And this one.
Here's the thing, though; there are several distinct units here. For example...
This particular Black Knight (notably; the "actual" Black Knight with correct stats) is the one from the cutscene where Greil dies.
Meanwhile, the one who barges in on Greil and Petrine is actually called MPID_BLACKKNIGHT. Look at his stats! Sadly, it turns out he can't actually attack for some reason.
You can farm this process and build up an army of Black Knights for your entertainment. I did so.
Similarly, you can get several Greils. Most will look liks this. Greil's stats aren't actually set in stone; I get the impression that he has Lv 1 base stats and is levelled up to 10 for some reason before showing up here.
There's also this version (from the bit where he appears with Shinon and Gatrie) who has peculiarly lopsided stats (plus this is the one that comes with an Urvan).
This is Petrine as confronted by the Black Knight. Scary! You can also get a regular Petrine (with her campaign stats).
Oh, and there are a couple of Lv 1 Ranger Ikes in here too.
Funfact: If you try to clean up your surplus units by killing them in a fight, the Ranger Ikes come back.
You also get a handful of generic Daein soldiers.
You've actually got to be careful; the game can only handle so many units being in your army; if you go over a hundred or so (anyone know the actual number?) the game will crash when you end the chapter.
The enemies you recruit can all be leveled up like any other unit. Note our infinite BEXP pile; Infinite BEXP is probably the closest thing to a "simple" AR code this game has.
He has actual growths! They aren't that good though.
And his weapon is listed as droppable. Not sure how this plays out in-game.
And yes...
He promotes.
It turns out, Berserker is the promotion of Bandit!
And the Bandit -> Berserker promotion gains are revealed! +4 defence! Damn!
Here he is at Lv 20/20.
Another point of interest; this cutscene during Twisted Tower. Here we can recruit:
Leanne! Sadly, she doesn't have any of the skills that Herons need to function. We can give her Blessing (it's technically a Mastery skill), but even though I can hack in a Canto scroll (or, to call it by it's proper name, IID_CHANT), it's not actually usable by anyone (even Reyson).
Also, Nealuchi! He has stats!
Also, you can get Naesala here (with his actual stats but no Laguz Band), as well as Tibarn (from the Partner Army) and a few Kilvas generics.
There's one other thing we can do with the level select code:
We can access the Test Map.
The Test Map features every terrain type in the game (several are identical looking, but there are invisible thickets everywhere, and this patch of dirt here is actually Desert Sand).
Also a stairway to nowhere.
Even a copy of That God Damned Bridge.
Plus a Seize Objective, a Defend Objective, a "Target", a "Visit" and an "Objective" (none of which actually do anything).
As for these enemy units here...
They're silly.
Holy fuck, why couldn't my Bastian have been this good?
Answer: Because mine wasn't this much of a cheating motherfucker.
You're not even a mage, why do you have Flare?
Sadly, you absolutely cannot recruit any of these amazing units, because this map cannot be completed. Shame.
One other thing...
It's fairly simple to hack items into the game by altering Ike's inventory. Problem is, they all start off with zero uses. Some items (like these stat-ups) will loop back around to 255 when used, but weapons won't work at all.
In order to make them work, we have to put on another code that makes all of Ike's items have 80 uses at all times.
(Note that Ike has a bow equipped; this is because he had a sword equipped when we swapped it. If you do this, the game will crash when you exit the menu).
Having 80 uses does wonders for these thing's resale value.
There are a few nifty surprises hidden in the code; we've seen the Warp staff already; there's also the Unlock staff, and the Berserk staff (which doesn't work, sadly).
Oh, and there's the Silver Card. You may remember the Silver Card from the GBA Fire Emblems.
It really works!
Now, sadly, we've hit the limit of what we can do with hax in my inferior PAL version. There's actually a very good reason why a load of codes don't exist on the PAL version, but... despite being a "good reason", it's actually really dumb, so I won't bore you with it.
I might have had to go experimenting with my NA copy to bring you the rest of this update, but I was saved from this terrible fate by the sudden providence of helpful forums user Derpes, who you may remember as the guy who did all those Maniac updates. That's right, folks; this LP is going into co-commentary mode. Bold type means Derpes is speaking, and all screenshots from this point on are his.
Hello.
First...
The Blue Laguz stone is the same thing as a regular Laguz Stone. I don't know why there are two types but there you go. Also Ena's stats are in there so that's something.
My theory is that originally IntSys were going to be flashy and have the Stone turn from blue to orange, but realized that that would really not be worth it. Or maybe there was going to be a scene where a laguz uses one in a cutscene and then joins you with a half used stone... but then they could just have a regular one with 1/2 uses. I don't know.
Maybe it was supposed to be like the Laguz Gem in the sequel, but they never bothered finishing it?
Also possible! Anyway. There are two big, big things you can do in the NA version. The first is...
Skill manipulation! We saw shades of this the last time I braved the depths of the NA version, wherein I was able to remove the hidden "unpromotable" skill from Sothe, but you can also play with the other, more overt skills in the game. Many skill scrolls, such as Reinforce, Canto, Vigilance, Paragon and Blossom, are hardcoded to only work on certain units. Of course, if you manipulate the values directly, none of that matters anymore!
Some skills do still have limitations, though.
Reinforce doesn't work on chapters before you get Tanith. You only get 2 per chapter, regardless of user.
Notice that Mist is also able to Order/Direct. Turns out that's a skill too!
In case you were wondering, Mists Aether is just her normal crit animation with the Aether flash beforehand.
Helpfully, it turns out if a unit lacks a specific battle animation (say, for a mastery skill), they'll just do their regular crit animation instead.
This thing really didn't work, oh well.
This is an unused skill variously known as Impregnable/Big Shield/Iron Wall. I assume it was originally going to negate crits on the wielder (like the Iron Rune from FE7, or the Fortune skill in FE10). Sadly, the programmers seem to have not gotten around to adding any, y'know, functionality to the skill, so it doesn't actually do anything.
Other skills, however, are more pliable.
Mist's Canto. She raises her sword and people are just filled with energy.
Ike's Shove-Canto.
Mordecai and Lethe just roar at people to invigorate them.
All of this fits surprisingly well, when you think about it.
Know what else is tied to a skill?
The ability to weild Gurgurant.
Gurgurant is just plain awesome.
It also turns out that re-movement (ie, the state of being-on-a-horse) is governed by an invisible skill, which also blocks units from being able to be rescued. So if you hax re-movement onto a foot unit, they can't be rescued. Alternately, if you remove it from a horse-unit, you can rescue them!
Knives are also, lest we forget, a skill.
Mist doesn't have any combat animations with knives (the emulator crashes if you try) but the map animation has she and her horse just headbutting the enemy to death. Here's a crit headbutt for your enjoyment.
Reyson can use knives too, but if you try to confirm the attack after this the game freezes.
There is one other fairly important thing you can do in the NA version, and that is...
Raising the stat caps (and then using stat-ups to hit them).
Except Luck. I dont know why but its stuck at 40.
You actually have to be careful when doing this, otherwise...
I'm pretty sure you can picture my face when I saw this. With 0 Str she's really weighed down by Gurgurant as well so she almost died before I got to her stat screen.
What you're looking at here is Super-God-Mist with Resolve activated. Primary stats are (I am inferring from this whole thing) represented as 8-bit signed integers and therefore can have values ranging from -128 (or 10000000) to 127 (or 01111111) (this also allows four stats to be represented as a single 8-digit hex string, which, by astounding coincidence, fits exactly in one memory address. PS; take my word for those binary representations; two's compliment notation takes some getting used to). The upshot of this is that if you try to increase a stat above 127, it overflows and starts counting up from -128, and since the game imposes a lower bound of zero on any stat... yeah.
This is a problem because stat buffs (like, say, those from Resolve) are allowed to raise a units stats beyond their caps, because the program's rules allow that. Trouble is, nothing - but fucking nothing - can represent a signed integer greater than 127 in 8 bits. And no, it can't be unsigned, because there needs to be some way for certain stats (such as AS) to be negative otherwise the game might break if a very strength and speed screwed unit tries to use a very heavy weapon.
(at time of writing, I've just passed first year CompSci! This may be influencing my conversations.)
In battle the HP bar doesn't go over 80, but here it did. God Mist ate so many robes the HP bar broke.
This is the kind of damage Mist can do with her crazy stats by the way. 408 damage crits oh yeah.
You have done good work.
So something weird happened when I jumped between chapter 18 and chapter 28. It said Rout, but it's obviously a Seize map.
The Next-Level-Mod strikes again!
Good thing the cheat that makes you able to use Ragnell/Order/Direct also makes you able to Seize. For all intents and purposes, it makes you into a Lord.
One single flag that enables all of the things that only Ike can do. That's good programmin'. I think.
Did I mention weird things happening? Because Ike was stuck outside the map for the entire thing. Funny thing is, that they kept their starting positions from chapter 18 (in the bottom of the map), but I could just deselect everybody to place them in the slots where your units are supposed to be. But you can't do that with Ike so he was stuck in the forest. Only reason I could get this shot was to press X to cycle units and take a screenshot the split second it hovered over Ike before it went over to a unit that it could actually target.
This seems to affect different maps in different ways and also depends on the map being warped from.
Its probably because I went into ch.18 to get Reyson and then level skipped. They were already placed on the map and thats what messed it up. Maybe.
This was pretty weird as well. Were friendly units ever called Mercenaries? Note that Ike isn't even on the map. I like to think that the 8 in the corner are the Mercs and Mist is the Army.
Some units had worse weapon skill than they should have as well. Canto/Knife on him comes from EVERYBODY getting skills when you hack them in like I did. Yes, even Resolve (I totally didnt learn this the hard way).
Right, I fear it's time for some "explanation". Note: I'm not going to explain why that guy there has a Runesword he can't use (that is, I'm assuming, more weirdness resulting from the Next Level Mod), but there are some fine points of skill altering that I am so annoyed about having to learn about that I wish to inflict them on you.
(You are reminded; I am still happy about passing first year CompSci.)
Remember way back at the start of this update I was talking about memory addresses and values? Well, it turns out that Fire Emblem's unit data storage system is a bit of a mess. Starting from address 002B167E, all statistical data for units is stored in blocks of 280 addresses. That first address is for Ike's level, the next 279 addresses are for various values like EXP, stats, inventory, skills, supports, yada yada yada. 280 addresses after that, in 002B18FE, is someone else's level (in all likelihood, Oscar's), and so on. Only the thing is, which unit exactly lives in which block of addresses varies from one player to the next. Ike alone has his place set in stone, Oscar, Boyd, Titania and Rhys usually turn out to be in the same place each time... and after that it gets iffy. Several characters have multiple known addresses. Some characters have stable addresses but only on a second playthrough. Some characters still haven't been found in memory, and even if I found them, chances are you wouldn't find them in the same place. (The good news is that the layout of each block is the same for every character, so if you know where someone's level is, you know where their skills are).
The upshot is that hacking single skills or stats onto individual characters is anywhere from a pain to a complete fucking nightmare. You have to experiment. Put a high value in a slot you know is someone's level, see who it is, and if it's not who you want, increment your address by 280 and try again until you find your target.
Fortunately, there exists a code that will make a given change (say, altering a skill) to ALL units, including enemies, at once.
This causes a different problem.
Keep remembering addresses and values. Think about how many skills there are. The average person's first instinct when imagining how skills would be programmed would be a bunch of independently alterable flags (ie, Wrath OFF Resolve ON Canto OFF etc). That would require a lot of addresses, though. In hindsight (ie, looking at how the memory blocks work) it could've been done like that, but early in development that might not have been so apparent, so the devs went with efficiency out of caution (I imagine). So the way it actually works is this; there are 11 addresses for skills , each one governing a set of up to eight skills using a single two digit "master" hex value. Each skill in the set has an associated value; 01, 02, 04, 08, 10, 20, 40, 80 (these are also in hex; in decimal the last four values would be 16, 32, 64, 128). To set a skill on a character, simply add its associated value to the master value.
If all that makes your head explode, try imagining it all in binary. In binary, those numbers would be 00000001, 00000010, 00000100... (...) ...10000000. Which is much nicer to work with. Look;
code:
1 00000001
+
8 00001000
+
64 01000000
=
73 01001010
So, let's say you want to put Daunt on every unit. Well, that's easy enough. Daunt lives in Skill Set 4, which it shares with Colossus, Stun, Steal, Provoke, Shade and Gamble. So if you want to put Daunt on everyone, you have no choice but to either put Colossus, Stun, Steal, Provoke, Shade and Gamble on everyone too, or to remove those skills from anyone who has them. Hint: One of those options will crash the game. Another, more commonly run-into problem; Blossom shares a set with Unpromotable, so removing Unpromotable from everyone (because fuck trying to find where Sothe lives in memory) will also remove Blossom from Sothe (and the ability to use Longbows from Rolf and Shinon).
In the same way, you can't hack individual units' weapon levels, but you can hack everyone's weapon levels.
Wow, I bet that was more than you wanted to know about the game mechanics, huh?
Head hurting? Want to unwind? Well, OK. As a reward for reading all that, may I present, a Derpes production; the thing you've probably wanted to see since the first time anyone in the thread mentioned the word "hax":
The Wroth of God-Mist.
Or, as you all seem to prefer:
Give me Ragnell, I'll do it myself!
Still not satisfied? Well, here's an encore.
Endgame. Everybody has 20 move for this (I didn't need very many units for this though). Moved Mist as far as she could go first and killed the sage to get through to the upper part.
Got Lethe and Mordecai up with her.
Send Mist up as far as she can go, and follow with Lethe.
Canto Mist again, and she goes up to Ashnard.
Stalemate. Gurgurant isn't blessed, oh well.
Let's use a real weapon instead.
And showed it she did.
Ranged death.
I Canto'd Mordecai offscreen with Zihark, and now Mordy is making his way to Lethe who gets Canto'd by him.
Lethe Canto's Mist.
Round Two, go! It's a bit odd that it shows him doing 60 damage against her 127 defense. I guess the +5 Def bugged it out and made it wrap around like Resolve did.
That would be correct. Overflow is a bitch.
Melee death. There's your Ashnard, killed in two ways by everybody's favorite girl on a horse.
In one turn.
(Funfact: If you somehow manage to kill Ashnard's second form before your Laguz Royal Backup arrives, said Laguz gets excluded from your team in your Epilogue file.)
I find it funny how this actually works. You didn't play all those chapters inbetween? Don't worry about it bro, records screen got you covered.
Soren Reports, Chapter Records and Unit Rankings are all dynamically (and correctly) generated. Even if you jump back and forth between chapters, the Records screen never loses track.
As it should have been. The world is now at peace.
Yep. That's the one. That's the note we're going out on.
Thank you all for reading!