[Discussion] [DFUnity] Translation of Daggerfall

Discuss translation of Daggerfall Unity and the required Daggerfall installation. Help other communities learn how to translate Daggerfall using any available tools and processes.
User avatar
Interkarma
Posts: 6211
Joined: Sun Mar 22, 2015 1:51 am

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Interkarma »

Hey Ultima_Thule, welcome to the forums! :)

Epic first post. You've worked out a lot without much help, which is very impressive. I'll cover fonts in the redone tutorial series in a few weeks, but here's the gist.

Once you've created the TextMeshPro font asset, register font to your locale using TextManager.RegisterLocalizedFont(). You would do this in mod startup script at the same time you assign string table assets to TextManager.RuntimeInternalStrings, RuntimeRSCStrings, etc. Bundle the mod with all your assets (replacement images, string tables, scripts) and build to .dfmod.

Building is a little involved as you first need to build the addressable assets (string tables, locales) then bundle them into your mod and build the mod. Once you have the mod project created and know how to build, it gets a lot easier.

If anything from the new tutorials is unclear, please don't hesitate to ask for more details.

User avatar
Daneel53
Posts: 26
Joined: Wed Jul 15, 2020 11:15 pm
Contact:

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Daneel53 »

Yes, impressive first post!

I'll read that carefully but in a few days, right now I'm translating for French community the last beta version of Bannerlord, 1.5.8, a task that will be finished in one or two days. :)
In charge of Project French Daggerfall and DaggerfallSetup, dev. of DFTools in English.
French translator for many Warband mods and Bannerlord.

User avatar
Deepfighter
Posts: 122
Joined: Sun Mar 22, 2015 10:24 am
Location: Iliac-Bay
Contact:

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Deepfighter »

Amazing Interkarma!

Thank you for your in-depth tutorial, which I just successful completed. :) I am really looking forward to see, how this develops further. Just wanted to let you know, that everything worked.

One minor addition to part 3 - the Preload All Tables should be done for Demo_Strings AND Demo_RSC. I wondered, why the latter was not shown ingame, until I figured out that this selection was missing. You write in that section before that we are going to setup all string tables, but in the description below only Demo_Strings are mentioned. But as said, just a very minor, but possible overlook for others.

Again, thank you so much for your time and work on that. It's so highly appreciated. I love how this all works together.
Head of the German Daggerfall translation - www.daggerfalldeutsch.de
and German translator for The Elder Scrolls V: Skyrim and Lore-Expert for The Elder Scrolls: Online

User avatar
Interkarma
Posts: 6211
Joined: Sun Mar 22, 2015 1:51 am

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Interkarma »

Thank you Deepfighter, I've added that overlooked step now. :)

Next part of series will look at creating and registering custom fonts for locales. I will have that up by weekend at the latest.

User avatar
Daneel53
Posts: 26
Joined: Wed Jul 15, 2020 11:15 pm
Contact:

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Daneel53 »

Hello guys!

There are 812 lines into the table Demo_Strings, most of them come from the file Fall.exe and there is no way into DFU to take the translated lines from this file and to put the translations into the asset file. So how to avoid to retranslate everything by hand?

I've written a dedicated software to do that. First we have to generate the content of the English and localized Fall.exe into two text files Fall.txt via the DFTool DFEXEEDT. Then roughly the program takes as entry the file Demo-Strings_en.asset, search into the English Fall.txt file if the line to translate exists, if yes it takes the translation from the localized Text.txt and use it to generate a translated line into a new file Demo-Strings_loc.asset. Then you edit this file, replace two "en" by "fr" (for example), rename it as per your localisation (_fr, _de...) and deposit the file into the dedicated StringTables DFU folder. I've done this for French and this permits to automatically write 551 translated lines upon 812 into the Demo_Strings table.

It was much more complicated to realize than what is written above, due to the fact that the asset tables are encoded in ANSI and not in Unicode, which means that you have to write for example "\xE9" instead of "é" into the asset file and play with Unicode -> ASCII transformation. Nevertheless the procedure should work for any language that use the so called "Latin ISO" codes, so for German and Spanish for example.

I will take the time in the next days to write a tutorial that fully explain how to go from Demo-Strings_en.asset to your localized file Demo-Strings_loc.asset and then I will put in line the software with the DFEXEEDT tool and the tutorial. After that, Deepfighter, you will tell me if you succeeded to populate your German Demo_Strings table from your German Fall.exe. :)
In charge of Project French Daggerfall and DaggerfallSetup, dev. of DFTools in English.
French translator for many Warband mods and Bannerlord.

