ЧЗНТ. Интерфейс в Baldur's Gate 3
Gamelocalization
Что еще за ЧЗНТ?
«Что здесь не так» — рубрика, в которой тренируем насмотренность на чужих ошибках. Ведь здорово знать, как не наступать на грабли, которые кто-то уже собрал, чем набивать шишки с нуля.
Сегодня разбираем интерфейс в Baldur's Gate 3. Скажу сразу — мои аплодисменты всем, кто был причастен к такому мастодонту. Команда отлично справилась как с художественной частью, так и с интерфейсом. Но в последнем есть пара багуль... Давайте их разберем! 👀
Создать 1 луч(а) трескучей энергии

Как правильно заметили в комментариях к посту, сначала у вас только 1 луч, а потом их может стать больше на определенном уровне.
И за количество лучей отвечают мои любимые... переменные, одна из главных ловушек локализации для лингвистов.
Переменная — кусочек кода, вместо которого будет подставляться некая единица текста.
Единица текста — число, слово, словосочетание и так далее.
Сделано это для того, чтобы не делать несколько вариантов одной и той же фразы на перевод, в которой какая-то часть будет изменяться. Например, есть список однотипных фраз:
🗝 Collect Blue Key to enter
🗝 Collect Green Key to enter
🗝 Collect Red Key to enter
И десяток еще похожих фраз
Когда разрабатывается продукт, то число таких строк стараются сделать как можно меньше за счет переменных. И в случае с ключами, вы скорее встретите один вариант на перевод, который будет выглядеть так: Collect %key_variation to enter.
%key_variation — как раз та самая переменная, вместо которой будут подставляться Blue Key, Green Key и так далее.
Сделано это для того, чтобы код не разрастался от количества однотипных строк. И это отлично работает для английского языка, потому что падежей в нем нет, а окончание слова меняется сугубо в единственном и множественном числах (ну и possessive case, но это уже другая история, которая не попадает под переменные).
В русском же все гораздо сложнее. Давайте рассмотрим как раз числовой пример из Baldur's Gate:
Conjure %number_of_beams beam(s) of crackling energy.
В английском исходная строчка, кстати, тоже выглядит не особо эстетично. Но это уже вопросы к команде, которая писала описания заклинаний на исходном языке, и тем, кто готовил игру к интернационализации.
Итак, тут у нас есть числовая переменная (%number_of_beams), вместо которой может подставляться случайное число. Я видел описания с 1, 2 и 3 лучами. Как быть при переводе?
Вообще лучшая тактика работы с переменными — не бояться уходить от структуры предложения в оригинале и крутить фразу. Да-да, перевод — это про передачу мыслей, а не пословном копировании предложения. В локализации, как вы понимаете, это правило — железобетонное.
В русском языке сейчас вот такой вариант:
Создать %number_of_beams луч(а) трескучей энергии
Можно воспользоваться мемом с Олегом Юрьевичем, но есть ли вариант без скобок? Да!
Вообще по возможности лучше избегать все варианты со скобками, так как это не только перегружает сам текст, но и заставляет игрока додумывать нужное окончание. А это не самый лучший вариант, когда мы сосредоточены на игре и продумывании действия.
В этом кейсе переменная и слово после нее намекает, что потенциально подставляться будет цифра от 1 и до бесконечности. Во время перевода точный диапазон цифр может быть неизвестен, потому что нюансы игрового процесса на этом этапе могут допиливаться и меняться. Следовательно, потенциально может поменяться и возможное количество лучей. Но на то, что здесь будет диапазон чисел, указывает как раз слово, к которому привязана переменная, — beam(s). В английском все просто — есть формы единственного и множественного числа у существительного. Никаких запар с окончаниями. Запомните этот момент, он понадобится дальше.
Вернемся к переводу. Я бы немного покрутил эту фразу, чтобы сделать ее чуть лаконичнее:
Создать лучи трескучей энергии: %number_of_beams
Тогда игрок увидит следующий текст:
✨ Создать лучи трескучей энергии: 1
✨ Создать лучи трескучей энергии: 2
✨ Создать лучи трескучей энергии: 3
Логичный вопрос: «Стоп, но если есть единица, то как может быть множественное число?»
На деле все просто — если есть вариативность числа предмета, а разброс от одного и больше, то это самый удобный вариант. Мы сразу загоняем указательное слово во множественное число, чтобы как раз не париться с его окончанием. Ведь при изменении числа, оно тоже меняется. Например:
❌ Создать 1 луч
❌ Создать 3 луча
❌ Создать 11 лучей
Конечно, в рамках игры может и нельзя создать 11 лучей. И такие вещи лучше узнавать у разработчика, если на момент работы с текстом они могут дать точный ответ. Но суть в том, что лучше сразу обезопасить себя с точки зрения окончаний. А они — одна из Ахиллесовых пят при работе с переменными. Похожий кейс, кстати, был в Diablo IV. Но там решили сделать единственное число у указательного слова вместо множественного. А лучше бы наоборот.

