ROM Hack Xenoblade Chronicles 2 File Structure

RichardTheKing

Honestly XC2>XC3...
OP
Member
Joined
Mar 18, 2020
Messages
1,045
Trophies
1
Age
26
XP
3,204
Country
Australia
Recently, I've been looking for a way to reset a Blade's Affinity Chart progress, so I can go through New Game + as though it was a standard New Game, but with the NG+ additions available for extra content and convenience.
However, the game has a check in place to prevent lost Affinity Chart progress, which is known as "Achievement ID" - so just importing a 'blank' Affinity Chart file from an actual NG save doesn't work. If I try that, the Chart just refills upon next booting up the game and checking it in-game, thanks to the internal Achievements.

I've been looking through a NG+ save in the 010 Editor, using x43x61x69's binary template, and while I can find Pyra's Affinity Chart and each node's Achievement ID (struct SDataBlades Blades -> struct gf_SDataBlade Blade[0] -> struct gf_AchievInfo BArtsAchieve[3] -> struct gf_AchievInfo BArtsAchieve[0/1/2] -> struct gf_AchievQuest[5] -> struct gf_AchievQuest[0-4] -> short AchievementID), I cannot find where else it's stored.

There is one more reference to the search term "Achieve" in here, that being "struct FixedVector_TaskAchieve_128 Achievement Tasks", which contains the data XC2Bf2SaveNETThingy also calls Achievement Tasks on the first, Misc, tab. However, I have no idea what any of this does or means; editing it also has no effect on Affinity Chart progress. So this seems to be a bust.

The XC2Bf2SaveNETThingy editor also provides a link to this list of data tables, of which the most applicable tables seem to be this one about FLD_AchievementSets, and this one about a FLD_AchievementList. I don't know who compiled these tables, nor how they compiled them, so I don't know if this data is stored in the save file (bf2savefile.sav) or can be found in a RomFS dump.

Speaking of, I did dump the game's RomFS, except everything save the "movies" is in the .nop file format. I don't know how to open and examine these, either, nor where these tables come into play.

If anyone has any experience datamining games and can help me, I'd really appreciate it; I don't know how to continue from here.
 
  • Like
Reactions: greatondeck

RichardTheKing

Honestly XC2>XC3...
OP
Member
Joined
Mar 18, 2020
Messages
1,045
Trophies
1
Age
26
XP
3,204
Country
Australia
https://gbatemp.net/threads/xenoblade-chronicles-2-graphics-settings.529436/

Download Xenoblade2set.zip, unpack it, run quickbms.exe, first choose .bms script included in folder, then choose bf2.arh from romfs dump, then choose output folder for files.

Idk how you have missed 10 GB bf2.ard file if you found only nop files.
I was looking in the "stream" folder, which has folders explicitly named "blade" and "event" (and whatever "cs" means) - thus I thought this was where the important stuff's located.
 

RichardTheKing

Honestly XC2>XC3...
OP
Member
Joined
Mar 18, 2020
Messages
1,045
Trophies
1
Age
26
XP
3,204
Country
Australia
https://gbatemp.net/threads/xenoblade-chronicles-2-graphics-settings.529436/

Download Xenoblade2set.zip, unpack it, run quickbms.exe, first choose .bms script included in folder, then choose bf2.arh from romfs dump, then choose output folder for files.

Idk how you have missed 10 GB bf2.ard file if you found only nop files.
Okay, so I copied the bf2.ard file from my romFS dump and opened it with quickbms_4gb_files.exe, using Xenoblade2ard.bms as the BMS script.
However, it resulted in this:

signature of 4 bytes at offset 0x0000000000000000 doesn't match the one
expected by the script:
this one: "xbc1"
78 62 63 31 xbc1
expected: "arh1"
61 72 68 31 arh1
- 0 files found in 0 seconds
coverage file 0 0% 4 11026779714 . offset 0000000000000004
coverage file 1 0% 0 11026779714 . offset 0000000000000000

I...don't know what to do now. Help?
 

FengTimo

