QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Doubts, help and support about QuickBMS and other game research tools
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by aluigi »

Use the latest version of quickbms and then use reimport2.bat.
This new method has some limitations too, it depends by the format of the archive.
minhvipkk
Posts: 2
Joined: Sun Mar 18, 2018 10:04 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by minhvipkk »

aluigi wrote:Use the latest version of quickbms and then use reimport2.bat.
This new method has some limitations too, it depends by the format of the archive.


The archive file is data.win. The file including parts for translation is STRG.txt.
Reimport2 doesn't allow to import bigger size file. :(
BCGhost
Posts: 35
Joined: Fri Dec 15, 2017 1:42 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by BCGhost »

The tool threw me an error when I tried to decompress this data chunk with zlib:
zlib.rar

while I can decompress it without problems through HexEdit.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by aluigi »

It works perfectly, remember that if you use "comtype zlib" you have also give a decompressed size value which is same/bigger than the real decompressed size, only zlib_noerror and unzip_dynamic do the job automatically:

Code: Select all

comtype zlib_noerror # or unzip_dynamic
get SIZE asize
clog "" 0 SIZE SIZE
BCGhost
Posts: 35
Joined: Fri Dec 15, 2017 1:42 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by BCGhost »

I actually did specified an unzip size but it still gave me the error saying
"Error: the compressed zlib/deflate input is wrong or incomplete (-5)".

This is the code I'm using for the simple test:

Code: Select all

comtype zlib
get Name basename
string Name + ".dcp"
get ZSize asize
set Size long ZSize
math Size * 20
clog Name 0 ZSize Size

However zlib_noerror does work though.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by aluigi »

Your script is correct but your dump is incomplete so the zlib library returns an error if the input is not perfect, in fact the zlib format has a crc at the end to check the input.
zlib_noerror simply ignores these errors and doesn't consider the decompressed size.
BCGhost
Posts: 35
Joined: Fri Dec 15, 2017 1:42 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by BCGhost »

aluigi wrote:in fact the zlib format has a crc at the end to check the input.

I never knew that before. That will make sense. The file I'm dealing with has no fields about the compressed size or unzip size while HexEdit will crash if I decompress the whole compressed chunk directly, so I have to perform a decompression on every piece of data splitted by the zlib magic "\x78\x01" in this case. Guess I'd have to use the noerror method then.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by aluigi »

or you can just use offzip on the whole data/memory and it will do the job for you automatically, it's just its primary purpose :)
http://aluigi.altervista.org/mytoolz.htm#offzip
BCGhost
Posts: 35
Joined: Fri Dec 15, 2017 1:42 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by BCGhost »

I was wondering if it would perform a complete decompression either method.
Nicknine
Posts: 18
Joined: Tue May 29, 2018 9:07 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by Nicknine »

There's a bug with arrays. If you use a different name (not value, name) as accessor index from any names that were used to initialize it, it won't work properly.

To elaborate, this will work:

Code: Select all

set ID long 0
set TEST[ID] string "pootis"
set POOTIS TEST[ID]


This will not work:

Code: Select all

set ID long 0
set TEST[ID] string "pootis"
set IX long 0
set POOTIS TEST[IX]
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by aluigi »

There are 2 bugs in those scripts:
- the variable with name pootis and the constant string "pootis" can't coexist
- that feature you are using there is not the (get/put/sort)array one, that's the experimental multi-dimensional array which works in a different way in which the multiple dimensions (VAR[X][Y][Z][W]) are possible by using a trick. long story short TEST[ID] and TEST[IX] are two completely different things
GHOST DEAD
Posts: 218
Joined: Wed Jul 19, 2017 5:04 am

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by GHOST DEAD »

Hello Aluigi
i have a question...
i want to start Scripting with QuickBMS, i just know (Lua), how can i start and Learn to write bms scripts?
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by aluigi »

The bms language is extremely simple, most of the work is reverse engineering the file formats for which you usually need a hex editor.
My suggestion is to take a look at the various scripts written for the various samples provided on the forum.
Every script shorter than 10 lines is a good candidate for learning :)
undefine0909
Posts: 1
Joined: Wed Jul 04, 2018 12:58 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by undefine0909 »

what does -m3 means on make?? i dont have that it throws error

thread -lssl -lcrypto -DDISABLE_MCRYPT -DDISABLE_TOMCRYPT -ldl
cc: error: unrecognized command line option '-m3'make: *** [Makefile:43: all] Error 1

I think my question is cc you put -m3 whats that?

ah its m32 i cant built this on my 64 bit.. because you state it cause problem on 64 bit natively.. hmm
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by aluigi »

You can try removing -m32, it will work without problems.

I use -m32 in Makefile for being sure that there are no problems with some external code (pre-compiled functions and so on) and for sharing the resulting binary on the website.
Delutto
Posts: 561
Joined: Tue Oct 13, 2015 1:26 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by Delutto »

How suppress the "Press ENTER or close the window to quit" message?
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by aluigi »

-R
abcdekabcd
Posts: 5
Joined: Thu Aug 09, 2018 12:32 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by abcdekabcd »

moderate to another room, thanks
Last edited by abcdekabcd on Fri Aug 10, 2018 1:08 am, edited 1 time in total.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by aluigi »

As written in the title of the topic where you are posting... "NOT games", so you are OT.

Anyway some games that use that nxpk format have their files encrypted and therefore you can't extract them.
haiwood
Posts: 4
Joined: Sun Aug 19, 2018 5:24 pm

Re: QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Post by haiwood »

off-topic, moved
Last edited by haiwood on Mon Aug 20, 2018 7:16 pm, edited 1 time in total.