Оценка пользователей
9.5362
Оценить:
-
-AdRiver-

Как я перестал бояться и начал переводить android-приложения

 

Думаю, начало истории вы знаете – в феврале 2013 CGE анонсировали цифровую версию Galaxy Trucker, а в декабре 2014 она появилась в Google Play и единственным ее недостатком было отсутствие русского языка.

 

Никаких анонсов по поводу добавления языков не было, но когда я взглянул на содержание apk-файла поближе, то понял, что задел под другие языки есть – отдельная папка с названием localization_strings говорила об этом прямо и недвусмысленно.

 

Следует отметить, что перевод приложения – это далеко не то же самое, что перевод правил или даже пнп. Как с технической стороны, так и с точки зрения… скажем так, распространения. Если на «нелицензионный» перевод правил автор, скорее всего, закроет глаза (а то и поблагодарит), то выложенное для всеобщего скачивания переведенное приложения – откровенное пиратство. И если в случае ПК-версии можно извернуться каким-нибудь «русификатором» (тоже, строго говоря, сомнительным с точки зрения авторских прав), то с андроид-приложением этот вариант не пройдет.

 

В общем, исходя из этих соображений (а также в связи с тем, что я никогда не работал с андроид-приложениями), я решил пойти «официальным» путем и написал разработчикам, что, мол, так и так, hello from Russia, увлекаюсь настолками, попутно перевожу всякое, в том числе и к играм CGE, в частности, перевел правила ко всей линейке Galaxy Trucker, а тут у вас приложение вышло, хотите, помогу с переводом?

 

Через какое-то время пришел ответ «да, круто, мы думали переводить и на русский тоже, спасибо, если что – свяжемся». Получив пару таких писем выждав какое-то время, я понял, что не стоит  ждать милостей от издателя, разобраться с приложением самостоятельно – вот наша задача.

 

 

 

Проблема первая – сборка-разборка


Первой задачей было не столько разборка (apk в общем случае открывается любым архиватором), сколько сборка приложения обратно в apk так, чтобы это все работало. Гугление дает довольно много инструкций по этому поводу, но почему-то в моем случае самые простые и популярные методы  (Apktool, APK MultiTool, APK Studio, Eclipse, Android Studio и пр.) не сработали. Уж не знаю почему. А вот Virtuous Ten Studio справился (хотя я бы предпочел консольный apktool).

 

Про всякие подробности типа подписи приложения, генерации ключей и прочее рассказывать не буду – в сети все подробно расписано. Отмечу только, что мой скепсис касательно всяких программ для автоматического и полуавтоматического перевода apk-приложений оправдался… Хотя я понимаю, что случай не показательный, для перевода чего-нибудь попроще и постандартней они могут вполне подойти.

 

 

Проблема вторая – шрифты


Причем в данном случае это не только обычная  «где бы взять такой же, но с кириллицей», а сам формат шрифта. В Galaxy Trucker используются bitmap-шрифты, то есть даже имея какой-нить ttf аналог с русскими буквами, его нельзя просто так взять и добавить в приложение. Проблема осложнялась тем, что bitmap-шрифты, как оказалось, бывают нескольких видов, а утилиты для работы с ними (в основном, самописные) заточены под конкретную программу, то есть на выходе получается что угодно кроме того, что понимает приложение. Плюс отсутствие внятных мануалов и полное отсутствие у меня опыта работы со шрифтами как таковыми. Но, тем не менее, потратив около трех дней на эксперименты и перелопатив тонны гугла (доходило даже до каких-то жутких софтин с корейских форумов) мне все же удалось заставить игру писать на русском.

 

 

Проблема третья – видеоролик


Я никогда раньше не работал с видео и не занимался озвучиванием. Но не оставлять же ролик на английском) Поэтому я решил, что лучшим выходом в этой ситуации будут субтитры. Правда, субтитры я тоже раньше не делал, но мне это показалось проще, чем писать отдельную дорожку, как-то вычищать оригинальную от английского голоса, сводить их и пр. Благо, что мануалов по сабам в сети тоже предостаточно. В общем, всего за сутки у меня получился ролик с хардсабами (вшитыми субтитрами), который не сильно превосходил размерами оригинальный и корректно проигрывался в приложении.

 

