ROM Hack Fire Emblem Fates: ROM Hacking General Thread

thane98

Well-Known Member
Member
Joined
Apr 23, 2016
Messages
617
Trophies
0
XP
1,551
Country
United States
Well, I finally found out what those values in the STRG block mean - they are part of a data structure that connects the STRG blocks to the sound names. Unfortunately, this data structure seems a little too complex to modify through pure hex editing. At the least, I lack the knowledge to do anything with it right now. If anyone is interested in doing their own research into the structure, I can go into more detail. For the time being, I'm done trying to add sounds directly to a BCSAR file.

That said, I think that there might be alternatives to modifying the BCSAR directly. @DeathChaos25 , I took at look at your custom DLC and I noticed that you actually include some BCSAR files in the global section. Have you been able to play sounds from those archives? If so, then custom DLC might be an easy solution for adding in new sounds, as building a new BCSAR using existing programs isn't too difficult.
 

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
Those are the ones that came with Before Awakening, the 3 BCSAR files are the voices for Chrom, Lissa and Frederick.

If you want another example of standalone BCSAR files, Hidden Truths 1 has 3 BCSAR files for the Japanese Awakening voices of Inigo, Owain and Severa.
 

thane98

Well-Known Member
Member
Joined
Apr 23, 2016
Messages
617
Trophies
0
XP
1,551
Country
United States
Those are the ones that came with Before Awakening, the 3 BCSAR files are the voices for Chrom, Lissa and Frederick.

If you want another example of standalone BCSAR files, Hidden Truths 1 has 3 BCSAR files for the Japanese Awakening voices of Inigo, Owain and Severa.
I know that - what I'm wondering is, can you call sounds added in through custom DLC in the base game? If so, you might be able to do something like include a custom BCSAR in a DLC, write the sounds you want to exdata, and then use your custom sounds as if they were in the base game. That would be a decent workaround for BCSAR editing right now.
 

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
Well, as you can see, those 3 BCSAR files work because Chrom/Lissa/Freddy have full working voices, however, I haven't gotten a DLC_000 type BCSAR to work yet, although adding everything in extdata is tedious, when we could just add the bcsar itself to extdata and just toss the bcstm files into the Stream folder of the base game.
 

thane98

Well-Known Member
Member
Joined
Apr 23, 2016
Messages
617
Trophies
0
XP
1,551
Country
United States
Well, as you can see, those 3 BCSAR files work because Chrom/Lissa/Freddy have full working voices, however, I haven't gotten a DLC_000 type BCSAR to work yet, although adding everything in extdata is tedious, when we could just add the bcsar itself to extdata and just toss the bcstm files into the Stream folder of the base game.
Yeah, writing .bcstm files to the exdata doesn't sound practical in the long run. I'll try messing around with some of the other BCSAR files and see if I can get this idea to work.
 

Bluho3o

Member
Newcomer
Joined
Jul 19, 2016
Messages
15
Trophies
0
Age
31
XP
41
Country
Mexico
Hey guys, I'm pretty new to Fates romhacking and I wanted to ask.

Is there anyway to swap the portraits a character uses with someone else's? Like for instance, make Felicia use Flora's portrait instead of its own? I'm assuming you'd have to edit the face.bin for that. Also, how can I tell what bytes represent what character or files in the face.bin?
 

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
Hey guys, I'm pretty new to Fates romhacking and I wanted to ask.

Is there anyway to swap the portraits a character uses with someone else's? Like for instance, make Felicia use Flora's portrait instead of its own? I'm assuming you'd have to edit the face.bin for that. Also, how can I tell what bytes represent what character or files in the face.bin?
There are no bytes to represent a character, every file that references a character uses a pointer to a label, meaning you'd have to either swap the pointer to the new label, assuming both wanted labels exist, or write the wanted label at the end of the file and repoint to that.

Honestly, it'd just be easier to just copy the portrait files over the other person than actually telling the game to call someone else's portraits.
 

Bluho3o

Member
Newcomer
Joined
Jul 19, 2016
Messages
15
Trophies
0
Age
31
XP
41
Country
Mexico
There are no bytes to represent a character, every file that references a character uses a pointer to a label, meaning you'd have to either swap the pointer to the new label, assuming both wanted labels exist, or write the wanted label at the end of the file and repoint to that.

Honestly, it'd just be easier to just copy the portrait files over the other person than actually telling the game to call someone else's portraits.

Problem is, I've tried just copying the portrait files over Felicia and it works on her neutral expression but freezes with any other expression. Can't edit Felicia's portrait either cus of the .ARC builder limitations.

So then, even if I just change the _st ARC file pointer in the FaceData.bin it would'n work? Like asigning her _st ARC pointer to Flora's or whoever's?
 
Last edited by Bluho3o,

Omegablu

We shall not yield to the Kingdom of Nohr!
Member
Joined
Mar 10, 2016
Messages
1,140
Trophies
0
Location
Ice Tribe Village
XP
1,026
Country
United States
Problem is, I've tried just copying the portrait files over Felicia and it works on her neutral expression but freezes with any other expression. Can't edit Felicia's portrait either cus of the .ARC builder limitations.

