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

Files extractors scripting

The Original Forum. Game archives, full of resources. How to open them? Get help here.
Post Reply
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: Files extractors scripting

Post by aluigi »

if someone follows this thread, I have just released a major version of QuickBMS. hope you like it
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1422 times

Re: Files extractors scripting

Post by chrrox »

The contents of this post was deleted because of possible forum rules violation.
You do not have the required permissions to view the files attached to this post.
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: Files extractors scripting

Post by aluigi »

why "math FILES -= 1"?
the FILES value is correct as is because there are 2 files in the archive.
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1422 times

Re: Files extractors scripting

Post by chrrox »

If I take that out it tries to read 3 files for some reason. It must be something I am doing wrong.
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: Files extractors scripting

Post by aluigi »

here it gets 2 files correctly.
then I saw you linked another game (VivaFighter) but I don't see the relationship with the GP4 files
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1422 times

Re: Files extractors scripting

Post by chrrox »

when I run this command this is what I get

Code: Select all

F:\Program Files\Audition>quickbms.exe -l G:\Viva\VIVA.bms G:\Viva\Resource\6D10AC88.gp4 .

QuickBMS generic files extractor 0.1.3
by Luigi Auriemma
e-mail: [email protected]
web:    aluigi.org

- open G:\Viva\Resource\6D10AC88.gp4
- open G:\Viva\VIVA.bms

  offset   filesize   filename
------------------------------
  00000046 315        skeleton_die_effect.cfg
  00000181 101993     skeleton_die_effect.mb

- 2 files found

F:\Program Files\Audition>quickbms.exe -l G:\Viva\VIVA.bms G:\Viva\Resource\6D10AC88.gp4 .

QuickBMS generic files extractor 0.1.3
by Luigi Auriemma
e-mail: [email protected]
web:    aluigi.org

- open G:\Viva\Resource\6D10AC88.gp4
- open G:\Viva\VIVA.bms

  offset   filesize   filename
------------------------------
  00000046 315        skeleton_die_effect.cfg
  00000181 101993     skeleton_die_effect.mb
  6946696e 1866687852 SkillInfo]
ID = skeleton_die_effect
Kind = -1
SkillImpType = Model
A

- 3 files found
1st result is with the -= 1 the second is with that commented out.

The gp4 files are from viva fighter.
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: Files extractors scripting

Post by aluigi »

"QuickBMS generic files extractor 0.1.3"... the latest one is 0.2!!!
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1422 times

Re: Files extractors scripting

Post by chrrox »

I am sorry I must of had an older copy on my hard drive. Thanks for clearing things up for me :)
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1422 times

Re: Files extractors scripting

Post by chrrox »

The contents of this post was deleted because of possible forum rules violation.
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1422 times

Re: Files extractors scripting

Post by chrrox »

I found a game with almost identical compression of Shaolin Plus Online.
The game is called Zodiac Online.
I almost have it figured out based on the Shaolin script but I am missing something.
# Zodiac Online
# script for QuickBMS http://aluigi.org/papers.htm#quickbms

goto 0x14
get NSIZE long
filexor 0x99
getdstring NAME NSIZE
filexor ""
get ZSIZE long
get SIZE long
getdstring DUMMY 12
savepos OFFSET
#get ZSIZE asize
#math ZSIZE += OFFSET

comtype LZO1X
clog NAME OFFSET ZSIZE SIZE
here is a file attached.
You do not have the required permissions to view the files attached to this post.
fatduck
mega-veteran
mega-veteran
Posts: 315
Joined: Wed Aug 02, 2006 10:07 pm
Has thanked: 10 times
Been thanked: 94 times

Re: Files extractors scripting

Post by fatduck »

Hi Chrrox, there is nothing wrong with your extracted file in Magic_C03.tg_ actually!
It just missing header! If you add a classic TGA header then It will be fine.
And I guess the value @0x2D (04) will be bytes-per-color!!

Code: Select all

00000000   00 00 02 00 00 00 00 00  00 00 00 00 00 01 00 01
00000010   20 00                                               
By the way, how do you know it's LZO compressed? (I am always interested in LZO)

PS: bugtest, Is is possible to add data(like tga header above) in QuickBMS?
You do not have the required permissions to view the files attached to this post.
No more Fatduck, no more FatImporter, Byebye everyone!
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: Files extractors scripting

Post by aluigi »

uhmmm at the moment don't exist ways (or easy ways) to put custom data inside the output file because the BMS language doesn't have rules for editing memory.
so the only easy way is creating a file containing the header you want to add (for example the bytes you specified in your post) and then:

Code: Select all

append
open FDSE "header_file.dat" 1
get HEADER_FILE_SIZE asize 1
...
    log NAME 0 HEADER_FILE_SIZE 1
    log NAME OFFSET SIZE
...
if you copy the content of "header_file.dat" in a MEMORY_FILE you can also edit it (for example if you want to add a RIFF header you need to modify at least the 2 fields containing the size of the data and riff blocks) but at the moment GetVarChr and PutVarChr works only on single bytes so it's boring to handle 32bit fields like in the RIFF example.

so in the next version I will add two things for doing this job on the fly:
- adding the possibility of filling the MEMORY_FILE with custom data directly inside the BMS script (for example "Set MEMORY_FILE binary "\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x01\x20\x00")
- adding a datatype value in Get/PutVarChr for being able to handle any 8, 16, 32bit and string value making it complete
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1422 times

Re: Files extractors scripting

Post by chrrox »

Here is a game called astro ranger
http://astroranger.com/
it is like ddr meets power rangers I guess but I wrote an extractor for this game to see what was in there.
where else can you find a game that has the original Japanese sailor moon theme song in it lol.

Code: Select all

idstring " PSH"
get VERSION long
get FILES long
get NULL long

for i = 0 < FILES
getdstring NAME 0x80
get SIZE long
get ZSIZE long
get OFFSET long

clog NAME OFFSET ZSIZE SIZE

next i
client http://astro.nefficient.co.kr/astrorang ... client.exe


edit
The only reason I knew it was that compression was bugtest had showed me a script for shaolin plus online that uses that compression and it seemed very familiar so I had a strong feeling it was that compression.
You do not have the required permissions to view the files attached to this post.
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1422 times

Re: Files extractors scripting

Post by chrrox »

Here is a script for ghostx online
http://ghostx.gamengame.com/main.jce
this game is in english and uses custom smd models and normal png textures.

Code: Select all

idstring "PGFN"

get VERSION long
goto 0x18
get FILES long

for i = 0 < FILES
get NLENGTH long
get OFFSET long
get SIZE long
get DUMMY long
getdstring NAME NLENGTH

savepos LOCATION

log NAME OFFSET SIZE

math LOCATION += SIZE
goto LOCATION

next i
Image
You do not have the required permissions to view the files attached to this post.
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1422 times

Re: Files extractors scripting

Post by chrrox »

I am stuck on the game Love Beat Online. http://lovebeat.plaync.co.kr/

I have figured out most of it and I get the files to be listed correctly but I can not extract the files.
Here is what I have so far.

Code: Select all

idstring "QPACK\0"
get VERSION long
get FILES long
goto 0x15
math OFFSET += 0x208
math OFFSET *= FILES
math OFFSET += 0x15
for i = 0 < FILES

getdstring NAME 0x200
get ZSIZE long
get SIZE long
comtype LZO1X
clog NAME OFFSET ZSIZE SIZE
math OFFSET += ZSIZE

next i
Here are some sample archives.
You do not have the required permissions to view the files attached to this post.
Post Reply