Совместный перевод: переводите японскую игру командой в реальном времени
Фанатский перевод обычно превращается либо в одиночную рутину, либо в хаос из архивов, которые пересылают туда-сюда. Совместные проекты RuneTranslate собирают всю вашу команду в одном живом общем проекте — как Google-таблица для перевода игр. Присутствие в реальном времени (кто на какой строке, цветная рамка выделения), редактирование по принципу «последняя запись побеждает», код приглашения из 20 символов и участники на бесплатном тарифе, которые могут подключаться и редактировать. Как создать такой проект, кто что может и как всё остаётся синхронным.
Целая игра — это очень много текста для одного человека. Очевидное решение — разделить его с друзьями, но исторически это означает, что каждый переводит свою копию, а в конце кто-то сшивает куски вместе, молясь, чтобы никто не тронул тот же файл. Строки переводятся дважды, правки исчезают при слиянии, и вы узнаёте об этом через три недели, когда диалоги начинают противоречить сами себе.
Совместные проекты полностью убирают эту проблему. Один человек размещает общий проект; все остальные подключаются по коду и редактируют тот же самый проект одновременно, в том же редакторе — как Google-таблица для перевода игр. Вы видите курсоры и правки друг друга за пару секунд. Никаких архивов, никакого слияния, никакого «стоп, а какая версия сейчас актуальная?».
Как это работает вкратце
Один участник создаёт совместный проект и получает код приглашения из 20 символов. Он делится кодом; товарищи по команде вставляют его, весь проект синхронизируется на их машину и открывается в обычном редакторе. С этого момента каждая правка любого участника отправляется на сервер и подтягивается всеми остальными каждые несколько секунд. Это по-прежнему настоящий локальный проект на диске у каждого — просто он остаётся синхронизированным со всеми остальными.
Как запустить общий проект (хост)
Создание совместного проекта — это привилегия Supporter ($3/mo). В диалоге создания проекта есть переключатель Collaborative — включите его перед созданием, и вместо чисто локального проекта RuneTranslate загрузит его и выдаст вам код приглашения (сразу скопированный в буфер обмена). Тот, кто создаёт проект, становится владельцем.
Почему ограничивают создание, но не подключение? Размещение живого общего проекта — это как раз та часть, что расходует ресурсы сервера, поэтому она работает по той же лёгкой модели «платишь за размещение / пользуешься бесплатно», что и память переводов. Все, кого вы пригласите, переводят бесплатно — подписка оплачивает комнату, а не места в ней.
Подключение (все остальные — включая бесплатный тариф)
Подключение бесплатно. Любой авторизованный пользователь, включая бесплатный тариф, может подключиться к совместному проекту и полноценно его редактировать. На главном экране нажмите Join, вставьте код из 20 символов — и проект скачается и откроется. Мест только для чтения нет: если вы вошли, вы можете переводить.
Сам код состоит из 20 символов намеренно однозначного алфавита — без похожих 0/O или 1/I/L — примерно со 100 битами энтропии, так что угадать его нельзя. Если код когда-нибудь утечёт, владелец может перегенерировать его; старый сразу перестаёт работать.
Кто что может
Есть две роли, и они простые:
- Владелец (создатель) — может переименовать проект, перегенерировать код приглашения и удалять участников. Владелец не «выходит» из проекта; он его удаляет.
- Редактор (все, кто подключился) — может редактировать любую строку, менять статус строки и выходить когда угодно. Редакторы не могут никого исключать или делиться кодом заново.
Никакой блокировки или владения по строкам нет — любой может редактировать любую ячейку. Это сделано намеренно: именно это позволяет делить работу по главам, по файлам или просто по принципу «кто сейчас в сети» совершенно без трения.
Видеть друг друга — присутствие в реальном времени
Именно эта часть создаёт ощущение общего документа. Каждый участник получает устойчивый цвет (выведенный из его аккаунта, поэтому у всех он выглядит одинаково) плюс инициалы или аватар. Пока вы работаете, вы видите:
- Кто в сети — точка присутствия, которая становится неактивной, если человек не подавал сигнала около 20 секунд.
- На какой строке каждый — их цветной маркер стоит на ячейке, которую они редактируют, так что вы можете наблюдать, как команда продвигается по сценарию.
- Что они выделили — «синяя рамка». Если товарищ по команде выделяет рамкой диапазон строк, вы видите этот диапазон подсвеченным его цветом, так что знаете, за что он вот-вот возьмётся (до 500 строк за раз).
Обновления идут через опрос: примерно каждые 2,5 секунды, пока окно в фокусе (и более щадящие ~8 секунд, когда оно в фоне, чтобы экономить трафик). Так что строка другого переводчика появляется у вас на экране примерно через две-три секунды после того, как он её зафиксировал. Почти в реальном времени, а не мгновенно — но более чем достаточно быстро, чтобы координироваться, не мешая друг другу.
Что происходит, когда двое редактируют одну строку
Последняя запись побеждает, для каждой ячейки. Если двое редактируют одну строку почти в один момент, останется та правка, которая пришла на сервер последней. На практике это редко мешает — вы видите, кто на какой строке сидит, — но таково правило, поэтому если вы с товарищем оба схватили одну хитрую строку, обсудите её, а не гонитесь наперегонки. Каждая строка независима, поэтому одновременные правки разных строк никогда не конфликтуют.
Это по-прежнему ваш проект — офлайн и экспорт
Совместный проект — это обычный .rtproj на вашем диске, а не тонкое удалённое окно. У этого два приятных следствия. Он корректно деградирует офлайн: если связь пропадёт, вы продолжаете переводить, ваши правки встают в локальную очередь и синхронизируются, как только вы вернётесь. И экспорт работает точно так же, как в любом другом проекте — любой, у кого есть своя копия файлов игры, может собрать переведённую игру из общих переводов. Совместная работа касается текста; папка с игрой у каждого по-прежнему своя.
Общие проекты истекают через 15 дней простоя
Общий проект не рассчитан на то, чтобы жить на сервере вечно. Если он проведёт 15 дней без правок, он автоматически удаляется — вместе со всеми участниками. На карточке проекта показан обратный отсчёт «Истекает через N дней», который становится янтарным по мере приближения срока, так что это никогда не станет неожиданностью. Любая правка сбрасывает счётчик, поэтому активный проект никогда не истекает — так убираются только заброшенные. Если хотите сохранить готовый перевод, сделайте локальный экспорт, пока время не вышло.
Мелкий шрифт
- До 50 участников на общий проект.
- Память переводов и глоссарий остаются личными. Они не объединяются в общий фонд команды — глоссарий и TM каждого переводчика принадлежат ему, а ваши правки по-прежнему пополняют вашу личную память для будущих проектов. Чтобы имена персонажей были единообразными по всей команде, договоритесь о них заранее или поделитесь CSV-глоссарием.
- Вы контролируете качество. Каждый участник может запустить ИИ-редактор и выбрать своего провайдера как обычно; общий проект просто хранит текст.
- Только для авторизованных. Для подключения и редактирования нужен аккаунт, а конечные точки совместной работы используют те же проверки от подделки, что и остальные платные облачные функции — так что общий проект нельзя тронуть снаружи приложения.
Как вести командный перевод
- Хост: в окне создания проекта включите Collaborative, создайте — и код приглашения окажется в буфере обмена. (Supporter.)
- Поделитесь кодом с командой любым удобным способом — личное сообщение в Discord вполне подойдёт.
- Товарищи подключаются: Главная → Join → вставить код. Проект открывается у всех.
- Разделите работу — по главам, по файлам или просто по тому, кто в сети. Следите за цветными курсорами и рамками выделения друг друга, чтобы каждый держался своей полосы.
- Переводите как обычно. Каждая правка синхронизируется за пару секунд; используйте редактор и свой глоссарий ровно так же, как в одиночку.
- Когда закончите, любой может экспортировать против своей копии игры. Сделайте локальный экспорт, пока не истёк 15-дневный счётчик простоя.
Подводя итог
Одиночный машинный перевод доводит игру до состояния «читаемо». Команда делает её хорошей — и быстрее, — а совместные проекты берут худшую часть командного фанатского перевода, поддержание работы всех в слитом и актуальном виде, и просто заставляют её исчезнуть. Один человек оформляет подписку, чтобы разместить проект; все остальные подключаются бесплатно и переводят один и тот же живой проект, вместе с курсорами и всем прочим.
Скачайте RuneTranslate, запустите совместный проект и отправьте своей группе код.
Готовы попробовать RuneTranslate?
Бесплатный тариф открывает все движки и всех провайдеров перевода. Supporter ($3/mo) открывает полную скорость.
Скачать для Windows