PSX Planet: SONY PlayStation Community

PSX Planet: SONY PlayStation Community (https://psxplanet.ru/forum/index.php)
-   Ваши игровые проекты (https://psxplanet.ru/forum/forumdisplay.php?f=9)
-   -   О переводах игр (https://psxplanet.ru/forum/showthread.php?t=31951)

Enma 10.01.2019 21:13

Ответ: О переводах игр
 
хм, приспичило что-нибудь перевести.
скачал megaman x5, поставил Hex Workshop Hex Editor.потыкал все файлы у образа, ничего похожего на текст не обнаружил, сплошная абракадабра.

я что-то не так делаю или текст там, как я где-то читал, закодирован и просто так его не достать?

volgame 10.01.2019 21:53

Ответ: О переводах игр
 
Ты выше почитай и тогда поймёшь, что перевод игры не такое уж и простое занятие. Сложность перевода зависит от игры (независимо от количества текста).

1. Надо вначале найти текст, его местонахождение не всегда очевидно, точнее почти всегда не очевидно, а иногда его и вовсе не найти. Текст может быть запакован, может быть в графике и тексте, а дальше уже от фантазии разработчиков зависит. Так чтобы текст был в знакомом всем формате почти не бывает.
2. Для большинства игр нужны уникальные распаковщики/запаковщики ресурсов игры, т.к текст, графика, видео не всегда лежит там где ей бы следовало лежать и выглядит не так, как следовало бы выглядеть. Иногда инструменты можно найти (редко и как правило для популярных игр над которыми уже прежде работали), но чаще их пишут сами хакеры. Соответственно, знание хакинга игр хотя бы начального уровня обязательно.
3. Чтобы русский был русским обычно надо ещё найти шрифт (или несколько шрифтов) игры и перерисовать на русские буквы алфавита.
4. Даже если ты найдёшь текст, то переводить его в Хекс-редакторе ты будешь до конца жизни, ещё и потомкам достанется.
5. Некоторые игры имеют привязку LBA (механизм адресации и доступа к блоку данных), где любые изменения и смещения в байт делают игру неработоспособной (игра будет зависать в проблемных местах, либо вообще не будет работать).
6. Перевод текста игры самое простое, а порой и приятное занятие, единственное, для него надо иметь свободное время, желание, знание языка оригинала игры, хорошо владеть родным языком, включая обороты речи и грамматику.

SlavaVlasov 10.01.2019 22:11

Ответ: О переводах игр
 
Цитата:

Сообщение от Enma (Сообщение 242843)
хм, приспичило что-нибудь перевести.
скачал megaman x5, поставил Hex Workshop Hex Editor.потыкал все файлы у образа, ничего похожего на текст не обнаружил, сплошная абракадабра.

я что-то не так делаю или текст там, как я где-то читал, закодирован и просто так его не достать?

Я так мучился, пытаясь перевести Super Mario Bros для NES: там текст в такой кодировке, что найти ее можно разве что относительным поиском (Relative Search) через Translhextion.

Еще один способ: найди уже переведенную версию игры, либо другую локализацию (скажем, только Французскую, только Немецкую и т.д.), и сравни с оригинальной тем же HexCmp, например. Попробуй найти, в каких участках файла были внесены изменения и работай только с ними. Можно попробовать изменить байты на этих участках, а затем посмотреть изменилось ли чего в игре. Можно попробовать через HxD открыть процесс эмулятора в оперативной памяти и попробовать найти текст там. Если в оперативной памяти адекватные слова находятся, а просто в игровых файлах - нет, значит текст - закодирован и декодируется только при загрузке в ОЗУ.

SlavaVlasov 11.01.2019 15:04

Ответ: О переводах игр
 
Цитата:

Сообщение от Enma (Сообщение 242843)
megaman x5

Вот еще о Мегамэну (немного покопался).
  1. Относительный поиск, вероятно, не выход: попытался найти слово "Sigma", но ни относительным поиском, ни так, ни даже в Save Statе'е (в т.ч. относительным поиском), ни в ОЗУ этого слова нет. Хотя в геймплее оно присутствует в самом начале.
  2. Часть текста - это графика (например, описание к персонажам в меню их выбора)
  3. Помимо всего прочего, среди графики хранятся одиночные шрифты, а не просто готовые субтитры. Это должно говорить о том, что игра все же использует текст в том понимании, в котором мы его пытаемся найти, однако, он выходит за правила относительного поиска.
Текст может быть написан как угодно, либо это вообще может быть код, возможно состоящий и не из одного байта, который просто позиционирует картинки (буквы) на экране, не имея ничего общего с текстом. Т.е. я хочу сказать, что написание субтитров похоже технически было устроено, как строительство уровня для игры Super Mario Bros, нежели как написание текста. Только строился не уровень, а... субтитры. И тут уже нужно искать что-то более, чем текст. Рыться глубже в коде.

Пробовал забаговать шрифты с Save Stat'е - в игре они также изменились. Получается, что шрифты в нашем понимании используются, а текст - нет.

MFS 11.01.2019 17:23

Ответ: О переводах игр
 
Цитата:

Сообщение от SlavaVlasov (Сообщение 242846)
Я так мучился, пытаясь перевести Super Mario Bros для NES

Че ж, для самой популярной игры планеты Земля в сети нет подробных туториалов по переводу и хакингу, что пришлось самому всё искать?)

SlavaVlasov 11.01.2019 17:33

Ответ: О переводах игр
 
Цитата:

Сообщение от MFS (Сообщение 242897)
Че ж, для самой популярной игры планеты Земля в сети нет подробных туториалов по переводу и хакингу, что пришлось самому всё искать?)

На тот момент я уже находил в сети перевод Марио с хакнутыми пойнтерами (в чем я тогда был ноль), и только тогда я (пока только вникал в ромхакинг) узнал об относительном поиске. Как я попытался перевести? Просчитывая в голове, под какой цифрой (байтом) должна быть буква, я писал перевод... шестнадцатеричными байтами :ng_Lol:Ну, и основные тексты как бы перевел ))

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