Ходов: 2
А вот тут привет адаптации из прошлого примера. Все четенько, но почему не в именительном падеже?

Сразу всплывает главное правило — не заставляйте игрока додумывать. Просто представьте, сидит человек и пытается автоматически в голове добавить слово «Количество» перед «ходов», чтобы все стало ясно. Но проблема в том, что это перегружает игрока ненужной информацией и мыслями.
Поэтому самый простой вариант в таком случае — сделать именительный падеж.
Ходы: 2
И неважно, какая цифра будет: 1, 2, 6, 21. Тут действует то же самое правило, что и в предыдущем кейсе. Так как в русском сложная система окончания при изменении числа и падежа, то такой вариант будет максимально нейтральным.
А если будут еще и жесткие ограничения по символам, то получится на 1 символ меньше. Профит!
Конечно, есть вероятность, что эта строчка состоит из двух переменных. Одна отвечает за количество ходов, а вторая — за слово turns. И тогда это будет совсем другая история.
Очепяточка

И без них тоже никуда. Особенно, если в тексте почти 2 миллиона слов. Поэтому в строке «Нажмите на кубикЕ для броска» буква «Е» явно лишняя. Ведь нажимаем на кого/что для броска? Правильно, на кубик.
1d10
И вернемся к первому скрину. В комментариях к посту в Телеграме отметили, что, возможно, это тоже ошибка. Но нет, это утвердившийся вариант названия... кубиков!

Вся фишка в том, что в рамках вселенной Dungeon & Dragons для выполнения определенного действия нужно кидать кубики. И фраза из серии 1d10 расшифровывается следующим образом: «Киньте один десятигранный кубик».
Если бы в тексте было 3d20, то это означало бы следующее: «Киньте три двадцатигранных кубика». То есть первое число отвечает за количество кубиков, а d и следующее за ним число — какой именно кубик нужно кинуть.
Итог
Baldur's Gate 3 — монументальная игра, которая взяла множество наград в 2023 году. И текста в ней море. Повторюсь, игра сделана отлично и моя похвала всем, кто участвовал в разработке.
И да, локализация сделана качественно. Ошибки могут встречаться везде, это нормально. Тем более это не мобильная игра на 10 000 слов, а мастодонт на 2 миллиона. Задача же ЧЗНТ — прокачать навыки, разобрав реальные кейсы. Ни в коем случае не попытка показать, что переводчики на проекте не умеют работать. Они сделали отличную работу!
Ну а переменные — важная часть локализации сайтов, игр и ПО. С ними нужно уметь работать, так как в ином случае могут получиться не самые удачные варианты.
На курсе «Основы игровой локализации» я уделяю очень большое внимание тому, как правильно понимать и работать с ними. Потому что сам знаю, насколько тяжело разобраться с правильной адаптацией таких фраз, если нет опыта. И поддержка наставника здесь не просто «приятное» дополнение, а необходимость, без которой вы потратите очень много времени на поиски правильных путей работы с переменными.
Поэтому приходите на курс «Основы игровой локализации». На нем я научу вас не только работать с переменными, тегами и ограничениями по символам, но и расскажу про CAT/TMS, особенности локализации как сферы, в которой можно работать. Подробно разберем все нюансы разных ступеней локализации и будем много переводить. И да, оплатить курс теперь можно из любой точки планеты как одним платежом, так и в рассрочку без переплат.
✨ Подробнее на вопросы про курс готов ответить в личных сообщениях в Телеграме: @gashenkoant
✨ Если вы не подписаны на мой канал в Телеграме, то добро пожаловать: @gamelocalization
✨ Записаться на курсы и прочитать другие полезные статьи можно на моем сайте: gamelocalization.ru
