Variable Level Caps

Okay, I found the equivalent section of code in FE8 and wrote a routine to replace it. The following code will take as your level cap the value at (0x8.B60000 + class ID). If the value is zero or negative, it will use the default 20 as the cap. This might obsolete the ‘Max level 10’ ability depending on if the trainee autopromotion routine checks for it.

Paste this at 0x2BA58. The 0000B608 is the location of the level cap table:

09 49 78 68 00 79 09 56 00 29 00 DC 14 21 10 06 00 16 88 42 0D D1 39 1C 6E 31 08 78 C0 1A 08 70 FF 20 78 72 05 E0 C0 46 00 00 B6 08 00 00 00 00 00 00
2 Likes

Awesome! So this means I need to paste this into 0x2BA58, then go to 0xB60000 and type a class ID (Like 01 for Eirika Lord) and then a value up to 30in hex afterwards to set a class and level cap? Or wait, maybe I’m misunderstanding how to write this.

Ah, no, you need a byte for every class in the game, one after the other. The class ID functions as an index in the table. So for Eirika Lord, which has a class ID of 0x1, that class’s level cap would be read from 0xB60001.

Oh ok, great! That means a lot of copypasting 14’s so I have the correct level 20 caps, but otherwise extremely useful! Thanks a bunch :slight_smile:

in the future you should make your utility patches actually not change the function of the game by having your data initialized with the correct values needed to preserve it (i.e. klok shouldn’t be copying and pasting 0x14s; that’s the hacker’s job)

i.e. if the value is 0, make it default to 20

i think he just meant have the patch write the table in for them

e:

this patch is also like a million years old

To be fair, it took all of 20 seconds to do that. I can see newer hackers having issues tho.

I mean, Klok’s the only one asking for this in FE8, and Venno was kind enough to give him the hex to make the change. Klok’s hacking the game, so yes that is the hacker’s job. His job. People shouldn’t expect to be spoonfed no matter their experience level. I think Cam’s original patch for FE7 handled that, which was nice of him to do.

1 Like

Well my instructions weren’t as clear as they could have been. I updated the hex slightly; now if it reads zero or a negative value for the level cap, it will use 20 instead.

Making it only use a non-20 value if you specifically define one for a class, like Klok’s original suggestion, would be easy but it also wouldn’t fit within the space that the original routine affords. This way it’s pretty easy to install.

1 Like

mmm no when a hacker makes a utility hack they should make it not actually change the game

anything less is tacky and unprofessional

all the more reason

An ethical thing in programming I truly agree with.

my post can be empty if i want it to discourse

[quote]1
FE8 Class Variable Level Editor by Cam/Venno/Klok
0xB60000
256
1
FE8 Class Editor.txt
NULL

Set Level
0
1
NEDU
NULL[/quote]

I created a NMM for the FE8 version, if anyone wants to use it. Just copy paste this into a text file after following Venno’s instructions for setting it up, and it will even read the classes off to make things much easier. Make sure to put it in the class/character editor folder for best results.

Do you think you could update/fix the link? I wanted to give it a try, but
the link leads to a 404 error.

thanks for reminding me; it should be updated now

I probably am installing this wrong, as nothing happens for me.
What I am doing is copying and paste-writing the bytes at the given location(0xD50000) from impl.dmp(as well as the impl2.dmp), then writing the level cap at 0xD5C000, but I still end up capping my level at 20 no matter what level I write the cap at. I have a feeling that the “Assemble ARM.bat” file probably does something, but I am not sure what.

the dmp files are meant to be used in conjunction with an assembly patcher

i would recommend hextator’s, or otherwise mine.

Fixed an error in the FE8 version where map battles would give infinite experience and hang the game, also converted to .event format and bundled with a nmm and csv file for easy set up and inline installation.

In FE8, if you use this hack and have a unit join at the max level cap it glitches out.

This solution only works for a flat level cap, as in the max level is the same for every class.
For instance, a flat cap of level 30.

Go to $17EA8 and replace 14 with whatever hex your cap is.

In the case of 30, I’d change 14 to 1E.

2 Likes