XeNTaX Forum Index
Forum MultiEx Commander Tools Tools Home
It is currently Tue Oct 23, 2018 1:35 pm

All times are UTC + 1 hour


Forum rules


Please click here to view the forum rules



Post new topic Reply to topic  [ 7 posts ] 
Author Message
 Post subject: Septerra Core Files Decompression [AM0, CH1, LV2, TX0]
PostPosted: Fri Sep 07, 2012 8:08 pm 
Offline
mega-veteran
mega-veteran

Joined: Fri Jun 11, 2010 12:08 pm
Posts: 312
Has thanked: 75 times
Have thanks: 21 times














You can make the ads go away by registering

Thanks to aluigi .db archives was unpacked - viewtopic.php?f=10&t=4809&start=15

However, unpacked files have internal compression, which is not very strong. Part of files can be like a container, which have resource complex - graphics, sounds, etc.

AM0 - sprites and animations.
CH1 - character data.
LV2 - level data resources.
TX0 - texts.

Plus two files - 000001e4.gv0 and 000002e8.il0.

Stuns unpack Deflate and LZO data from files.
Try use .PAS sources of LZSS and LZW compression, but without success.

Think what files have LZ-like or RLE-like compression.

Files can be send throught PM.


Top
 Profile  
 
 Post subject: Re: Septerra Core Files Decompression [AM0, CH1, LV2, TX0]
PostPosted: Tue Jan 22, 2013 4:31 pm 
Offline
mega-veteran
mega-veteran

Joined: Fri Jun 11, 2010 12:08 pm
Posts: 312
Has thanked: 75 times
Have thanks: 21 times
Unpacked data from demo-version of the game - http://www.mediafire.com/?98b8op5ueoc5k1m

Without .DAT(.MOV files) and .VSS(.MP3 files) files.


Top
 Profile  
 
 Post subject: Re: Septerra Core Files Decompression [AM0, CH1, LV2, TX0]
PostPosted: Mon Mar 25, 2013 12:52 pm 
Offline
ultra-n00b

Joined: Sun Mar 24, 2013 2:50 pm
Posts: 1
Has thanked: 0 time
Have thanks: 1 time
I've made a start with decoding the TX0 files and through analysing the executable I found out the following.

The first 16 bytes make up the header of the file. The bytes after that contain the offset table referencing the items in the data section, which is the last section.

Header
Code:
0..3   -> Header, always 'TX00'.
4..7   -> Number of entries
8..11  -> Size (in bytes) of the data section
12..15 -> Dummy, always seems to be 1


Using the number of entries provided in the header you can read the 12 byte structures of the offset table which contain the following data.

Offset Table (x times 12 byte entries)
Code:
0..3   -> Offset from begin of file
4..7   -> Length
8..11  -> Unknown, probably an ID


Using these headers you can read the actual data stored. But the data that comes out isn't ASCII, so perhaps there is a form encryption or compression going on, but I haven't been able to identify it yet. @ResearchMan are you certain that the files contain texts, or could it be something else.

I've written a quick/dirty program which decodes the files of which I included an example (the PDF file).

EDIT:
Well it definitely contains text. When you XOR the bytes with 0x60 you get something rather readable. You also need to add the value 2 for bytes in the range of 62..88 (after XOR). The value FF (before XOR) stands for a space. There are still some characters which aren't translating correctly, I will investigate further.

EDIT 2:
I've made a dump of the memory of the game while it was running to see whether the texts get decoded, which isn't the case. So either the texts get decoded on the fly when needed, or the bytes reference a position inside a font graphic, which is more likely I think, because besides the XOR 0x60, there doesn't seem to be a pattern for decoding the other characters (like numbers, quotes, etc...). I will create a translation table and post it here later on. I will also cleanup my source code and put it on Github or something.


Attachments:


You do not have the required permissions to view the files attached to this post. Register to gain access.



Top
 Profile  
 
 Post subject: Re: Septerra Core Files Decompression [AM0, CH1, LV2, TX0]
PostPosted: Wed Apr 01, 2015 6:36 pm 
Offline
ultra-n00b

Joined: Thu May 26, 2011 5:26 pm
Posts: 2
Has thanked: 0 time
Have thanks: 0 time
JustDragonflies wrote:
I've made a start with decoding the TX0 files and through analysing the executable I found out the following.

The first 16 bytes make up the header of the file. The bytes after that contain the offset table referencing the items in the data section, which is the last section.

Header
Code:
0..3   -> Header, always 'TX00'.
4..7   -> Number of entries
8..11  -> Size (in bytes) of the data section
12..15 -> Dummy, always seems to be 1


Using the number of entries provided in the header you can read the 12 byte structures of the offset table which contain the following data.

Offset Table (x times 12 byte entries)
Code:
0..3   -> Offset from begin of file
4..7   -> Length
8..11  -> Unknown, probably an ID


Using these headers you can read the actual data stored. But the data that comes out isn't ASCII, so perhaps there is a form encryption or compression going on, but I haven't been able to identify it yet. @ResearchMan are you certain that the files contain texts, or could it be something else.

I've written a quick/dirty program which decodes the files of which I included an example (the PDF file).

.

Sorry for revive.
Anyway, Interesting description, as I use this to translate the game texts to another language eg Spanish and convert it again, is possible? I always wanted this.


Top
 Profile  
 
 Post subject: Re: Septerra Core Files Decompression [AM0, CH1, LV2, TX0]
PostPosted: Mon Sep 10, 2018 4:43 pm 
Offline
n00b

Joined: Thu Sep 17, 2015 5:17 pm
Posts: 10
Has thanked: 0 time
Have thanks: 0 time
Hello again, 7 year into the future!

Sorry for the necropost, but are there news over here? Did someone try to look into this matter again? I cannot help technically, but I have time to translate.

Best,

Giovarco


Top
 Profile  
 
 Post subject: Re: Septerra Core Files Decompression [AM0, CH1, LV2, TX0]
PostPosted: Mon Sep 10, 2018 5:15 pm 
Offline
n00b

Joined: Thu Sep 17, 2015 5:17 pm
Posts: 10
Has thanked: 0 time
Have thanks: 0 time
Giovarco wrote:
Hello again, 7 year into the future!

Sorry for the necropost, but are there news over here? Did someone try to look into this matter again? I cannot help technically, but I have time to translate.

Best,

Giovarco


I found this: https://github.com/FileFormatTools/jRip ... pterraCore

I think that this contains the solutions of our problems!


Top
 Profile  
 
 Post subject: Re: Septerra Core Files Decompression [AM0, CH1, LV2, TX0]
PostPosted: Wed Sep 12, 2018 5:02 pm 
Offline
n00b

Joined: Thu Sep 17, 2015 5:17 pm
Posts: 10
Has thanked: 0 time
Have thanks: 0 time
Giovarco wrote:
Giovarco wrote:
Hello again, 7 year into the future!

Sorry for the necropost, but are there news over here? Did someone try to look into this matter again? I cannot help technically, but I have time to translate.

Best,

Giovarco


I found this: https://github.com/FileFormatTools/jRip ... pterraCore

I think that this contains the solutions of our problems!


Up!

I took a look to JRipper. Inside TX0.vb, you can read "To decrypt TX0 files you must first XOR 96 and then increment uppercase letters +2 (i.e A = C, B = D)".

Can someone kindly check?


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 7 posts ] 

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group