So then, even if I just change the _st ARC file pointer in the FaceData.bin it would'n work? Like asigning her _st ARC pointer to Flora's or whoever's?
That would be no different than copying Flora's arc files and renaming them.
 

Bluho3o

Member
Newcomer
Joined
Jul 19, 2016
Messages
15
Trophies
0
Age
31
XP
41
Country
Mexico
That would be no different than copying Flora's arc files and renaming them.

I don't think I'm explaining myself clearly.

I want to edit Felicia's portrait but it's impossible to do so at the moment due to the .arc builder's limitations. Just swapping someone else's portraits in with the arc builder does not always work (tried this with Shigure and Takumi).

As a workaround, I was wondering if there was a way to make the game use either a completely custom .arc file instead of her own un-editabble portraits OR make the game call on some other existing character's .arc files instead of Felicia's own. This way, they portraits would be editabble.
 

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
I don't think I'm explaining myself clearly.

I want to edit Felicia's portrait but it's impossible to do so at the moment due to the .arc builder's limitations. Just swapping someone else's portraits in with the arc builder does not always work (tried this with Shigure and Takumi).

As a workaround, I was wondering if there was a way to make the game use either a completely custom .arc file instead of her own un-editabble portraits OR make the game call on some other existing character's .arc files instead of Felicia's own. This way, they portraits would be editabble.
Well, you'd need to make a new label at the end of the file.

Find the block for who you want to replace, put a pointer to the new label replacing the old pointer, then you'd need to find the pointer you replaced in the second pointers table, and calculate the distance from the end of the pointers table to where your new label starts to replace the old label pointer in the second pointers table, and I'm probably forgetting some steps.
 

Bluho3o

Member
Newcomer
Joined
Jul 19, 2016
Messages
15
Trophies
0
Age
31
XP
41
Country
Mexico
Well, you'd need to make a new label at the end of the file.

Find the block for who you want to replace, put a pointer to the new label replacing the old pointer, then you'd need to find the pointer you replaced in the second pointers table, and calculate the distance from the end of the pointers table to where your new label starts to replace the old label pointer in the second pointers table, and I'm probably forgetting some steps.

Ah ok, thanks! How do I know what label is meant for what? I saw your screenshot of you FaceData and that gives me an idea of what I should look for but how do you know the bytes BA E4 00 mean グレイ_st (Asugi's)?
 

DeathChaos

Unmei wo koeru!
OP
Member
Joined
Oct 21, 2015
Messages
1,364
Trophies
0
Age
29
XP
1,736
Country
Puerto Rico
Ah ok, thanks! How do I know what label is meant for what? I saw your screenshot of you FaceData and that gives me an idea of what I should look for but how do you know the bytes BA E4 00 mean グレイ_st (Asugi's)?
that's a pointer to the name of the arc file, with the arc file being グレイ_st, which are Asugi's standard portraits.
 

Bluho3o

Member
Newcomer
Joined
Jul 19, 2016
Messages
15
Trophies
0
Age
31
XP
41
Country
Mexico
that's a pointer to the name of the arc file, with the arc file being グレイ_st, which are Asugi's standard portraits.

Yes but how do you know that? Do the bytes spell out the name of the arc file in some way? I only see numbers.

Sorry, I'm extremely new to this and I only know the hex values of the most basic of things!
 

Omegablu

We shall not yield to the Kingdom of Nohr!
Member
Joined
Mar 10, 2016
Messages
1,140
Trophies
0
Location
Ice Tribe Village
XP
1,026
Country
United States
Yes but how do you know that? Do the bytes spell out the name of the arc file in some way? I only see numbers.

Sorry, I'm extremely new to this and I only know the hex values of the most basic of things!
Since the labels are mainly in Japanese, you'll need a hex editor like wxmedit that supports Japanese. Otherwise the text area will show as a bunch of garbage. From there, most (if not all) characters use their Japanese names in the labels. The arc files should have the Japanese name in their filename as well.
 

Bluho3o

Member
Newcomer
Joined
Jul 19, 2016
Messages
15
Trophies
0
Age
31
XP
41
Country
Mexico
Since the labels are mainly in Japanese, you'll need a hex editor like wxmedit that supports Japanese. Otherwise the text area will show as a bunch of garbage. From there, most (if not all) characters use their Japanese names in the labels. The arc files should have the Japanese name in their filename as well.

OH, that might be it! My hex editor doesn't support japanese. Thank so much!
 

Bluho3o

Member
Newcomer
Joined
Jul 19, 2016
Messages
15
Trophies
0
Age
31
XP
41
Country
Mexico
Hey, sorry again for the questions but the text I get from wxmedit all appears in kanji, while the names of the .arc files are in katakana? What can I do to work with his?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    BigOnYa @ BigOnYa: That would be something, or I could see them doing abracadabra together as a finale