Как делать перевод игры
Внутриигровая локализация сейчас делается так
- Найдите в коде игры нужный для перевода кусок
- Переведите его на русский
- Не забудьте учесть все потенциальные роды и склонения
Правила
Термины
Пожалуйста, строго следите за совпадением терминологии с вики. Если вы считаете что на вики термин назван неверно — обсудите этот вопрос с главным редактором вики и получите его одобрение на смену термина.
Буква «Ё»
В русском языке 33 буквы. Буква «ё» не строго обязательна, но она помогает чуть лучше ощутить смысл фраз. Не пропускайте её.
Типографика
Игровой текст — текст чата или СМС. Он не набран на скорую руку и ему нет оправдания в пренебрежении оформлением. Используйте принятые в русской типографике символы
Подробнее о типографике можно почитать в Ководстве. Если вы планируете много работать с текстом, рекомендуется установить себе третий слой клавиатурных знаков.
Символ | Название | Описание |
---|---|---|
—
|
Длинное тире | Длинное тире — это не дефисоминус с клавиатуры. Оно ставится между словами и отделяется от них пробелами с обеих сторон. |
«»
|
Кавычки-ёлочки | Основные русские кавычки |
„“
|
Кавычки-запятые | Второй уровень кавычек, если вам надо вложить кавычки в кавычки. |
°
|
Знак градуса | Используется в температурных интерфейсах |
Обращение к игроку
Половина информирующих строк чата выглядит как «Your arm hurts!». На английском тут нет проблем, но в сообществе пока что нет единого мнения как правильно переводить«you» в контексте обращения к игроку.
- Вы
- «У вас болит рука!»
Это более нейтрально-отстранённый стиль. С одной стороны, это может помочь игроку чувствовать себя ответственным сотрудником научной станции. С другой стороны, это эмоционально отделяет его от персонажа, делает персонажа более «кукольным». - Ты
- «У тебя болит рука!»
Это более более эмоционально-причастный стиль. С одной стороны, это может помочь игроку эмоционально приблизиться к своему персонажу, делая персонажа живее для игрока. С другой стороны, это может уменьшать ощущение научной станции и уважительной атмосферы между сотрудниками.
Вопрос ещё обсуждается.
Инструменты локализации
Сейчас для локализации реализованы несколько процедур. Все они полагаются на встроенную в DreamMaker систему полов.
Полов в DreamMaker четыре
MALE
- Мужской
FEMALE
- Женский
NEUTER
- Средний
PLURAL
- Множественный. Да, хотя в русском языке пол и число — формально разные вещи, но на практике это просто ещё один пол. Подумайте об этом, это действительно так. Пример: у Дион множественный пол.
Гендеризация — genderize_ru
Процедура genderize_ru
Принимает
Принимает текущий пол и четыре строки для разных полов.
Возвращает
Возвращает соответствующую полу строку из заданных.
Сигнатура
genderize_ru(пол, мужской, женский, средний, множественный)
Пример
Похоже, это [genderize_ru(user.gender,"он","она","оно","они")]!
Плюрализация — pluralize_ru
Та же гендеризация, но более короткая её версия, для случаев, когда нужно различать только единственное и множественное число.
Принимает
Принимает текущий пол и две строки — для единственного числа и для множественного.
Возвращает
Возвращает соответствующую полу строку из заданных.
Сигнатура
pluralize_ru(пол, одиночный, множественный)
Пример
[user] помеща[pluralize_ru(user.gender,"ет","ют")] свою голову между лезвиями
Склонение единиц измерения — declension_ru
Та же гендеризация, но для единиц измерения.
Принимает
Принимает число и три строки — для единственного, двойственного и множественного числа. Да, в русском языке не два, а три числа, вас обманывали в школе. Двойственное число используется для 2,3 или 4 предметов.
Возвращает
Возвращает соответствующую числу строку из заданных.
Сигнатура
declension_ru(число, одиночное, двойное, множественное)
Пример
Вася нашёл [num] [declension_ru(num,"яйцо","яйца","яиц")]
Склонение по падежам — declent_ru
Самая мякотка. Вершина нанотехнологий НаноТрейзен по локализации строк.
На самом деле ничего сложного. Метод declent_ru
и свойство ru_names
наследуется от atom
и есть у любого материального предмета. Для правильного склонения названия предмета ему надо добавить список ru_names
, где указать как его название склоняется по падежам.
Пример заполнения ru_names
ru_names = list(NOMINATIVE = "челюсти жизни", GENITIVE = "челюстей жизни", DATIVE = "челюстям жизни", ACCUSATIVE = "челюсти жизни", INSTRUMENTAL = "челюстями жизни", PREPOSITIONAL = "челюстях жизни")
Принимает
Принимает падеж.
Второй необязательный аргумент — собственный список склонения, если список ru_names
предмета вас почему-то не устраивает.
Падежи
- Именительный
NOMINATIVE
- Кто это? Клоун и ассистуха
- Родительный
GENITIVE
- Откусить кусок от кого? От клоуна и ассистухи
- Дательный
DATIVE
- Дать полный доступ кому? Клоуну и ассистухе
- Винительный
ACCUSATIVE
- Обвинить кого? Клоуна и ассистуху
- Творительный
INSTRUMENTAL
- Возить по полу кем? Клоуном и ассистухой
- Предложный
PREPOSITIONAL
- Прохладная история о ком? О клоуне и об ассистухе
Возвращает
Возвращает соответствующую этому падежу строку из списка ru_names
или, если список ru_names
у предмета не задан, то просто его name
, для обратной совместимости.
Сигнатура
declent_ru(пол, одиночный, множественный)
Пример
Текст до перевода
[user] is putting [user.p_their()] head in [src]. It looks like [user.p_theyre()] trying to commit suicide!
Корректно переведённый текст
[user] помеща[pluralize_ru(user.gender,"ет","ют")] свою голову между лезвиями [src.declent_ru(GENITIVE)]. Похоже, [genderize_ru(user.gender,"он","она","оно","они")] пыта[pluralize_ru(user.gender,"ется","ются")] использовать [src.declent_ru(ACCUSATIVE)] для самоубийства
Как внести свой вклад? | |
---|---|
Общее | Руководство по разработке |
Сервер | Настройка базы данных, Запуск локального сервера |
Код | Структура кода SS13, SS13 для опытных программистов, Форматирование текста, Как делать перевод игры |
Маппинг | Руководство по маппингу |
Спрайтинг | Руководство по спрайтингу |
Вики | Руководство по редактированию вики |