Buiding a Dictionary:
The best way to use SST, is at first to build a dictionary with a source language and a dest language.
So far, the most convenient language source is 'English', because almost all mods are made in this language. So you will need all 3 skyrim_english.(S,DL,IL)Strings files in your Skyrim\data\Strings\ folder next to the ones for your language (you should have them already, it's in the default Skyrim installation). (If you don’t have those file, just download them in the optional section of the SST nexus page.
Once you have all these files correctly installed, you can run SkyrimStringTranslator, and then choose "set Vocabulary and Cache" in the file menu. Then set the source/dest languages, and check the option "build cache". The process should take few seconds.
ESP Mode:
load an *.esp/*.esm and translate, save the *.esp/*.esm. simple as that.
However, it's better if you generate a dictionary before, see this part below, in the Strings Mode section.
When you edit a String, you get, (in the edit window - espRecord panel) the list of all fields that are in the same record. You can switch between records with a double click. All functionalities work exactly like in STRINGS MODE.
Note: I may have forget to catch some fields to translate, so If you find some untranslated datas in your game, please report with the name of the mod, then I can safely check.
You can also add them in the "records.txt" file, but do this wisely ;)
Note2: Esp are loaded in a very straightforward method. It expects to see records when they should be, and doesn't try to cheat on that.
This means that if your original-untranslated esp have some corrupted datas (which can be the case with esp that have been edited with some old tools), SST will probably refuse to load it. Before complaining if you get this issue, be sure to check the original esp integrity first with tes5edit
ESP Compare:
With this tool you can directly build the string pairs from an esp to another one.
Note: the encoding is set to the destination language.
Example:
Let say you have a mod in English, and a previous version of the same mod already translated.
Open the English esp in the usual way, and then open the translated version in the "esp compare" menu. All strings Pairs that match the same FormID will be automatically generated.
There are some limitations to this process that you must be aware of:
Some strings are not directly associated by a specific formID, but only with enumeration inside records. This means that if the mod author adds or remove some entries in the given enumeration, the strings pairs can't be built with 100% accuracy.
All replaced pair will be set with the "partial translation flag", and strings pairs that have a High risk of being wrong have a small 'light' icon on the right.
-if the light is on then the risk of issue is high because there are actually more than one enumerated Fields in the actual record... In that case, the espCompareResult panel in the edit window contains all the enum-field found, so you can easily fix the strings that don't match.
-if the light is OFF: that simply indicate known enum-fields but the actual record only have one enum-field.
Note: string with the "light ON warning" icon will not be saved in user cache until you validate them manually.
STRINGS Mode:
Note: The UI is still a bit rough and needs to be improved. However it's already functional.
I assume the fact you have both batch of skyrim_english Strings files next to your native Skyrim language, as I said before.
For my example let say you want to translate the Unofficial Skyrim Patch, from English to French (I am French, you may have notice my bad English ;))
First you need to delocalize the Unofficial Skyrim Patch ( http://skyrim.nexusmods.com/mods/19 )
The best way to get the strings files for any add-on, is to use Tes5Edit ( http://skyrim.nexusmods.com/mods/25859/ )
With TesVedit
-Load the Unofficial Skyrim Patch.Esp
-once it's loaded, Right Click on the name of the esp to the left, in the menu context menu, choose Other->Localization, check if 'Language' is set to English, then Choose ->localize ->YES -> don’t check anything, then Save the files.
you now have a delocalized Unofficial Skyrim Patch.Esp and 3 Strings files in the Strings folder named
-Unofficial Skyrim Patch_English.STRINGS
-Unofficial Skyrim Patch_English.DLSTRINGS
-Unofficial Skyrim Patch_English.ILSTRINGS
(note, if you try to launch Skyrim at this point: it will crash, because the esp now doesn't have strings embedded anymore and you don't have the related STRINGS files with our native Skyrim language)
SST will help us to translate those files, and also help you to update the next versions of this mod.
Loading STRINGS:
Now you can load the Unofficial Skyrim Patch_English.STRINGS you want to translate.
- In the menu, choose file -> load, then pick up Unofficial Skyrim Patch_English.STRINGS.
- Once it's loaded, go to translation menu then choose TranslateExactMatch (Ctrl-T).
- All strings with exact English match will be directly translated in your language. Untranslated strings now have a red background
- At this point, you can choose to directly translate the red string manually (select a line, press enter, edit, press ctrl-enter to valid), or try to do a heuristic translation.
- In the menu choose heuristic translation (Ctrl-H): SST will search through similar strings and try to find the best match.
Note: since it takes more time, (depending of the add-on, and the type of strings - it's usually a little slower for the ILSTRINGS) the heuristic translation only performs for the current visible list.
Once it's done you get some control: Best match are in green, and not-so-good matches are going to the red.
When you click on a match you can also get all alternative matches (if there are some, it's indicated but the + tag next to the match number in the LD column), and you can select the more appropriate one.
If you think the string is completely wrong you can right click on it and set 'Cancel translation'. But if you think it’s good, you can choose 'Validate translation' (shortcuts S) and the line turns blue, or edit it manually. At this point, this string can be included in the userCache (choose save userCache), and these Strings will be kept for any future updates.
The Unofficial Skyrim Patch is a big mod with a lot a strings to check, so that can take time a before you can finish the task, but if you save your user cache, you now can reload Unofficial Skyrim Patch_English.STRINGS at any time, and resume your work without losing track of what is not done yet...
Once it's ok, just choose Save, and SST will save all files in your destination language and proper encoding. (Encoding probably needs some testing in some language).
Re-embed translated STRINGS in the esp with Tes5edit.
-Open Tes5Edit
-Load your add-on
-Go to the menu -> other ->localization -> choose language ->your language (assuming the Skyrim_Language.strings file + yourmod_Language.strings are in the skyrim\data\strings folder).
-Then Choose other-> Localization ->delocalize.
If everything has been done correctly, TesVedit will simply propose you to save the esp and no extra windows should popup - (except the warning one).