Перейти к содержимому
Zone of Games Forum

Рекомендованные сообщения

header.jpg?t=1667371736

Скоро игре 5 лет, а перевода всё нет, и нет. 

Придётся заняться самим.

Движок: Unity

Жанр: Решение с последствиями, Детективное, Симулятор.

Скрытый текст

ss_4c6c5a4884d488901e46f59b27a927fabfaa6bdf.600x338.jpg?t=1667371736ss_47c3834a936809e97a1cdb73c92d08dc3e3be0cb.600x338.jpg?t=1667371736ss_93240f1b975ade56fe039b11a69b8e975f9e19e3.600x338.jpg?t=1667371736ss_f6b027840e7686b027c3abdbe1d5e24cdea732c2.600x338.jpg?t=1667371736ss_1db871954330237c38a19c52addbe32520a7c04c.600x338.jpg?t=1667371736ss_2b83b31983ba0ebfdd54c8bcf1809206fd81c5ff.600x338.jpg?t=1667371736ss_4bc23d36da8c86102cb9121a8d6750dc2ebe0f5b.600x338.jpg?t=1667371736ss_86496956257de4d0d31f08481a1f8f06cef2508e.600x338.jpg?t=1667371736ss_546d3e707cf4ddfcda75365949c31626c642f261.600x338.jpg?t=1667371736ss_9810d081f383354d0d0d55cbd14bcfd4f3ccc238.600x338.jpg?t=1667371736ss_481d6b34edea76cd25153c63b20543833a8e30cd.600x338.jpg?t=1667371736ss_fadd80d3e96e8a9af1ff115a45cc092b45d997ec.600x338.jpg?t=1667371736

 

Изменено пользователем mordamax

Поделиться сообщением


Ссылка на сообщение
5 часов назад, Amigaser сказал:

@Saimys87 русский SDF шрифт Ubuntu сделал в разных вариантах, которые в игре используются. В архиве дампы для шрифта для Unity Patcher. https://disk.yandex.ru/d/8fdbp8xPI_ruZA
А в этом архиве шрифты уже импортированные в ассеты игры. Их просто скопировать с заменой в папку Ignorance_Data
https://disk.yandex.ru/d/JWjCw-kKlDbcTA Возможно где-то в игре ещё и другие шрифты используются, это можно выявить только по мере её прохождения. Тогда нужно вычислять нужный шрифт и заменять его на похожий русский.

С текстами оказалось чуть сложнее, чем ожидалось. Не весь текст в объектах TextMeshProUGUI, некоторый в объектах с другими классами, и некоторый скомпилирован прямо в код в виде строк. Напр., как надписи на третьем скрине. Но основной текст всё же в объектах TextMeshProUGUI. Ещё есть проблемы, что переведённый текст может на влезать в контейнер для него предназначенный, банально из-за того, что перевод на русский длиннее английского текста. Даже в настройках это проявилось. Тут, кроме как сокращать русский текст, не знаю что ещё можно сделать.
https://disk.yandex.ru/i/5iHP2pfHs_usxQ
https://disk.yandex.ru/i/CNj-aUGwqCW9zg
https://disk.yandex.ru/i/_xNyVdZhOqZhyg
Вот вытащенный текст по файлам ресурсов из объектов TextMeshProUGUI. Это просто текстовые файлы в формате json. Добавлять перевод нужно в поле textru (в кавычках). Переводить можно только текст, escape-последовательности (перенос строк и пр.), обратные слэши, служебные символы и тэги не трогать. В тэгах можно переводить только текст в них.
https://disk.yandex.ru/d/mjxG1KGG6RvIGw
Если надо, можно текст и в таблицу Эксель, где будет и поле для перевода (textru). После перевода вставлю перевод в дампы и импортирую в ассеты в ресурсах. Я вижу процесс перевода так:
- проходить игру, и по мере прохождения искать в json-файлах фразы и переводить их в контексте игры. 
- после прохождения вставлю перевод в игру, и нужно будет его протестировать по мере прохождения
- тексты, которые остались не переведённые, записывать в текстовый файлик с их переводом, я смогу затем англ. текст поискать в ресурсах игры и заменить их на перевод. Также можно отдельно сохранять русские тексты, которые не вписываются в контейнеры для них предназначенные. И думать как их сократить, заменить.
Вот как-то так… Тогда может получиться вполне приличный перевод этой игры.

