Important information: this site is currently scheduled to go offline indefinitely by end of the year.

Cethleann - The Koei Swiss Army Knife

The Original Forum. Game archives, full of resources. How to open them? Get help here.
Post Reply
User avatar
Yretenai
veteran
Posts: 126
Joined: Tue Jan 28, 2020 4:39 pm
Has thanked: 20 times
Been thanked: 138 times

Re: Cethleann - The Koei Swiss Army Knife

Post by Yretenai »

Allanoon wrote: Wed Mar 11, 2020 5:19 pm
Yretenai wrote: Wed Mar 11, 2020 7:09 am
Skykila wrote: Wed Mar 11, 2020 7:02 am When trying to export pg1m and pg2a bundler from ps4 version of Nioh I get an error.

Image
those are not errors
I'm getting the same problem with the latest tool version, the old one (1.0.18) extract them just fine.
Here some files if you wana check https://www.mediafire.com/file/04x3pkdc ... 4.rar/file
Fixed in build 30.
User avatar
Yretenai
veteran
Posts: 126
Joined: Tue Jan 28, 2020 4:39 pm
Has thanked: 20 times
Been thanked: 138 times

Re: Cethleann - The Koei Swiss Army Knife

Post by Yretenai »

Build 32 introduces a new tool:
Nyotengu.AnimationGraph
You can find info on previous versions here

This tool will (attempt to) collect G1A animation files given a particular RDB hash. This allows one to easily find compatible animations if the game has been extracted with --nyotengu (as in the game has .rdb files)

Usage is even more complicated than Nyotengu.KTID, the tool to recombine G1T textures from KTID files.

Code: Select all

Nyotengu.AnimationGraph.exe -g GameId  path/to/CE1CommonResource.motor.kidsobjdb path/to/CE1CommonResource.motor.kidssingletondb -o directory_to_copy_animations_to -d g1a_directory model_filenames
i.e.

Code: Select all

Nyotengu.AnimationGraph.exe -g Scramble KIDSSystemResource\kidsobjdb\2082ad97.kidsobjdb KIDSSystemResource\kidsobjdb\285cb0c3.kidsobjdb -o anims -d CharacterEditor\g1a -d FieldEditor4\g1a -d RRPreview\g1a 418f67bf
would find all animations for H0000_Joker.g1m.

In case you have filenames enabled during extraction:

Code: Select all

2082ad97 = CE1CommonResource.motor.kidsobjdb
285cb0c3 = CE1CommonResource.motor.kidssingletondb
Caveat: Some RDB games define models by TypeInfo::Object::3D::Displayset::Model, and other games define them by TypeInfo::Object::3D::Placeable::Model::WorldPQ (Scramble uses WorldPQ, Dead or Alive 6 uses model hashes)-- As of build 32 this tool ONLY supports the former.

Finding model G1As is a bit more complicated, will implement automatic lookup for these types next update.

In other words, right now Nyotengu.AnimationGraph ONLY SUPPORTS Dead or Alive 6 for now.
Simguy
advanced
Posts: 43
Joined: Mon Jul 23, 2007 7:11 pm
Has thanked: 38 times
Been thanked: 63 times

Re: Cethleann - The Koei Swiss Army Knife

Post by Simguy »

This is super helpful! I was cross-referencing those database files manually to dig Persona animations out. Now I don't have too.
User avatar
Yretenai
veteran
Posts: 126
Joined: Tue Jan 28, 2020 4:39 pm
Has thanked: 20 times
Been thanked: 138 times

Re: Cethleann - The Koei Swiss Army Knife

Post by Yretenai »

Simguy wrote: Fri Mar 13, 2020 3:23 am This is super helpful! I was cross-referencing those database files manually to dig Persona animations out. Now I don't have too.
If you can find the KTID for WorldPQ, you can pass that as the hash instead of the model hash, and it'll work.

For example, 418f67bf is the WorldPQ for H000_Joker, look at DisplaysetObjectNameHash

Image
Image
Simguy
advanced
Posts: 43
Joined: Mon Jul 23, 2007 7:11 pm
Has thanked: 38 times
Been thanked: 63 times

Re: Cethleann - The Koei Swiss Army Knife

Post by Simguy »

