Welcome! Log In Create A New Profile

Advanced

Data Containers for Translation Patch

Posted by Tempus 
Data Containers for Translation Patch
April 17, 2009 03:56PM
On the request of a friend, I was asked to pursue the possibility of a translation patch for a commercial game which has been cancelled for NA and Europe (Fatal Frame IV) as a companion to their translation project. Of course, things aren't so easy.

Before I go on, am I allowed to talk about the translation patch (specifically data containers) of the game, or is this an inappropriate topic for this forum?

If this topic is moved or deleted by a moderator, please pm me. If I get the go ahead I will continue.
Re: Data Containers for Translation Patch
April 19, 2009 03:13AM
As no one has replied, I'll assume it's okay.


I was asked to look into the feasibility of a translation patch for the currently cancelled Fatal Frame 4. After gathering the game resources, I found they consisted mostly of

.thp files - movie files, around since the GC era. Shouldn't contain subtitles.
.brstm files - sound files

and our hopeful winner, .rsl files (as well as a bunch of other files that are too few to contain the necessary text)


The rsl files comprise 99% of all data other than the thp and brstm files. They seem to contain a variety of data, including images and textures, but no or little clearly legible raw text (Shift-JIS raw text, of course).

The rsl files are probably either some form of compression, or a proprietary file for an in-house editor to contain a series of data bundles and resources.

There are thousands of these little guys, sometimes with wildly varying filesizes and structures. However, most (about 70%) of the rsl files have a similar heading.

0x03 - 0x03 - RMHG
0x04 - 0x3F - unknown
0x40 - 0x43 - RMHG
0x44 - 0x9F - unknown
0xA0 - 0xA3 - GDLG or GCT0 or SCR0 of CGMG

Another recurring pattern is the sequence: "STRIMAG2" (usually within the first 1000 addresses)

Often the addresses for the above are modified, with more of the unknown space in between. In several cases, the header appears in multiple parts of the file, mostly near the middle.

Below is an abridged list of the file structure (many files omitted)
Titles in brackets represent a series of files with those variations.


------
Zero 4
--Debug
----MENUBG.BIN
--HAYA
----TEXTURE.RSL
--Hide
----FB(00-12)_4.BIN
----FB(00-12)_16.BIN
----FINDER(C,R,W,BLANK)_4_3.RSL
----FINDER(C,R,W,BLANK)_16_9.RSL
----Item (1400+items)
------ITEM(0000-9999)_16_9.RSL
------ITEM(0000-9999).RSL
----keyguide
------KEYGUIDE.RSL
----test_font_mini.txt
----test_font.txt
----test.def
----TEST.rsl
----Title.RSL
----TU_002.thp
----yg_998.thp
----yg_999.thp
--Miya
----ALBUM_HELP_0.RSL
----BackCloud(N,W).RSL
----BackNomaru(N,W).RSL
----Bochi(N,W).RSL
----GALLERY_GAZOU_(2_0-6_3)(N,W).RSL
----Gishikijou(BLANK,2,B1)(N,W).RSL
----Kyuukan(1F,2F,3F,B1F,B2F)(N,W).RSL
----MENU_(various:Setup,SaveLoad,Photo,Option,Title,Top,etc...)(N,W).RSL
----Mission_Failure(N,W).RSL
----Mission_Success(N,W).RSL
----OL_GET_ITEM(0-12).RSL
----OL_ITEM(0-12).RSL
----PB_GET_ITEM(0-37).RSL
----PB_INFO(0-37).RSL
----Renrakuturo(N,W).RSL
----Shinkan(1F,2F,3F,4F,B1F)(N,W).RSL
----Syugyoujou(0-3)(N,W).RSL
----TecmoBack.RSL
----Todai(A-K)(N,W).RSL
----Yomotsuki(1F,2F)(N,W).RSL
--MOVIE
----Various thp files
--RSL (1000+files) - uniques contain unique char/num strings, 3-6 chars long
----C(00-30).RSL
----C(uniques).RSL
----CT(00-13)(N,W).RSL
----D(0000-9999).RSL
----D(uniques).RSL
----E(uniques).RSL
----EF(500-999).RSL
----GO(uniques).RSL
----I(000-600).RSL
----J(uniques).RSL
----KR(uniques).RSL
----M(uniques).RSL
----N(uniques).RSL
----PZ(000-999).RSL
----PZ(000_4_1 - 000_16-4).RSL
----PZ(000-005)_TEX_(N,W).RSL
----R(101-999).RSL
----RUK(00-A01).RSL
----S(uniques).RSL
----TU(000-990)(BLANK,_4,_16).RSL
----XXX00.RSL
----XXXA00.RSL
----YYY00.RSL
----YYYA00.RSL
----ZZZ00.RSL
----ZZZA00.RSL
--Sample
----futagos.bin
----futagos.tga
--SND
----Various brstm files and company
-------