Итого – приложение распаковывается/запаковывается, русский шрифт есть, ролик на русском играется. «Дело за малым – просто перевести текст», – подумал я. Но я ошибся)

Во-первых, текста оказалось много. Очень много. По примерным подсчетам – почти в два раза больше, чем в допе к Space Alert (про перевод которого я писал в прошлый раз). Или почти столько же, сколько суммарно содержат правила базы и всех допов настольного Galaxy Tracker.

 

Во-вторых, рода и склонения. Если текст правил можно назвать статичным, то здесь построение фраз часто зависит от переменных типа «имя игрока», «пол игрока» или «количество чего-нибудь». В английском-то с этим проще, фразы вида [name]'s ship loses [n] crew members или It is [name]'s turn пишутся одинаково для любого имени и любого n. А в русском если 1, то  астронавт, 2 или 4 астронавта, а 5 или 8  – уже астронавтов. И если это Петя’s ход можно довольно безболезненно заменить на ходит Петя, то сделать Петин корабль/корабль Пети из имени Петя (причем так, чтобы одновременно с этим из Яна получался корабль Яны, из Олег Олега, а из Лео Лео), значительно сложнее. Ну и всякие потерял/потеряла, который/которая и прочие великие и могучие особенности.

 

В-третьих, согласование фраз. Обычно текст идет «сплошным потоком» и ты видишь всю картину целиком (хотя бы в рамках одного диалога/абзаца).  Здесь же текст состоит из отдельных частей, которые могут сочетаться в различных комбинациях – кампания же нелинейная, а текст – отдельные фразы диалога. И заранее (в процессе перевода) можно лишь предполагать, как эти диалоги будут строиться, а проверить все комбинации «живьем» можно только многократно проходя кампанию и каждый раз выбирая другие варианты ответов и пытаясь создать новые игровые ситуации.

 

Ну и в-четвертых, перевод это не только текст, но и картинки. Правда, тут сложностей почти не возникло – мой давний друг Дмитрий Мольдон любезно согласился перевести все игровые картинки на русский язык. Спасибо ему еще раз)

 

Короче говоря, оказалось, что это далеко не «просто перевести текст». Особенно с учетом того, что основной его объем занимает «художка», диалоги, разговорные выражения. А ведь хочется сделать не просто перевод, а именно локализацию/адаптацию, а это значит – тщательный поиск идиом-аналогов, работа над стилистикой и лексикой (грубо говоря, чтобы речь гламурной дальнобойщицы на дизайнерском космолете отличалась от речи мелкого жулика, разводящего тебя на выпивку в местном баре). И, разумеется, хотелось как можно точнее передать замечательный юмор Влаада Хватила (для чего часто приходилось ориентировался на обе версии – английскую и чешскую).

 

 

Начавшись в самом конце декабря, работа над переводом заняла все новогодние праздники (благо они были длинные, а мои домашние с пониманием отнеслись к этому моему увлечению), потом еще неделю, а потом и остаток января. И в первых числах февраля я снова написал разработчикам, но теперь это было уже не просто  абстрактное «предлагаю помощь», а вполне конкретное «имею перевод, готов путешествовать», ну, то есть что-то типа «я тут приложение перевел, но у меня возникли сложности тут, тут и тут, а пока переводил, нашел несколько багов – тут, тут и тут (вот скриншоты)». 

 

Через пару дней пришел ответ «Хм, погодите, сейчас я свяжу вас с коллегой». А потом коллега ответил (ура!) и понеслась: багрепорты, вопросы и ответы, дополнительные разъяснения («да, действительно, в настолке летящий сзади метеорит можно сбить только пушкой в том же столбце, а в цифровой – в том же или соседнем, но это не баг, а фича»), множественные тестирования и согласования форматов. Выяснилось, что как раз в это время CGE начало готовить некую централизованную схему, призванную упростить работу с переводом на любые языки. Правда, в моем случае это было не совсем удобно – пришлось построчно вытаскивать перевод из готовых файлов, чтобы в итоге он также построчно загонялся в эти же файлы, но уже на их стороне.

 

Разумеется, помимо взаимодействия с CGE все это время шла работа над полировкой текста, менее удачные обороты заменялись более удачными, отлавливались опечатки, перефразировались выражения, вот это все.

 

