Translation tools Trails in the Sky FC

The Legend of Heroes series is a long running game series created Falcom. Probably one of the best RPG series created with it mix of story telling and adventure.
Post Reply [phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
User avatar
foubou
Posts: 11
Joined: Tue Dec 20, 2016 1:43 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Translation tools Trails in the Sky FC

Post by foubou » Mon Mar 06, 2017 3:40 pm

I want to translate Trails in the Sky FC in French.

Here are the translation tools for people who want to translate FC in another language :

https://www.dropbox.com/s/nuzharbumdhmf ... s.zip?dl=0

Follow the steps in "How to use" file to make it work.

Send me PM if you encounter trouble.

Screenshots :
french http://www.hostingpics.net/viewer.php?i ... french.jpg
spanish http://www.hostingpics.net/viewer.php?i ... nishFC.jpg
german http://www.hostingpics.net/viewer.php?i ... rmanFC.jpg

It can only edit the ._SN files.

I still need to edit the menu, the ._DT files, the texts in the exe file,...

Can someone help me please ?

josejl
Programmer
Posts: 200
Joined: Mon Apr 13, 2015 6:49 pm
Location: Spain
Contact:

Re: Translation tools Trails in the Sky FC

Post by josejl » Tue Mar 07, 2017 9:53 am

Oh, pretty nice job.

I don't really know about the DT files, but I remember reading that they are pretty similar to the ones used in Zero and Ao, and that the SN files are way more complex.

As for the EXE strings, there are a few ways to do it. Are you familiar with IDA Pro?

User avatar
foubou
Posts: 11
Joined: Tue Dec 20, 2016 1:43 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by foubou » Tue Mar 07, 2017 8:23 pm

I didn't know IDA software. I downloaded it and opened ed6_win.exe. I found some texts in the strings tab but don't know how to edit them : http://img4.hostingpics.net/pics/692746FCexeinIDA.jpg
I used IDA Pro Freeware Version 5.0

As for the ._DT files (found in ED6_DT02.dat), I can open them in NotePad++. If you wanna take a look at it, here is T_QUEST ._DT : https://www.dropbox.com/s/ys46f7eacp60c ... 0._DT?dl=0
I can modify the texts but I have to keep the exact number of characters otherwise the game will be messed up.

Those texts limitations are a damn pain in the ass.

The translation tools (Python scripts) I posted also have those limitations when I translate NPC dialogues. Game either crash or freeze. Translating cutscenes seem fine but sometimes bugs happen. Not always, that's why I'm focused on translating only cutscenes right now.

What I really need is the ability to type texts without caring about text lenght or file size or whatever else.

Russian community did an amazing and full translation of the game : https://www.youtube.com/watch?v=SIBzCfpnWS8

France needs its version too :)

Thanks all for your replies !

flamethrower
Programmer
Posts: 997
Joined: Mon Mar 09, 2015 3:03 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by flamethrower » Wed Mar 08, 2017 1:57 pm

t_quest anyway looks quite easy.
Pointer to the first quest at 0x2, the next at 0x4, the next at 0x6, etc...

Now looking at where 0x2 points to, it is 0x101. So now looking there.
At 0x101 you see byte 01. Then a bunch of unknowns. But they are not pointers so we can ignore them. Jump forward 0x12 from 0x101 (0x113).

0x137 which is a pointer to quest name
0x139 pointer to client & quest description
0x141 pointer to 1st line
0x143 pointer to next line, etc...

Now looking at the second quest:
0x46F byte 02
0x481 (+ 0x12 from 0x46F) Pointer to quest name
0x483 Pointer to client and quest description
0x485 pointer to 1st line...

All the entries go like this...
Now you just need a program that modifies them and updates pointers as needed.

User avatar
foubou
Posts: 11
Joined: Tue Dec 20, 2016 1:43 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by foubou » Fri Mar 10, 2017 3:01 am

I don't know anything about hex-editing or stuffs like pointers, headers,...

In the ._DT files, I just thought I could open them and replace the english text by the french one.
All what you said is like Chinese for me.
But I understood when you said it won't be that difficult, that really gave me hope!

Isn't there really no way to just edit the texts and save the file once my changes are done ?

Thanks for your replies :)

flamethrower
Programmer
Posts: 997
Joined: Mon Mar 09, 2015 3:03 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by flamethrower » Fri Mar 10, 2017 8:23 am

I can only help you display ascii. I don't know about special characters for French.
Can you post one of the finished .SCN files? Or can you just tell me the encoding used for the .SCN files?
It's probably wishful thinking that Sora FC uses Unicode. I bet it uses SHIFT-JIS so you'd be able to use that.

flamethrower
Programmer
Posts: 997
Joined: Mon Mar 09, 2015 3:03 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by flamethrower » Sat Mar 11, 2017 6:38 pm

