Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу

Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу

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

Начнём с того, что я активно сотрудничаю с командой английского перевода. Недавно к их дискорд-каналу присоединились ромхакер New Gba XL и переводчик Wanwanderer88.

Работа возобновилась и мы стали выполнять накопившиеся за долгое время задачи. У нас была проблема с графикой игры, часть которой (названия миссий) была сжата, но нуждалась в переводе. Поэтому New Gba XL (а именно такой ник у ромхакера) предложил использовать Tinke — программу для распаковки игр для Nintendo DS.
(Сам я для обработки графики использовал NitroPaint)
Проблемы со спрайтами названий миссий это не решило, но оказалось, что (как я думал) сжатые сплэш-скрины прекрасно открывались в Tinke:

Премного благодарен New Gba XL за такую находку :)
Премного благодарен New Gba XL за такую находку :)

Небольшое отступление №1. Как именно работает графика на Nintendo DS?

Каждый спрайт разделён на 4 файла:

*.NCLR (Nitro CoLor Resource) - палитра (4-х битная)

Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу

Графика на DS использует систему тайлов (разделение спрайтов на части для ускорения рендеринга) для показа изображений:

*.NCBR (Nitro Char Graphics Resource) - тайлы в чистом виде/тайлсет:

Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу

*.NCER (Nitro CEll Resource) - данные спрайта:

Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу

*.NANR (Nitro ANimation Resource) - данные анимации:

Первым же делом, как только у меня появилась возможность менять сплэш-скрины, я сделал это:

"еее ура еее"
"еее ура еее"

Всё протестировав, я начал их по-настоящему переводить:

Но тут меня ждала ещё одна подлянка: у всех спрайтов был лимит в 16 цветов (который я не учёл), и поэтому мне пришлось вручную их перекрашивать.

Зато теперь всё работает:

Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу

Цветные буквы!

Недавно я нашёл редактор сохранений для Front Mission 2089 и решил немного с ним поиграться. Выдав себе самый сильный мех, я зашёл в игру, начал бой и получил такое сообщение:

Прим. перевод: Информация: невозможность действовать из-за текущего состояния.
Прим. перевод: Информация: невозможность действовать из-за текущего состояния.

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

В итоге я обнаружил строки, которые отвечают за это сообщение:

{EE A0 84 04}{EE A3 B8 D3}{93 1C}{EE A3 B7 EE}Information{EE A3 B9 EE} {EE A0 85 0C}状態異常の為、行動できません。

Небольшое отступление №2. Системные коды FM2089

Они выглядят примерно так: {EE A0 81 00} (ссылка на имя главного героя).

Эти коды могут ссылаться на значение в системе, выполнять определённое действие или быть предназначены для форматирования текста.

Мне захотелось узнать, какой из кодов меняет цвет текста. Поэтому я решил тестировать каждый код отдельно.

Оказалось, что {EE A0 84 04} проигрывает звук ошибки:

Дальше я стал экспериментировать с кодами {EE A3 B8 D3}{93 1C}, пытаясь понять какой из них меняет цвет текста (спойлер: ни один из них).

Удалив {93 1C}, у меня получилось убрать знак предупреждения, но вместо него появился странный японский иероглиф. Отдельно знак вывести не получалось.

Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу

Спустя несколько неудачных попыток я наконец-то понял, что отвечает за смену цвета:

{EE A3 B7 EE}

Именно этот код окрашивал слово "Information" в жёлтый.

А чуть позже я смог самостоятельно задать цвет текста:

B# в {EE A3 B7 EE} означает номер цвета:

Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу

То есть можно перевести это сообщение в список команд:

{EE A0 84 04} - проиграть звук ошибки.
{EE A3 B8 D3}{93 1C} - создать иконку "внимание" с определённым цветом (синим).
{EE A3 B7 EE} - сменить цвет текста на жёлтый.
Текст "Information".
{EE A3 B9 EE} - сменить цвет текста на белый.
{EE A0 85 0C} - большой отступ.
Текст "状態異常の為、行動できません。".

Но почему-то при использовании код обрезает первые два символа, поэтому для корректного отображения нужно писать:

"В {EE A3 B7 EE} [Штаб]{EE A3 B9 EE}"

Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу

Отчёт по прогрессу

Было переведено 3 миссии:

4A - "Удар по вражескому отряду":

4B - "Снайперская операция":

5A - "Преследование":

В процессе перевода:

Миссия 5B - "Перекрытие линий снабжения".
Миссия 06 - "Оборона арсенала".
Миссия 07 - "Охота".

Всем спасибо за поддержку!

P.S. Примерно так я представляю реакцию на этот пост...

Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу
6767
11
22 комментария

Еще одному парню 100р он тоже молодец!

4
Ответить
4
Ответить

Из всего прочитанного понял что переводить игры на DS сложно

4
Ответить

Оооооо как раз перепрохожу тройку, интересное чтиво

3
Ответить

Это эмуль пс1 или пс2?

Ответить

О, будет повод достать с полки старушку ds)

2
Ответить