Chief-NET

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Chief-NET » Экстрим хакинг » Pokemon Colosseum [PAL]


Pokemon Colosseum [PAL]

Сообщений 1 страница 20 из 179

1

Здравствуйте. Ищем человека способного вытащить текст и шрифт из образа игры для GameCube и перегонке их в формат, удобный для редактирования (и, соответственно, потом обратно). На данный момент образ разобран с помощью GameCube Rebuilder (GCR) v1.0, большую часть извлеченных файлов (они формата .fsys) дальше прогнали через gcfsysd и получили еще более мелкие составляющие. Ни мой уровень знаний, ни уровень знаний человека - инициализатора проекта перевода не позволяет получить доступ к ресурсам игры. Касаемо шрифтов также следующая информация имеется:
...
romster
нужен opening.bnr я их часто встречаю просто так открытыми чаще даже в корне то есть в ROOT
но чтоб его начать редактировать надо раза 2 или 3 распаковывать всяческие архивы
opening.bnr дает 3 файла с расширением bin
bin файлы нужно по возможности конвертнуть в arc причем обработав заголовок файла НЕХредактором иначе конвертнет не правильно
ну а тут уже стандартная процидура работы c arc файлами
Все бы ничего но проццес запаковки еще страшней
...
Знание английского и, надеюсь, русского у нас имеется, с кодированием - увы. Спасибо за внимание.

2

Найден текст в файле boot.dol через WinHex. Загвоздка в том, что boot.dol в ходе распаковки в папке игры найден не был, но случайно сегодня был извлечен методом научного тыка в эмуляторе dolphin(навел на образ рома-свойства-извлеч DOL). Пока разбираюсь как и почему и где. Еще таким образом извлечен apploader. Еще надо найти шрифт, но главное не в этом. Необходимо иметь программу извлекающую текст в скрипт, плюс обратно вставлять, но уже с измененным кол-вом букв. Знающие люди, посмотрите хотя бы файлы, посоветуйте хоть для начала как это все решить и в какую сторону двигаться.
&&systemdata-папка из корня рома с файлами
и еще два файла dol и img извлечены Dolphinom,
http://yadi.sk/d/JRbEqt4P6pC0h
Там про Карту Памяти диалоги есть и команды какие-ещ, потом на алфавит похоже вообще. На всякий случай opening.bnr

Отредактировано Armorant (2013-07-15 00:54:04)

3

Для того, чтобы править текст, нужно разобраться с поинтерами, они, с огромной долей вероятности, лежат в том же boot.dol
Вполне возможно, что и шрифт там же хранится, хотя и не обязательно.
Сам бут.дол при разборке образа не нашли, т.к. он лежит в загрузочной области диска, его вынимать уже другим софтом нужно. По поводу прог, которыми лучше образ ковырять проконсультируйтесь с Антоном, он для куба Зельду переводил, поэтому должен помнить. Да и вообще, у него на сайте какие-то инструменты выложены были.

Отредактировано lupus (2013-07-15 13:24:12)

4

Спасибо lupus за совет. Вопрос уже ему задал. Пытаюсь освоить Круптар 7 версии. Хочу понять поинтеры. Есть закономерность. Перед началом нового сообщения всегда  FF0700 есть, а 0000FF-в конце сообщения пишется, т.е. между сообщениями это выглядит примерно так:
00210000FFFF070000530061 (участок .!.......S.a.)
.P.O.W.E.R. .B.u.t.t.o.n.!.......S.a.v.i.n.g. .t.o. t.h.e.(ну и далее)
Так я правильно их нашел?  Круптар 7 подойдет? А то она вроде для гба как. И таблицу как я понял и по этому Хексу составить можно или только по наглядному шрифту?

5

В теории круптар пойдёт, но иногда, если что-то экзотическое, то приходится писать свой софт или плагин к круптару. Я сам не программер, поэтому разбираю формат хранения текста и для меня пишут софт.
То, что ты нашёл - это не поинтеры. Это скорее всего указатели начала и конца строки, хотя вовсе не факт.
Ты бы сам дол выложил и пару скринов с текстом, желательно какой-то диалог, пару скринов подряд, чтобы понимать как выглядит разрыв строки и стоп-байт, если они кодятся спец. последовательностью.
Может чем и поможем...

6

Authorities have made a stunning announcement on the mysterious building that exploded in ECLO CANYON. It was TEAM SNAGEM's HIDEOUT.##
Власти сделали шокирующее заявление о взрыве на таинственном здании в каньоне ЭКЛО. Им оказалось УБЕЖИЩЕ КОМАНДЫ СНЭГИМ.##

TEAM SNAGEM is a gang of POKEMON abductors who have already been marked for arrest.##
КОМАНДА СНЭГИМ - банда похитителей покемонов, подлежащих скорейшему аресту.##