MFS 11.01.2019 23:54

Ответ: О переводах игр
 
Цитата:

Сообщение от SlavaVlasov (Сообщение 242898)
я писал перевод... шестнадцатеричными байтами

Хорош)))) Как говорили в фильме жмурки, братец ты реальный маньяк. И что, в игре после этого появилось что-то похожее на текст? хД Вообще забавно, что в бродилке 85-го года, где весь текст это "старт/опции", он еще и зашифрован.:ng_Wacko:
Цитата:

Сообщение от volgame (Сообщение 242845)
Даже если ты найдёшь текст, то переводить его в Хекс-редакторе ты будешь до конца жизни, ещё и потомкам достанется.

Хех, я частенько так перевожу, главное таблицу по возможности поочевиднее сделать, чтобы было проще запомнить, ну там g = г, b = в, чтоб все общие буквы само собой совпадали, и вперёд. =) Как по мне таблицы нужно делать когда текста действительно МНОГО, диалоги всякие и прочее. А когда весь текст это "старт/опции", то задачу вполне можно решить в лоб.

volgame 12.01.2019 00:08

Ответ: О переводах игр
 
MFS, я думаю игры, где три строчки на вражьем языке, можно вообще не переводить :) Но насколько я помню в Мегамэне текста хватает, он же бормочет с персонажами и в начале игры и по ходу игры, сюжет есть, игра японского происхождения, а в играх японцы самые говорливые. Диалоги представлены всплывающими субтитрами в окне.

SlavaVlasov 18.01.2020 15:44

Ответ: О переводах игр
 
Цитата:

Сообщение от MFS (Сообщение 242932)
И что, в игре после этого появилось что-то похожее на текст?

Да, только с сокращениями, типа "BPEM"

SlavaVlasov 18.01.2020 15:57

Ответ: О переводах игр
 
Кто-нибудь может помочь мне найти пойнтеры в EXE-шнике Looney Tunes Racing? Игру как-то между делом переводил, но там такая вещь: названия трасс на загрузочных экранах отличаются, в зависимости от того, из какого файла происходит переход. Например, если я запускаю трассу из меню (файл SHELL.DAT, пожатый Deflate'ом), то текст с названием трассы берется из SHELL.DAT, но если в режиме чемпионата после первой трассы загружается вторая, текст с названием трассы берется из EXE-шника (там уже сжатия нет). Плюс для некоторых слов (LAP) в EXE-шнике нет свободных байтов.


Часовой пояс GMT +3, время: 15:25.

Перевод: zCarot
Права | Copyright ©
© PSX Planet Community 2003-2024