SirWaddles / JohnWickParse

A parser for Fortnite uasset, uexp and pak files
MIT License
90 stars 28 forks source link

Error while attempting to serialize: paks/global.utoc? #18

Closed apocalyptech closed 3 years ago

apocalyptech commented 3 years ago

Hello! I hadn't updated my JWP checkout in some time, and the newer version (specifically since f498bcab6fd5be36c7555708f05c7809d13d14fc) doesn't seem to want to serialize for me at all. On the console it dies like so:

Error: Error: Property error occurred: 
File Error: No such file or directory (os error 2)

When run under strace, I can see that the last syscall before the abend is:

openat(AT_FDCWD, "paks/global.utoc", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

And when I add in some debugging in src/main.rs, it's definitely in this call that the process dies:

let mut dispatch = dispatch::Extractor::new("paks/global", None)?;

On the offchance that it would be okay with just a blank file, I did try creating a zero-length paks/global.utoc file, but that just made the app die in a different way. :)

Anyway, is there something else I've got to prepare, first, before running JWP? Thanks!

SirWaddles commented 3 years ago

Hi,

Yeah, that's correct. The 14.40 update changed the asset format quite a lot. You can find updated instructions on the node-wick repository.

https://github.com/SirWaddles/node-wick

global.utoc and global.ucas come from the Fortnite Paks folder, and it's the only way I can tell which class something is when serializing it. That information isn't stored in the uasset file any more.

I hope this helps.

apocalyptech commented 3 years ago

Aha, cool, thanks for the info! Happy holidays, etc!