Кстати, забавный курьез, вызванный, видимо, двойным языковым барьером (русский – английский – чешский – английский – русский): то, что у меня есть не просто переведенные тексты, а фактически рабочее приложение на русском языке, выяснилось чуть ли не через месяц после начала активного сотрудничества, причем, похоже, случайно, по очередной партии скриншотов (…but that they are already implemented to the app. How did you do that? :-O It is not so trivial. So not only you speak Russian, you like board games, but you are good programmer! At least it looks like it :)

А я по началу никак не мог понять, почему они постоянно предлагают мне помощь в интегрировании перевода в приложение =)

 

В итоге, несмотря на то, что перевод технически был готов еще в начале февраля (ну и на основную полировку текста ушло недели три-четыре), полноценные бета-версии «от разработчика» начали появляться только в апреле. На момент написания этой статьи русская (а точнее – мультиязычная, к начальным двум добавилось еще четыре языка) версия  все еще находится в стадии активного тестирования, но основная часть работы уже позади. Остались только технические и перфекционистские нюансы, типа небольших сложностей с субтитрами – по понятным причинам пришлось отказаться от хардсабов, а субтитры в виде отдельных файлов просто так поверх видео не выводятся (то есть они выводятся, но не совсем так, как хотелось бы). Ну или, например, мои любимые кавычки-елочки и тире (а не просто дефисы-минусы) появились в шрифте только неделю назад, а это значит, что нужно заново пересмотреть весь текст и внести необходимые правки.

 





 

В общем, следите за новостями.    Release Is Coming)

 

Подытожу

Перевод приложений – это не так страшно, как кажется. Да, это не всегда просто, но весьма интересно. А главное – ВОЗМОЖНО. Даже если вы раньше никогда этим не занимались.

 

Энтузиазм, тщательность, внимание к мелочам, терпение и снова энтузиазм. Ну и гугл, который и значение идиомы объяснит, и работать со спецутилитой научит, и контакты разработчиков подскажет. 

 

Дерзайте, товарищи, возможно всё!

Фото и видео

добавить
  • новые
  • популярные
zeeL написал 4 года назад: #

Супер. Твой труд весьма полезен! И за один только заголовок стоит поставить 10)

trent написал 5 лет назад: # скрыть ответы
Релиз русской версии

Таки да! Вышла.

play.google.com/store/apps/details?id=com.czechgames.galaxytrucker

Cсылки на версии для iOS, виндофона и kindle - galaxytrucker.com

trent написал 5 лет назад: #

(правда, мануал почему-то от старых бета-версий и с картинками-названиями карт небольшие косяки, уже пишу-разбираюсь)

Russtex написал 5 лет назад: # скрыть ответы

Скажу вам спасибо хотя бы здесь ! Надеюсь , разработчики оценят ваш вклад финансами .

p.s.Очень рад выходу локализации еще и потому , что электронные настолки на русском можно пересчитать пальцами одной руки ( Агрикола , МТГ и Барабашка ).

GamerXXX написал 5 лет назад: #

В мтг плохой русский. У них какой-то совсем дремучий переводчик берётся за цифровую версию.

trent написал 5 лет назад: #

Пожалуйста. Рад, что вам понравилось)

Насчет финансов - с моей стороны это по-прежнему полностью безвозмездный вклад. Может, что-то поменяется после релиза, но пока никто об этом речи не заводил)

Ну и традиционно - о всех замечаниях, предложениях и ошибках смело пишите мне в личку или на почту [email protected] Работа над переводом продолжается, плюс "CGE is also preparing *new content updates* of Galaxy Trucker for greater enjoyment of the game". Подозреваю, что что-то новое прикрутят к мультиплееру. А там, глядишь, и до допов дело дойдет)

OShiri написал 5 лет назад: #

Спасибо вам.

Imploded написал 5 лет назад: #

Спасибо огромное! Теперь мой шестилетний сын натренировался на планшете, а потом смог нас обыграть и в обычной настольной версии. Без поддавков! Это к слову о пользе цифровых версий.

Gravicapa написал 5 лет назад: # скрыть ответы
Есть код для Айфона

Разработчики прислали промки, остался один код для версии под Айфон. Кому надо - пишите в личку. Предупреждаю: код один, поэтому "не обижайтесь" - явно кому-то не достанется :)