Yup, thats what I was doing. I'm sure you already know, but just in case: some references in "CharacterActionObjectNameHashArray" refer to an unknown property type ("7bdd07f3") which still contains a reference to a G1A property.
User avatar
Yretenai
veteran
Posts: 126
Joined: Tue Jan 28, 2020 4:39 pm
Has thanked: 20 times
Been thanked: 138 times

Re: Cethleann - The Koei Swiss Army Knife

Post by Yretenai »

Simguy wrote: Fri Mar 13, 2020 10:13 pm Yup, thats what I was doing. I'm sure you already know, but just in case: some references in "CharacterActionObjectNameHashArray" refer to an unknown property type ("7bdd07f3") which still contains a reference to a G1A property.
The unknown property is DstAnimationDataObjectNameHash, there's also SrcAnimationDataObjectNameHash, and FCurveAnimationDataObjectNameHash. These are usually only used for map geometry, I'll add support in next update.

I gotta add an option to collect missing property hashes so I can find them more easily in the binary-- since it's a manual process.
Most of the properties are from DOA6 NAME database files (which haven't been updated in a while,) but for Sangokushi 14 and Scramble I have to find the serializing methods in the executable.

Updated to build 34: has support for DstAnimationDataObjectNameHash, a few more property hashes, updated the DoA6 and Sangokushi 14 filelists.
JosouKitsune
advanced
Posts: 65
Joined: Mon Jun 26, 2017 2:01 am
Has thanked: 33 times
Been thanked: 38 times

Re: Cethleann - The Koei Swiss Army Knife

Post by JosouKitsune »

I would like to ask if you could add support for OPPW3 DLC BIN files, I extracted the base game LINKDATA_EU_OS_EUNA.A, .B, .C and .D using Steven's Gas Machine, but it doesn't look like it has support for the DLC files, and it hasn't been updated since 2018, there doesn't seem to be an IDX file.

OPPW3 BIN files
User avatar
Yretenai
veteran
Posts: 126
Joined: Tue Jan 28, 2020 4:39 pm
Has thanked: 20 times
Been thanked: 138 times

Re: Cethleann - The Koei Swiss Army Knife

Post by Yretenai »

JosouKitsune wrote: Thu Mar 19, 2020 4:06 am I would like to ask if you could add support for OPPW3 DLC BIN files, I extracted the base game LINKDATA_EU_OS_EUNA.A, .B, .C and .D using Steven's Gas Machine, but it doesn't look like it has support for the DLC files, and it hasn't been updated since 2018, there doesn't seem to be an IDX file.

OPPW3 BIN files
Support added in Version 35. If this happens to ever be extracted by Cethleann, the extension will be slcbundle. There was also bug with pointer bundles.
The files have a texture and geometry data. The 000C.ptrbundle has the geometry, the skeleton and model is split so you have to find the skeleton model in this same extract.
JosouKitsune
advanced
Posts: 65
Joined: Mon Jun 26, 2017 2:01 am
Has thanked: 33 times
Been thanked: 38 times

Re: Cethleann - The Koei Swiss Army Knife

Post by JosouKitsune »

Yretenai wrote: Thu Mar 19, 2020 4:57 am
Support added in Version 35. If this happens to ever be extracted by Cethleann, the extension will be slcbundle. There was also bug with pointer bundles.
The files have a texture and geometry data. The 000C.ptrbundle has the geometry, the skeleton and model is split so you have to find the skeleton model in this same extract.
Wow that was fast, thanks, should I use Cethleann data exporter or unbundler? and which is the correct mode?

NVM I figured it was unbunbler, again thanks for your work.
hellacopters
n00b
Posts: 13
Joined: Thu Apr 18, 2019 10:23 pm
Has thanked: 4 times
Been thanked: 4 times

Re: Cethleann - The Koei Swiss Army Knife

Post by hellacopters »

I just wanted to stop by and thank Yretenai for their work! Because of the tools you and the community have developed, I've been able to start work on a fan site for the game Final Fantasy Opera Omnia using textures and animations right from the files.

One mystery in the game files I've yet to solve has been some of these so called "XL" header bins that are likely xor-ed json files that contain ability data and text strings. Being that I heard from chrrox on Discord that all Team Ninja games might use the same encryption (not sure if that's true) I was wondering if there was a process I could check these files with.

Thank you!🙏🏼
Opera Omnia Bins.zip
You do not have the required permissions to view the files attached to this post.
JosouKitsune
advanced
Posts: 65
Joined: Mon Jun 26, 2017 2:01 am
Has thanked: 33 times
Been thanked: 38 times

