Compressing Destiny Child (KR) .PCK files [Android, ARM]

Extraction and unpacking of game archives and compression, encryption, obfuscation, decoding of unknown files
iamafool1004
Posts: 1
Joined: Tue Nov 22, 2016 3:10 am

Compressing Destiny Child (KR) .PCK files [Android, ARM]

Post by iamafool1004 »

Hello, I am currently trying to pack the extracted files back to .pck after I have extracted the original .pck file using quick bms script for "Destiny Child (KR)". (http://aluigi.altervista.org/bms/destiny_child_kr.bms)
This was mainly due to the fact that I wanted to change the texture within the game -

11.png


You get these 7 files once you extract a .pck file responsible for a character from this game, and I wanted to modify the .png file, which is responsible for the texture of the character. Thus, I have figured out a way to unpack it easily by using the quickBMS tool and using the BMS script that was uploaded online, but now what should I do to re-package it? I am totally clueless and lost- is anyone able to guide me how to work on compressing the changed contents back in to a single .pck file? Thanks for reading this long thread. ;)

Here is the sample character .pck file, which I have been struggling to compress after decompressing it:
http://www.mediafire.com/file/00x7f4x78gci05u/c057_02.pck
Attatchment of pck file was not allowed, so I uploaded it on mediafire.

P.S: MIGHT BE RELATED TO THIS POST http://zenhax.com/viewtopic.php?f=9&t=3333&p=18521&hilit=destiny+child#p18521
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Compressing Destiny Child (KR) .PCK files [Android, ARM]

Post by aluigi »

Try the reimport feature of quickbms, all the information are available in section 3 of quickbms.txt:
http://aluigi.org/papers/quickbms.txt

The script is valid for reimporting so it should work correctly.
If you modify only the png file, remember to keep only it in the folder (delete the other unchanged files) and check that its size is smaller/equal than the original file.
angelasvv
Posts: 3
Joined: Sun Jul 16, 2017 6:18 pm

Re: Compressing Destiny Child (KR) .PCK files [Android, ARM]

Post by angelasvv »

aluigi wrote:Try the reimport feature of quickbms, all the information are available in section 3 of quickbms.txt:
http://aluigi.org/papers/quickbms.txt

The script is valid for reimporting so it should work correctly.
If you modify only the png file, remember to keep only it in the folder (delete the other unchanged files) and check that its size is smaller/equal than the original file.


The locale.pck after unpck.
I have not edited any files,original file can not reimport.

locale.pck https://drive.google.com/open?id=0B_6gK ... 0EtNUxubG8
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Compressing Destiny Child (KR) .PCK files [Android, ARM]

Post by aluigi »

That error means that the file can't be compressed further and so can't be reimported.
quickbms uses Yappy_Compress with level 10, apparently that's not enough so I will do some tests for the next version using higher levels.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Compressing Destiny Child (KR) .PCK files [Android, ARM]

Post by aluigi »

Ok, increasing the level does absolutely nothing so it's necessary another different implementation of the algorithm of which I'm not aware (I use https://raw.github.com/richard-sim/Comp ... /yappy.cpp).
If anyone has suggestions I will implement them.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Compressing Destiny Child (KR) .PCK files [Android, ARM]

Post by aluigi »

So has anyone been able to find a working version of the yappy compressor?

The public version of yappy is clearly a joke or a huge bug because the compressed data is bigger than the original file and changing any parameter (level, bestYappy_Match, size of tables and so on) doesn't change anything.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Compressing Destiny Child (KR) .PCK files [Android, ARM]

Post by aluigi »

Fixed in quickbms 0.8.1