Jump to content

Help with Atelier Kaguya PLT files


Recommended Posts

I am trying to unpack JK Imouto https://vndb.org/v26382. Garbro opens the arc files but some of the animations are contained within PLT files that Garbro cannot open. If I extract the files using Garbro then the PLTs can be further extracted with Arc Unpacker using the decoder kaguya/pl10 but the resulting files are multicolored static noise. The existence of https://exhentai.org/s/e9f656b86f/1560836-11 implies that those files CAN be extracted and I just haven't found the right process. Does anyone know how?

For each PLT file there is an ANM archive that appears to be empty. I have placed the files into a sharable folder.https://drive.google.com/drive/folders/1Kl_e5y0gUCmmJ1iWNP1-FCnFr2QK0JPd?usp=sharing

Thank you. 

Link to comment
Share on other sites

The PLT files of the game are encrypted for some reason and Arc Unpacker does not know this encryption. I found the decryption algorithm in the game and was able to rewrite it, but sadly I could not yet find out how the keys for the encryption are generated. I finally ended up just dumping the keys out of the game's memory and using it for my own program. You can download the program here.

It should be able to decrypt at least most of the PLT files of this specific game but I can't say if it will work for all since I only have this specific encryption key. Let me know if something doesn't work.

The ANM files are probably only there to tell the game how it should make an animation out of the individual frames, that's why they are so small.

Edited by Anonym271
(corrected typo)
Link to comment
Share on other sites

You are a god, thank you. 

Access is denied to the drive folder, looks like it wasn't set to public access. 

If you could provide instructions on how you located the decryption algorithm or found the encryption key then I could try my hand at decoding other games. 

Link to comment
Share on other sites

26 minutes ago, PBMidas said:

You are a god, thank you. 

Access is denied to the drive folder, looks like it wasn't set to public access. 

If you could provide instructions on how you located the decryption algorithm or found the encryption key then I could try my hand at decoding other games. 

Oops, sorry. Now you should have access.

How much do you know about reverse engineering, IDA / Ghidra and x86 assembly? Because a basis of knowledge (and of course lots of time and patience :D) is always needed for decrypting and stuff... 

Link to comment
Share on other sites

4 minutes ago, Anonym271 said:

Oops, sorry. Now you should have access.

How much do you know about reverse engineering, IDA / Ghidra and x86 assembly? Because a basis of knowledge (and of course lots of time and patience :D) is always needed for decrypting and stuff... 

While I do have some background in programming, I know very little about those technologies. I suppose it would be asking a lot to give a detailed description to a relative layperson like myself. 

Would it be possible for you to give the code for your application so I could take a look and compile it myself? I don't feel particularly safe running a random EXE. 

Link to comment
Share on other sites

It works. 

For future reference for anyone who finds this thread:

  • If you get errors about missing DLLs then the easiest solution is to compile it manually. Install Visual Studio tools and use a command like `cl.exe plt.cpp /std:c++latest` to generate the EXE. 
  • Drag the plt files onto the exe. The PLT files must be in the same directory as the exe and must be renamed to contain no strange characters. 
Link to comment
Share on other sites

12 minutes ago, PBMidas said:

It works. 

For future reference for anyone who finds this thread:

  • If you get errors about missing DLLs then the easiest solution is to compile it manually. Install Visual Studio tools and use a command like `cl.exe plt.cpp /std:c++latest` to generate the EXE. 
  • Drag the plt files onto the exe. The PLT files must be in the same directory as the exe and must be renamed to contain no strange characters. 

Thanks for the additions. I've also drafted a release in the GitHub repo that should work without dll errors :D

Edited by Anonym271
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...