[FE11] FE11 JesRandomizer [1.3]

Here is the Randomizer: https://1drv.ms/u/s!AsfU3qRjcTTdnEoTseWI55eBSFjO?e=btzZgr

Here is a link to DSLazy, which is required to make it work: https://www.romhacking.net/utilities/793/

And here is the source code on GitHub (Warning! First time, learn-as-i-go Haskell code ahead): https://github.com/jespoketheepic/Jespokes-FE11-Randomizer

So i tried my hand at learning Haskell over the last few weeks, and the people that recognize me should know what that means: A new Fire Emblem Randomizer! I’m very much on brand this time too, making a very janky randomizer for a game that had none before: FE11 this time.

Partially because Haskell turned out to be a very… unconventional language for this kind of project, there is no GUI this time. Everything is operated in a terminal with (y/n) or 1, 2, 3 inputs for answers.
The available randomization options are:

  • Classes
    – Enemy classes
  • Inventory
  • Bases
    – Enemy bases
  • Growths
    – Enemy growths
  • Reclass system*
    * Whether you can reclass at all, randomized class sets, or normal class sets.

It also adds Falcon Knight to the regular class pool, and if you randomize classes, it also shuffles who
has access to each PRF weapon.
The Whitewings, who normally each start over water, should move to land now so you can actually get them if they can no longer fly.

Basic instructions on how to use it:

  • Download the folder with the randomizer
  • Download DSLazy, and place the DSLazy folder in the randomizer folder
  • Run DSLazy.exe, pick your FE11 ROM with the […] button, and unpack it
  • Then run Jespoke’s FE11 Randomizer.exe, and follow the text instructions
  • Once the randomizer closes after applying your edits, use DSLazy to pack a new ROM

Lastly, i included a side feature i call the Meme Mart. It’s selection is sparse for now, but it has a few very stupid edits you can apply to the game, after the randomization, or on its own without any randomizing. I would like people’s suggestions for what edits i should put in the Meme Mart in the future. I load a ton of the variables of the game into easily edited datastructures, so what kind of edits i can offer is pretty broad, so give me some ideas :smiley:

Changelog:
1.1:

  • Removed classes with no generic portrait from the options for enemies to become, since giving them portraits didn’t stop the crashing they caused on certain emulators.
  • New Meme Mart option: “devil” to give every weapon the devil effect.
  • Gaiden characters no longer get prf weapons.

1.2:

  • Fixed random reclass sets being able to become too big for the game to handle.
  • Removed the unified reclass set option that didn’t work.
  • Fixed a bug in a feature of last update; hopefully the classes that can crash some emulators are now gone for real.
  • The unpromoted and promoted reclass sets now line up.
  • Fixed the dragon memes to actually work now, and added a feature to it: All characters get access to either Earthstones or Divinestones.
  • “brave” to make all weapons have the Brave effect added to the Meme Mart

1.3:

  • Fixed an issue that the previous patch introduced where the reclass alterations messed up the class table, giving anyone that wasn’t a Lord a wrong class.
  • New options for having class stats added into the character stats before randomizing them for GBA-style randomization.
  • “0%” added to the Meme Mart, for 0% growth.
9 Likes

I can’t even process the thought of writing a randomizer with a functional language. :exploding_head:

What’s the data structure of FE11 look like? Is it closer to GBA or does it have a file system like the Tellius games?

Truth be told, i don’t know the structure of the GBA games, the games i have edited are FE3, 4, 9 and 11.
It is pretty similar to FE9, but the worst aspect, the 90% pointer based dispos files, turned much more manageable.

Someone gives FE11 some support? Amazing. Btw, are falcoknights buffed? I never used them, but I heared they are just a bad class. Unless they are supposed to be a memechoice in the rando.

So a DS ROM has a file system with distinct files internally? Interesting. Good to know dispos files make a return.

From working on FE4, 6, 7, 8, and most recently, FE9, I’m of two minds on that. On one hand, having individual chapters broken out into their own files makes it easier to manage. On the other hand, needing to rebuild the file afterwards is a pain, and getting the game to recognize the changes is sometimes a crapshoot.

1 Like

If I try to check the stats of a generic enemy lord the game freezes.

Thank you for making the randomizer, I have been wanting one for FE11 forever!

Made some updates:

This looks awesome. I really want to try it but every time I go into the randomizer menu and click 1 to start the randomization process, the randomizer crashes. Any clue why?

wait nevermind.

Don’t just nevermind me here :thinking:, could you tell me what the problem was, so that i can help others that may have the problem in the future?

Yeah sorry. Wasn’t trying to be an asshole lol. Anyways I just didn’t unpack the rom but even after unpacking it isn’t working. So I don’t know but that was the first problem.

Did you download the whole folder, and place the DSLazy folder inside it?
Are you on a different OS than windows?

I actually think spaces in the filepath to the folder can currently still break it :thinking:

Yeah. I’m on Windows 10, everything is in the correct folder, the program just crashes every time I hit 1. I can post a picture of the folder if you want.

FE11 Rando_20_20_4219006

Is this intentional? All of the Replacement units are almost completely statless. No meme market stuff used, just some pretty normal options. Besides that, all of my units had very low stats all around with a few weird exceptions.

GBA style randomizing screws over the replacements. Stats can seem really low because characters get actual Mag/Res/Luck bases from the randomization.

Okay, then how about this from my Randomizer Log:

PID_BANUTU JID_HORSEMEN:
     /  HP / STR / MAG / SKL / SPD / LCK / DEF / RES
Growths: / 20% / 251% / 251% / 251% / 251% / 251% / 251% / 251% /

That looks fine to me.

So apparently, Bantu’s personal growth rates sum up to… -5.
That must have really messed with the numbers, resulting all those “251%”'s that are probably actually growth rates of -5% which get treated as zero.

1 Like

Yes, I went and did science just to investigate and make sure.

FE11 Rando_13_39_12345

So, I’m attempting a randomized run right now, and I have a few concerns:

  1. Choosing not to modify enemy growths and stats (I think) seems to stifle their stats throughout the game. I’m playing on Hard 1 as a bit of a test run, and I got to Chapter 13 before realizing that while my units were getting stronger, the enemies were pretty much the same. For instance, enemy armor knights still have 1 or 2 defense, and bosses pose no more of a threat now than they did at the beginning of the game.

  2. The base stat distribution seems to be lopsided for certain units. Many physical classes, for some reason, join with high magic but almost no strength, while mages seem to turn out just fine.

  3. The output log doesn’t accurately reflect the newly-distributed classes. Some are accurate, but others, like Jeigan, would say that he’s a Bishop despite clearly being a Ballistician.

  4. Some units join with weapons they can’t use, like an archer joining with a Brave Bow even though they don’t have the weapon rank for it.