If anyone has suggestions about the RSL format or other insights, it would be appreciated. If anyone can point me to good resources for this sort of trouble, please do - it's not really my area of expertise. I'll continue to fiddle in the meantime.
Re: Data Containers for Translation Patch
April 19, 2009 03:31AM
What are you trying to do specifically ? i have no experience with any of these files but i messed around with data in the pass.

If you want to find text and change them i suggest looking for a sentence in game (usually this is not compressed) and search ALL files and the entire file for the string. Its best if the sentence is one line (you dont know if they hand put a line return in the text or if the game figures it out) along with same color with no symbols/icons in between. Chances are you'll find the string, then look around the file and see what data you have.
Re: Data Containers for Translation Patch
April 20, 2009 05:23AM
I think there is no web page including japanese pages talking about FF4's .rsl files except here.

I found legible Shift-JIS data, "????????????", in TEST.rsl and some other files contain name of japanese font data, "DF?????" (e.g. Alubum_Help_0.RSL). But I could't find any hint in other files. I also tried to read raw text using other popular japanes encoding set (UTF-8, EUC, ISO2022-JP), but I failed to decode.

.rsl files also seem to contain scenario and character's model data guessing from its filename. I don't know why Tecmo's in-house files are such confusing format.
Re: Data Containers for Translation Patch
April 20, 2009 05:48AM
Sorry, I failed to write in japanese code.

In the first quotations, 12 2-bytes character sequence
"89 BD 82 A9 82 AA 8F B0 82 C9 97 8E 82 BF 82 BD 82 E6 82 A4 82 BE 82 AA"
means "something fell down on the floor"

Second one is
"82 63 82 65 92 86 91 BE 9E B2 8F 91 91 CC"
Re: Data Containers for Translation Patch
April 20, 2009 07:00AM
Quote
chabi
I also tried to read raw text using other popular japanes encoding set (UTF-8

UTF-8 is a popular encoding set for Japanese?



Edited 2 time(s). Last edit at 04/20/2009 07:02AM by daniel_c_w.
Re: Data Containers for Translation Patch
April 20, 2009 07:20AM
Oops, It's UTF-16.
Re: Data Containers for Translation Patch
April 20, 2009 06:00PM
Yes, I've been through checking all the encoding schemes prior to posting here. The only files with legible data are test.rsl, test.def, test_font.txt, and so forth. In one item file (I can't recall now which) I found a fragment as well, but it may just be coincidence as I couldn't find the fragment in the game script. As all the test files are encoded in Shift-JIS, I suspect any more text will also be the same.

I'm looking for a way to see if we can isolate any files which MAY contain strings from in-game text, and when we find those, ways to de-encode them to a legible format. It's a tricky bit, those rsl files are terrible.

I'm hoping to at least extract all the text, but preferably repatch it.
Re: Data Containers for Translation Patch
April 20, 2009 09:41PM
I'm also looking for a way to isolate files because I want to show 3D models to my Fatal Frame friend.

Currently I don't have an idea to decode text data from .rsl file, but I noticed that 0x20 from "RMHG" sequence means size of RMHG header and "GCT0" means a tag of an image container. Image data format was modified S3TC and the data was contained after 64 bytes of GCT0 header. Today I wrote a small script file, and I could successfully read all pictures and textures in the game.

So I think it’s not impossible to extract text data, If you find a way of text encoding, compression or encryption. The "STRIMAG2" sequence may be a tag of a header for the text container.

Then I'll also try to read the text.
Re: Data Containers for Translation Patch
April 21, 2009 01:02AM
That's good info. I didn't know about the GCT0 or the S3TC parts. I thought STRIMAG2 seemed like text (STR is pretty common for string), but IMAG seemed like Image, I wasn't sure. Also, I've noted occasionally an RSL file contains more than one header. As of such I've started to think that the text may be contained as parts of RSL files containing images, events, etc. I don't have any time today or tomorrow, but Wednesday I'll take a look and see what I can find. Also, send me your script file for the S3TC data. Tempus@shaw.ca is my e-mail.

Let me know if you find anything about the text (or 3d images) in the meantime.
Sorry, only registered users may post in this forum.

Click here to login