Neurolinked/MlsetupBuilder

mlmask subfolder throws off pathing

Closed this issue · 2 comments

Hey there,

debugging this has taken far too long, since I've walked a third party through this process and error messages were inconclusive, but I finally managed a breakthrough via TeamViewer today. (No heat here — the problem hid well, I have a degree in computer science and it took me forever to find it. However, I'm positive that you can prevent it on your end!)

The user has WKit Nightly (around Christmas 2022), and MLSB is on 1.6.6 via WKit plugin install. It's not clear whether they used CLI version 1.7.3 or one of the nightlies, but probably the former.

They used the "Build -> Repository" command to unpack the files to D:\Cyberpunkfiles\_uncooked_files.

However, upon trying to browse through the layers, there were a million of console errors such as

[ 26/12/2022, 20:06:06 ] normal map not found in : C:\Users\<user>\AppData\Roaming\REDModding\WolvenKit\Depot\base\characters\main_npc\takemura\h0_001_ma_a__takemura\textures\ml_h1_001_ma_cyberware__takemura_masksset_0.png
[ 26/12/2022, 20:06:06 ] Missing file - trying in the Depot Folder
[ 26/12/2022, 20:06:05 ] An error happened during the load of the file: D:\Cyberpunkfiles\_uncooked_files\base\characters\main_npc\takemura\h0_001_ma_a__takemura\textures\ml_h1_001_ma_cyberware__takemura_masksset_0.png
[ 26/12/2022, 20:05:36 ] Mesh linked :10142

First thing I tried was to fuck around with MLSB's WKit depot path, which didn't help. The source of the problem turned out a subfolder in the texture folder for the mlmask layers:

textures\ml_h1_001_ma_cyberware__takemura\ml_h1_001_ma_cyberware__takemura_masksset_0.png

Moving the masksset_n.png files out of that folder resolved everything, and it works now.

The files were extracted via MLSB, and the user changed nothing by hand. Maybe something changed about how WolvenKit handles the file paths? Whatever, I'm pretty certain that you can come up with some sort of fallback for this :)

Thank you for this awesome tool again!

The problem it's not MLSB itself but the CLI, after the version 1.5.2 it spit the masks in it's own subfolder, i had to wait because they were a zillion errors with 1.6.x about masks extraction.
In the next release i will apply new parameters to the newer version of the CLI to avoid that kind of extraction, but as it's in the main page, for now it work best the CLI 1.5.2, sure it's older, but it will not create this kind of problems (https://github.com/Neurolinked/MlsetupBuilder#displaying-the-models).
I'm still waiting a feature on the latest CLI to change all the export command and have more datas to work with and let MLSB auto-read also materials used by submeshes (this way i can project the next step to bring in materials render on the models and a step further)

This has been solved in the 1.6.7 beta with the new uncooking system and it will be soon available as a stable release.