mastertranslate

mastertranslate 

Перевожу игры на русский, прогер.

2 629subscribers

135posts

Showcase

38
goals12
112 of 1 000 paid subscribers
С таким количеством подписчиков мы сможем работать над переводами нон-стоп с общим доступом.
$12.59 of $12.6 raised
На перевод Windblown
$79.96 of $80 raised
На перевод игры ASTLIBRA. Перевод вышел. Конечная сумма будет уменьшаться по мере покупок подписок или постов.
$132.85 of $116 raised
Сбор на перевод игры Metroid Prime Remastered
$251.84 of $252 raised
На перевод игры Hyrule Warriors: Age of Calamity. Как обычно цена установлена условно.
$6.3 of $6.3 raised
За помощь.
$110.48 of $63 raised
На перевод Chronicles of the Wolf
$217.84 of $218 raised
На разработку софта и перевода игры Dynasty Warrior Origin
$125.92 of $126 raised
На помощь
$6.3 of $6.3 raised
на доширак
$125.92 of $126 raised
Написание софта srwy
$207.65 of $208 raised
На разработку софта для игры Rhapsody: A Musical Adventure. 10,000 случайно оплатили не туда. Почему цена увеличился, но остаётся такой же.

🛠 Как мы переносили перевод «The Path» на новый билд (и чуть не сошли с ума)

Представьте задачу: есть классная старая игра The Path, есть её официальный перевод на русский... который в актуальной версии Steam просто не работает корректно. Нас попросили взять русификатор из древних файлов .cgr и аккуратно пересадить в свежий билд.
Звучит как работа на полчаса, правда? Ха-ха. Добро пожаловать в ад реверс-инжиниринга! 🐍✨

🕵️‍♂️ Этап 1: «Оно живое, но ему больно»

Сначала мы попытались накатить старые файлы нахрапом. Игра даже запустилась! Правда, в меню выбора персонажей у героинь поехали модельки, а текстуры начали жить своей жизнью.
Пошли гуглить, что это за файлы такие. Выяснилось: игра сделана на Quest3D - древнем и крайне специфичном нодовом движке. Инструментов для работы с ним в сети примерно ноль. Нашлась только одна инструкция для другой игры, но нам она не подошла. Пришлось лезть в дебри самостоятельно.

🚪 Этап 2: Босс «Лицензия» и его брат «64 бита»

Чтобы отредактировать файлы движка, нужен сам редактор Quest3D. И тут началась комедия в трех актах:
  1. Проблема с версией: В файлах игры нашли плашку Quest3D 420. Качнули версию 4.21, запускаем, а она просит лицензию. Серверы проверки давно мертвы, компании-разработчика не существует, демо-версия ничего открывать не дает.Решение: Объединились с нейросетью и шаг за шагом написали патч, обходящий проверку. Программа запустилась! 🎉
  2. Проблема с разрядностью: Запустилась, но файлы игры не открывает. Выдает ошибку. Мы уже думали бросать, но заметили файл HighPoly.dll и осознали: игра-то 64-битная! А мы пытаемся открыть её в 32-битной 4.21. 64-битный Quest3D появился только в 5-й версии.
  3. Опять лицензия: В 5-й версии разработчики движка обновили защиту. Пришлось снова лезть во внутренности программы и делать уже четыре патча в разных местах кода, чтобы редактор просто соизволил завестись.

🔒 Этап 3: Защита от взлома внутри защиты

Ура, редактор запустился! Открываем файл локализации и получаем по шапке:
«This file is not editable because it was protected by its author.»
(Этот файл нельзя редактировать, так как он защищен автором).
Парадокс: раз мы увидели это сообщение внутри программы, значит, расшифровка файла сработала, но автор игры повесил поверх запрет на редактирование.
Мы засунули библиотеки программы в IDA Pro (инструмент для анализа кода), нашли функцию блокировки и успешно её вырезали. Файлы наконец-то открылись! Казалось бы - победа?
Не тут-то было.

✂️ Этап 4: «Не копируется!»

Мы нашли ноды (своеобразные блоки логики в движке), отвечающие за русский язык. Решили просто скопировать их из русской версии и вставить в стимовскую.
Жмем «Копировать», вылетает ошибка: DirectoryInformation::ClipboardCopy() : couldn't load clipboard interface.
Оказалась, внутри движка была еще одна скрытая проверка.
Мы пошли ломать функцию копирования. Сначала хотели красиво подменить логику, но программа падала. В итоге решили не мудрить: просто зашили в код жесткий ответ «0» (что означает «копировать можно всегда»).
Забавный момент: В процессе патчинга мы случайно задели соседний байт и сломали инструкцию. Сами даже не заметили, почему ничего не работает, но ИИ-помощник вовремя ткнул нас носом: «Параллельно ты там байт зацепил, поправь». Исправили и буфер обмена ожил! Заодно сделали так, чтобы при пересохранении защита с файлов снималась автоматически.

🤦‍♂️ Этап 5: Финал, или Почему разработчики - гении

Все ноды перенесены, патчи стоят, в редакторе всё работает идеально. Запускаем игру... русского нет.
Начали копать дальше и просто выпали в осадок. Оказывается, разработчики в каком-то из обновлений просто сломали предзагрузку сторонних языковых файлов.
  • Европейские языки работали только потому, что им не нужны были отдельные шрифты (латиница и так есть).
  • Японскую версию они вообще вынесли в отдельный билд игры, потому что видимо не смогли починить эту ошибку!
  • А в Steam-версии русский язык ВСЁ ЭТО ВРЕМЯ ЛЕЖАЛ В ФАЙЛАХ, но игра его просто не грузила!
Изучив структуру загрузки, мы нашли в движке заветную тумблер-кнопку: «Загружать этот файл всегда при запуске».
Включаем, пересобираем... И ВСЁ ЗАРАБОТАЛО! Русский язык на месте, шрифты ровные, модельки персонажей больше не ломаются и стоят на своих местах.

🏁 Итог

Пройдя через кучу упавших библиотек, 6 разных патчей защиты и костыли самих разработчиков, мы наконец-то сделали нормальный, рабочий русификатор для актуальной версии The Path.
Скачать можно тут https://boosty.to/gamehacking/posts/172d3f50-8405-4a38-afb3-c85229d00bf4 ! 🎮
Subscription levels3

Дон

$1.38 per month
Дон - получает доступ к некоторым играм и моим переводам.

Игрок

$2.64 per month
С уровнем доступа 100% вы получите доступ ко всем играм и всем новым переводам, которые я выполняю.

Супер поддержка

$6.3 per month
Супер поддержка 500%
Go up