ROM Hack Fire Emblem Fates: ROM Hacking General Thread

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
I decent Randomizer like the GBA ones would be very nice. The ones we have available are nice, and all, but I'd prefer to have things like keeping it from swapping a base class to promoted and vise versa, or even randomizing the classes of non-playable map bosses would be nice.

These sound like totally doable things that I could do, but I dunno where all the bytes are or how to even locate them. >.>; But yeah, a randomizer with more control on how classes are handled would be nice. Another idea I have in mind is randomizing skills for classes. It's be kind of fun to see which classes get what skills, even if they're just a bit insane. =w= If I knew anything about locating bytes without completely holding hands about it, I would probably be able to do something like this. (Like, I have no idea how to look for "headers" or how to locate things using "0x###" or whatever, still kind of new to Hex Editing, honestly, but I have a feeling a few quick Google searches might do me some good.)
You might want to take a look at this then;
https://github.com/DeathChaos25/FE_Fates_Class_Randomizer

It's very horribly written and still WIP, but it provides the info that you're looking for.
 

Dylos

Well-Known Member
Member
Joined
May 13, 2016
Messages
285
Trophies
0
Age
37
XP
220
Country
United States
Out of curiosity, what would happen if you swapped say Sakura and Elise's character ids? would Sakura then spawn in Elise's spot?
 

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
Out of curiosity, what would happen if you swapped say Sakura and Elise's character ids? would Sakura then spawn in Elise's spot?
No, character ID swapping would accomplish nothing in fresh saves, it'd only affect saves that are already past that character's point.

Characters are spawned using their PIDs, not their label, so no matter what character ID you give Sakura within GameData.bin, PID_Sakura will always spawn Sakura unless you change the labels around, the same applies to weapons/items and IIDs
 

Dylos

Well-Known Member
Member
Joined
May 13, 2016
Messages
285
Trophies
0
Age
37
XP
220
Country
United States
No, character ID swapping would accomplish nothing in fresh saves, it'd only affect saves that are already past that character's point.

Characters are spawned using their PIDs, not their label, so no matter what character ID you give Sakura within GameData.bin, PID_Sakura will always spawn Sakura unless you change the labels around, the same applies to weapons/items and IIDs
I should have known that. I suppose I could switch PIDs, I imagine that could cause some wierdness though.

Editing PIDs seems to make the game crash, or maybe that was the class randomizer (though I doubt it)
 
Last edited by Dylos, , Reason: TESTED

Dylos

Well-Known Member
Member
Joined
May 13, 2016
Messages
285
Trophies
0
Age
37
XP
220
Country
United States
So I noticed @DeathChaos25 that your randomizer randomizes every single character, even the ones that cannot be recruited (Castle Lilith, Shopkeeper, etc.) I imagine this might create some wonkyness, have you actually played with it very much?
 

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
So I noticed @DeathChaos25 that your randomizer randomizes every single character, even the ones that cannot be recruited (Castle Lilith, Shopkeeper, etc.) I imagine this might create some wonkyness, have you actually played with it very much?
There's no "wonkyness", aside from capture units who would now have the bond unit base class glitch, everyone else, including castle lilith, will just use their new base class like expected (although randomizing lilith might be a bad idea since she will only ever spawn with her 2 unique dragon weapons, although maybe you can make her a Feral Dragon...)

Or at least all of this is the case from testing so far.
 

DeferredGalaxy

