Page 1 of 1

Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Wed Feb 01, 2012 3:37 am
by Axolotl
The contents of this post was deleted because of possible forum rules violation.

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Sun Feb 05, 2012 12:28 pm
by Nazaroff
*.PAK format looked like very easy.

char header[8]; "FSH24001"
int32 size; //fize of PAK
int32 numfiles; //number of files in PAK
{char filename[32]; int offset; int sizeOfFile; char dummy[8];}[numfiles]
then data.

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Sun Feb 05, 2012 3:19 pm
by Axolotl
So is it possible to make a script to extracts files from paks? :)

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Sun Feb 05, 2012 5:31 pm
by finale00
It does not seem that obvious.

There is still compression on the data.
I mean sure you can see strings in some of those csv's and all, but then there's a lot of other garble there.

If you look at the each file, it most likely starts with

Code: Select all

char[4] "\x5A\x4D\xF6\x0B"
dword size
dword compressed_size
....
But I don't know which compression algorithm is used.

This unpacks the archives, but is not complete based on the provided sample.

Code: Select all

#Shui Hu Q Zhuan 2 pak unpacker

idstring "FSH24001"
get FSIZE long
get FILES long

set FOLDER_NAME = "/"
for i = 0 < FILES do
	getdstring NAME 32
	get OFFSET long
	get SIZE long
	get IS_FOLDER long
	get unk2 long
	
	if IS_FOLDER = 1
		set FOLDER_NAME = NAME
		string FOLDER_NAME += "/"
	else
		set TEMP = FOLDER_NAME
		string TEMP += NAME
		print %TEMP%
		log TEMP OFFSET SIZE	
	endif
next i
The IS_FOLDER value might be more than just one sub-level, so if there are multiple nested folders it'll have to be defined a little differently.

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Sun Feb 05, 2012 6:19 pm
by Axolotl
Thanks, the script is really works, it extracts a lot of ukx and utx files but them seems to not working with umodel for me, so all in Gildor's hands i think.

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Sun Feb 05, 2012 6:29 pm
by finale00
The files should be compressed.
I just don't know the compression algorithm used.

But I guess you can upload some model/tex samples. It's probably the same compression used as the rest of the files.

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Sun Feb 05, 2012 6:34 pm
by Axolotl
The contents of this post was deleted because of possible forum rules violation.

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Sun Feb 05, 2012 6:45 pm
by finale00
Image

You're right, it's not compressed.
Well, it is compressed. It just happens that it's the same as the original for whatever reason.

A proper unpacker that decompresses the file data would still produce the same result.

Try removing the first 12 bytes of the file and see if umodel can load it, since the first 12 bytes are not part of the model.

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Sun Feb 05, 2012 6:55 pm
by Axolotl
It's partially works.
Removing 12 bytes works with usx - static mesh packages and utx - textures.
But skeletal meshes - ukx still doesn't want to work.

P.S. But hand painted textures looks quite good. Simple cartonish style, but made by quite crafty artists.

Image

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Sun Feb 05, 2012 8:45 pm
by CriticalError
well really great news, yes testing and trying crack UKX files but don't have lucky, I tested all files.

UKX= Pending
UTX=DONE
USX=DONE
UNR=DONE
UAX=DONE

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Mon Feb 06, 2012 10:11 am
by Axolotl
Finale00 i'm not programmer but maybe it's not hard to modify bms script that it will extract packages without those extra 12 bytes? Because there are a lot of packages (129-utx, 248-usx, 679-ukx) and do it manually will be very looong process :)

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Mon Feb 06, 2012 1:45 pm
by finale00
Assuming you don't need those 12 bytes for any of the models/textures, we can just skip those 12 bytes by increasing the offset of each file.

Code: Select all

#Shui Hu Q Zhuan 2
#temp unpacker
#doesn't decompress files

idstring "FSH24001"
get FSIZE long
get FILES long

set FOLDER_NAME = "/"
for i = 0 < FILES do
   getdstring NAME 32
   get OFFSET long
   math OFFSET += 12
   get SIZE long
   get IS_FOLDER long
   get unk2 long
   
   if IS_FOLDER = 1
      set FOLDER_NAME = NAME
      string FOLDER_NAME += "/"
   else
      set TEMP = FOLDER_NAME
      string TEMP += NAME
      print %TEMP%
      log TEMP OFFSET SIZE   
   endif
next i

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Mon Feb 06, 2012 3:24 pm
by CriticalError
finale00 wrote:Assuming you don't need those 12 bytes for any of the models/textures, we can just skip those 12 bytes by increasing the offset of each file.

Code: Select all

#Shui Hu Q Zhuan 2
#temp unpacker
#doesn't decompress files

idstring "FSH24001"
get FSIZE long
get FILES long

set FOLDER_NAME = "/"
for i = 0 < FILES do
   getdstring NAME 32
   get OFFSET long
   math OFFSET += 12
   get SIZE long
   get IS_FOLDER long
   get unk2 long
   
   if IS_FOLDER = 1
      set FOLDER_NAME = NAME
      string FOLDER_NAME += "/"
   else
      set TEMP = FOLDER_NAME
      string TEMP += NAME
      print %TEMP%
      log TEMP OFFSET SIZE   
   endif
next i
thanks a lot for it, after finish modify all you create a bms script for do it xX, I sick now anyway keep working, now the problem is UKX, Gildor is working in it, so hope see news very soon.

Re: Shui Hu Q Zhuan 2 online (Unreal engine)

Posted: Thu Feb 09, 2012 5:49 pm
by CriticalError
ummm well the compression say chrox is COMP_LZO1X, maybe can take a look and modify script? today I download new client, and script not work, they changed files, here I uplaod for take a look too, thanks.

Shui Hu Q Zhuan 2 Online v80 [Samples+EXE]