User avatar
Deepfighter
Posts: 122
Joined: Sun Mar 22, 2015 10:24 am
Location: Iliac-Bay
Contact:

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Deepfighter »

Daneel53 wrote: Thu Mar 04, 2021 5:54 pm After that, Deepfighter, you will tell me if you succeeded to populate your German Demo_Strings table from your German Fall.exe. :)
Will do! Even though, it's not needed for us specifically. As we had to take a lot of compromises, when translating the FALL.EXE for Classic (even with the shifting of bytes), we will go through it again for DFUnity and expand some lines. :)

Interestingly, some lines seem completely new for me and I haven't seen them in Classic, like "You pluck your arrows out of the corpse." or "You are carrying too much to stay afloat."
Head of the German Daggerfall translation - www.daggerfalldeutsch.de
and German translator for The Elder Scrolls V: Skyrim and Lore-Expert for The Elder Scrolls: Online

User avatar
Daneel53
Posts: 26
Joined: Wed Jul 15, 2020 11:15 pm
Contact:

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Daneel53 »

You are right, Deepfighter, these strings are not translated, which means that they don't come from Fall.exe.

And you're right again, we will have to reread all 800 lines to check and extend those we were obliged to schrink with our verbose languages. But it's anyway faster to reread than to fully translate from scratch again. We both already spend so much time on this bloody file Fall.exe! 😉
In charge of Project French Daggerfall and DaggerfallSetup, dev. of DFTools in English.
French translator for many Warband mods and Bannerlord.

User avatar
Daneel53
Posts: 26
Joined: Wed Jul 15, 2020 11:15 pm
Contact:

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Daneel53 »

The tutorial is ready and the archive with all that's needed too, unfortunately there's not anymore fiber internet connection at my home since yesterday, so no internet on my PC. Here I'm on my smartphone, hope to be able to send the package monday afternoon.
In charge of Project French Daggerfall and DaggerfallSetup, dev. of DFTools in English.
French translator for many Warband mods and Bannerlord.

User avatar
Interkarma
Posts: 6211
Joined: Sun Mar 22, 2015 1:51 am

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Interkarma »

Hey guys, I just wanted to clarify the kinds of strings that "Internal_Strings" table stores. This table contains text extracted from FALL.EXE, text unique to Daggerfall Unity, and text from binary files that I consider primarily non-text files (e.g. monster names, spell names).

Big primary text sources like RSC, quests, and books will get their own dedicated text tables. All the stray text spread over the place in little patches here and there will generally end up in "Internal_Strings".

No harm in matching and replacing text extracted from FALL.EXE and already translated elsewhere, but as you realised it's necessary to work through this table and translate whatever is left over. :)

User avatar
Daneel53
Posts: 26
Joined: Wed Jul 15, 2020 11:15 pm
Contact:

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Daneel53 »

Hello,

My internet connexion is back, so I've done my archive and put it on line on my Google drive. You can take the tool TranslateDFUStrings and the tutorial here:

https://drive.google.com/file/d/1CNOKBj ... sp=sharing

For convenience, I've added into the package the file Fall-EN.txt that should be the reference for everybody and the tool DFEXEEDT.

The tool is not able to translate what is stored into the table Demo_Strings.asset as lists, because of the special syntax of the lists into the file and that some strings are cut in two lines, which is very strange.

Yes Interkarma, I saw since then that this table contains too what is inside MONSTER.BSA and the spells. This weekend I took the time to have a complete pass upon the French file, so today the whole table Demo_Strings-fr.asset is translated. I'm currently rereading the RSC table, to add accentuated letters where they are missing in uppercase (because there was no room to add accentuated uppercase letters in the Daggerfall font). In one or two days this will be finished too. I will store the two French tables in a cool place because I suppose that we will have to download a new version of DFU from GitHub and I don't want to loose the fully translated tables.

For now we have to wait for the table dedicated to the quests. I would like too to translate the DFU main menu, but I suppose that the way to do that is already available somewhere into the Daggerfall Workshop. Then we will need to know how to integrate the .IMG and .RCI that are localized into the mod (menus, buttons). So we will wait for your next tutorials. :)
Last edited by Daneel53 on Wed Mar 17, 2021 10:52 am, edited 2 times in total.
In charge of Project French Daggerfall and DaggerfallSetup, dev. of DFTools in English.
French translator for many Warband mods and Bannerlord.

Post Reply