Active Member
Newcomer
Joined
Jul 11, 2016
Messages
27
Trophies
0
Age
28
XP
90
Country
United States
I'm currently working on my own little Fates randomizer, I guess. I took Chaos's advice, and took the randomizer as sort of a guide to knowing where the class values are, I guess. I don't know how far I'm going to take this process, but I plan to go as far as to give these options.
  • Choosing whether or not the gender lock.
  • Choosing whether or not to tier lock. (This means an unpromoted unit will stay unpromoted, while a prepromote will stay a prepromote. This way, the base stats aren't hard to deal with.)
  • Choose to include special classes. (Faceless, Stoneborn, etc.)
  • Choose to include boss classes. (Nohr King, Empty Vessel, etc.)
  • Choose to include at least one songstress as a base class. I'll probably have to include a selection whether you want this to apply to Birthright, Conquest, or Revelation, as certain characters will be absent in certain paths.
  • Include a changelog that outputs after the randomization.
That's all I can promise, for now. In the future, I want to be able to randomize bosses and unit deployment, but I'm still learning how to locate information within the bin files. A lot of this is heavily influenced from Lushen's GBA Randomizer, although I do intend on adding my own features when I learn how to do them. (Like randomizing skills or randomizing an alternate weapon to some classes... although the latter seems like a terrible, terrible idea, I do want to see how that kind of run would play out.) I dunno, I'm mainly doing this as a personal project. My current code is a mess. ;_; But it will be a Windows Form executable file. Hope this contributes to something, in the end. :P
 
Last edited by DeferredGalaxy,

thane98

Well-Known Member
Member
Joined
Apr 23, 2016
Messages
617
Trophies
0
XP
1,537
Country
United States
Well, I guess that everyone's making a randomizer at this point.

I went ahead and built something according to your specifications, @Dylos, though it's not quite done yet. Right now the randomizer can correctly randomize classes and join order, adjust weapon ranks, and change cutscenes to suit the new join order. But it's limited to characters that you get through the main storyline (no characters that join through My Castle) at the moment since they require a special setup for join order swapping, but the randomizer works fine in every other aspect. I might be able to get it out by the end of the weekend depending on how much free time I have.

Here's some screenshots for anyone interested.
 
Last edited by thane98,

KunoichiZ

Well-Known Member
Member
Joined
Mar 16, 2012
Messages
8,830
Trophies
0
Age
28
XP
4,597
Country
United States
Well, I guess that everyone's making a randomizer at this point.

I went ahead and built something according to your specifications, @Dylos, though it's not quite done yet. Right now the randomizer can correctly randomize classes and join order, adjust weapon ranks, and change cutscenes to suit the new join order. It's limited to characters that you get through the main storyline (no characters that join through My Castle) at the moment since they require a special setup for join order swapping, but the randomizer works fine in every other aspect. I might be able to get it out by the end of the weekend depending on how much free time I have.

Here's some screenshots for anyone interested.
"Selena Dark!" ffs, Selena.
 

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
Well, I guess that everyone's making a randomizer at this point.

I went ahead and built something according to your specifications, @Dylos, though it's not quite done yet. Right now the randomizer can correctly randomize classes and join order, adjust weapon ranks, and change cutscenes to suit the new join order. But it's limited to characters that you get through the main storyline (no characters that join through My Castle) at the moment since they require a special setup for join order swapping, but the randomizer works fine in every other aspect. I might be able to get it out by the end of the weekend depending on how much free time I have.

Here's some screenshots for anyone interested.
How did you handle prepromotes and what class they come from?

If you haven't, you can grab the code I used for that, because it's something that needs to be handled.

For example, say Setsuna is randomized to be a Swordmaster, 2 bytes after their base class you can find the origin class for prepromotes, or the intended promotion for non promoted units.

So in this case, Setsuna's class is Swordmaster, but her "Origin" class is still set as Sniper, meaning Setsuna will only learn the Swordmaster skills, she will not have access to the Samurai skills, nor will she be able to reclass into Master of Arms.

I did implement a check for this to correctly assign the origin/intended promotion based on new class, most classes are easy, most classes can either go up 2 class IDs or go down 2 class IDs (2 class IDs because you need to skip the same class but for opposite gender), I also coded exceptions for a few classes such as Villager, Master of Arms and such.
 

Dylos

Well-Known Member
Member
Joined
May 13, 2016
Messages
285
Trophies
0
Age
37
XP
220
Country
United States
Well, I guess that everyone's making a randomizer at this point.

I went ahead and built something according to your specifications, @Dylos, though it's not quite done yet. Right now the randomizer can correctly randomize classes and join order, adjust weapon ranks, and change cutscenes to suit the new join order. But it's limited to characters that you get through the main storyline (no characters that join through My Castle) at the moment since they require a special setup for join order swapping, but the randomizer works fine in every other aspect. I might be able to get it out by the end of the weekend depending on how much free time I have.

Here's some screenshots for anyone interested.
Looking forward to it very much, this certainly looks like something that will get used a bit.
 

EmblemCrossing

That Towel!Niles Cosplayer
Member
Joined
Apr 11, 2015
Messages
487
Trophies
0
Age
26
XP
197
Country
United States
Well, I guess that everyone's making a randomizer at this point.

I went ahead and built something according to your specifications, @Dylos, though it's not quite done yet. Right now the randomizer can correctly randomize classes and join order, adjust weapon ranks, and change cutscenes to suit the new join order. But it's limited to characters that you get through the main storyline (no characters that join through My Castle) at the moment since they require a special setup for join order swapping, but the randomizer works fine in every other aspect. I might be able to get it out by the end of the weekend depending on how much free time I have.

Here's some screenshots for anyone interested.
This looks much more fun than my "randomizer". Manually exporting my save file when I get a new unit and editing them in the save editor..
 

thane98

Well-Known Member
Member
Joined
Apr 23, 2016
Messages
617
Trophies
0
XP
1,537
Country
United States
How did you handle prepromotes and what class they come from?

If you haven't, you can grab the code I used for that, because it's something that needs to be handled.

For example, say Setsuna is randomized to be a Swordmaster, 2 bytes after their base class you can find the origin class for prepromotes, or the intended promotion for non promoted units.

So in this case, Setsuna's class is Swordmaster, but her "Origin" class is still set as Sniper, meaning Setsuna will only learn the Swordmaster skills, she will not have access to the Samurai skills, nor will she be able to reclass into Master of Arms.
I wasn't aware of that particular issue with prepromotes - thank you for telling me. It seems like fixing the issue with it shouldn't be too difficult though. I'm using a data file for classes at the moment, so I'll probably just add in a flag for if a class is promoted or not and determine the value of the second byte based off of that.
 

EmblemCrossing

That Towel!Niles Cosplayer
Member
Joined
Apr 11, 2015
Messages
487
Trophies
0
Age
26
XP
197
Country
United States
I wasn't aware of that particular issue with prepromotes - thank you for telling me. It seems like fixing the issue with it shouldn't be too difficult though. I'm using a data file for classes at the moment, so I'll probably just add in a flag for if a class is promoted or not and determine the value of the second byte based off of that.

You said that there was issues with My Castle characters not randomizing in, would it be possible to include amiibo units in the randomizer as well? that would be pretty neat in conjunction with the Gay Fates patch.
 

DeferredGalaxy

Active Member
Newcomer
Joined
Jul 11, 2016
Messages
27
Trophies
0
Age
28
XP
90
Country
United States
Well, I guess that everyone's making a randomizer at this point.

I went ahead and built something according to your specifications, @Dylos, though it's not quite done yet. Right now the randomizer can correctly randomize classes and join order, adjust weapon ranks, and change cutscenes to suit the new join order. But it's limited to characters that you get through the main storyline (no characters that join through My Castle) at the moment since they require a special setup for join order swapping, but the randomizer works fine in every other aspect. I might be able to get it out by the end of the weekend depending on how much free time I have.

Here's some screenshots for anyone interested.

Oh hey, that's promising. I might ditch my randomizer for this, actually, haha. (Mine's kind of a wreck, at the moment.) :P