Wrote the dumping code:
http://pastebin.com/KJEmLw2g
(For information only.)

Dumped the Quest file:
https://docs.google.com/spreadsheets/d/ ... edit#gid=0

Wrote the inserting code:
http://pastebin.com/4Zy0p46J

How to operate:
1) Go to the Quest sheet. Make a copy of this sheet if you like.
If you make a copy, you will need to go to Tools->Script Editor and save in this TSV exporting code: http://pastebin.com/Aw4r0bkW
2) Export sheet to your Google drive using the TSV menu, and download the t_quest.tsv file.
3) You need t_quest.tsv and T_QUEST._DT in the tool's folder to run the tool.
Good luck!

I didn't test it, but it will produce a T_QUEST._DT file and the format looks right. Can you do a test run for me?

I am sorry I don't know any French. :(

You can use more or less text than XSEED used. There is a limit on the length of this file of 0xFFFF (65 kb) because of half-word pointers. The XSEED file was close to this limit and used around 0xFA00 of data (63 kb).

User avatar
Domi
Posts: 4
Joined: Wed Jan 25, 2017 11:59 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by Domi » Tue May 09, 2017 9:42 pm

What about SC and the 3rd? I assume the same method would work on those titles as well, but who knows?

Also... does this means accents are supported by the game? What about "¡", "¿" and "ñ"? Actually, what does this game support natively?

I think it's easier to edit the files using notepad++...

Btw, you should contact with the Russian translator, he'd probably give you a hand getting over those bugs and crashes

http://www.zoneofgames.ru/forum/index.p ... =0&start=0

http://www.zoneofgames.ru/forum/index.p ... 9767&st=40

User avatar
foubou
Posts: 11
Joined: Tue Dec 20, 2016 1:43 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by foubou » Fri Nov 03, 2017 7:33 pm

Hi ! Sorry for late answer, but I was quite busy those last months.

@Flame:
I tried your tool, it allows me to see clearly all the quest-related texts (Bracer Book) it is great !
But I didn't succed to use it correctly. I don't know what I did wrong, it just simply doesn't insert the modifications back in the original T_QUEST._DT file. Besides, the .TSV file you shared is in "Read only" mode so I can't have full access to it in Google Drive and I couldn't do the step 2 (see your previous post).

Here is a folder where I put all the needed files :
https://drive.google.com/open?id=1NNRwX ... SgvVx-pg6O

-dumping tool (Python script named fc_quest_dump)
-reinserting tool (Python script named fc_quest_insert)
-original T_QUEST._DT (dowloaded from Steam today November 3rd 2017 and extracted from ED6_DT02.dat)
-questdump.tsv (as its name suggests it, it's the T_QUEST._DT file dumped using fc_quest_dump)
-FC Text - t_quest (which is your Google Drive file I downloaded in .tsv format)

I tried many modifications but got always stuck when trying to reinsert them back in the original T_QUEST._DT file.

Can you tell me exactly which file I should modify ? Should I replace the original English text or write French text near to it in an another column?

Thank you for you time ! :)

@Domi:
FC, SC and the 3rd have the same architecture so I think if a tool works for one game, there are high chances it would work for the three.
The game doesn't support accent natively, you need to unpack and modify the font in ED6_DT00.dat
french accents : http://hpics.li/35e95c9
spanish signs : http://hpics.li/e35d3b5
Notepad++ is a great software but doesn't allow you to put more characters if needed.
I can translate and replace "Wind" by the french word "Vent", because I changed a 4 letter-word by another 4 letter-word.
I can't translate and replace "Time" by the french word "Temps" because I will need another character and the game will crash.

flamethrower
Programmer
Posts: 997
Joined: Mon Mar 09, 2015 3:03 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by flamethrower » Sat Nov 04, 2017 4:24 am

foubou wrote:
Fri Nov 03, 2017 7:33 pm
Besides, the .TSV file you shared is in "Read only" mode so I can't have full access to it in Google Drive and I couldn't do the step 2 (see your previous post).
Just go File -> Make a copy
Blam! Your own editable copy!

I'll take another look later.

flamethrower
Programmer
Posts: 997
Joined: Mon Mar 09, 2015 3:03 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by flamethrower » Sun Nov 05, 2017 12:33 pm

Is the official file name really

Code: Select all

T_QUEST ._DT
with the space?
Anyway, rename that to be without the space.
And the input file should be named t_quest.tsv.
Have this run.bat so you can run and see any error messages (make a text file run.bat, copy in these lines and save, then double-click to run).
run.bat:

Code: Select all

py -3 fc_quest_insert.py
pause
Try running it without changing anything so you can see it's working. It should fail and give you an error.
You could also put

Code: Select all

print('finished!!')
at the end of the program so you can confirm success.

