форум группы Chief-Net » » Базовый хакинг » Карта тайлов для gba

Страниц (1): [1]
 

1. ZukoFL - 31 Марта, 2016 - 15:33:11 - перейти к сообщению
Всем привет, скажите пожалуйста, как искать карту тайлов на gba?
2. Guyver - 31 Марта, 2016 - 15:56:44 - перейти к сообщению
Стоп-игра! Игру и данные для поиска в студию!
3. ZukoFL - 31 Марта, 2016 - 18:33:41 - перейти к сообщению
Guyver пишет:
Стоп-игра! Игру и данные для поиска в студию!
Megaman Zero 3
Рисунок Mission Start
4. Ace Lightning - 01 Апреля, 2016 - 11:02:36 - перейти к сообщению
Карта начинается вроде бы вот отсюда: 36A488.
Через интервал в один байт: 12

Я использовал ром: 1702 - MegaMan Zero 3 (U)(Rising Sun)
5. ZukoFL - 01 Апреля, 2016 - 14:49:36 - перейти к сообщению
Ace Lightning пишет:
Карта начинается вроде бы вот отсюда: 36A488.
Через интервал в один байт: 12

Я использовал ром: 1702 - MegaMan Zero 3 (U)(Rising Sun)

Ну на этом спасибо, а как карту искать то?
6. Ace Lightning - 01 Апреля, 2016 - 15:03:23 - перейти к сообщению
Да собственно, поиск тайловой карты в играх для GBA ничем не отличается от поиска тайловой карты в играх для других приставок и консолей.

1) Сначала нужно определить какие числовые значения у тайлов, которыми выводится надпись.
2) Затем нужно попробовать взять отдельный кусок этой надписи и поискать его в роме игры.
3) Если этот поиск не дает результатов, то значит, что либо карта тайлов пожата каким-либо алгоритмом, либо номера тайлов в ней записываются через какой-либо интервал.
4) Собственно, т.к. в роме сама надпись не пожата (тайлы, которыми она выводится), то скорее всего не пожата и карта.
5) Пробуем искать последовательность с интервалом.
6) Находим последовательность.
7) Пробуем заменить в ней какой-нибудь тайл на другой и смотрим изменилась ли надпись, если изменилась, то значит мы нашли карту верно, если нет, то продолжаем поиск.

Если алгоритм не очень понятен вам, то я могу расписать подробнее на примере этой игры что и как, но вечером.
7. ZukoFL - 01 Апреля, 2016 - 17:07:27 - перейти к сообщению
Ace Lightning пишет:
Да собственно, поиск тайловой карты в играх для GBA ничем не отличается от поиска тайловой карты в играх для других приставок и консолей.

1) Сначала нужно определить какие числовые значения у тайлов, которыми выводится надпись.
2) Затем нужно попробовать взять отдельный кусок этой надписи и поискать его в роме игры.
3) Если этот поиск не дает результатов, то значит, что либо карта тайлов пожата каким-либо алгоритмом, либо номера тайлов в ней записываются через какой-либо интервал.
4) Собственно, т.к. в роме сама надпись не пожата (тайлы, которыми она выводится), то скорее всего не пожата и карта.
5) Пробуем искать последовательность с интервалом.
6) Находим последовательность.
7) Пробуем заменить в ней какой-нибудь тайл на другой и смотрим изменилась ли надпись, если изменилась, то значит мы нашли карту верно, если нет, то продолжаем поиск.

Если алгоритм не очень понятен вам, то я могу расписать подробнее на примере этой игры что и как, но вечером.
ОК, жду вечера)
8. Ace Lightning - 02 Апреля, 2016 - 06:24:00 - перейти к сообщению
Итак, сначала определяем значения тайлов искомой надписи:


Первый тайл надписи: $601, шестерку отбрасываем, получается $01.
Тайл с номером $00 - это, по-видимому, бесцветный фон.
Тайлы в памяти расположены по порядку, сама надпись состоит из четырех рядов.


