Localization Guide: Локализация и ключи
Локализация — это процесс подготовки Oxygen Not Included для игроков из разных языков и регионов: перевод внутриигровых названий и строк, обработка форматов страниц или ключей, не использующих ASCII, а также сопоставление внутриигровых идентификаторов с локализованным текстом. Качественная локализация сохраняет смысл игрового процесса, оставляет технические идентификаторы без изменений и обеспечивает корректное отображение ассетов (изображений, единиц измерения, названий элементов) на разных языках.
Ключи, идентификаторы и внутриигровые названия
- Игра использует внутренние идентификаторы (кодовые имена) для многих биомов, элементов и объектов. Локализаторам нужно сопоставлять эти идентификаторы с читаемыми локализованными названиями, сохраняя кодовое имя без изменений. Примеры сопоставлений из кода игры:
- Arboria → ForestDefault (внутреннее имя)
- Verdante → ForestLush (внутреннее имя)
- Volcanea → Volcanic (внутреннее имя)
- Если внутренний идентификатор отличается от отображаемого названия, сохраняйте идентификатор в коде и подставляйте локализованную отображаемую строку в файлах перевода.
Элементы, предметы и единицы измерения
- Некоторые предметы и материалы производятся из других понятий и могут вызвать путаницу, если переводить их неточно. Локализаторам нужно последовательно сохранять различие между элементами и предметами:
- Table Salt — это не элемент; его игровой элемент называется
Соль. Переводите отображаемое название соответственно.
- Reed Fiber и Lumber — это предметы, сделанные из
Генная слизь; в описаниях последовательно учитывайте исходный материал.
- Table Salt — это не элемент; его игровой элемент называется
- Единицы измерения встречаются в нескольких контекстах и должны совпадать с тем, как они показываются в игре:
- Предметы вроде Lumber иногда отображаются с «kg», а иногда как целое число «units»; перевод не должен менять формат единиц.
- Для названий элементов и материалов нужно учитывать языковые варианты. Примеры:
Радий (zh: 镭 / ru: Радий)
- Gas Carbon (zh: 气态碳 / ru:
Очищенный углерод)
- Gas Lead (zh: 气态铅 / ru:
Свинец)
- Соль / Table Salt (zh: 食盐 / ru: Поваренная соль)
Здания, датчики и системы
- Сохраняйте точные названия зданий и их написание с заглавных букв при переводе меток интерфейса, чтобы кодовые ссылки оставались понятными. Примеры названий, требующих внимания к локализации:
- Temperature Sensor (zh: 温度传感器 / ru: Сенсоры…)
- Filter Gate и связанные устройства автоматизации должны сохранять свой технический смысл.
Пожарный шест (zh: 消防滑杆 / ru: Пожарный столб / pt‑br: Poste de Bombeiro)
- Исторические или устаревшие названия атрибутов, изменённые между обновлениями, (например, ранее атрибут «cooking» был переименован). Перевод текста интерфейса должен отражать терминологию текущей версии игры.
Форматирование строк интерфейса и особые случаи
- Некоторые имена страниц или ключи содержат символы, которые не поддерживаются WikiName или идентификаторами, удобными для кода. Для таких имён при создании страниц или ключей допускается альтернативное оформление в квадратных скобках:
- Используйте BracketName, чтобы разрешить имена страниц или ключей, содержащие пробелы или не-ASCII символы.
- URL-адреса и адреса электронной почты в локализации или документации должны оставаться кликабельными; при выводе в виде сырого текста убедитесь, что обычные шаблоны URL и адресов электронной почты сохраняются.
- Сохраняйте токены форматирования, разметку и заполнители в переводимых строках без изменений (например, {0}, %s, токены перевода строки). Не переводите и не удаляйте технические токены.
Графика, предварительные изображения и варианты ассетов
- У некоторых ассетов в разных дополнениях и обновлениях есть несколько визуальных вариантов (например, Spaced Out DLC). Локализованный текст должен указывать на правильный вариант при описании ассета:
- Грузовой отсек отличается в базовой игре и в дополнении Spaced Out (размер и внешний вид различаются). Используйте точное описательное название, привязанное к варианту.
- У многих элементов и объектов есть плитки предпросмотра или изображения в галерее; локализаторам следует убедиться, что подписи к изображениям и альтернативный текст локализованы, а имена файлов изображений и ссылки на ассеты остаются без изменений.
Имена с несколькими языковыми вариантами
- Для каждого поддерживаемого языка нужно явно предоставить локализованные строки. В исходных материалах есть примеры для китайского (zh), русского (ru) и португальского (pt-br); убедитесь, что в ваших файлах перевода есть записи для каждого целевого языка, а не полагайтесь на запасной вариант.
- Когда один и тот же термин встречается в нескольких местах (например, в заголовке страницы, подписи к галерее, инженерной заметке), переводите его единообразно.
Технические примечания для переводчиков
- Не изменяйте внутренние идентификаторы или кодовые имена; указывайте только локализованное отображаемое значение.
- Не выдумывайте числовые значения. Если строка или подсказка содержит числовое игровое значение, передавайте точное внутриигровое значение, предоставленное разработчиками.
- В описаниях явно указывайте связи между элементами и предметами, например «Reed Fiber — предмет, изготовленный из
Генная слизь».
- Соблюдайте единообразие терминов во всей игре: названия биомов, элементов, зданий, единиц измерения и черт должны переводиться одинаково везде, где встречаются.
Практические примеры и распространённые соответствия
- Биомы: ForestDefault → Arboria (отображать как Arboria / локализованный эквивалент)
- Биомы: ForestLush → Verdante
- Биомы: Volcanic → Volcanea
- Предметы и элементы:
Соль (element) — переводить как канонический термин «Соль» для этого языка, а не как «поваренная соль», если только контекст этого не требует.
- Черты и предметы: Lumber, Reed Fiber — указывать источник материала (
Генная слизь), где это уместно.
Соблюдение этих правил гарантирует, что локализованные сборки Oxygen Not Included будут точно соответствовать исходной игровой логике, сохранят единообразие интерфейса и контента и обеспечат понятный, удобный для игры опыт для неанглоязычных игроков.