Posts: 9
Threads: 1
Joined: Feb 2016
Hello, really appreciate this tutorial and I thank you for it.
I am trying to get myself acquainted with QuickBMS so I started with the Pak0 file from the Quake 2 demo and although I've analysed it okay, my script seems to be off. Been trying for a while now and feel like a complete idiot because I know it's probably a stupid mistake lol. I'd appreciate any help
Code: idstring "PACK"
get BASE_OFF long
get ArchiveSize long
goto BASE_OFF
set NUM_OF_FILES 1106
for i = 1 < NUM_OF_FILES
getdstring NAME 0x10
get OFFSET long
get SIZE long
goto OFFSET
log NAME OFFSET SIZE
next i
File in question: https://mega.nz/#!MhhTiBrS!Ng_xeSoYMKLdO...6uunA559H8
03-09-2016, 07:03 PM
(This post was last modified: 03-09-2016, 07:24 PM by Struggleton!.)
(03-06-2016, 09:17 PM)beastedot9 Wrote: Hello, really appreciate this tutorial and I thank you for it.
I am trying to get myself acquainted with QuickBMS so I started with the Pak0 file from the Quake 2 demo and although I've analysed it okay, my script seems to be off. Been trying for a while now and feel like a complete idiot because I know it's probably a stupid mistake lol. I'd appreciate any help
Code: idstring "PACK"
get BASE_OFF long
get ArchiveSize long
goto BASE_OFF
set NUM_OF_FILES 1106
for i = 1 < NUM_OF_FILES
getdstring NAME 0x10
get OFFSET long
get SIZE long
goto OFFSET
log NAME OFFSET SIZE
next i
File in question: https://mega.nz/#!MhhTiBrS!Ng_xeSoYMKLdO...6uunA559H8
Oh, I didn't see this, I'll take a quick look at it
EDIT:
Code: idstring "PACK"
get OFFNAMETBL long
get FCOUNT long
goto OFFNAMETBL
for i = 0 < FCOUNT
getdstring NAME 0x38
get OFFSET long
get SIZE long
log NAME OFFSET SIZE
next i
This should work; This was a pretty simple format, however I don't think it gets the last file so I'm sorry about that :/
Posts: 9
Threads: 1
Joined: Feb 2016
(03-09-2016, 07:03 PM)ThatTrueStruggle Wrote: (03-06-2016, 09:17 PM)beastedot9 Wrote: Hello, really appreciate this tutorial and I thank you for it.
I am trying to get myself acquainted with QuickBMS so I started with the Pak0 file from the Quake 2 demo and although I've analysed it okay, my script seems to be off. Been trying for a while now and feel like a complete idiot because I know it's probably a stupid mistake lol. I'd appreciate any help
Code: idstring "PACK"
get BASE_OFF long
get ArchiveSize long
goto BASE_OFF
set NUM_OF_FILES 1106
for i = 1 < NUM_OF_FILES
getdstring NAME 0x10
get OFFSET long
get SIZE long
goto OFFSET
log NAME OFFSET SIZE
next i
File in question: https://mega.nz/#!MhhTiBrS!Ng_xeSoYMKLdO...6uunA559H8
Oh, I didn't see this, I'll take a quick look at it
EDIT:
Code: idstring "PACK"
get OFFNAMETBL long
get FCOUNT long
goto OFFNAMETBL
for i = 0 < FCOUNT
getdstring NAME 0x38
get OFFSET long
get SIZE long
log NAME OFFSET SIZE
next i
This should work; This was a pretty simple format, however I don't think it gets the last file so I'm sorry about that :/
I appreciate you still taking the time to look into it, thank you
I realised that I wasn't calculating the file count correctly and the length of NAME was too short.
Once again, thank you, appreciate it.
(03-06-2016, 10:47 AM)Ecelon Wrote: I'm now trying to extract the files from Infinite Crisis' .rp archives. Using the tutorial, I've determined that the archives are "10P"
. I've guessed that the Endian is little, but that may be wrong. This is the code I have so far:
endian little
idstring "10P"
get archiveSize long
get fileCount long
get null long
for i = 0 < fileCount
get pointer long
get length long
getdstring name 0x20
log name pointer length
next i
The code extracts the first bunch of blank data as .dat files, then continuously requests file renaming. Any ideas on what can be done. I've uploaded 3 .rp files to my onedrive to use as a reference. If more are needed, I can upload them
https://onedrive.live.com/redir?resid=28...older%2crp
Code: idstring "10PR"
get ALWAYSONE long
get SIZE long
get UNK_FCOUNT long
get NAME basename
string NAME += ".model"
log NAME 0x400 SIZE
It seems like those RP files contain models. However I only saw one model that could be extracted from it. Nothing looks too interesting other than that.
Posts: 9
Threads: 1
Joined: Feb 2016
Hello again, sorry to be a bother, I've been looking at these files from WWE 2K16:
https://mega.nz/#!U95TwDJa!xXdR0iMsbD5Nu...Cs1KC59CxQ
What's there is a regular pac file and then its a zlib compressed PACH but it doesn't seem like regular zlib(so basically an archive within an archive). I was wondering if anyone had any clue as to how begin writing a script for this and if its even possible?
The data that I do know:
- Headers of the .pac files are always either "EPK8" or "EPAC".
- Next value long is always null
- Then another long value which seems to be the size of the archive (or possibly offset?)
- The names of the archvies always start at offset x00000800 and the data itself always starts at offset x00004000.
Apart from that, I have no idea how to open the zlib compressed ones. Any help is appreciated
Posts: 115
Threads: 19
Joined: Sep 2014
03-14-2016, 01:34 PM
(This post was last modified: 03-14-2016, 01:34 PM by Telespentry.)
May I request a really simple script? Basically, by trimming off the header, this file is just 00000000000000filehere00000000000000filehere000000000000000 with a variable number of zeros but at least 15 I would say. The 0s are actual text for some strange reason with the bytes being 30s. Would this be simple to make? The file names are in plaintext and in order so I will manually add them.
03-14-2016, 02:07 PM
(This post was last modified: 03-14-2016, 03:08 PM by Struggleton!.)
(03-14-2016, 01:34 PM)Telespentry Wrote: May I request a really simple script? Basically, by trimming off the header, this file is just 00000000000000filehere00000000000000filehere000000000000000 with a variable number of zeros but at least 15 I would say. The 0s are actual text for some strange reason with the bytes being 30s. Would this be simple to make? The file names are in plaintext and in order so I will manually add them.
If you could, could you please add a sample?
(03-13-2016, 06:25 PM)beastedot9 Wrote: Hello again, sorry to be a bother, I've been looking at these files from WWE 2K16:
https://mega.nz/#!U95TwDJa!xXdR0iMsbD5Nu...Cs1KC59CxQ
What's there is a regular pac file and then its a zlib compressed PACH but it doesn't seem like regular zlib(so basically an archive within an archive). I was wondering if anyone had any clue as to how begin writing a script for this and if its even possible?
The data that I do know:
- Headers of the .pac files are always either "EPK8" or "EPAC".
- Next value long is always null
- Then another long value which seems to be the size of the archive (or possibly offset?)
- The names of the archvies always start at offset x00000800 and the data itself always starts at offset x00004000.
Apart from that, I have no idea how to open the zlib compressed ones. Any help is appreciated I can take a look real quick
EDIT: Here you go!
Code: comtype zlib
getdstring IDString 0x4
if IDString == "PACH" || IDString == "EPK8"
findloc PACH string "PACH" 0 ""
goto PACH
idstring "PACH"
get FCOUNT long
for i = 0 < FCOUNT
findloc OFFSET string "ZLIB0" 0 ""
get NAME basename
string NAME += i
string NAME + ".dec"
goto OFFSET
idstring "ZLIB0"
getdstring NONE 0x3
get SIZE long
get ZSIZE long
savepos OFFSET
clog NAME OFFSET SIZE ZSIZE
math OFFSET + SIZE
goto OFFSET
next i
else
cleanexit
endif
I see some very interesting things in the decompressed files; textures and models ;3 Have fun.
Posts: 9
Threads: 1
Joined: Feb 2016
(03-14-2016, 02:07 PM)ThatTrueStruggle Wrote: (03-14-2016, 01:34 PM)Telespentry Wrote: May I request a really simple script? Basically, by trimming off the header, this file is just 00000000000000filehere00000000000000filehere000000000000000 with a variable number of zeros but at least 15 I would say. The 0s are actual text for some strange reason with the bytes being 30s. Would this be simple to make? The file names are in plaintext and in order so I will manually add them.
If you could, could you please add a sample?
(03-13-2016, 06:25 PM)beastedot9 Wrote: Hello again, sorry to be a bother, I've been looking at these files from WWE 2K16:
https://mega.nz/#!U95TwDJa!xXdR0iMsbD5Nu...Cs1KC59CxQ
What's there is a regular pac file and then its a zlib compressed PACH but it doesn't seem like regular zlib(so basically an archive within an archive). I was wondering if anyone had any clue as to how begin writing a script for this and if its even possible?
The data that I do know:
- Headers of the .pac files are always either "EPK8" or "EPAC".
- Next value long is always null
- Then another long value which seems to be the size of the archive (or possibly offset?)
- The names of the archvies always start at offset x00000800 and the data itself always starts at offset x00004000.
Apart from that, I have no idea how to open the zlib compressed ones. Any help is appreciated I can take a look real quick
EDIT: Here you go!
Code: comtype zlib
getdstring IDString 0x4
if IDString == "PACH" || IDString == "EPK8"
findloc PACH string "PACH" 0 ""
goto PACH
idstring "PACH"
get FCOUNT long
for i = 0 < FCOUNT
findloc OFFSET string "ZLIB0" 0 ""
get NAME basename
string NAME += i
string NAME + ".dec"
goto OFFSET
idstring "ZLIB0"
getdstring NONE 0x3
get SIZE long
get ZSIZE long
savepos OFFSET
clog NAME OFFSET SIZE ZSIZE
math OFFSET + SIZE
goto OFFSET
next i
else
cleanexit
endif
I see some very interesting things in the decompressed files; textures and models ;3 Have fun.
Thank you for this, will be really helpful! I really appreciate it
Posts: 362
Threads: 8
Joined: Dec 2014
I feel stupid, because this absolutely confused me in every way. I don't understand how I can tell if something looks like a header or offset for all files, I can't tell what looks like a file size, I can't tell what looks like anything. It's all just a bunch of randomness to me.
Some guy who just lurks this place nowadays.
Posts: 1
Threads: 0
Joined: Aug 2014
Hello, I am new to extracting .bnk files, could anyone assist me in extracting the voice files from this decrypted bayonetta 2? I have all the .bnk files but using quickbms i keep getting errors when the conversion is trying to go through. Or does anyone here already have the bayonetta2 files converted that they can share? I am losing my mind xD
Posts: 841
Threads: 27
Joined: Jan 2015
05-15-2016, 05:10 PM
(This post was last modified: 07-28-2016, 10:22 PM by Pingus!.)
Thought I'd begin to put the BMS Scripts I've written here, as I'm learning how to do this:
Posts: 115
Threads: 19
Joined: Sep 2014
Could you modify the cgfx dumper so that it will continue in a file if an error is encountered? Thanks.
Posts: 1
Threads: 0
Joined: Jun 2016
I'm absolutely confused and don't understand how to make the scritpt.
I want to make an spanish translation from onimusha:warlords PS2 game, and i need to unpack some files. The game comes in english and japaneese so i found suspect files starting with E_ so i think they are the files i need to translate. The files have .ldt and .ipu extension but some ldt files seems alone and other files have both .ipu and .ldt files.
Please can you help me with an script to unpack the files? and whould be possible to repack it again?
Thank you very much. I really appreciate your work.
Sample files here: http://www.mediafire.com/download/6xky9z...sample.rar
Posts: 11
Threads: 2
Joined: Apr 2016
06-24-2016, 12:48 AM
(This post was last modified: 06-24-2016, 12:51 AM by zelda200941.)
|