Ах, да, условие получения - стаж на Тесере не менее 365 дней и рейтинг не менее 500.

trent написал 5 лет назад: # скрыть ответы

уот так уот, для айфонов промки раздают, скидки регулярные и всякое такое, а андроидоводам что делать?) остается просто гордиться тем, что ты андроидовод)

Slim_Slam_Snaga написал 5 лет назад: #

Shame is the name :D

memphis написал 5 лет назад: # скрыть ответы
Нет настокам без настолок!!!

По мне так настолки в электронном варианте это фу что такое...это как велотренажеры в спортивном центре против велопрогулки на на хорошем велосипеде по красивой местности, это как пластик с текстурой дерева, это как бой с тенью(много в голову еще нелицеприятных примеров лезет, не буду о них:)) это как сухарики со вкусом сыра, это как, это как, это как... в общем это как жизнь со вкусом жизни...И я немного не понимаю почему на сайте, посвященном настольным играм, такая тема имеет место быть и обсуждается с такой легкостью и непринужденность, любого ортодоксального настольщика бы это возмутило!
- Будешь играть в настолку на андроиде?
- Что Оо???
Это могло бы обсуждаться на сайте переводчиков, программеров и т.п., но никак не тут!(оно...именно "оно" могло бы быть мельком упомянуто в каком-то из обзоров игры, в самом конце и мелким шрифтом, но никак не быть полномасштабной новостью формата "Да, свершилось таки наконец") И я частенько вижу тут заголовки подобного плана, что та или иная игра появилась на андроиде или(О ЧУДО) скоро наконец-то таки появится, спешите! Эти заголовки меня заставляют поморщиться слегка и скорее пролистывать дальше, эту тему я тоже не читал и пожалуй это единственная тема подобного плана, которую я почему-то открыл решил тут отметить свое мнение! Потому, видимо, что за последние день-два-три(условно) я таких заголовков видел больше, чем заголовков про НАСТОЯЩИЕ настольные игры, нездоровая тенденция для данного ресурса.

Slim_Slam_Snaga написал 5 лет назад: # скрыть ответы

А чем хуже оригинала iOS-версия Каркассона?

memphis написал 5 лет назад: #

Печальный вопрос...Еще печальней, чем статья.

Russtex написал 5 лет назад: # скрыть ответы

Жесть какая ! Как вас в интернеты то занесло ? Вы же тут цветочки в противогазе нюхаете , вместо живого общения ! :)

p.s. Мои первые настольные игры появились вначале на планшете , а уже потом я начал "картон" покупать.

memphis написал 5 лет назад: # скрыть ответы

То то и оно, что Вы сначала онанизмом начали заниматься, а уже потом...или все еще нет?:)

Каждому свое, кому то 20ти летнее вино подавай, а кого-то и стекломой устраивает, печально то, что последних становится больше!

Janlynn написала 5 лет назад: # скрыть ответы

А давайте без обливания презрением? Или совсем невмоготу?

memphis написал 5 лет назад: # скрыть ответы

Тут согласен, презрения перелил!!!
Но очевидно же, чистый аффект!:)

oranged написал 5 лет назад: # скрыть ответы

Пока предупреждение, за которым может последовать бан. Держите себя в рамках приличия.

Janlynn написала 5 лет назад: # скрыть ответы

Кстати, сколько тут предупреждений до бана? А то у меня одно уже есть.

oranged написал 5 лет назад: #

Главное не схлопотать два предупреждения за короткий период времени. Второе превращается в бан.

Slim_Slam_Snaga написал 5 лет назад: #

На Камино стали выпускать клоны 6Fire?

Russtex написал 5 лет назад: #

Боюсь , что аналогия с вином и стекломоем тут не работает , т.к. в цифровые версии играют те же лица , что и играют "вживую" .

Janlynn написала 5 лет назад: # скрыть ответы

Я не поняла, вы предлагаете запретить компьютерные версии настолок, наказывать тех, кто в них играет или просто рассказываете, что лично вам они не нравятся? Для последнего варианта заголовок явно лишний :)

memphis написал 5 лет назад: # скрыть ответы

Наказывать мало!!! Казнить!!!:)

memphis написал 5 лет назад: # скрыть ответы

Если Вы "не поняли", то не читайте в дальнейшем текст под моим ником:)

Janlynn написала 5 лет назад: # скрыть ответы

