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)
Через интервал в один байт: 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)
Через интервал в один байт: 12
Я использовал ром: 1702 - MegaMan Zero 3 (U)(Rising Sun)
Ну на этом спасибо, а как карту искать то?
6. Ace Lightning - 01 Апреля, 2016 - 15:03:23 - перейти к сообщению
Да собственно, поиск тайловой карты в играх для GBA ничем не отличается от поиска тайловой карты в играх для других приставок и консолей.
1) Сначала нужно определить какие числовые значения у тайлов, которыми выводится надпись.
2) Затем нужно попробовать взять отдельный кусок этой надписи и поискать его в роме игры.
3) Если этот поиск не дает результатов, то значит, что либо карта тайлов пожата каким-либо алгоритмом, либо номера тайлов в ней записываются через какой-либо интервал.
4) Собственно, т.к. в роме сама надпись не пожата (тайлы, которыми она выводится), то скорее всего не пожата и карта.
5) Пробуем искать последовательность с интервалом.
6) Находим последовательность.
7) Пробуем заменить в ней какой-нибудь тайл на другой и смотрим изменилась ли надпись, если изменилась, то значит мы нашли карту верно, если нет, то продолжаем поиск.
Если алгоритм не очень понятен вам, то я могу расписать подробнее на примере этой игры что и как, но вечером.
1) Сначала нужно определить какие числовые значения у тайлов, которыми выводится надпись.
2) Затем нужно попробовать взять отдельный кусок этой надписи и поискать его в роме игры.
3) Если этот поиск не дает результатов, то значит, что либо карта тайлов пожата каким-либо алгоритмом, либо номера тайлов в ней записываются через какой-либо интервал.
4) Собственно, т.к. в роме сама надпись не пожата (тайлы, которыми она выводится), то скорее всего не пожата и карта.
5) Пробуем искать последовательность с интервалом.
6) Находим последовательность.
7) Пробуем заменить в ней какой-нибудь тайл на другой и смотрим изменилась ли надпись, если изменилась, то значит мы нашли карту верно, если нет, то продолжаем поиск.
Если алгоритм не очень понятен вам, то я могу расписать подробнее на примере этой игры что и как, но вечером.
7. ZukoFL - 01 Апреля, 2016 - 17:07:27 - перейти к сообщению
Ace Lightning пишет:
ОК, жду вечера)
Да собственно, поиск тайловой карты в играх для GBA ничем не отличается от поиска тайловой карты в играх для других приставок и консолей.
1) Сначала нужно определить какие числовые значения у тайлов, которыми выводится надпись.
2) Затем нужно попробовать взять отдельный кусок этой надписи и поискать его в роме игры.
3) Если этот поиск не дает результатов, то значит, что либо карта тайлов пожата каким-либо алгоритмом, либо номера тайлов в ней записываются через какой-либо интервал.
4) Собственно, т.к. в роме сама надпись не пожата (тайлы, которыми она выводится), то скорее всего не пожата и карта.
5) Пробуем искать последовательность с интервалом.
6) Находим последовательность.
7) Пробуем заменить в ней какой-нибудь тайл на другой и смотрим изменилась ли надпись, если изменилась, то значит мы нашли карту верно, если нет, то продолжаем поиск.
Если алгоритм не очень понятен вам, то я могу расписать подробнее на примере этой игры что и как, но вечером.
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-редакторе и вуаля.
Попробуем изменить какой-нибудь байт в этой карте и посмотреть что произойдет в игре.
Видим, что изображение изменилось, значит карта найдена верно.
Первый тайл надписи: $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 пишет:
а может такое быть, чтоб одна надпись была не пожата а другая пожата, а то я чёто надпись Fusion не могу в тайловом редакторе найти?
Бывает RLE с арифметической прогрессией.
Как раз жмёт возрастающие и повторяющиеся цепочки.
Как раз жмёт возрастающие и повторяющиеся цепочки.
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 - перейти к сообщению
Проектик можно увидеть? Можно в личку.