User avatar
foubou
Posts: 11
Joined: Tue Dec 20, 2016 1:43 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by foubou » Tue Nov 07, 2017 10:38 am

Awesome, you were right! The original file name is : T_QUEST ._DT (with a space after the T of QUEST).
I deleted the space and the tool worked !
Here is a screenshot : http://hpics.li/4792104
Thank you very very much ! :D

However, I encountered two problems.

PROBLEM 1 (solved) :

ED6Back refused to put back that file in ED6_DT02.dat
It was because of the space we deleted.
I remember I read something about this somewhere : the file name must have 8 caracters (don't know why).
I took a look at the other files in ED6_DT02.dat archive and they all have a 8 caracters lenght.
T_ORB ._DT has 3 spaces after the B (total is 8 caracters) but T_BOOK01._DT hasn't any spaces because it already has the 8 caracters required.
So, I tried to rename the file and put back a space after the T in my T_QUEST._DT file but Windows kept deleting it. I had to use AntRenamer to achieve this operation.
Even if I found the solution, I thought it was good to report all things I needed to do to succeed.


PROBLEM 2 (need help for this one) :

The tool doesn't work if I insert the french accents : é - è - ù - à. The tool refused to apply the translation to the T_QUEST._DT : it oly works if I don't put any accents in the t_quest.tsv file
It will be perfect if I can insert them!

Any ideas ?

flamethrower
Programmer
Posts: 997
Joined: Mon Mar 09, 2015 3:03 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by flamethrower » Tue Nov 07, 2017 12:06 pm

A better solution for "problem 1" (the real filename has a space after T_QUEST):
Change 'T_QUEST._DT' to 'T_QUEST ._DT' (with the space). It occurs three times in the program.

Problem 2 (the harder one)
Well my test string was:

Code: Select all

C'est français
So I will just change it to:

Code: Select all

C'est français éèùà
Hmm, it worked for me. But it changes those characters to be garbage (I wonder why I did that...)

Here is the code so it is more easily viewable. I made the change for problem 1 already.
https://pastebin.com/ZQmPJzN1

I don't know how your game is handling special characters. The original game is programmed to handle both ASCII and SHIFT-JIS and those characters are not present in either. You said the font was modified but I will need to know the mappings. If you fill in the mappings with how they should be on lines 10 through 28, it will work. If you just want to use ASCII, fill in the corresponding ASCII.

You will have to figure this out yourself, I can't help with this.

Here is something to try:
Here is Windows Code Page 1252: https://msdn.microsoft.com/en-us/library/cc195054.aspx
I think this is the same one that was used on Windows machines back in the day (and still is for legacy stuff?).
Anyway, you see 0xE0 is à in the code page.
So take the original T_QUEST. _DT file, change a letter that you know where it is to 0xE0 using your hex editor, and then try it. I don't recommend using a text editor because you have encodings to worry about there and I would rather not deal with it. For hex editor, you encode it yourself by typing E0. For doing whole games you use text encoding functions that are supplied with programming software packages (you can see that on line 86 where this program does it). But for this quick test you should encode that one character yourself.

Like this:
Capture.PNG
Capture.PNG (18.69 KiB) Viewed 47229 times
Can be any character, you just need to know where it is so you can test in-game.

I don't expect this to work, it'll only work if they changed over the code page.

Maybe a better thing to try is look at the script files where there are special characters in game and look at the hex. That'll be a dead giveaway.

User avatar
foubou
Posts: 11
Joined: Tue Dec 20, 2016 1:43 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Translation tools Trails in the Sky FC

Post by foubou » Sat Nov 11, 2017 7:08 pm

QUEST FILE :

I'm trying to use (to understand) hex edit softwares but not easy for me :D
I can come back to insert accents anytime so no rush to fix that problem.
I really enjoy translating the Quest File, I am like 50% done !

SCENARIO FILE : THIS ONE IS MY TOP PRIORITY ! (God Bless the ones who will help on this one!) ;)

I found a very intersting page : https://github.com/ZhenjianYang/EDDecompiler

It clearly says the tools available in this page can be used to decompile/recompile script files of PSP & PC games Zero/Ao no Kiseki and PC game Trails in the Sky FC.
And I am very very intersted about translating the FC scenario! (I already had a tool but it was messing up the game, see my firts posts)

Can someone take a look at them and explain me how those tools work exactly ?
I tried to drag and drop my game files in the different Python scripts but nothing happened...


VOICES PATCH :

I also found these pages :
https://github.com/ZhenjianYang/SoraVoice
https://github.com/ZhenjianYang/SoraVoiceScripts
https://github.com/ZhenjianYang/SoraDataEx

If all those tools work, it means I can make a French version with Japanese voices. *sweet dreams*

Please do not hesitate to share your thoughts and help me if you can !

Post Reply
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Who is online

Users browsing this forum: No registered users and 3 guests