Ну хотелось бы, чтобы вы все-таки прояснили свою точку зрения, ведь аж 4 абзаца написали :)

igelkott написал 5 лет назад: # скрыть ответы

Можно было ограничиться словами "ну хотелось бы":))

Janlynn написала 5 лет назад: # скрыть ответы

Да можно было бы вообще ничего не отвечать, а гордо пройти мимо :)

igelkott написал 5 лет назад: # скрыть ответы

Если просто пройти, то недостаточно гордо получается:))))

Janlynn написала 5 лет назад: #

Если повыше задрать нос, то получится ну очень гордо.

Janlynn написала 5 лет назад: # скрыть ответы

Да еще и с таким грозным заголовком.

memphis написал 5 лет назад: # скрыть ответы

Об этом читайте в статье с заголовком "Как я перестал бояться писать грозные заголовки"

П.с. Статья еще не написана!)

П.п.с. Казнить! Казнить нечестивцев, предателей веры!!!

Всё, ушел играть в каркасон на андроиде!:)

Janlynn написала 5 лет назад: #

:)))))))))))))

igelkott написал 5 лет назад: # скрыть ответы

А что делать с настолизациями комп.игр? Точнее, с теми, кто живое и теплое железо готов променять на холодный бездушный картон?

memphis написал 5 лет назад: # скрыть ответы

Их свои казнят! Компьютерные!:) Не наша епархия!!!:)

memphis написал 5 лет назад: # скрыть ответы

Что-то мне там предупреждением каким-то грозили...начал делай!!!(особенно это будет уместно в этом случае, когда никакой объективной причины ни для "предупреждения" ни уж тем более для "бана" не было!). У тебя там такое вон понаписано повсеместно, а ты к безобидной фразе прицепиться решил!

Честно сказать, после такого обилия статей про андроиды и прочий шлак от местных словоблудов(не буду показывать пальцем и так понятно думаю), которого за столь короткий временной промежуток здесь вылилось ОЧЕНЬ много, я "членством" тут не особо дорожу!!!

Будет бан? Честное слово, если будет, то когда кончится - "ноги моей" тут больше не будет!

memphis написал 5 лет назад: # скрыть ответы

А вот еще тоже момент...почему этих ораторов-провокаторов, которые без всякой мысли вылезли и занимаются нехорошестями, провоцируют автора комментария на резкость своим хамством и оскорблениями, почему их никто не озадачился "предупреждать/банить"???

"Жесть какая ! Как вас в интернеты то занесло ? Вы же тут цветочки в противогазе нюхаете , вместо живого общения ! :)"

Почему вот это Вас не заинтересовало как предмет для "предупреждения"??? Предупредите ка хамство и провокации эти на корню!!! Мне вот это очень хамским, оскорбительным, имеющим конкретного адресата, изречением показалось! После чего, к слову говоря и пошел основной размен любезностями, не очень то и выходящий, кстати, за "рамки приличия"(разве что самую-самую малость). В любом случае, не я его начал(этот размен любезностями), почему претензии ко мне? Мой был лишь комментарий, а "работать" тебе(верю все же, что Вам, а не тебе) надо в направлении зачинщика сложившейся ситуации, а не автору вполне себе сдержанного (и что самое главное, несущего мысль, а не пустой треп) и в "рамках приличия" изложенного комментария изначального грозить предупреждениями!

Russtex написал 5 лет назад: #

Остаюсь при своем мнении , касающемся существования электронных версий настольных игр. Но, приношу свои извинения, за возможно излишнюю резкость в высказываниях.

Daemonis написал 5 лет назад: # скрыть ответы

А как решилась проблема с родами и склонениями?

trent написал 5 лет назад: #

Долго и мучительно решалась, но в итоге все же решилась)
Перефразирования, замены, вот это всё.

В частности, приведенное выше "[name]'s ship loses [n] crew members" превратилось в "[name] теряет [n] членов экипажа" (причем хитрой конструкцией при n<2 выводится "[name] теряет [n] члена экипажа"), а какое-нибудь "[name] has the smallest crew and becomes the target of sabotage!" пришлось вывернуть в "Игрок с наименьшим размером экипажа: [name], поэтому [name] становится объектом саботажа!".

Впрочем, вы скоро сами все увидите)