Большой пост про мой перевод Front Mission 2089: Border Of Madness на русский + отчёт по прогрессу
Всем привет! За тот небольшой период времени, прошедший с последней новости, произошло множество событий, о которых я вам сейчас и расскажу.
Начнём с того, что я активно сотрудничаю с командой английского перевода. Недавно к их дискорд-каналу присоединились ромхакер New Gba XL и переводчик Wanwanderer88.
Работа возобновилась и мы стали выполнять накопившиеся за долгое время задачи. У нас была проблема с графикой игры, часть которой (названия миссий) была сжата, но нуждалась в переводе. Поэтому New Gba XL (а именно такой ник у ромхакера) предложил использовать Tinke — программу для распаковки игр для Nintendo DS.
(Сам я для обработки графики использовал NitroPaint)
Проблемы со спрайтами названий миссий это не решило, но оказалось, что (как я думал) сжатые сплэш-скрины прекрасно открывались в Tinke:
Небольшое отступление №1. Как именно работает графика на Nintendo DS?
Каждый спрайт разделён на 4 файла:
*.NCLR (Nitro CoLor Resource) - палитра (4-х битная)
Графика на DS использует систему тайлов (разделение спрайтов на части для ускорения рендеринга) для показа изображений:
*.NCBR (Nitro Char Graphics Resource) - тайлы в чистом виде/тайлсет:
*.NCER (Nitro CEll Resource) - данные спрайта:
*.NANR (Nitro ANimation Resource) - данные анимации:
Первым же делом, как только у меня появилась возможность менять сплэш-скрины, я сделал это:
Всё протестировав, я начал их по-настоящему переводить:
Но тут меня ждала ещё одна подлянка: у всех спрайтов был лимит в 16 цветов (который я не учёл), и поэтому мне пришлось вручную их перекрашивать.
Зато теперь всё работает:
Цветные буквы!
Недавно я нашёл редактор сохранений для 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}, у меня получилось убрать знак предупреждения, но вместо него появился странный японский иероглиф. Отдельно знак вывести не получалось.
Спустя несколько неудачных попыток я наконец-то понял, что отвечает за смену цвета:
{EE A3 B7 EE}
Именно этот код окрашивал слово "Information" в жёлтый.
А чуть позже я смог самостоятельно задать цвет текста:
B# в {EE A3 B7 EE} означает номер цвета:
То есть можно перевести это сообщение в список команд:
{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}"
Отчёт по прогрессу
Было переведено 3 миссии:
4A - "Удар по вражескому отряду":
4B - "Снайперская операция":
5A - "Преследование":
В процессе перевода:
Миссия 5B - "Перекрытие линий снабжения".
Миссия 06 - "Оборона арсенала".
Миссия 07 - "Охота".
Всем спасибо за поддержку!
P.S. Примерно так я представляю реакцию на этот пост...
Еще одному парню 100р он тоже молодец!
Из всего прочитанного понял что переводить игры на DS сложно
Оооооо как раз перепрохожу тройку, интересное чтиво
Это эмуль пс1 или пс2?
О, будет повод достать с полки старушку ds)
https://dtf.ru/retro/2731174-obnovlenie-moego-russkogo-perevoda-front-mission-2089-border-of-madness
Уже можно поиграть :)