Теперь вопрос: как мне это переводить? o_O Напрямую через файлы никак? Или я просто читал невнимательно

Поделиться сообщением


Ссылка на сообщение

@Saimys87 что непонятного? Берёшь текст из поля "texten", переводишь, и вставляешь перевод в поле "textru". Сохраняешь изменения. Когда всё переведёшь, скинешь мне файлы с переводом. Я импортирую перевод в ресурсы игры. А если захочешь сам попробовать заняться импортом, напиши в личку. Попробую рассказать что да как.

Поделиться сообщением


Ссылка на сообщение

Как импортировать атласы и метрики для шрифтов, которые я сделал для версии игры 1.1.9207.35014.
Скачайте UnityPatcher
Releases · JunkBeat/UnityPatcher
Распакуйте архив в папку игры. Создайте тут же папку RURU и распакуйте в неё файлы вот из этого архива
https://disk.yandex.ru/d/f0QWrPyGW5R7rA
Это шрифт Ubuntu в разных вариациях. Затем запустите командную строку cmd рядом с Patcher.exe и выполните команду

Patcher.exe pack "RURU" -i "Ignorance_Data" —outsamedir —backup

Дампы импортируются в ассеты и создастся рядом папка BACKUP с оригинальными файлами (на всякий случай). Это только шрифт Ubuntu русифицированный в разных вариациях, но в игре могут быть ещё и другие шрифты. Вычислять их сложно. Проще всего вытащить все шрифты из игры также через UnityPatcher командой

Patcher.exe unpack -i "Ignorance_Data" —font

Создастся папка Patcher_Assets и в ней папка SDF со шрифтами. Там смотреть png-картинку (Атлас) шрифта и сличать буквы из неё с текстом в игре. Похожий SDF шрифт подменить на русский. Можно взять тот же Ubuntu, но отредактировать идентификаторы в метрике и имена файлов метрики и атласа, импортировать в игру по команде выше, и проверить в игре. Если это тот шрифт, то заколосится. Если не тот, то пробовать другой похожий. Можно было бы найти шрифт цивилизованно через UnityExplorer, но у меня почему-то не работает с этой игрой BepInEx, который нужен для UnityExplorer. Если удастся подобрать работающий, то найти нужный шрифт будет проще.

Для того, чтобы экспортировать тексты из ассетов в дампы, нужно выполнить в cmd вот такую команду
Patcher.exe unpack -i "Ignorance_Data" -c TextMeshProUGUI —group type_source
В папке Patcher_Assets появится папка MonoBehaviour, а в ней по папкам ресурсов будут находиться json-дампы. В каждом файле json-дампа есть поле "m_text", в нём и будет англ. текст для перевода. 

Для импорта переведённых дампов в ассеты игры, нужно очистить папку RURU и скопировать туда переведённые дампы без всяких папок, просто в кучу. Выполнить команду импорта как для импорта шрифтов выше. Все команды импорта в ассеты нужно выполнять, естественно, при закрытой игре.

Не все тексты в игре находятся в ассетах. Некоторые тексты  вставлены прямо в код игры в виде строк. Но таких строк не сильно много. Для их перевода придётся воспользоваться декомпилятором кода и правкой их прямо в коде игры, с последующим сохранением модуля. Это всё находится в файле Assembly-CSharp.dll в папке \Ignorance_Data\Managed\. Для декомпиляции и поиска текста нужно воспользоваться утилитой dnSpyEX
Release v6.5.1 · dnSpyEx/dnSpy
Распаковать в какую-нибудь папку и запустить. Выйти из игры. Открыть файл Assembly-CSharp.dll. Затем в строке поиска искать текст, который нужен. Напр., при выходе из игры появляется окно с текстом “Are you sure you want to quit to your desktop?” Найти текст с настройками поиска как на картинке
https://disk.yandex.ru/i/DXj-gIaU-nUAxQ
Затем нажать на нём правой мышкой и выбрать “Изменить инструкции IL” и заменить текст на русский. Затем OK. И в меню выбрать Файл — Сохранить модуль.

