XTranslator
Text & translation editor for Skyrim, Fallout4 and Starfield mods
Install / Use
/learn @MGuffin/XTranslatorREADME
_xTranslator
This software is an advanced tool for to translate Skyrim, SkyrimSE and Fallout4 mods from a language to another one.
it's actually the same tool for each game, and comes with a different name: -tesvTranslator for Skyrim -sseTranslator for Skyrim SpecialEdition -fallout4Translator for Fallout4 -falloutNVTranslator for FalloutNV You can choose and change your game workspace on the fly, so it's not needed to get it from every pages.
The home for this tool is the Nexus, it's made on freetime and the access is free. Please, do not upload it elsewhere.
Features of the tool:
Edition Modes : 1)Esp mode can load esp/esm file and perform direct translation 2)Strings mode can perform translation on strings files that come with localized esp (STRINGS, DLSTRINGS, ILSTRINGS). This mode does not alter esp/esm (updated and functionnal). This mode is DEPRECATED, use the HybridMode instead that allows much more flexibility. 3)Hybrid Mode: load a localized Esp as a Records/fields layout for editing Strings files. (The esp doesn't have to be in the Skyrim directory, but the Strings files must be in a .\strings folder just next to the esp) 4)MCM/Translate: Those files are used by addons that support MCM menu (SkyUI), but also by vanilla skyrim. They contains all UI strings. 5)PapyrusPex: The tool includes a papyrus pex decompiler that allows to translate pex files. Internals vars will be locked as non-editable.
Functionalities: -Build dictionaries of strings pairs from existing *.Strings files -EspCompare tool: build string pairs directly between 2 esps with different languages.
-Direct strings Search -Fuz Mapping and Fuz Player -Heuristic strings search with translation suggestions on the fly -SpellCheck for your language inline with MSWORD or Hunspell/OpenOffice Dics -RegEx search/replace/translation -Tools for various operations like OldDialog, .String files compare, Chinese Traditional/Simplfied conversion etc... -Diff-viewer, that shows difference between original/updated source-strings -Support all known encoding for Skyrim/Fallout4 -Alias Tool Check: verify alias integrity between source string and its translation. -Special DialogList for DIAL/INFO/QUST data -Search and replace tool with batch support -Support for some Online ApiTranslation -Custom dictionary
-Undo -XML import/export -Extracts files from BSA/BA2 archives -Inline dictionary, built on the fly with the existing string pairs.(for latin/english language) -The UI has been localized and can be easily translated (Ressources can be found in the \res folder, just create a new folder with the desired language. The 'res.ini' file contains all strings used by TESVT. If you are using extended charset, I suggest to save it in utf-8 with BOM, so there will be no codepage issue)
Some hidden ShortCuts: Ctrl-Shift-S: Export/finalize current Ctrl-R: Quick AutoTranslate on selection Shift-F12: Generate Derived strings
Important: This translator is not a tool for to localize/delocalize .esp/.esm file. Please, use xEdit for that.
Notes & Crédits: UIlocalization: Inherited from TesvTranslator & fallout4translator (some Translations are not up to date) -Japanese by Vivanon, Kuroko137 & BowmoreLover (Up to date) -German by Slavovitsh, nnw,Scharesoft & X00LA (Partial) -Polish by TomBrightblade (Partial) -Chinese Simplified & Chinese Traditional by Ruinelec, Windkenlu, Rebya & 0xb160d1c5 (Partial) -Spanish by Fiama & Pashalsta (Up to Date) -Portuguese by Vulthoryu (Partial) -Russian by Iclinet (Partial) -Korean by -Ren- (Partial) -Italian by alfx3 (Partial) -Slovak by pe-pe143 (Partial)
Special thanks to Bethesda Tes5edit team for their work Alexander Blade for the last fallout4 OpCode in Pex Internet for the gigantic resource
Note on extra Components used by this Tool:
-SynEdit: https://github.com/TurboPack/SynEdit -VirtualStringTree: written by Mike Lischke (www.soft-gems.net). -Diff: Search Heuristic compare is using the Diff Unit http://www.angusj.com/delphi/textdiff.html credit to Angus Johnson - angusj-AT-myrealbox-DOT-com -HtmlViewer: https://github.com/BerndGabriel/HtmlViewer -ZLibex: 1.2.3 http://www.dellapasqua.com and xEdit https://github.com/TES5Edit -LZ4 https://github.com/atelierw/LZ4Delphi and xEdit https://github.com/TES5Edit -Part of the code for Bsa/ba2/Stream loading from xEdit https://github.com/TES5Edit -OmniXML: https://github.com/mremec/omnixml -PCRE Regex library: http://www.regular-expressions.info/delphi.html (unicode version) -Hunspell Module is distributed under the Mozilla Public License Version 1.1 https://github.com/hunspell/hunspell/releases -xmw to wav converter: xWMAEncode.exe from directX SDK/microsoft -Madshi exception handler [non commercial version] (http://www.madshi.net/)
Online translation support, the tool can also use:
DeepL: https://www.deepl.com/translator MsTranslator: http://www.bing.com/translator OpenAI: https://api.openai.com/ GoogleTranslate(web end point only): https://translate.google.com/ Youdao: https://translate.youdao.com/ Baidu: https://www.baiduinenglish.com/
History version 1.5.7b: -Custom txt (McM): Sst Dictionaries have been improved for custom txt. -Custom txt (McM): Some parsing regex have been added and adjusted -Custom txt (McM): It's now possible to change text codepage on load, on the fly. -UI/internal: The synedit component has been updated to the TurboPack update https://github.com/TurboPack/SynEdit -UI: In the edit windows, it's now possible de change the text editor to a LiteVersion (ie: TRichEdit), which can handle RTL display (the option is available in the editor context menu->display). This lite editior is faster for heavy unicode language (east, farsi etc...) but doesn't handle hightlight and search, dynamic corrections etc... -Arabic: arabic RTLtoLRT conversion (menu ->tool -> language specific tools) has been improved, so it's possible to choose the method, and see a preview of the result. -Internal: Fixed an issue with McM/customTxt compare tool. -UI/Internal: loading a lot of PexScripts from outside BSA at the same time has been optimized and now offers the possibility to discard Pex without translation needed.
version 1.5.6: -Custom txt import: Fixed an issue with lang suffixe not applied correctly when extracting a txt file from a bsa. -Custom txt import: Fixed an issue with McMCompare. -Arabic: Added a very experimental and early alpha test for arabic RTLtoLRT conversion (menu ->tool -> language specific tools)
version 1.5.5: -Custom txt import:Text importing has been rewritten to allow importing custom text files as long as their string definitions are handled on single lines. This applies to Mcm/translate default files, as well as rftp, Skyrim Desc files, and so on. The parsing definition is located in [xTranslator\misc\customTxtDefinition.txt] and can be edited as needed. -Starfield: Added new REC:FIELD definitions -Starfield: Added new game esm in the vocabulary list -Fallout76: Added new REC:FIELD definitions -UI: Fix for high resolution scaling > 100%.
version 1.5.4 quick Maintenance update: -fix for the new Fallout4 ba2 archive header. -Added the free CreationClub mods in vocabulary list.
version 1.5.3: -Translation API: Added OpenAI support. You need to set the key in the Translation Apis options. You can also adjust the prompt if necessary, the model, and eventually the url. Note: OpenAI limits the number of requests/token per day. -UI: when hovering the translation meter widget you can see a tooltip with the raw numbers of translated/untranslated items.
version 1.5.2 Maintenance update: Starfield: Updated new header info version UI: updated Spanish UI translation, credit and thanks to Pashalsta.
version 1.5.1 Maintenance update: Starfield: Updated new header info version F76: Updated new header info version
version 1.5.0: UI/DialogAnalysis: Added a new data analysis to show conditions on dialog line when relevant. Internal: Fixed an crash that could occur when trying to generate a npcMap on 2 different versions of the same esp/esm loaded at the same time. UI/TranslationApi: Reduced Google virtual array inconsistencies and added fallbacks to handle normalized string translation error. UI/Vocabulary: Loading a lot of dictionaries as been greatly optimized. Internal: a lot of small optimizations
version 1.4.20: UI/TranslationApi: implemented an option to normalize texts containing <Alias> or <Number> before sending them to the translation API. This can significantly reduce costs and improve translation speed for mods that utilize a large number of similar strings with varying aliases and numbers. UI/TranslationApi: fixed some URL encoding issues that could prevent correct queries in rare instances. UI/TranslationApi: made some adjustments to query timers to prevent server errors with large arrays. Internal: improved internal strings initialization. UI: Updated Japanase UI, credits to Kuroko137.
version 1.4.19b: UI/TranslationApi: Fixed an issue with apiTranslation being disabled while it should not in some cases. UI/TranslationApi: Added a small statistic feedback in the log while running array apiTranslation.
version 1.4.19a UI/TranslationApi: Fixed an issue that could lock the GoogleApi. The reliability of the googleAPI virtual array has also been slightly improved in the process. Internal/Translation: Using the fix-Number and fix-Alias subtool now only tag strings to partial if a change has been applied.
version 1.4.19 UI/TranslationApi: Array Api Translation has been overhauled and improved. Google Translate (free) has been added to automatic array translation. You can make a direct APItranslation on selection (context menu) or globally (main menu/toolbar) on all untranslated strings. Note: MSTranslatorAPI and DeeplAPI are way
