[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.
Lolilisa
Posts: 4
Joined: Tue Mar 09, 2021 7:42 am

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Lolilisa »

Daneel53 wrote: Mon Mar 08, 2021 10:10 am tool DFEXEEDT
Nice. :(
GoG version Fall.exe not accepted
Russian translate Fall.exe not accepted
And I can not find the needed unofficial patch anywhere.
Nice. :roll:

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

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Deepfighter »

Lolilisa wrote: Tue Mar 09, 2021 7:50 am
Daneel53 wrote: Mon Mar 08, 2021 10:10 am tool DFEXEEDT
Nice. :(
GoG version Fall.exe not accepted
Russian translate Fall.exe not accepted
And I can not find the needed unofficial patch anywhere.
Nice. :roll:
Welcome in the forums!

First of all, before getting snappy, it would be great to tell us what you are trying to do. Then it's even easier to help you out. :)

I would not take the GOG-version of DF as a basis, as those are mostly adjusted somehow to work with the GOG system. Furthermore, we don't even know if this was patched with 2.13 (likely). FALL.EXE is a beast and DFEXEEDT works only with a fully patched FALL.EXE. I suppose this will be the problem here. Take instead the version of DaggerfallSetup or the DaggerfallGameFiles from this site.

Regarding the Russian translated FALL.EXE, you may should use the Vortex-Version of those editors (which Daneel53 based and further improved his Editor versions on). He may tell you the best if the Russian FALL.EXE would work with his editor. I am not sure, but this the problem could be also a different patching of this file. FALL.EXE is just generally one of the worst files to work on.

Unoffical Patched (for Classic) can be found here. Most of them are already included in DFUnity.
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: 103
Joined: Wed Jul 15, 2020 11:15 pm
Contact:

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Daneel53 »

As written into §1 Needed material of the tutorial, DFEXEEDT can read ony the files Fall.exe that are patched with DOS32A.This is the standard installation with DaggerfallSetup because some useful patchs and fixes need this version of Fall.exe to work, and anyway the DOS32A patch is there to prevent some savegames corruption. See here:
http://en.uesp.net/wiki/Daggerfall:Corrupted_Savegames

Whether you want to play in English or in Russian, you should use DaggerfallSetup to install the game instead of any other standard free distribution as the US original or the one once provided by Gog.com that needs to be fixed with official and unofficial patches. With DaggerfallSetup you can install the Russian 2007 translation that is provided and patch Fall.exe with DOS32A Dos Extender and install any other fix from the list of unofficial fixes.

DaggerfallSetup can be taken here: http://en.uesp.net/wiki/Daggerfall:Files

Tell us if you succedded to do so. :)
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: 103
Joined: Wed Jul 15, 2020 11:15 pm
Contact:

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Daneel53 »

WARNING !!!

It seems that the file Demo_Stings_loc generated by my software is causing problems with the special entries that are list as for example m_Id: 1452314791997 that contains all the temples and knights orders.

Please don't use TranslateDFUStrings until I produce a software that will permit this special IDs to be be loaded correctly in game, even if, as strange as it may be, the Table Editor seems not to see any problem with these IDs (reason why I was thinking that it works).

I remove the link toward the tool for now.

Sorry. :oops:

Edit:
Finally I don't think that my software is the cause of the issue.

This is a total nightmare. I've restarted the complete process from a brand new GitHub download. I've just created both Strings tables, copy/fill them by the Table Editor Copy All function, then I create the mod void, nothing else, then I launch DaggerfallUnityStartup... and I have always 19 red errors that begin with:

Exception encountered in operation CompletedOperation, status=Failed, result= : Exception of type 'UnityEngine.AddressableAssets.InvalidKeyException' was thrown., Key=Internal_Strings_fr, Type=UnityEngine.Localization.Tables.StringTable
UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationBase`1:<.ctor>b__37_0(AsyncOperationHandle)
DelegateList`1:Invoke(AsyncOperationHandle) (at Library/PackageCache/com.unity.addressables@1.16.1/Runtime/ResourceManager/Util/DelegateList.cs:69)

I really don't know how to stop this infinite suite of launch errors. I'm drawn in this issue since several hours... a nightmare!
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: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Interkarma »

I'm not sure where things are going wrong from exception alone. A clean setup should always yield the same outcome as your first pass. All I can suggest is that something has changed in the mix.

To cover the basics, a fresh environment should look like below:
  • Unity 2019.4.10f1 (specifically this version)
  • Delete old project files completely and create a fresh clone of project
  • Recommended game data is from DaggerfallGameFiles zip
  • Open Windows menu > Package Manager and check all the versions are as per screenshot below
packages.JPG
packages.JPG (42.03 KiB) Viewed 5515 times

The game should run and start normally at this point, albeit in baseline English. Then just creating the new StringTables and copying data shouldn't impact anything. These tables aren't used unless mod activates them or you manually set them in TextManager.

Speaking of TextManager, please also check your startup scene settings and make sure that TextManager is still using default stringtables. These should not be changed in the editor once up to the point of creating a mod, and never changed in the startup scene.

default-tables.JPG
default-tables.JPG (44.42 KiB) Viewed 5515 times

The startup scene doesn't support localization, only the game scene. Startup must always use the standard stringtables as shown above. You can change these in game scene for testing, but this will eventually need to be done from mod script for distribution.

If you aren't able to make progress, please zip up your project and email me a link. I'll open project at my end and look for cause of exceptions and guide from there. Good luck! :)

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

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Interkarma »

I wanted to share outcome of issue with Daneel53 in case it helps others. In short, the problem is that Unity is starting game in French automatically and goes looking for a FR version of internal string tables. Of course none exist in base game so it crashes.

To workaround this while developing language mods, it's necessary to deprioritise or remove the "System Locale Selector". First go to Edit menu > Project Settings > Localization. Then either drag "System Locale Selector" to very bottom of list, or select it and click the minus symbol to remove it completely.

system-locale-workaround.jpg
system-locale-workaround.jpg (124.82 KiB) Viewed 5478 times

The "Specific Locale Selector" must remain set to "English (en)".

Once this is done, DFU will always start in English and not go looking for translations that don't exist yet. This will prevent the crash Daneel53 raised and allow you to continue developing translation mod. You can continue to change language setting from drop-down in Game view once game has started up and your mod is active. It's also possible to set region from mod startup file, which is something I'll add to the tutorial series on next pass.

I'll look at fixing this crash in upcoming release, most likely by making above change in core project. I can also look into creating a custom locale selector with some more intelligence, but this will be further down the line.

Thank you so much Daneel53 and Deepfighter for working through the tutorials and raising the issues you've found so far. This is the best way to find and fix problems. It's hard being at the frontlines, but we know that we're making things better for those who come later. :)

Lolilisa
Posts: 4
Joined: Tue Mar 09, 2021 7:42 am

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Lolilisa »

Lolilisa wrote: Tue Mar 09, 2021 7:50 am
Daneel53 wrote: Mon Mar 08, 2021 10:10 am tool DFEXEEDT
And I can not find the needed unofficial patch anywhere.
OK, thanks for help.
I found how to patch inappropriate Fall.exe with DOS32.

1. Download http://dos32a.narechk.net/index_en.html
2. Move files sb.exe and dos32a.exe into folder with Fall.exe (1821 kb).
3. run "sb.exe /R fall.exe". And Fall.exe (1821 kb) transform into Fall.exe (1802 kb).
sb.exe not for new Windows, of course. So I run it in DOSBOX(because it has already been installed and configured for daggerfall classic :) ).
Make alternate link file for dosbox running:
___ \Daggerfall\DOSBOX\DOSBox.exe -conf "..\dosbox_daggerfall.conf" -conf "..\dosbox_daggerfall_single0.conf" -c exit