Видим, что в первой строке надписи сначала идут 5 тайлов $00, потом 18 тайлов надписи ($01-$13) и снова тайлы $00 в количестве 7 штук.

Теперь открываем ром в hex-радкторе и попытаемся найти последовательность. Практика подсказывает, что байты 00 искать нет смысла, потому что карта может быть пожата RLE, поэтому надо искать последовательность неповторяющихся тайлов. Так как надпись практически полностью состоит из неповторяющихся тайлов, то нам только проще.
Попытаемся найти последовательность:
01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10


Что-то находится, но это все не то. Остается предположить два варианта: либо карта пожата, либо значения в ней расположены через интервал. Воспользуемся поиском через интервал в hex-редакторе и вуаля.


Попробуем изменить какой-нибудь байт в этой карте и посмотреть что произойдет в игре.


Видим, что изображение изменилось, значит карта найдена верно.
9. Mefistotel - 02 Апреля, 2016 - 09:56:09 - перейти к сообщению
Бывает RLE с арифметической прогрессией. Улыбка
Как раз жмёт возрастающие и повторяющиеся цепочки.
10. ZukoFL - 02 Апреля, 2016 - 11:28:20 - перейти к сообщению
Ace Lightning пишет:
Спойлер (Отобразить)
ну что ж, спасибо, теперь всё понятно)
11. ZukoFL - 02 Апреля, 2016 - 15:41:34 - перейти к сообщению
Mefistotel пишет:
Бывает RLE с арифметической прогрессией. Улыбка
Как раз жмёт возрастающие и повторяющиеся цепочки.
а может такое быть, чтоб одна надпись была не пожата а другая пожата, а то я чёто надпись Fusion не могу в тайловом редакторе найти?
12. Mefistotel - 02 Апреля, 2016 - 15:55:04 - перейти к сообщению
Если там что-то и пожато, то LZ-ом, для распаковки которого много прог в сети.
Ты что, серьёзно замахнулся на перевод третьей части?
Анс "в гробу" перевернётся (чёрный юмор).
13. ZukoFL - 02 Апреля, 2016 - 16:47:20 - перейти к сообщению
Mefistotel пишет:
Если там что-то и пожато, то LZ-ом, для распаковки которого много прог в сети.
Ты что, серьёзно замахнулся на перевод третьей части?
Анс "в гробу" перевернётся (чёрный юмор).
ну да, скрипт уже почти закончил
14. Mefistotel - 03 Апреля, 2016 - 00:50:31 - перейти к сообщению
Удалил сообщения со сбитой кодировкой. Чем текст вставляешь или вынимаешь?
15. ZukoFL - 04 Апреля, 2016 - 13:55:39 - перейти к сообщению
Ace Lightning пишет:
Итак, сначала определяем значения тайлов искомой надписи:
а как в этом No$gba открыть Vram Viewer?

А не, всё норм, не то скачал
16. Mefistotel - 04 Апреля, 2016 - 16:01:43 - перейти к сообщению
Хватит цитировать полностью это здоровое сообщение. Ещё раз и первая жёлтая карточка.
Цитируй конкретные фразы.
17. ZukoFL - 05 Апреля, 2016 - 08:43:25 - перейти к сообщению
Mefistotel пишет:
Хватит цитировать полностью это здоровое сообщение. Ещё раз и первая жёлтая карточка.
Цитируй конкретные фразы.

Всё, понял)
18. Mefistotel - 06 Апреля, 2016 - 00:18:56 - перейти к сообщению
Ты так и не ответил на вопрос. Какой программой работаешь с текстом?
19. ZukoFL - 14 Апреля, 2016 - 12:44:57 - перейти к сообщению
Mefistotel пишет:
Ты так и не ответил на вопрос. Какой программой работаешь с текстом?
круптар
20. Mefistotel - 14 Апреля, 2016 - 14:50:48 - перейти к сообщению
Проектик можно увидеть? Можно в личку.

Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®