How to allow Unit Placer to enable units to be over lv30?

In my hack the max level is 40 and promotion doesn’t reset your levels. In the endgame now I realized I can’t place anyone above lv30 the editor won’t allow it. afaik there is on patch to fix it either.

There’s no way to change that (without some serious recoding and effort). It’s why people don’t usually stop at level 30 if raising level cap.

Odd. Wouldn’t 31 still fit? I’m assuming level is saved in five bits.

Do your units even save levels beyond 31? The game can only save levels below 32 because the bits get cut off right after that. While you might be able to do something with the Expanded Modular Save to get such levels to save, the same bit limitation is in the unit placer code. l almost forgot it, but Level, Team, and the Auto-Level flag are all in the same byte. You can see in FEBuilder that level 31 pushes the hex representation all the way past F0. It would require quite the rewrite of much of the game.

ah crap I didn’t even realize this was a problem

; _ ;

I made levels above 31 saved on suspend
but I guess I will need to write my own auto-leveling routine eventually, or something? blarggh

Well crap I didn’t realize this was a thing. With the level extender patch it does save units past lv32 so that’s a good sign. But I wish there was a way to extend it, or add an event to raise units levels including enemies past 31.

I wrote an ASMC to autolevel units above 31.

1 Like

If I place the unit then autolevel all enemies, then place the rest I Should be okay, so there doesn’t need to be a singular unit patch. Now I just gotta figure out how to use asm.

Anywho thankyou for the hardwork!

Assuming you’re using febuilder and not a buildfile:
Usually you can simply use the “install EA” with febuilder, but because this routine relies on your GrowthGetters which do not have vanilla addresses (Mag Growth doesn’t exist), you have two choices:

  • Replace each getter with the literal address in your rom before installing. Eg. Get_Str_Growth is installed with skill systems, but I do not know where it was installed for you. If you open up no$gba by pressing ctrl+f5, then a .sym file will be generated in your rom’s folder. This file will tell you where Get_Def_Growth, Get_Mag_Growth etc. is installed.
  • Run a custom build of skill systems with my code included. Eg. have the rombuildfile.event have the line #include "AutoLevelUnits/AutoLevelUnitsInstaller.event"

To save levels above 31 on suspend you will likely need to run a custom build with my edit to ExpandedModularSave. I do not know how to do it otherwise.