This project is created to ease routine manipulations of working on localization of S.T.A.L.K.E.R mods.
Primarily it's designed (and tested) to translate mods to Ukrainian language
Create All-in-one app which will help to produce clean, maintainable, correct mod localizations with ease, both text and audio.
Infra:
- Add version tracking from PyPI
- Add multilang support
- Add ukrainian language support
- Add ~/.sltools/config file to store configuration
Text:
- Git integration (check for dirty environment)
- Add modified files saving into mirrored directory for non-tracked files
- Bad encoding detection and fixes
- Resolve XML C-style includes Example here
- XML formatting and fix. S.T.A.L.K.E.R's XML parser has loose XML validation, and swallows files with some tokens not allowed in XML 1.0 specification. Example here
-
<text>
entries formatting. Game's XML parser ignores extra spaces and line breaks (just like HTML). The only way you can put a line break is to use \n. This feature alligns text within text blocks to look alike in the game. Example here - Analysis for not translated files/text blocks
- Automatic text translation using DeepL.
- Analyze broken patterns/placeholders/colors
- Save report only with --save option
- Compare 2 file reports
- Fix broken patterns/placeholders/colors
- Search for duplicate keys
- Add visualized duplicates graph using D3
- Capitalize text entries
- Grammar and typos checkup
- Capitalization of the text blocks
- Automatic scraping for files you need to translate (if you just start translating) with integration with Mod Organizer 2 mod priority (if you want to translate a modpack with all at once)
Audio:
- Handy operations with audio (using ffmpeg):
- Convert to-ogg/to-mp3
- Convert to mono
- Trim/split audio by second
- Trim silence from audio (with user defined margin)
- Normalize audio level
- Apply quick effects (gas mask, radio, pitching, noise)
- Translating Speech-to-Speech and keeping voice signature using AI
Audio:
- Handy operations with audio (using ffmpeg):
- Convert to-ogg/to-mp3
- Convert to mono
- Trim/split audio by second
- Trim silence from audio (with user defined margin)
- Normalize audio level
- Apply quick effects (gas mask, radio, pitching, noise)
- Translating Speech-to-Speech and keeping voice signature using AI
- All XML files are using
Winodws-1251
encoding, so it's better to setup your IDE/text editor, git to this encoding by default - A lot of functionality here (like autotranslation) may sometimes introduce breaking changes like missing/broken placeholder, etc, so it's hardly recommended to make git repository out of your mod, and commit changes before each script use (or at least commit often)
# Uninstall previous if present
pip uninstall sltools
# Install in dev mode
pip install -e .
sltools
python3 -m sltools
python3 sltools.py