in dosbox_daggerfall_single0.conf write "sb.exe /R fall.exe"

And now I can start...
Attachments
preparing.rar
(686.48 KiB) Downloaded 171 times

Lolilisa
Posts: 4
Joined: Tue Mar 09, 2021 7:42 am

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Lolilisa »

Daneel53 wrote: Mon Mar 08, 2021 10:10 am I've done my archive and put it on line on my Google drive. You can take the tool TranslateDFUStrings and the tutorial here
I managed to download the archive and checked the Fall-EN.txt file with what I got from the GOG version.
Image
these matches are due to incorrect encoding, the importance of which is stated in your Tutorial?

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

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Daneel53 »

Hi Lolilisa,

You are right when you say that there seems to exist an error in the txt files generated by DFEXEEDT for these two names of file. What is stange is that this is present into the English Fall.exe file that never had any localization modification, so I don't understand from where this issue may come. Not from DFEXEEQT, because you would have had the same result as me. I will one day check from where this can come.

This said, those two lines are not used into Demo_Strings, so this does not prevent TranslateDFUSTrings to be used to populate Demo_strings with the translation of Fall.exe. Don't forget to suppress the blanc line after 6 (here again, strange that the result there is not the same on the two files) so that all the lines behind match exactly: Res1 with Res1, translation with translation between your output from English Fall.exe and the Russian one that I suppose you're going to use.

Edit later :

OK, understood. It's just because, being French, I let the French language and the "Replace Accentuated letters" switch On by habit, and in French we use the letter \ to obtain â on the screen. If we simply choose the English language in the top right tag of DFEXEEDT, the output is correct with \ into the file paths. But when comparing the correct result with the previous one, I realize that there are more than two lines that are impacted by this issue. I will do a complete review of the differences and their possible impact.
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: 103
Joined: Wed Jul 15, 2020 11:15 pm
Contact:

Re: [Discussion] [DFUnity] Translation of Daggerfall

Post by Daneel53 »

Hi everybody,

After all these checks, I can now confirm that my sofware TranslateDFUStrings was not the cause of the problems encountered with DFU in French.
So today:
  • The link to get the software is back into the message that talks about it.
  • I've changed a minor thing, so the software is now version 1.1.
  • The archive now contains a file Fall-EN.txt without the errors discovered by Lolilisa.
I can add for Deepfighter than when he will do this with the German translation of Daggerfall he will have the same issues of characters that should not be changed in some texts, but I've checked with the French Translation and I can confirm that none of the lines that have this issue is present into the Demo_Strings_xx.asset table because DFU don't need them, so you can use my software, you will not have incorrect lines into the resulting Demo_Strings table. For those that are not using French or German, select English into DFEXEEDT before generating the Fall.txt output file and everything will be OK.
In charge of Project French Daggerfall and DaggerfallSetup, dev. of DFTools in English.
French translator for many Warband mods and Bannerlord.

Post Reply