Page 12 of 15

Re: Little extractor program

Posted: Tue Dec 29, 2009 10:39 am
by Sledgy
Hm, in fact AGS extracting works, I checked all Gobread versions.

But G. can't extract 'editor.dat' (main global script file of game) from exe. Seems it's main problem for open extracted project in AGS.

Re: Little extractor program

Posted: Tue Dec 29, 2009 10:20 pm
by asmxtx
Please remember:
GOBREAD is a FREE PROGRAM - FREE OF CHARGE.
If anybody has any complaints about its functionality - IT's HIS PROBLEM!
At this time I am working on a re-packer program which allows users with programming experience to add their own extraction modules. So stay tuned...

Re: Little extractor program

Posted: Wed Dec 30, 2009 9:12 am
by Csimbi
asmxtx wrote:At this time I am working on a re-packer program which allows users with programming experience to add their own extraction modules. So stay tuned...
me tuned ;-)

Re: Little extractor program

Posted: Wed Dec 30, 2009 12:52 pm
by aluigi
allows users with programming experience to add their own extraction modules
uhmmm I have a doubt:
if the user needs experience with a programming language and the module is a pre-compiled binary dll (so a complete program without only the main function), isn't simpler for him to just write the tool from scratch as indeed he must do in any case?

Re: Little extractor program

Posted: Wed Dec 30, 2009 1:11 pm
by Csimbi
aluigi wrote:uhmmm I have a doubt
I've been planning on doing something similar, but for the same reasons I have never actually started it - I could not come up with an easy framework.
Let's wait see what he's cooking - he might think up something different that makes things easier.

Re: Little extractor program

Posted: Wed Dec 30, 2009 5:31 pm
by aluigi
remaining in topic, today I have tried an experiment with QuickBMS about the rebuilding problem:
viewtopic.php?f=13&t=4003

Re: Little extractor program

Posted: Wed Dec 30, 2009 11:42 pm
by asmxtx
This are the features I'm about to implement -
(actually, these features WILL BE implemented, because a program of such a kind would not make any sense!):
- Full source subdirectory file scanning providing essential information, surpassing standard file searching routines
- Advanced command line evaluation for batch processing
- Dialogue windows with progress visualisation

All of these features rely on the development of libraries I've created many months ago.

For programmers:
Expect lot of functions to be called which return pointers to structures/functions which return pointers to other structures/functions which return pointers. If you ever have been programming in Windows you will know.

Re: Little extractor program

Posted: Wed Jan 27, 2010 10:20 pm
by asmxtx
Here is a small update, mainly fixing some nasty bugs.
In my opinion the hell on earth for a programmer arises if he has to find a bug which is caused by overlooking the last byte in a buffer or by choosing the wrong of two comparison methods, for example a>(b-1) or a>=b.
Not even the most sophisticated super hitech compiler can be helpful in such a case...

------

Although it is an old game I added "Fallout" because it has an interesting file structure.
I looked at an incomplete format description from here:http://www.watto.org/extract/program/archives.txt and thought I should complete it.
The "/view" switch doesn't work for it, sorry. Some improvement should be in charge.

Code: Select all

+---------------------+
| Fallout *.dat (big) |
+---------------------+

4 - Number of Directories
4 - Number of 8 byte blocks to allocate (internal only)
4 - Size of additional memory to allate (= 0)
4 - dummy fill bytes

// for each directory
  1 - Directory Name Length
  X - Directory Name

4 - Number of files in current directory
4 - Unknown
4 - Unknown (16)
4 - Unknown

// for each file
  1 - Filename Length
  X - Filename
  4 - Storing Method; 0x40: chunk wise, 0x20: raw data
  4 - File Offset
  4 - Decompressed File Size
  4 - if (Storing_method == 0x40)
	{Compressed Size}
      else //if Storing method == 0x20
	{0}
      endif
  
X - if (storing_method == 0x40)
	2 - Chunk size
		if (Chunk_size & 0x8000)
			[Chunk_size & 0x7fff] - raw data
		else
			[Chunk_size & 0x7fff] - LZSS compressed data
		endif
    else //if storing_method == 0x20
	X - Raw data
    endif

Re: Little extractor program

Posted: Wed Jan 27, 2010 10:42 pm
by chrrox
I found some information on games made by the company tri-ace and was wondering if you could look at the format and see if it can be extracted.
I have included some sample files.
here are some links i have found online concerning the formats.
\these files are from star ocean 4 for xbox 360
http://www.geocities.jp/scorpiozodiac03e7/slz.html
http://www.romhacking.net/forum/index.php?topic=7790.0

Re: Little extractor program

Posted: Thu Jan 28, 2010 12:07 am
by aluigi
quickbms script:

Code: Select all

get NAME basename
idstring SLZ
get TYPE byte
get DUMMY long
if DUMMY & 0xff
    endian little
else
    endian big
endif
get ZSIZE long
get SIZE long
get DUMMY long
get DUMMY long
savepos OFFSET
if TYPE == 0
    string NAME += ".unslz"
    log NAME OFFSET ZSIZE
elif TYPE == 4
    string NAME += ".xbcompress"
    log NAME OFFSET ZSIZE
else
    print "Error: unsupported type, contact me"
    cleanexit
endif
types:
0: uncompressed file
4: file compressed with xbcompress so use xbdecompress to unpack it.
obviously on playstation are used other compressions (like 2) but I have not had occasion to test them (I don't have the files)

Re: Little extractor program

Posted: Thu Jan 28, 2010 10:54 am
by Csimbi
asmxtx wrote:Not even the most sophisticated super hitech compiler can be helpful in such a case...
Actually, some compilers do check buffer overruns - though these are not free.

Re: Little extractor program

Posted: Tue Feb 16, 2010 7:13 pm
by Gagarin
guys, need some help. When I'm tryed to extract files from Warcraft II (War2Dat.mpq) I'v got an error "File format not recognized". Any ideas ?

I'm used simple command "GoBread War2dat.mpq"

Re: Little extractor program

Posted: Sat Mar 06, 2010 11:06 am
by Gagarin
no suggestions ? :(

Re: Little extractor program

Posted: Thu Apr 08, 2010 8:31 pm
by maingroup
what a great program. i've been looking for something like this for a long time. i have a question though. how come it works perfectly on king's quest 2 but fails to extract resources from king's quest 1, king's quest 3, and quest for glory 2. aren't they all using AGS 3.x? if not, aren't the previous versions of AGS supported?

Re: Little extractor program

Posted: Fri Apr 16, 2010 11:32 pm
by Dinoguy1000
asmxtx wrote:Although it is an old game I added "Fallout" because it has an interesting file structure.
I looked at an incomplete format description from here:http://www.watto.org/extract/program/archives.txt and thought I should complete it.
I thought I should point out that we have a wiki page for Fallout, and from there a link to http://falloutmods.wikia.com/wiki/DAT_file_format - you may be able to improve support with this information.