Is this like an interface with options, or is it like a single script or something? If it turns out to be open source, I'd definitely would just ditch my own and just make some contributions to yours, if you don't mind.
 

thane98

Well-Known Member
Member
Joined
Apr 23, 2016
Messages
617
Trophies
0
XP
1,537
Country
United States
Oh hey, that's promising. I might ditch my randomizer for this, actually, haha. (Mine's kind of a wreck, at the moment.) :P

Is this like an interface with options, or is it like a single script or something? If it turns out to be open source, I'd definitely would just ditch my own and just make some contributions to yours, if you don't mind.
It's all GUI based using JavaFX. I do plan on making it open source for anyone who wants to build off of it.
 

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
I wasn't aware of that particular issue with prepromotes - thank you for telling me. It seems like fixing the issue with it shouldn't be too difficult though. I'm using a data file for classes at the moment, so I'll probably just add in a flag for if a class is promoted or not and determine the value of the second byte based off of that.
You could try looking at this, it deals with every prepromote and their possible base classes.

Not the cleanest implementation, it could certainly be done better, but it should give you a good enough idea.
 
  • Like
Reactions: thane98

MikominMM

Well-Known Member
Newcomer
Joined
Nov 2, 2016
Messages
52
Trophies
0
XP
307
Country
Poland
I'm back! I'm really intrigued by all this ROM Hacking Stuff, so, uh.... Another Question!

I wonder if it's possible to make a New Character and Class from Scratch?

For example if i want to Make Walhart And other Characters from Awakening as DLC But the game doesn't have data for those characters.
So how do i fill that missing data with the characters?
 

EmblemCrossing

That Towel!Niles Cosplayer
Member
Joined
Apr 11, 2015
Messages
487
Trophies
0
Age
26
XP
197
Country
United States
I'm back! I'm really intrigued by all this ROM Hacking Stuff, so, uh.... Another Question!

I wonder if it's possible to make a New Character and Class from Scratch?

For example if i want to Make Walhart And other Characters from Awakening as DLC But the game doesn't have data for those characters.
So how do i fill that missing data with the characters?

It would take a lot of work and effort. people have looked into importing the models, and unfortuantely they aren't very compatible with Fates, and can't be used in this game. Voices are still being explored, but DeathChaos has made progress on that front to an extent. Portraits, names, and custom classes are all pretty well understood and this point.

The main barrier preventing us from going all out and adding Awakening characters is the models. Other than that, the people that understand the process behind Custom DLC have a pretty good understanding of how it works.

Personally I'm still researching myself on how to make a custom character as I have like, 3 ideas that I'm hoping to make a reallity. (er.. was hoping..), but mostly everyone is busy with classes and unfortunately doesn't have enough time to root through the games files and experiment.
 

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
It would take a lot of work and effort. people have looked into importing the models, and unfortuantely they aren't very compatible with Fates, and can't be used in this game. Voices are still being explored, but DeathChaos has made progress on that front to an extent. Portraits, names, and custom classes are all pretty well understood and this point.

The main barrier preventing us from going all out and adding Awakening characters is the models. Other than that, the people that understand the process behind Custom DLC have a pretty good understanding of how it works.

Personally I'm still researching myself on how to make a custom character as I have like, 3 ideas that I'm hoping to make a reallity. (er.. was hoping..), but mostly everyone is busy with classes and unfortunately doesn't have enough time to root through the games files and experiment.
Sorry to hear about your 3DS.

Do you happen to have another 3DS with CFW?
Right now I'm just riding the Sun/Moon train like many people, but there's something I've been working on for a while that I'd love for you to test out...
 
  • Like
Reactions: Arubaro

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Intel UHD 4000