The HIDEOUT was discovered only as result of the explosion. By the time police arrived, the ruined building had already been abandoned.##
Укрытие было обнаружено только благодаря взрыву. На момент прибытия полиции здание уже было заброшено.##

The cause of the explosion is under investigation. It should become apparent eventually.##
Обстоятельства взрыва расследуются. Причина скоро станет известна.##

Header GameCube мне не известен, он для высчитывания поинтера нужен, судя по руководству с Шедевра.
Вырезка из предварительного перевода и ниже скриншот того места в Start.dol (строки немного кривые, извините) :

Отредактировано Armorant (2013-07-15 22:35:57)

7

Header GameCube мне не известен, он для высчитывания поинтера нужен, судя по руководству с Шедевра.

Не нужен он, скорей всего. Это для NES, SNES, GBA или еще чего-нить там он может и нужен.
А на кубе вряд ли.

Тут пойнтеры скорей всего лежат блоком перед текстом.
Адрес начала строки минус значение пойнтера = разница смещений.
Возможно, Адрес начала строки минус перевернутое значение пойнтера, но в зельдах было просто значение.

Судя по скрину выше, FFFF - это разрыв строки (перевод каретки).
А "03" похоже на стоп-байт (конец диалога).

нужен opening.bnr

зачем он нужен?
вряд ли в нем есть что-то, нужное для перевода.

00210000FFFF070000530061 (участок .!.......S.a.)
.P.O.W.E.R. .B.u.t.t.o.n.!.......S.a.v.i.n.g. .t.o. t.h.e.(ну и далее)

Похоже, что 0000 - конец выделения цветом, 0700 - начало выделения цветом, FFFF - перевод каретки. Проверь, так ли оно в игре.
Это все в таблицу надо повносить.

Отредактировано Anton299 (2013-07-16 11:44:52)

8

Ты файл приложи с этим текстом отдельно. Я посмотрю указатели. Возможно, даже получится проект сделать, но не обещаю.

Отредактировано Mefistotel (2013-07-16 12:11:34)

9

Антон299, сейчас еще посмотрю и сравню поинтеры указанные тобой. Цвета другого, кроме белого не было, также как и выделения, подчеркивания и тд. Единственное, сообщение про карту памяти и и такие меню как магазин и другие системные, имебт специальное диалоговое окно - штрихованное такое немного темнее стандартного, который под диалоги с НПС и тп.
Мефистотель, файлы те есть по ссылке выше, ссылка на яндекс которая. Кажется весь текст игры в 4мбайтном Start.dol.
Также вот ссылка на торрент с игрой
http://rutracker.org/forum/viewtopic.php?t=391659
Мы переводим версию Колизей, не ХД. Хотя с очень большой вероятностью устроены они идентично. Все тоже самое, но немного с другим наполнителем.

Отредактировано Armorant (2013-07-16 20:27:32)

10

Это не пойнтеры, это коды контроля текста.
Ну может эти коды отвечают за вид диалогового окна, а не за выделение цветом, запросто такое может быть.
0700 - говорит игре, что надо выводить определенное диалоговое окно, а 0000 обозначает, что закончили выводить это диалоговое окно.

Поищи последовательности байт, идущие по увеличению значений.  Это очень похоже на пойнтеры. Проверь-ка вот это в start.dol:

Похоже, что начало блока пойнтеров находится по адресу 002C1B38, значение первого пойнтера: 00000065. Этот блок пойнтеров идет сразу перед текстом.

Пойнтеры 4-байтные, идут через интервал 4 байта

Первый пойнтер: 00000065 - интервал 4 байта - второй пойнтер: 00000066 - 4 байта - третий пойнтер: 00000067... и т.д

Адрес последнего пойнтера (адрес первого его байта): 002C30B8 (для круптара, когда будешь указывать диапазон блока пойнтеров, можешь указать или последний его байт (002C30BB), или первый (002C30B8) - не важно).
Короче, для круптара вот так пишешь адреса блока пойнтеров (обязательно пиши "h" перед цифрами, если указываешь HEX-значение, а не десятеричное):

начало: h002C1B38
конец: h002C30B8

Текст, кажется, начинается с кода FFFF0700, по адресу 002С30С0 (первый байт - FF).
Разница смещений: 002С30С0-65=2С305B (адрес начала текста минус значение первого пойнтера) (тут оно 00000065 - переворачивай, не переворачивай - все равно значение 65).

Отредактировано Anton299 (2013-07-16 23:04:52)

11

