XenoMax icon indicating copy to clipboard operation
XenoMax copied to clipboard

Xenoblade 3 support

Open Andree12 opened this issue 3 years ago • 25 comments

While most .wimdo files from Xenoblade 3 work as fine, certain files like ch01011011.wimdo crashes 3ds max (I only tried this in 3DS max 2018, other versions are untested) and these kinds of files likely have newly updated facial morphs.

I haven't tested out the animation files from this game yet, but I'll update it when I test it. PredatorCZ, if you want the files from this game, I'll DM the files to you in Xentax.

Andree12 avatar Jul 23 '22 23:07 Andree12

so far there are a couple things ive found out

it only seems to crash fully so far on when textures for some models are getting grabbed (this happend on ch01011011 noahs full body mesh and am assuming for the face it does so too). same issue as with DE.

morphs right now are fully missing.

the arc/chr issue we had in DE is back with a vengeance. they are chr again but now seem to be missing. for the playable characters the skeleton refrence seems to be gone the extension for it (Jpc010000.skl for De as example.) and is just now called "skeleton" and no .skl. adding the .skl to it does make it able to be grabbed and ive had it be somewhat right before. but it acts funky on export.

for the weapons its even stranger. it doesnt have its DMXM header it doesnt get get recognized. ive tried bringing it back to see if its right but the tool says. "AnimationData Class not found, creating limitations. ERROR: [SAR] Invalid header. ERROR: [MXMD] Invalid header." even when i brought that back (if i even did it the right way). my friend says it meight be a sar container but so far i am not a 100% Sure

as for textures of the weapons i dont think they are contained in their main wismt file due to the file size but im gonna test that. (nope it didnt contain it)

imma continue testing but so far thats all i found

if i find out any more things ill post em here

keesoudwater34 avatar Jul 24 '22 00:07 keesoudwater34

I've also been messing with the files myself too, just like kees did. Some models just refuse to import even without exporting textures, but they do import when using the old max script.

Another thing I've noticed is that the models triangle strip might be different in XC3, some verts have wonky weights to em.

Demonslayerx8 avatar Jul 24 '22 05:07 Demonslayerx8

I see the game's out. I didn't even knew this game existed. I'm gonna take a look. Just a small thing, I'm gonna archive this repo the moment I release new toolset as a replacement.

PredatorCZ avatar Jul 24 '22 13:07 PredatorCZ

I see the game's out. I didn't even knew this game existed. I'm gonna take a look. Just a small thing, I'm gonna archive this repo the moment I release new toolset as a replacement.

yeh it got released earlier than expected and still leaked funny enough.

appart from that i hope youve been holding up well as of late.

keesoudwater34 avatar Jul 24 '22 15:07 keesoudwater34

oh forgot to say aswell there has been an issue with 2's anim's some a couple of em crashing my 3ds max 2017. should i wait for the new toolset before posting that issue or not.

keesoudwater34 avatar Jul 24 '22 15:07 keesoudwater34

oh forgot to say aswell there has been an issue with 2's anim's some a couple of em crashing my 3ds max 2017. should i wait for the new toolset before posting that issue or not.

No need, with new toolset I can brute force test everything with lightning speed. :)

About the bone weights, it's a constant pain in the ass across all titles.

About textures, they now use (finally) external textures located in chr/tex/nx/[h|m], should be easier to manage. This applies only on chr.

PredatorCZ avatar Jul 25 '22 17:07 PredatorCZ

Ooohh, so that's what the H/M folders are for, makes sense now that I think about it, did see those same hashes from those texture files inside the wimdo file. Don't forget about the newer texture formats that were added in XCDE and carried over to XC3.

Demonslayerx8 avatar Jul 25 '22 19:07 Demonslayerx8

Ooohh, so that's what the H/M folders are for, makes sense now that I think about it, did see those same hashes from those texture files inside the wimdo file. Don't forget about the newer texture formats that were added in XCDE and carried over to XC3.

The H folder is for highmips and M is for medium/middle mips, low mips are still within main stream. The hashes are more relevant to wismt file.

PredatorCZ avatar Jul 25 '22 19:07 PredatorCZ

I'm guessing those H|M folders is for either dock mode or TV mode.

Demonslayerx8 avatar Jul 25 '22 22:07 Demonslayerx8

I'm guessing those H|M folders is for either dock mode or TV mode.