New Member
Newbie
Joined
Jun 30, 2023
Messages
4
Trophies
0
Age
21
XP
32
Country
Russia
Okay, so I copied the bf2.ard file from my romFS dump and opened it with quickbms_4gb_files.exe, using Xenoblade2ard.bms as the BMS script.
However, it resulted in this:



I...don't know what to do now. Help?
Hello, you have found a solution to this problem?I am facing the same problem as you...
 

masagrator

The patches guy
Developer
Joined
Oct 14, 2018
Messages
6,338
Trophies
3
XP
12,180
Country
Poland
Hello, you have found a solution to this problem?I am facing the same problem as you...
For years you can use DLCs titleid to put files without packing them to ard... Ofc this will work only with installed DLC that has romfs included like Japanese audio DLC.
 

edale

Well-Known Member
Member
Joined
Nov 28, 2020
Messages
162
Trophies
0
Age
39
XP
608
Country
United States
Can you share common.data, no changes?
One completely unmodified copy of common.bdat:
https://mega.nz/file/DFhxwY4S#hbsC7raXMAqg-Bnp6yj-c5bcBAg2qDuMj6MLepso5jM

And here's a .bdat editor:
https://github.com/threethan/Xenoblade-Bdat/releases/

Once you've edited the .bdat to your liking, and want to insert it into the game, easiest way would be to grab this mod:
https://gamebanana.com/mods/501628

And replace the common.bdat in that with your modded one, before following the mod's directions to install it.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • S @ salazarcosplay:
    how are you\
  • Xdqwerty @ Xdqwerty:
    @salazarcosplay, we just talked like 2 hours ago
  • BigOnYa @ BigOnYa:
    I had the Goodyear blimp fly real low right over my house this morning, was weird out of nowhere looking up and seeing it that close up. Memorial golf tourney going on by me in Dublin Ohio and its there.
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, i tried the gdevelop mobile app and theres a event limit and you have to pay to add more events
  • BigOnYa @ BigOnYa:
    I never used the mobile or online versions, just the pc version.
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, i only use the online version
    +1
  • BigOnYa @ BigOnYa:
    I was at the bar for 1 hour and lost $40 playing pool, and said well that's enough for my unlucky day, better quit. Some sharks up there today.
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, did you get drunk?
  • BigOnYa @ BigOnYa:
    No I don't drink much when i goto bar, cause I driving, or if/when I do, ill take a uber/cab home. But I'm working on it now tho I'm home, beer n whiskey shots today.
  • K3Nv2 @ K3Nv2:
    He's afraid he might wake up next to ancientboi the next day
    +1
  • BigOnYa @ BigOnYa:
    What a "Scared Straight" moment that would be.
  • BigOnYa @ BigOnYa:
    A friend give me a $35 cigar, and pssf, just as good as a $5 one. But of course gonna have to tell him it was awesome.
  • Psionic Roshambo @ Psionic Roshambo:
    What makes a good Cuban rum soaked cigar is a nice cosmopolitan to go with it.
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Used to do that every time I went to Miami on business
  • Psionic Roshambo @ Psionic Roshambo:
    There was this little bar I would stop in have that combo and watch the beach
    +1
  • BigOnYa @ BigOnYa:
    I've never met a girl named cosmopolitan, but cool. And where do you insert the cigar? Mr clinton
  • Psionic Roshambo @ Psionic Roshambo:
    Slightly more than 35 dollars lol but I was making thousands on a job.
  • Psionic Roshambo @ Psionic Roshambo:
    Cosmopolitan is just vodka and cranberry juice lol
  • Psionic Roshambo @ Psionic Roshambo:
    I'm a martini glass
  • K3Nv2 @ K3Nv2:
    My dental assistant is Cuban I'm gonna have to him for cigars and sandwiches now
    +1
  • BigOnYa @ BigOnYa:
    Yea wish I could get Cubans cheap, they are ridiculous priced up here. But they are hard workers.
  • Psionic Roshambo @ Psionic Roshambo:
    I think I was paying like 75 back in the early 90s
    Psionic Roshambo @ Psionic Roshambo: I think I was paying like 75 back in the early 90s