Translation Tools
Описание
Инструменты
GetText
Инструмент для получения текста из модов.
Инструмент автоматически создает папку для перевода, с заполненным About файлом и модифицированным превью.
Чтобы скрипт модифицировал превью мода, корректировал размер и добавлял стикер, дополнительно нужно установить программу ImageMagick и создать стикер для превью.
По умолчанию ImageMagick устанавливается и обновляется автоматически, для отключения данной опции нужно поменять настройку "Install ImageMagick". Устанавливается независимо от ручной установки в отдельную папку. Для удаления программы нужно удалить папку “%UserProfile%\scoop”.
Ручная установка ImageMagickhttps://imagemagick.org/script/download.php#windows
Стикер должен иметь название sticker.png и находится в папке User. Размер превью мода подстраивается под размер фона стикера, рекомендуемый размер фона - 640х360. Как создать стикер
- Установить Paint.NET
https://www.getpaint.net/download.html
- Запустить программу, поменять размер изображения на 640х360: "Изображение" => "Изменить размер"
- Выбрать инструмент "Волшебная палочка", нажать на изображение, нажать клавишу DELETE - фон станет прозрачным
- Найти подходящий стикер, открыть его в новой вкладке в Paint.NET, уменьшить размер стикера, чтобы он помещался на изображение. Высота моего стикера равна 120 - это треть от изображения.
- Выбрать инструмент "Выбор области", выделить стикер, нажать "CTRL + C", вставить стикер на изображение с прозрачным фоном, разместить в нужном месте
Чтобы четко попадать в пиксели нужно менять масштаб "CTRL + колесиком мыши" и перемещать изображение стрелочками на клавиатуре.
Если стикер нужно расположить на расстоянии от края изображения или если нужно проверить расстояние от края, нужно использовать инструмент "выделение области", выделить область от края изображения до края стикера и посмотреть длину области на панели снизу.
CreateLoads
Один перевод может содержать текст для нескольких модов, например, для оригинального мода и для измененной версии или для мода и его дополнений.
Для указания игре какие папки нужно загружать при наличии определенных модов используется файл LoadFolders.xml, будет загружен текст только для тех модов, которые активны у пользователя. Без использования данного файла текст загружается полностью и если при этом отсутствует мод для которого сделан перевод, то в журнале отладки появятся желтые ошибки - это не критично, но лучше чтобы ошибок не было. Плюс это ускоряет загрузку игры, т.к она не будет загружать то, что не нужно.
CreatePack
Инструмент для создания пака переводов.
Есть два способа создать пак переводов:
1 - объединить все папки Languages в одну
2 - использовать LoadFolders
В обоих случаях файлы в папке Languages должны иметь уникальное название для каждого перевода, для этого можно использовать инструмент EditFormat.
При использовании LoadFolders будет создана папка Misc/DidNotLoadAnyContent-Skip, которая загружается всегда, чтобы не было ошибки в случае отсутствия модов, для которых сделан перевод.
GetData
Инструмент для получения объема переведенного текста - количества строк и слов, а также другой полезной информации. Краткая информация выводится автоматически при первом запуске программы за день.
Статистика это интересно, особенно если переводов много.
GetTranslations
Инструмент для получения ваших переводов из папки с модами.
Пригодится, если вы утратили файлы переводов и их нужно скачать из Мастерской, чтобы при этом название папки перевода соответствовало названию перевода.
EditFormat
Скрипт создает копию переводов и приводит к формату Translation Tools.
Скрипт перезаписывает xml файлы в папках Keyed и DefInjected, чтобы они имели кодировку и заголовок UTF8. Также корректирует отступы заменяя их на табуляцию.
Аддон
CheckChanges
Данный инструмент сравнивает текст модов и текст переводов, и находит новые и старые строки.
CreatePreview
Инструмент для обновления превью переводов. Берет превью из модов, накладывает стикер, создает папки с превью. Если перевод относится к нескольким модам, то будет выбран мод который идет первым в LoadAfter.
Если в папке мода отсутствует превью, например оно есть только в Мастерской, то вы можете скачать его, переименовать в PackageID мода и поместить в папку User\ModsPreview. Превью в данный папке имеет выше приоритет чем превью в папке мода, это также можно использовать для переопределения логики "выбрать мод который идет первым в LoadAfter".
CreateModIcon
Инструмент для обновления иконок переводов.
Upload
Инструмент для обновления переводов в Мастерской.
Для загрузки в Мастерскую используется официальный инструмент SteamCMD. Для использования требуются ваш Steam логин и пароль. Для безопасности, ваш логин и пароль нигде не сохраняются, поэтому их каждый раз нужно вводить заново. Если у вас активен Guard, то при первом запуске нужно будет ввести проверочный код который придет на почту.
Чтобы обновить описание перевода, добавьте файл с описанием "Description.txt" в папку перевода.
В папку User можно добавить файлы "Translation_PreDescription.txt" и "Translation_PostDescription.txt", которые добавят к описанию префикс и постфикс, например, префиксом могут быть теги, а постфиксом ссылки автора. Еще в папку User можно добавить файл “Translation_DefaultDescription.txt”, который будет использован если отсутствует файл "Description.txt", т.е это описание по умолчанию. Все тоже самое можно сделать для пака переводов используя “Pack_” в начале файлов.
Название и описание мода обновляется только для английского языка, если у мода есть описание на дополнительным языке, то описание для него нужно обновлять вручную. Описание на английском языке применяется ко всем языкам - по этой причине не нужно добавлять дополнительные языки, кроме этого, такое описание нельзя будет убрать. Я писал в поддержку по поводу удаления описания, они ответили что не могут помочь.
Данный инструмент не используется для первичной загрузки в Мастерскую, т.к в таком случае не будут созданы теги мода. Первую загрузку мода нужно делать через игру, если нужно обновить теги это также нужно делать через игру. Все остальное удобнее делать через Upload, т.к инструмент обновляет сразу все переводы.
После использования инструмента нужно заново войти в Steam, т.к одновременно можно быть авторизованным только в одном месте, возможно это работает только с Guard.
Если при обновлении мода локальные файлы совпадают с файлами в Мастерской, то мод не будет обновлен, будет обновлена только информация на странице мода - описание, превью и прочее.
Как загружать и обновлять моды
- Первая загрузка или обновление тегов: Через игру
- Все остальное: Через скрипт
Формат Translation Tools
PackageID перевода: "{префикс} {очищенное, упрощенное и без пробелов название мода}"
Название папки перевода: "{префикс} {очищенное и упрощенное название мода}"
Название xml файлов: "{тип файла}_{очищенное, упрощенное и без пробелов название мода} "
***
очищенное название мода - без (*),[*],{*} конструкций
упрощенное название мода - только английские символы и цифры
***
Настройки
Если настройка может иметь несколько значений, например несколько папок, то их нужно отделить запятой.
Некоторые настройки могут быть пустыми, в таком случае настройка не будет выполнять свою функцию. Например, пустая настройка PrefixForTranslationName не будет добавлять префикс к названию перевода.
В значения настроек можно подставлять значения из других настроек. для этого в значение настройки нужно добавить {ключ другой настройки}. Например, CurrentVersion: {RimWorldFolder}\version.txt
Язык системы.
Код языка системы.ModsFolders
TranslationsFolderПуть до папок с модами.
[может быть несколько значений]
TargetLanguage
TargetLanguageCodeЯзык на который будет делаться перевод.
Код языка на который будет делаться перевод.AddCommentWithSourceText
RemoveTextFromString
AddEmptyStringBetweenStrings
CreateDescriptionFile
CommentWithSourceFileStyle
CommentWithSourceTextStyle
ResultInfoStyleДобавить комментарий с файлом из которого взят текста.
Добавить комментарий с оригинальным текстом.
Удалить текст из строки.
Добавить пустую строку между строками.
Создать Description.txt файл в папке перевода.
Стиль комментария с файлом: одной строкой / перенести путь на отдельную строку.
Стиль комментария с текстом: кратко / подробно.
Стиль вывода результата: кратко / подробно.PrefixForTranslationPackageID
PrefixForTranslationFolderNameПрефикс для PackageID переводов.
Префикс для папок переводов. Это нужно для группировки переводов, например, если вы перенесли их в папку Mods, чтобы они не смешивались с другими модами.CurrentVersion
IgnoreOldVersions[может быть несколько значений]
Путь до файла с текущей версией игры. Можно указать версию вручную.
Игнорировать старые версии игры при получении текста. Будут игнорироваться версии которые находятся позади CurrentVersion в GameVersions.AddModsListToPackDescriptionFile
ModsListTitle
RimWorldModsFolder
CopyPacksToRimWolrdModsFolderДобавить список модов из пака в файл с описанием пака.
Заголовок списка модов.
Путь до папки с локальными модами.
Копировать паки из папки Result в папку с локальными модами.UploadWithoutFiles
ModVisibility
UpdateTitle
UpdateDescription
UpdatePreview
UpdateVisibility
PostfixForTranslationTitle
PostfixForTranslationsPackTitle
CheckDescriptionFilesФайлы которые нужно игнорировать при загрузке мода. Если добавить файл Preview.png, то он будет загружен в Мастерскую, но не будет отображаться в игре, потому что будет убран из файлов - это значительно снижает вес мода, т.к обычно превью весит много относительно текста.
Видимость мода: Public - публичный, FriendsOnly - только для друзей, Private - приватный, Unlisted - доступный по ссылке.
Обновить название мода. Вы можете настроить название мода в Мастерской отдельно от названия мода в игре, в таком случае отключите данную опцию, чтобы название не перезаписалось.
Обновить описание мода.
Обновить превью мода.
Обновить видимость мода.
Постфикс для названия перевода в Мастерской. Например, можно добавить теги, чтобы люди могли найти перевод.
По аналогии с предыдущем пунктом, только данный постфикс добавляется к паку переводов.
Проверять Description.txt файлы перед загрузкой модов (наличие файла, наличие строк в файле).Файлы, которые можно добавить в папку User
- Translation_ModIcon.png
Файлы которые можно добавить в папку пака
- Pack_Preview.png
- Pack_ModIcon.png
- Pack_PublishedFileId.txt
- Pack_Description.txt
Структура главной папки TranslationsFolder может быть любой, папки в ней будут определены автоматически по следующим правилам:
Если в папке есть файл \About\About.xml и если есть папка \Languages либо папка \LoadFolders, то это папка перевода.
Если в папке есть файл \Pack_About.txt, то это папка пака переводов.
Пример структуры:
TranslationsFolder
- Pack1
- - Group1
- - - Translation1
- - - Translation2
- - - Translation3
- - Group2
- - - Translation1
- - - Translation2
- - - Translation3
- Pack2
- - Translation1
- - Translation2
- - Translation3
- {any user files}
Использование
Общее
- создать коллекцию с переводами
- создать коллекцию с переведенными модами
- Подписаться на нужные моды, подождать пока они установятся/обновятся
- Копировать ID модов. ID мода - это последние цифры в адресе страницы.
- Вставить ID модов в поле “Mods ID”. Если модов несколько то их нужно добавить через пробел. Можно добавить только одно слово "all", в таком случае текст будет извлечен из всех модов.
- Запустить скрипт
CreateLoads
- Создать папку LoadFolders в папке перевода
- Поместить в папку LoadFolders папки которые нужно загружать при наличии определенных модов
- Создать в каждой папке файл PackageID.txt, добавить в него ID модов. Если ID несколько, то каждый нужно указать в отдельной строке.
- Запустить скрипт
- Копировать с заменой папки с LoadFolders.xml в папки с переводами
CreatePack
- Создать файл Pack_About.txt в папке пака, добавить в данный файл название и packageid пакаname {Название пака} packageid {PackageID пака}
- Поместить в папку пака папки с переводами. Удобнее добавить все переводы в одну папку затем данную папку добавить в папку пака.
- Запустить скрипт
GetTranslations
- Подписаться на переводы, подождать пока они установятся
- Запустить скрипт
CheckChanges
- Подписаться на переведенные моды, подождать пока они установятся/обновятся
- Запустить скрипт
CreatePreview
- Добавить sticker.png в папку User
- Подписаться на переведенные моды, подождать пока они установятся/обновятся
- Запустить скрипт
- Копировать с заменой папки с превью в папки с переводами
CreateModIcon
- Добавить ModIcon.png в папку User
- Запустить скрипт
- Копировать с заменой папки с иконками в папки с переводами
Upload
- Перенести в папку Upload переводы которые нужно обновить
- Ввести ваш Steam логин и пароль в соответствующие поля
- Запустить скрипт
Общее
Discord => Открыть канал #translations-tools => Скачать и распаковать архив в удобное место
Скачать новый архив, поместить в папку Translation Tools, запустить программу.
Будут добавлены в данный гайд. При обновлении рекомендуется посмотреть описание обновления, т.к функционал может измениться.
Оригинальная программа не влияет на ваши файлы, все что она делает это копирует файлы, получает данные из файлов, создает новые файлы на основе полученных данных.
Данная программа задокументированная, ее запрещено редактировать и публиковать.
- скрипт для редактирования about.xml
- кеширование оригинального текста и прочих данных для отслеживания изменений
- при извлечении текста к нему добавляется авто переведенная копия, которую можно использовать в качестве подсказки; или использовать как готовый машинный перевод
- поддержка, оптимизация, реализация ваших идей
Discord
Updates
GetText
- Reworked script
GetData
- Script display more data
EditFormat
- Script rewrites xml files
===
Removed settings
- UploadWithoutPreviewInFiles
- OpenVisibility
Added settings
- SystemLanguage
- SystemLanguageCode
- TargetLanguageCode
- AddCommentWithSourceFile
- AddCommentWithSourceText
- RemoveTextFromString
- AddEmptyStringBetweenStrings
- CreateDescriptionFile
- CommentWithSourceFileStyle
- CommentWithSourceTextStyle
- ResultInfoStyle
- PackCreatingMode
- ModsListTitle
- UpdateDescription
- UpdatePreview
- UpdateVisibility
- UploadWithoutFiles
- ModVisibility
- PostfixForTranslationTitle
- PostfixForTranslationsPackTitle
- CheckDescriptionFiles
===
Changed files names: Translation_Description.txt => Translation_DefaultDescription.txt
Changed the way Preview is overridden.
Added Misc/IgnoreError_DidNotLoadAnyContent folder when creating a pack using LoadFolders.
Навигация
This guide was created by its original author on the Steam Community. Are you the author and want it removed? Request removal.