Not really, it's called mipmap streaming, it's a common process in every game nowadays. Mostly to increase load times and for better quality control (for example when you lower texture quality, you don't need high detailed mipmaps and so on).

So basically low mips are always loaded, middle are being streamed after certain point in loading process and highest mips when really necessary or if there's enough VRAM to store them into.

PredatorCZ avatar Jul 25 '22 22:07 PredatorCZ

Ah ok, that makes a lot more sense to me now. That's cool.

Demonslayerx8 avatar Jul 26 '22 06:07 Demonslayerx8

Made a little preview version so you can convert textures and some misc stuff. https://github.com/PredatorCZ/XenoLib/releases/tag/toolset-v2.0-p1

PredatorCZ avatar Aug 04 '22 22:08 PredatorCZ

Well I tried messing with it, but can't seem to get the textures at all from the CHR files... what's the proper CLI to doing it?

Demonslayerx8 avatar Aug 05 '22 00:08 Demonslayerx8

I was able to grab hold of the DLC01/Wave1 files, also uses ard/arh, quickbms script with zstd works with it. Files introduced is...

pcsmt and pcmdo, and a new folder inside the tex directory, pc

Demonslayerx8 avatar Aug 07 '22 02:08 Demonslayerx8

I was able to grab hold of the DLC01/Wave1 files, also uses ard/arh, quickbms script with zstd works with it. Files introduced is...

pcsmt and pcmdo, and a new folder inside the tex directory, pc

pc prefix? hint hint PC port possible (I think not given it's fckin Nintendo), but could be nice.

Also I had to remove your link, please do NOT post/upload actual gamedata here.

EDIT: Ya, for some reason they included assets for PC version as well, since the textures in pc/m are genuine dds files. This is kinda insulting, since devs are enjoying PC version while their evil publisher forces them to use only one platform.

PredatorCZ avatar Aug 08 '22 07:08 PredatorCZ

I was able to grab hold of the DLC01/Wave1 files, also uses ard/arh, quickbms script with zstd works with it. Files introduced is... pcsmt and pcmdo, and a new folder inside the tex directory, pc

pc prefix? hint hint PC port possible (I think not given it's fckin Nintendo), but could be nice.

Also I had to remove your link, please do NOT post/upload actual gamedata here.

oh, well alright.. how will I send ya files then in the future cases?

EDIT: Ya, for some reason they included assets for PC version as well, since the textures in pc/m are genuine dds files. This is kinda insulting, since devs are enjoying PC version while their evil publisher forces them to use only one platform.

heh pure straight DDS files? that DOES sound insulting.

Demonslayerx8 avatar Aug 08 '22 12:08 Demonslayerx8

oh, well alright.. how will I send ya files then in the future cases?

You don't need to

heh pure straight DDS files? that DOES sound insulting.

Yeah and shaders are also for PC (SPIRV format?, so they run on OpenGL/Vulkan), so every .pc prefix is actually for PC platform.

PredatorCZ avatar Aug 08 '22 16:08 PredatorCZ

Ok gotcha, will not send anything in the future.

Wonder if the model format is the same, or different for pc files.

Demonslayerx8 avatar Aug 08 '22 17:08 Demonslayerx8

@PredatorCZ dunno if its alright to ask for a status update on what has been happening and what youre working on the part of currently? im honestly curious since been still researching stuff.

like one of the things wich im sure youve seen. the decompression of the xb3.ard with the old bms tool with the compression changed basically breaks the weapon files scrambling data around. like compleetly. only 3 work. some of the objects at the near end of the list. like for example oj07050410 and oj08012610 among a bunch around them. and some textures being mislabled from m to h folders. like all Tex/[n/h] are the wrong names compared to the winsmt versions. so they arent the same exact one.

so my main question on that issue is have you dug around the files with those issues about ard extraction? since the xb2 modified script breaks it. to quote my friend " bms looses track of what filename goes with what file. this happens most notibly in textures and weapons"

keesoudwater34 avatar Aug 12 '22 03:08 keesoudwater34

I've noticed that too, looks like I need to make arh extractor as well

PredatorCZ avatar Aug 16 '22 12:08 PredatorCZ

I've added correct arh extractor in https://github.com/PredatorCZ/XenoLib/releases/tag/toolset-v2.0-p3

PredatorCZ avatar Aug 17 '22 17:08 PredatorCZ

everything extracted properly as it should, good job! Now just waiting on model support and we should be golden.

Demonslayerx8 avatar Aug 17 '22 19:08 Demonslayerx8

Will Xenolib eventually support extracting animation files as well?

nanogram avatar Aug 19 '22 17:08 nanogram

Yea

PredatorCZ avatar Aug 19 '22 18:08 PredatorCZ

Just to clarify, for just 3 or also DE & 2?

nanogram avatar Aug 19 '22 19:08 nanogram