Некоторые фразы могут содержаться не в объектах с классом TextMeshProUGUI. Для их поиска нужно воспользоваться командой Патчера search. Напр., для поиска текста WE PROTECT THE NATION. нужно выполнить такую команду:
Patcher.exe search "WE PROTECT THE NATION." —entire_search  —once —export -i "Ignorance_Data" —group type_source —output_folder Patcher_search
Будет найден ассет, содержащий этот текст, и результат поиска в виде json-дампа будет помещён в папку Patcher_search
А дальше переводим там этот текст и дамп с переводом помещает в папку RURU (предварительно очистив её) и выполняем команду импорта.

Многие хотят переводить прямо в контексте игры не выходя из неё и правя текст прямо по ходу игры. Такой вариант тоже есть, напишу о нём позже.
P.S. Все длинные тире в командах перед опциями — это два тире, движок форума их почему-то сливает. :( 

Изменено пользователем Amigaser
  • +1 1

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: Dark_Sonic


      Sonic Frontiers — игра нового вектора во франшизе Соника. Издатель Sega выпустил для нашей русской аудитории субтитры, но ещё ни разу не сделал дубляж. Команда “Dark Sonic & Co." объявляет о сборе средств на русскую озвучку!
      Давайте же расширим границы и отправимся в это загадочное путешествие на родном языке. Наши возможности напрямую зависят от вашей поддержки. Все собранные средства пойдут на реализацию проекта, и по мере готовности мы будем публиковать результаты.
      Судьбу дубляжа определяете именно вы. Если вы приветствуете русский дубляж игр в целом, даже если вам безразлична вселенная Соника, рассмотрите возможность поддержать нас — сейчас от этого многое зависит. Общими усилиями мы ускорим процесс выхода проекта!
      Переходите в нашу группу в ВК или в описании под видео можете увидеть способы нас поддержать!

       
    • Автор: Evil_Finalist

      Valkyrie Profile: Lenneth
      Дело валькирии: Леннет
      ヴァルキリープロファイル −レナス− ДАТА ВЫХОДА: 22 декабря 1999 (PS1), 2 марта 2006 (PSP)   ЖАНР: jRPG
      ИГРОВЫЕ ПЛАТФОРМЫ: PlayStation Portable                                 ИЗДАТЕЛЬ: Square Enix
      ЯЗЫК ПЕРЕВОДА: Русский                                                                РАЗРАБОТЧИК: tri-Ace
      ЯЗЫК ОЗВУЧКИ: Английский, Японский                                       БОЕВАЯ СИСТЕМА: Turn-Based Battle System

      (1) Технический план:                         (2) Текстовый план:
      100% Разбор ресурсов                       100% Сюжет
      035% Текстуры                                    100% НИПы
      025% Видеоролики                             100% Квесты
      040% Вставка контента                     100% Глоссарий
      100% Редактирование                       100% Меню и интерфейс
      033% Тестирование                         090% Работа с размерами рамок для всех диалогов
                                                                         050% Работа с файлами титров
        УЧАСТНИКИ ПЕРЕВОДА: Evil Finalist (Вадим Стрежов): руководство проекта, вставка контента, работа с текстурами
      Dangaard (Владимир Лымарев): переводчик (сюжет, квесты, НИПы, меню, и многое другое), редактирование
      Polka (Динара Овчинникова): логотип, подбор шрифтов
      Riku_KH3: хакинг, разбор ресурсов
      ТАКЖЕ СВОЙ ВКЛАД В РАЗВИТИЕ ПРОЕКТА ВНЕСЛИ:
      Moonbear (Александр Уткин): помощь с рамками диалогов
      yurrrbannn (Юрик Машкин): помощь с идентификацией титров
                  Начало проекта: 11.05.2023
      Демо перевод v0.33: 23.06.2024
      Завершение проекта: ???
      Дата релиза: ???     ССЫЛКИ НА РУСИФИКАТОРЫ:

      Демоперевод v0.33 (Английская озвучка):
      https://www.zoneofgames.ru/games/valkyrie_profile/files/9161.html

      Демоперевод v0.33 (Японская озвучка):
      https://www.zoneofgames.ru/games/valkyrie_profile/files/9160.html

      Полный перевод v1.00: Ожидается в 2026-2027 годах
      Страница перевода на сайте:  http://temple-tales.ru/translations_vp1_psp.html
      Группа в ВК: https://vk.com/temple_of_tales_translations
      Канал Ютуба: https://www.youtube.com/channel/UCJfDLKD1ClnKgLBdf7eblNA
      Публичный сервер в ДИСКОРДЕ: https://discord.gg/hwrDj8Yxsh
      На данный момент проект находится на ранней стадии. А начали работать над ним мы ещё весной 2023 года. На самом деле, прошло гораздо больше времени. Поиски программиста для работы над первой частью игры продолжались с 2017 года. Те, кто пробовали разбираться в ресурсах игр от разработчиков tri-Ace, знают, что там чёрт ногу сломит. Наверное именно поэтому за все эти два с лишним десятка лет так никто и не сдвинулся с мёртвой точки. Это одна из причин, почему в эпоху PS1 эту часть игры и её сиквел на PS2 пираты обошли стороной. Наше почтение Riku_KH3, трудящемуся над этой игрой! Нам повезло, что, спустя столько лет, именно Рику согласился помочь - и не только с разбором самой игры, но и с написанием автоматического выравнивания рамок под стать переведённому тексту. С этим тоже были определённые сложности, так как в игре на каждое окно диалогов прописаны данные: координаты, ширина и высота рамки. Править всё это вручную было бы нереально. Самое страшное позади.
      Кроме того, мы очень рады тому, что работать над игрой согласился известный и уважаемый человек в переводческой деятельности - Владимир Лымарев (Dangaard). Кто-то уже знает о его достижениях, а мы просто расскажем тем, кто слышит о нём впервые. Владимир переводил многие игры в сериях Final Fantasy и Silent Hill, а также коснулся и Metroid'ов. Он также участвовал в неофициальных переводах книг "Песни льда и огня" (7kingdoms.ru) и, помимо этого, написал целую кучу материала по японским рпг для сайта Final Fantasy Forever (ffforever.info): прохождения, новеллизации, штампы японских ролевых игр, аналитику и многое другое. И это далеко не всё. Безгранично рады потрудиться вместе над шедевральным проектом - VALKYRIE PROFILE. Если данный проект найдёт определённый отклик у аудитории, то тогда мы постараемся продолжить дело и с сиквелом Valkyrie Profile 2: Silmeria. Но об этом пока рано говорить, так как сначала нужно полностью осилить историю Леннет.
      Прилагаем часовую видеодемонстрацию сюжета от пролога и до конца нулевой главы. На выбор представлено два видеоролика: с японской и английской озвучкой. Да, как и многие наши прошлые проекты, в этом мы тоже стараемся реализовать перевод для обоих вариантов озвучки.
      В довершение всего, стоит отметить ещё один не менее важный момент. К сожалению, не все проекты удаётся осилить и осуществить должным образом в виду малой заинтересованности аудитории или отсутствия интереса переводчиков. Все проекты мы распространяем бесплатно и денег за них не требуем. Мы не занимаемся продажей. Наше творчество — от фанатов для фанатов! Но есть несколько проектов, которые удастся выполнить только лишь благодаря сборам на оплату услуг переводчиков и программистов. Дело валькирии — один из них. Полный релиз Valkyrie Profile только в ваших руках! Если вы желаете отблагодарить нашу команду за труды, то мы будем вам очень признательны. Поверьте, этот проект очень сильно нуждается в финансовой помощи, так как стоимость его реализации высокая.
       
      -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
      Идёт сбор средств на оплату услуг программиста и переводчика Valkyrie Profile: Lenneth
      Собрано: 171 101,46 / 200 000
      последнее обновление от 05.07.2026
      Карта ВТБ: 4272 2908 4659 1246
      ЮMoney/Яндекс кошелёк: 410011235819402
      Список донатеров: http://temple-tales.ru/donations_vp1_psp.txt

      Перевод планируется выпускать: БЕСПЛАТНО
      -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------


×