Re: Cethleann - The Koei Swiss Army Knife

Post by JosouKitsune »

Hi I found this voice.pac that contains multiple KOVS, alongside a voice.hed with the offsets and lengths of each kovs, voice.enum and VoiceLinkList.txt in the OPPW3 sound folder, are these file types supported?

Image

OPPW3 Voice files
User avatar
Yretenai
veteran
Posts: 126
Joined: Tue Jan 28, 2020 4:39 pm
Has thanked: 20 times
Been thanked: 138 times

Re: Cethleann - The Koei Swiss Army Knife

Post by Yretenai »

hellacopters wrote: Thu Mar 19, 2020 12:05 pm I just wanted to stop by and thank Yretenai for their work! Because of the tools you and the community have developed, I've been able to start work on a fan site for the game Final Fantasy Opera Omnia using textures and animations right from the files.

One mystery in the game files I've yet to solve has been some of these so called "XL" header bins that are likely xor-ed json files that contain ability data and text strings. Being that I heard from chrrox on Discord that all Team Ninja games might use the same encryption (not sure if that's true) I was wondering if there was a process I could check these files with.

Thank you!🙏🏼

Opera Omnia Bins.zip
These are not XORed json files.
I looked at DFFOO before, it does not use this encryption when it caches downloaded files.
XL files in this case are a deriviation of ECB files, which are repeated structures with numerical data-- DFFNT has a more "advanced" version of this.
TL;DR it's a specialized serialized format without names, usually an array of numbers-- not an obfuscated json file.

Thanks for reminding me I gotta figure out how to download and decrypt DFFOO files.
JosouKitsune wrote: Thu Mar 19, 2020 8:58 pm Hi I found this voice.pac that contains multiple KOVS, alongside a voice.hed with the offsets and lengths of each kovs, voice.enum and VoiceLinkList.txt in the OPPW3 sound folder, are these file types supported?
I'll add support for this. KVS is typically supported, but this archive is unimplemented atm.
Should have it in a day or two.
hellacopters
n00b
Posts: 13
Joined: Thu Apr 18, 2019 10:23 pm
Has thanked: 4 times
Been thanked: 4 times

Re: Cethleann - The Koei Swiss Army Knife

Post by hellacopters »

Yretenai wrote: Fri Mar 20, 2020 7:57 am These are not XORed json files.
I looked at DFFOO before, it does not use this encryption when it caches downloaded files.
XL files in this case are a deriviation of ECB files, which are repeated structures with numerical data-- DFFNT has a more "advanced" version of this.
TL;DR it's a specialized serialized format without names, usually an array of numbers-- not an obfuscated json file.

Thanks for reminding me I gotta figure out how to download and decrypt DFFOO files.
And the plot thickens 🙈

Thank you for all you do! Allow me to be of help if you need anything. I keep directory of all game files from both the JP and GL versions!

Very interested in contributing!
User avatar
Yretenai
veteran
Posts: 126
Joined: Tue Jan 28, 2020 4:39 pm
Has thanked: 20 times
Been thanked: 138 times

Re: Cethleann - The Koei Swiss Army Knife

Post by Yretenai »

hellacopters wrote: Fri Mar 20, 2020 10:54 pm And the plot thickens 🙈

Thank you for all you do! Allow me to be of help if you need anything. I keep directory of all game files from both the JP and GL versions!

Very interested in contributing!
The issue is I barely have knowledge on getting the XOR table on PC, I haven't got the faintest clue on getting it on Android or iOS.
I got the URLs, apks, and the filelist but I can't figure the table out.
hellacopters
n00b
Posts: 13
Joined: Thu Apr 18, 2019 10:23 pm
Has thanked: 4 times
Been thanked: 4 times

Re: Cethleann - The Koei Swiss Army Knife

Post by hellacopters »

Yretenai wrote: Sun Mar 22, 2020 3:52 am The issue is I barely have knowledge on getting the XOR table on PC, I haven't got the faintest clue on getting it on Android or iOS.
I got the URLs, apks, and the filelist but I can't figure the table out.
Same Boat. I've been playing around with the Android Studio SDK. Seeing if I could somehow recompile the APK in a working environment. But I haven't been able to get it to run yet to find anything 😥
Post Reply