Многие диалоги, например, репортажи по ТВ  начинаются с двух битов 3D. На скриншоте подсвечены курсором.
0079002EFFFF020000FFFF0700FFFF3D0054
0079 - буква y
002E - точка(конец данного предложения и данного диалога вообще, по игре знаю)
FFFF - каретка что ты упомянул, я понял как Enter или конец, подтверждение ввода что-ли
0700 - тип окна
03 - действительно мелькает в местах между сообщениями с требованием подтверждения. Т.е. прошел текст, конец сообщения обозначен треугольником, нажимаешь кнопку подтверждения и далее начинается выводиться новое сообщение на эту же тему. (между сообщениями также отсутствует что либо еще, кроме этого 03 и FFFF, ни 0700 ни еще чего либо.)
02 - что это? Поинтер? Всегда встречается на границе двух разных диалогов.
0000 - закончить окно
0054 - буква T ну и далее текст.
Этот кусок был взят на стыке между концом одного репортажа и другим репортажом по тв уже в другом городе.

Отредактировано Armorant (2013-07-16 23:08:07)

12

02 - что это? Поинтер? Всегда встречается на границе двух разных диалогов.

Код, наверное, какой-то. (Пойнтеров ВНУТРИ текста нет. Здесь, во всяком случае).
Внутри текста тут только управляющие байты ("спец-коды").

Если он всегда на границе разных диалогов, значит он и есть стоп-байт - 02 - ... не?
А 03 тогда, как ты говоришь, не заканчивает блок текста, а инициирует нажатие кнопки подтверждения, или че там оно у тебя.
Если это так, вбей его в таблицу как
03=[next] (ну или че-то придумай вместо next).

002E - точка(конец данного предложения и данного диалога вообще, по игре знаю)
FFFF - каретка что ты упомянул, я понял как Enter или конец, подтверждение ввода что-ли

по-идее точка (конец предложения), потом новая строка (FFFF), потом конец уже всего блока/диалога - стоп, короче: (02).

есть там пустая строка в игре перед окончанием диалога?

Отредактировано Anton299 (2013-07-16 23:16:15)

13

Спасибо, Антон. Путь один - разбираться и вникать во все это.
Фигня какая-то. Таблица символов правильная те 77=w как и в роме и все остальные символы тоже. А выдает вот что. Из всех 1377 строк, дай Бог хоть 10 с каракулями, в остальных в поле лист пишет el, Правильно может не настроил? Хотя , стой, ступил. Ищу дальше. Текст в эти адреса не входил я так понял. Понятно, от слова .M.e.s.s.a.g.e (первой точки) отням величину смещения и получил поинтер, относсящийся к Message. он равен 00011CA9?
Выставив от h002C305B до h02D3FB8 (начало немецкой локализации) получил опять каракули.

Отредактировано Armorant (2013-07-17 00:55:22)

14

Может псочитали не правильно? Поинтер 00000065 вроде как не к началу Message относится, а к отдельным буквам перед этим, к алфавиту. Или это не важно?

15

Не 77=w, а 0077=w. И везде так же. Но не везде нули могут быть. Для всяких умляутов может быть и 0135 (к примеру). но всегда два байта, а не один. Двухбайтовая кодировка же.

>Выставив от h002C305B до h02D3FB8 (начало немецкой локализации)
я к английской пример приводил, вообще-то.
там блок пойнтеров, если все правильно, h002C1B38 - h002C30B8.

Отредактировано Anton299 (2013-07-17 10:42:19)

16

Может псочитали не правильно? Поинтер 00000065 вроде как не к началу Message относится, а к отдельным буквам перед этим, к алфавиту. Или это не важно?

Текст, похоже, начинается не со слова, а с кода FFFF. Попробуй сделать как я написал.
Если не прокатит, тогда уже экспериментируй.

17

Наконец, результат!
Далее ведь надо перерисовать шрифт. Да и текста здесь куда меньше чем есть в winhex.
И вопросы. Код окончания строки 03 а разрыва строки 02 или наоборот? Также среди текста What would you like<END>/00to do? (FFFF-END) есть 00, это переход на новую строчку? И почему-то правая часть окна, как я понял того рома в который все вставляется не форматируется как левая. (одинаковые строки выделены, но правая длинее за счет 00 и <END> там нет, хотя он прописан.

Отредактировано Armorant (2013-07-17 12:02:58)

18

Сбрось английскую таблицу, я вечерком попробую посмотреть.
До результата тут еще далеко. )

Комбинации кодов поищи, позаноси в таблицу.

19

Антон. Вот что наработал. Таблица, проект, ром.

Отредактировано Armorant (2013-07-17 15:35:16)

20

Бывает такое в японских образах. :)
Но это, как правило, моноширный шрифт.
Коды вычисляй и записывай, что они делают. Это важно и позволит твой скрипт привести в нормальный вид.
P. S. Сильно на скрин внимания не обращай. Это я так, 5 минут почитал написанное в теме и попробовал проект сделать. Явно видно, что код нажатия кнопки иной.

Отредактировано Mefistotel (2013-07-17 12:35:27)


Вы здесь » Chief-NET » Экстрим хакинг » Pokemon Colosseum [PAL]