• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!

[Tool] Easy Gothic Mod Translator

Sargon

Участник форума
Регистрация
22 Окт 2008
Сообщения
43
Благодарности
42
Баллы
170
  • Первое сообщение
  • #1
Version 1.1
  • Direct translation of MOD/VDF-Files
  • Google-translations and regular translations
  • Works for any compatible language

Easy Gothic Mod Translator V1.1
----------------------------------------

Direct translator for Gothic MOD/VDF-Files

- For google-translations and regular translations, works for any language
- Openssl is necessary for google-connection (DLLs are enclosed)


Click-through:

- Choose source language and target language, english/german/russian/polish/czech or add a new language via google id and codepage (russian 1251, english/german 1252, polish/czech 1250)

- Import database, utf8 only, simple text-file with 2 columns (source - target) and TAB as separator, or extended file with header as described below, or proceed without database [skip]

- Load mod/vdf-file, which is checked against the database, the scripts will be decompiled and condensed to a table of text+context
For russian source language you have still the more reliable russian dectection, otherwise you have 2 options for detection (saver/riskier), see below

- If there are new lines (not covered by database), they are shown and can be google-translated (in case google blocks your IP temporarily, changing IP should help)
Alternatively with mark and ctrl+c you can get them on the clipboard for any usage

- Then the database can be saved, you can choose between DB[database], MT[mod-table] or both, csv-file as described below

- Then the modfile is translated, there is an option to translate savegames too, you should use the same database as for the mod-version, where the savegame is coming from, so that the quest names are identical.

- Finally the modfile is saved (you can either save all data or just the translated parts as a patch, in the latter case you still need the original file)
Before saving you can edit the timestamp, patches need a newer one than the original (older program versions added +6 years automatically, which is standard for Returning2-AB-updates).


Database:

- The extended database is utf8 only, has 8 columns with TAB as separator (TABs are not allowed as part of text lines, spaces should be sufficient), with the following header:
NR (sequential number), FILENR (file number), ID (symbol id), SYMBOL (symbol name), USE (type of usage), TRACE (backtrace of usage), RU (or EN,DE,PL,CZ,..source language), EN (or DE,RU,PL,CZ,..target language)
The columns must match the header, but otherwise the order of the columns is not fixed, so you can use a RU->EN database for EN->RU as well without changing anything.

- Difference between DB and MT: the ModTable represents the condensed mod-scripts, text lines occur in the same order and quantity as in the scripts (many doubles are possible)
The database is ordered alphabetically (by source language), reduces doubles and can include lines, which are not part of the current mod-file (you can use one DB for several mods)

- Editing the database: you should only edit the target-language-column (unless you know what you are doing), but you should be able to sort the table by USE or TRACE to find all npc/item names etc.
I did not want to include an own table-editor, but you could use LibreOffice Calc - you need to load/save csv with filter: utf8, separated by tab, and without string delimiter (neither " nor ')
Don't use an editor, where after loading and (unchanged) saving the files are not identical!

- In case you change quest titles midgame, the diary will probably not work for running quests with changed names, so starting a new game is advisable


Detection:

- Because of the way how system-strings and translateable strings are mixed up in gothic scripts, there is no flawless way for automatic distinctions between the two,
especially with the vast possibilities of Ikarus/LeGo/AST/Union.

- For russian source language the detection via russian characters is usually quite reliable, for other source languages you have context-detections (usage&backtrace) + assumptions based on script standards
As result of the context-detection you get 3 groups of strings:
1) should/can be translated
2) should/must not be translated
3) context does not exist, or was not detected (some may belong to 1, others to 2, and some are unused/irrelevant)

- The option "safer" will use group 1 only (something may be missing), while option "riskier" will use 1 and 3 (something may cause problems).
Depending on the mod there may be quite a difference between the 2 options or none at all.
Even the safer option may be flawed, so checking the resulting database for text, that should not be translated, is always advisable (for regular translations you go through the whole db anyway).
If you find something, that should not to be translated, you can either delete it from the db (but then it will pop up again as "new line" next time), or better leave it in and just make sure source and target strings are identical


Sargon
 

Вложения

  • Easy Gothic Mod Translator_V1.1.7z
    1,7 MB · Просмотры: 1.184
Последнее редактирование:

MEG@VOLT

★★★★★★★★★
ТехАдмин
Регистрация
24 Мар 2006
Сообщения
9.860
Благодарности
6.740
Баллы
1.625
Triber, Есть большая вероятность, что в моде, в частности в дневнике, используются двойные кавычки ". По этому программа не может перевести.
 

Damianut

Участник форума
Регистрация
2 Апр 2023
Сообщения
27
Благодарности
24
Баллы
35
I prepared autotranslation of VINV modification to Chinese simplified: link

How to properly create compiled scripts with it? Currently, this translation looks as follow with zFont.dll:

attachment.php
abb.png


Currently I manage Chinese translation of Gladiator, fortunatelly translated by human from English. One Chinese engaged in that wanted to play some subversion of Returning, but we hadn't possibility to choose UTF-8 as target charset. So I chose CP 936. It didn't work correctly (strange chars in game are result). Currently I try to create procedure of semi-automatically translating to Chinese simplified with smaller modification, i.e. VINV. Of course, I encounter the same problem, but there are less strings to translate.

Could you add possibility to subsitute strings to translate in not-compiled scripts? I guess, you use regular expressions in your program, but applied to .DAT and .bin files. So you have ready core for substituting, and it could be used for substitute strings in not-compiled scripts.

Thanks to this, decompiled VINV scripts could be substituted, then files with scripts saved as UTF-8. Then compiled.

I'm sure it is only charset problem. For Gladiator translation works:

glad_menu.png
attachment.php


It is possible to substitute strings by Weblate, but Weblate maintainer (Auronen) wants to improve VINV scripts before he will prepare scripts for another languages. For me and probably Chinese, current scripts are sufficient. : )

I know also, there is a problem with translating diary, but it is minor problem.
 

Sporthistoriker

Участник форума
Регистрация
8 Янв 2024
Сообщения
6
Благодарности
1
Баллы
5
[...]Could you add possibility to subsitute strings to translate in not-compiled scripts? I guess, you use regular expressions in your program, but applied to .DAT and .bin files. So you have ready core for substituting, and it could be used for substitute strings in not-compiled scripts.
Thanks to this, decompiled VINV scripts could be substituted, then files with scripts saved as UTF-8. Then compiled.[...]
[...]It is possible to substitute strings by Weblate, but Weblate maintainer (Auronen) wants to improve VINV scripts before he will prepare scripts for another languages. For me and probably Chinese, current scripts are sufficient. : )
I know also, there is a problem with translating diary, but it is minor problem.
Have you been able to solve the problems?
 

Damianut

Участник форума
Регистрация
2 Апр 2023
Сообщения
27
Благодарности
24
Баллы
35
Have you been able to solve the problems?

I would add, that there are willing Chinese Gothic fans to play modifications. They will have Gladiator to play, but they want also to play in New Balance and The Chronicles of Myrtana. But the problem is translation. Also translation of guides for modding etc. They don't have such technical background for Gothic Modding as we.
 
Сверху Снизу