Как переводить новеллы
Доброго всем времени суток! Тут довольно обширная аудитория, и я бы хотела у вас спросить: как можно переводить новеллы? Без использования программы Visual Novell Reader и ей подобных, а именно чтобы менять код игры и чтобы русский оставался в этой игре навсегда. Ибо если я иностранный знаю хорошо, то в программировании я полный валенок :с
Поэтому бы хотелось услышать ваши советы, какие программы для этого использовать и с чего вообще начать.
Спасибо!
Дубликаты не найдены
Ну давайте по порядку.
Новеллы разрабатываются на разных движках. Ну или если сказать проще — имеют разные основы.
Чтобы перевести новеллу нужно:
1) чтобы движок хранил данные(строки) в открытом виде. (то есть был где-то файл со всеми строками, либо в ресурсах исполняемого файла)
2) чтобы движок позволял менять данные(к примеру renpy хранит строки просто в файлах, можно спокойно менять. А самописные движки(чем грешат японцы) зачастую имеют проверки на корректность данных, то есть к примеру хранится текст в 50 иероглифов и программа читает именно 50 символов. Что соответственно даст возможность вставить только 50 русских буковок и не больше. А т.к. емкость языков разная, то зачастую часть перевода просто теряется.
3) чтобы новелла не была защищена. Японцы опять же грешат проверкой контрольных сумм и проверки на изменение файлов. То есть при изменении одного символа, новелла просто не запустится, выдаст что-нить типа «Копия повреждена, переустановите».
Ну и в части новелл для перевода необходимы знания программирования. Пусть и начальные, но знания. Тот же renpy — перевод может храниться как в базе данных, так в текстовом файле или вообще быть зашифрован 🙂
То есть к примеру перевод новеллы на движке renpy в принципе заключается в простой замене строк текста. Новелла на rpg maker требует декомпиляции(разархивирования) ресурсов и замены строк и обратной компиляции(архивирования). Новелла на самописном движке нуждается в анализе места хранения текста, анализе механизма защиты этого текста и прочая.
Подытожу — если новелла на распространенном движке, то перевод не составит проблемы. Если же имеет хоть чуточку оригинальности в коде, будут проблемы. А некоторые новеллы на самописных движках в буквальном смысле требуют переписывания всей новеллы(что маловероятно, т.к. реверс инжиринг будет стоить больше, чем полгода переводов :D).
PS если б все пользовались одним движком проблемы бы не было 🙂
Visual Novel Reader’s (сообщество программы VNR)
Официальное сообщество русского сервера Visual Novel Reader.
Сообщество переводчиков игр, через эту программу.
Существуем при поддержке сайта AniClan.Com
Visual Novel Reader – самая продвинутая и многофункциональная «читалка» для визуальных новелл. Имеет множество различных функций, и может применяться не только для чтения новелл теми, кто плохо знает японский (или другой) язык, но и для их перевода, и последующего экспорта этого перевода в патч.
Итак, как же может применяться VNR?
Помимо того, что эта программа является отличным парсером, у неё есть несколько интересных фишек, которые выделяют VNR среди других аналогов.
1. Использование нескольких видов авто-переводчико], в том числе переводчиков на русский. А также настраиваемые функции вывода фуриганы, грамматических ролей слов и прочего. Что поможет не только для обычного чтения новелл, но и для изучения японского языка, сделав этот процесс гораздо интересней.
2. Программа может использоваться не только для чтения игр на японском, но и на других языках (например английском).
3. Помимо обычных игр, программа совместима с некоторыми версиями ps2 эмуляторов и PPSSPP.
4. TTS – программная озвучка (и авто-озвучка) текста в играх. Озвучивает неозвученные диалоги в играх Отлично подходит для тех, кто неплохо знает японский «на слух». А также, для новелл без озвучки.
5. Shared Dictionary — общий онлайн-словарь пользователей, в который каждый человек может заносить перевод тех или иных фраз. Значительно улучшает качество авто-переводчиков.
6. OCR — визуальное распознавание текста с экрана и его перевод или вывод в TTS.
Также функция OCR позволяет играть при помощи внр во все игры, даже те, которые не подключаются непосредственно к внр (в т.ч. браузерные)!
Одной из главных фишек VNR является совместный онлайн перевод игр. Он позволяет вам, не открываясь от самой игры, делать её ручной перевод (а также дорабатывать и редактировать переводы других пользователей). И для этого не нужно ковыряться в файлах самой игры, ведь достаточно просто запустить её через VNR и ручной перевод скачается и подключится самостоятельно. Так что эта программа отлично подойдёт для новичков, которые хотят проверить свои силы в переводе.
Также, имеется возможность экспортировать перевод из VNR, для создания полноценного патча.
Подробнее об этой функции в отдельных гайдах — Гайд №2 Создание и редактирование перевода в VNR. А также последующий быстрый перенос в скрипт.
Перевод визуальных новелл с японского на русский
Для уменьшения вопросов по поводу использования описанных методов, настоятельно рекомендуется чтение статьи последовательно с первой главы, включая главы, содержание которых может показаться не интересным.
Многие любители визуальных новелл отказываются играть в японские версии игр и ждут, когда же выйдет хотя бы англоязычный патч. Но процесс перевода даже на английский обычно занимает месяцы, иногда годы. За это время игроки могут совсем забыть об игре. А ведь можно играть и в японские версии, переводя их автоматическим переводчиком! Да, перевод не будет грамотным, а иногда не будет правильным, но понять, о чём идёт речь будет можно.
Постараюсь в этой статье описать процесс автоматического перевода японских визуальных новелл для ПК на любой язык.
Лучше всего использовать несколько автоматических переводчиков, чтобы, при неразборчивом переводе в первом, прочитать более понятный перевод во втором. В любом случае, перевод будет несвязным, но при наличии воображения связать слова в правильное предложение и понять смысл будет не сложно. Также желательно, но не обязательно, знать перевод хотя бы наиболее часто используемых японских слов.
Кратко плюсы и минусы:
+ Таким методом можно во время игры переводить на русский язык почти любую визуальную новеллу.
± Перевод в основном получится несвязным, но смысл понять можно.
— Играть придётся только в оконном режиме.
— Варианты выбора действий зачастую не поддаются автоматическому переводу.
— Для перевода с помощью онлайн-переводчиков требуется постоянное интернет-соединение.
— Этот метод поддерживает только визуальные новеллы, текст в которых выводится на языках, в которых отсутствуют пробелы между словами. Извлекать текст из новелл на других языках можно, но все слова будут написаны слитно друг с другом.
I. Необходимые программы:
1. Microsoft AppLocale (зеркало) — программа для эмуляции локали Windows, отличной от используемой (рекомендуется на Windows XP/Vista/7).
2. ITHVNR (ITH) (Interactive Text Hooker with the VNR engine) — программа для извлечения текста из визуальной новеллы. ITHVNR — модификация программы ITH с добавлением в неё части функционала программы VNR (Visual Novel Reader).
Пройдя по ссылке следует найти в теме форума последнюю версию программы и скачать её.
3. Translation Aggregator — программа для автоматического перевода текста из буфера обмена.
3.1. Рекомендуемые настройки для Translation Aggregator (описание на 2 абзаца ниже) .
4. NTLEA (NT Locale Emulator Advance) — альтернатива Microsoft AppLocale. Стоит использовать только в случае, если с игрой не работает AppLocale. Программа русифицирована автором статьи.
5. Ntleas (NT Locale Emulator Advance) — эмулятор локали, основанный на NTLEA. Более совершенный, чем NTLEA. Стоит использовать только в случае, если с игрой не работает AppLocale.
6. Locale Emulator — ещё один эмулятор локали, для Windows 7-10. Рекомендуется в случае, если с игрой не работает AppLocale (настоятельно рекомендуется на Windows 8/8.1/10).
Для корректного запуска японских игр зачастую требуется японская локаль Windows. Многие игры можно успешно запустить и в любой другой локали, но в процессе игры могут случиться ошибки или, что бывает чаще всего, текст будет отображаться не иероглифами, а иными символами. Чтобы избежать подобных проблем, можно эмулировать японскую локаль с помощью программы Microsoft AppLocale. Для этого нужно установить эту программу в Windows.
Остальные программы можно после скачивания распаковать из архива в любую удобную папку, но где они будут находиться постоянно. Желательно не распаковывать программы в одну общую папку, лучше разложить их по отдельным, но так, чтобы их было легко найти.
Здесь можете скачать файл конфигурации для Translation Aggregator (2015.04.29 r178), созданный автором статьи, содержащий рекомендуемые настройки. Теоретически он может работать с любой версией программы, не только с указанной.
Данный файл настраивает программу на автоматический перехват текста из буфера обмена (куда его отправляет ITH) и автоматический перевод с японского языка на русский с помощью Переводчика Google и переводчика Bing (он же «Microsoft Translator»). Также в архиве содержится инструкция по настройке словаря JParser, способного переводить отдельные слова на английский язык (для этого нужно навести мышь на выделенный цветом участок текста).
Остальные переводчики при этой настройке выключены, но их при необходимости можно включить. Перевод с японского на русский поддерживают также переводчики Excite, LEC Online и Babylon. Для включения поставьте соответствующие галки в меню «Window». Но у этих переводчиков, по мнению автора статьи, ниже качество перевода.
II. Запуск игры и настройка перевода.
Эмуляция японской локали.
Если запуск игры с файла запуска проходит корректно, текст отображается правильно, нет системных ошибок, то игру можно запускать напрямую с файла запуска.
Если же при запуске игры появляются ошибки, или уже в процессе игры текст выводится непонятными символами, совершенно не похожими на иероглифы, игру следует запускать через программу Microsoft AppLocale.
Запуск игры через AppLocale возможен двумя способами: из окна программы и с изменённого ярлыка игры. В этом руководстве дальше подразумевается второй вариант, но с помощью первого можно легко создать тот самый ярлык.
1. Запустите Microsoft AppLocale, в приветствующем окне нажмите «Далее».
2. Во втором окне, если не стоит, то поставьте флажок на «Launch an application», нажмите кнопку «Browse. «, выберите файл запуска игры и нажмите «Далее».
3. В пункте «Language of the application» выберите «日本語» (обычно, предпоследний или последний пункт).
4. В последнем окне программы поставьте галку для создания ярлыка для дальнейшего запуска игры через AppLocale из меню «Пуск», если требуется. В конце нажмите «Готово».
Ручная настройка ярлыка игры.
Ярлык для запуска игры через AppLocale можно создать по методу выше, но можно пойти другим путём, изменив вручную ярлык к файлу запуска игры. Этот метод некоторым может показаться проще. Если Вы уже создали ярлык с помощью Microsoft AppLocale, то в этом разделе ничего уже делать не нужно, только прочтите его для понимания метода, затем переходите к настройке ITH.
Предположим, что файл запуска игры расположен по адресу
C:\Program Files (x86)\Games\игра\игра.exe
Дальше в руководстве будет использоваться этот путь для примера.
Создайте ярлык для «игра.exe» на рабочий стол (если его там создала программа установки игры, то новый делать не нужно). Для этого по «игра.exe» сделайте правый щелчок мыши и выберите «Отправить -> Рабочий стол (создать ярлык)».
В свойствах созданного ярлыка нужно полностью изменить путь к «игра.exe», вписав в строке «Объект» вместо имеющегося текста такой (запуск игры через AppLocale):
C:\Windows\AppPatch\AppLoc.exe «C:\Program Files (x86)\Games\игра\игра.exe» «/L0411»
Если в строке «Рабочая папка» прописан правильный путь к папке с игрой, то текст в строке «Объект» можно сократить до
C:\Windows\AppPatch\AppLoc.exe «игра.exe» «/L0411»
С помощью этого ярлыка будем запускать игру.
При каждом запуске игры AppLocale будет спрашивать подтверждения запуска игры с его помощью, это не ошибка, просто нажимайте «OK» для подтверждения.
Настройка ITH.
Для извлечения текста из игры существует много программ, мы будем использовать одну из них — ITH (Interactive Text Hooker). Эта программа умеет извлекать текст из многих известных движков визуальных новелл.
Важно! ITH не сможет перехватить текст из игры, если он вставлен в игру в графическом виде (картинкой). Также зачастую ITH не может увидеть варианты выбора действий (если они есть в игре).
После запуска игры (с помощью созданного ярлыка) запустите ITH.
При первом запуске программы в меню «Option» поставьте галочку напротив пункта «Auto copy to clipboard» и нажмите OK.
Для поиска текста из игры сделайте следующее:
1. В меню «Process» выберите в списке файл exe игры или созданный ею временный процесс (иногда отображается как набор букв и цифр, пример: «0F0B663F.exe»), нажмите кнопку «Attach» и кнопку «OK».
2. В игре начните игровой процесс, чтобы появился текст диалогов. Если процесс уже начат, нужно, чтобы текст сменился.
3. В окне программы вместо «ConsoleOutput» выберите поток, отображающий текст из игры.
Если текст из игры в ITH не появился, значит при выборе процесса Вы выбрали не тот файл exe. Снова откройте окно выбора процесса, выделите этот файл exe и нажмите кнопку «Detach», файл отвяжется от программы ITH. После этого выберите другой файл и повторите эти действия пока в ITH не отобразится текст из игры.
Чтобы не повторять захват процесса игры при каждом запуске ITH, можно нажать кнопку «Save» в верхнем правом углу программы, настройка сохранится в меню «Profile». При следующем запуске ITH и игры, ITH сразу подхватит процесс игры. Для каждой игры нажатием кнопки «Save» будет создаваться новый профиль. При необходимости эти профили можно удалять в меню «Profile».
В случае установки на игру патчей или модификаций, профиль игры в ITH нужно будет удалить и создать снова.
Настройка Translation Aggregator.
1. Запустите программу Translation Aggregator.
1.1. Если Вы не стали скачивать настройки для Translation Aggregator, сначала произведите его настройку: в меню «Tools» выберите языки, с которого и на который будет делаться перевод, в меню «Window» выберите с помощью каких автопереводчиков Вы желаете делать перевод. Прямой перевод с японского на русский поддерживается переводчиками Google, Bing, Excite, LEC Online и Babylon. В окнах переводчиков и в окне «Original Text» нажмите кнопку, подписанную как «Automatic Clipboard Translation» для того, чтобы Вам не пришлось копировать его туда вручную.
1.2. Для использования словаря JParser, способного переводить отдельные слова на английский язык (для этого нужно навести мышь на выделенный цветом участок текста), нужно скачать файл словаря. Для этого скачайте здесь архив «edict2.gz», поместите его в папку «dictionaries» (должна быть в папке программы), запустите программу, в папке «dictionaries» будет автоматически создан файл «edict2.gz.bin», размером примерно в 3 раза больше скачанного файла. Теперь словарь JParser в программе должен заработать, можно удалить скачанный архив «edict2.gz».
2. В игре начните игровой процесс, чтобы появился текст диалогов. Если процесс уже начат, нужно, чтобы текст сменился. В Translation Aggregator появится его перевод на выбранный Вами язык.
2.1. Если перевод не появился, проверьте настройки Translation Aggregator или скачайте настроенный файл конфигурации (ссылки на скачивание в главе I) .
3. Продолжайте игру, ITH и Translation Aggregator будут автоматически переводить весь видимый ими текст.
III. Если игра не запускается с AppLocale.
Бывает, что игра не запускается или запускается с ошибками даже через Microsoft AppLocale. В таких случаях на помощь приходят программы сторонних разработчиков — NTLEA (NT Locale Emulator Advance), Locale Emulator и подобные. Эти программы, как и AppLocale, эмулируют японскую локаль, только иначе.
Использование NTLEA.
Рассмотрим NTLEA (NT Locale Emulator Advance). Её имеет смысл использовать при неудаче эмуляции локали с помощью AppLocale на Windows XP/Vista/7.
Программа работает в двух режимах — эмуляция японской локали с запуском игры через файл программы и эмуляция японской локали в контекстном меню файла запуска игры. Первый вариант проще, не требует установки программы в систему, но не всегда работает. Потому рассмотрим оба варианта.
Запуск через файл программы:
1. Распакуйте программу из архива в любую удобную папку.
2. Запустите файл «ntleac.exe» и выберите файл запуска игры. Игра запустится в японской локали.
Запуск из контекстного меню файла запуска игры:
1. Распакуйте архив в любую удобную папку, где она будет храниться постоянно.
Путь к этой папке должен содержать только латинские буквы, цифры и другие однобайтовые символы!
2. Запустите файл «NTLEA.exe», нажмите «Установить» (программа пропишется в реестре Windows), после этого ниже выберите желаемую локаль для запуска игры (в нашем случае — японская) и нажмите «ОК».
3. Запустите игру с помощью правого щелчка мыши и выбора пункта «Запустить в другой локали» — «Японский».
В этой статье предполагается использование AppLocale! Если Вы запускаете игру в NTLEA, то примите это во внимание.
Использование Locale Emulator.
Настоятельно рекомендуется к использованию вместо AppLocale на Windows 8/8.1/10!
Установка программы:
1. Перед первым запуском поместите эту программу в папку, где она будет храниться постоянно.
Путь к этой папке должен содержать только латинские буквы, цифры и другие однобайтовые символы!
2. Запустите файл «LEInstaller.exe», нажмите «Install» («Установить»), программа пропишется в реестре Windows. Закройте это окно.
3. Запустите файл «LEGUI.exe», выберите желаемую локаль для запуска игр (в нашем случае — японская) и нажмите «Сохранить».
Использование программы: Для использования этой программы не требуется создавать и редактировать ярлыки на файл запуска игры. (Но если очень хочется — можно.) Можно лишь сделать обычный ярлык на рабочем столе для удобства запуска.
Запускать игры в японской локали здесь будем из контекстного меню. А если игра требует особых настроек, можно создать в папке игры файл конфигурации Locale Emulator.
Запуск из контекстного меню: на ярлыке игры (или файле запуска игры в папке) сделайте правый щелчок мыши и выберите «Эмулятор локали» -> «Запустить на японском».
Создание файла конфигурации Locale Emulator: на ярлыке игры (или файле запуска игры в папке) сделайте правый щелчок мыши и выберите «Эмулятор локали» -> «Изменить профиль приложения». В открывшемся окне выберите необходимые настройки и нажмите «Сохранить».
В этой статье предполагается использование AppLocale! Если Вы запускаете игру в Locale Emulator, то примите это во внимание.
IV. Вездесущие имена говорящих персонажей или коррекция текста перед переводом.
Часто бывает, что захват текста из игры происходит вместе с именем говорящего персонажа.
При переводе автопереводчиком, программа не учитывает, что имя к тексту не имеет прямого отношения и в переводе выдаёт единый, иногда даже связный текст. Но этот текст не имеет ничего общего с тем, что хотел сказать персонаж. Поэтому лучше сделать так, чтобы имя в переводчик не отправлялось. Для этого в Translation Aggregator есть удобная функция замены текста. Находится она по пути «Tools -> Substitutions. «.
В поле «Original text» вставьте имя персонажа и открывающую кавычку (можно скопировать из окна «Original Text» в основном окне программы), а в поле «Replacement text» вставьте только открывающую кавычку и нажмите кнопку «Add».
Потом нажмите кнопку «OK», чтобы сохранить изменения. Также поставьте галку в меню «Tools -> Enable Substitutions«, если она не стоит.
В результате переводиться будет только текст в кавычках, без имени. В окне JParser также будет выводиться изменённый текст.
С помощью этого меню можно также корректировать текст перед переводом. Можно, к примеру, вообще убрать эти кавычки (в поле «Original text» вставить кавычку, а поле «Replacement text» оставить пустым). Можно изменять часто повторяющиеся и неправильно переводимые слова в тексте (те же имена переводчики очень «любят» переводить по их значению).
V. HOOK.
Во многих играх от крупных издателей используются особые скрипты вывода текста, о которых ITH может не знать. Для перехвата текста этих игр потребуется либо обновить ITH, если есть обновления, либо найти специальный код hook (или h-code или AGTH-code), который нужно будет добавить в ITH в поле ввода, расположенное между кнопками меню и выбором потока и нажать Enter на клавиатуре.
Код hook выглядит примерно так: «/HB18*0@4D2EC4«.
База данных кодов hook
Надеюсь, что понятно описал процесс. Если есть вопросы, можете задать их в комментариях или через форму обратной связи (во втором случае ответ придёт к Вам на e-mail и впоследствии будет добавлен в статью, если содержит важную информацию).
Последнее обновление статьи: 28.10.2016
Ссылки действительны на 6.02.2016
Старую версию руководства, основанную на использовании программы AGTH, при необходимости можно прочесть здесь.