Перейти к содержимому


Фотография

[NES] JP Ronny (Unl). Как найти карты уровней?


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 9

#1 lancuster

lancuster

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 443 сообщений
  • ГородМурманск

Отправлено 14 Март 2016 - 14:31

Подскажите, пожалуйста, как найти карты уровней в игре JP Ronny. Поиск по микроблокам ничего не дал, а в самом коде ничего похожего на уровни нет.
Ром: lancuster / Файлы / JP_Ronny_(Asder)_(Unl).nes
  • 0

Мой канал на YouTube: https://www.youtube....studiolancuster

Канал на Twitch: https://www.twitch.t...reamerlancuster

Группа в ВК: https://vk.com/virtu...tudio_lancuster

 


#2 SPOT

SPOT

    Продвинутый пользователь

  • Журналисты
  • PipPipPip
  • 600 сообщений

Отправлено 14 Март 2016 - 16:22

а в самом коде ничего похожего на уровни нет.

И как вы узнали, что похожего нечего нет? Вы знаете как они должны выглядеть? Да и что вообще за код, исходный?

 

 

Подскажите, пожалуйста, как найти карты уровней в игре JP Ronny.

Можно взять и начать поганить ром сужая поиск. Где-то уровень точно должен проскочить.


  • 1

#3 Марат

Марат

    Пользователь

  • Пользователи
  • PipPip
  • 14 сообщений
  • ГородАстана

Отправлено 14 Март 2016 - 18:52

Эх, молодёжь.

Рассказываю и показываю как нужно искать данные очень простым и доступным способом.

 

Запускаем FCEUX 2.2.2, если у вас нет, то скачиваем отсюда http://www.fceux.com/web/

1)Запустили. Теперь открываем нужный ром.

post-1-0-48141300-1457976598.png

 

2)В меню выбираем Debug->Code/Data Logger...

post-1-0-18833900-1457976598.png

 

3)Далее переходим в окно FCEUX и нажимаем Start, чтоб начать игру.

Выбираем 1 Player (не принципиально) и жмём Start.

Как только появился экран STAGE 1 - 1, быстро переходим в окно CODE/Data Logger и жмём в окне на кнопку Start.

Это нужно сделать до того, как исчезнет надпись на экране STAGE 1 - 1. Можно поставить эмулятор на паузу и потом запустить CODE/Data Logger.

post-1-0-63437600-1457976598.png

 

4) Далее после того как игра началась, переходим в окно CODE/Data Logger и ставим его на паузу, нажав кнопку Pause.

post-1-0-83896700-1457976598.png

 

5) Теперь открываем hex editor. В меню выбираем Debug->Hex Editor.

post-1-0-83702100-1457977053.png

 

6)В окне Hex Editor'a в меню выбираем View->ROM File.

В окне сразу же станет видно, что байты имеют разную окраску.

Информацию о том, какой цвет что означает можно почитать в Help'e.

Нам же нужно искать байты окрашенные в синий цвет. Синим цветом окрашены байты данных.

Это касается области PRG-ROM. Она-то нам и нужна. Учитывая, что не запакованная карта тайлов занимает 1024 байта,

нам надо найти достаточно большую область окрашенную в синий цвет. Листаем вниз и натыкаемся на вот такую картину:

post-1-0-12636700-1457977054.png

 

Теперь можно просто попробовать изменить один байт. Например 91 на 00. (забегая вперед скажу, что здесь используется сжатие RLE Опытные ромхакеры могут это сразу заметить).

post-1-0-42789500-1457977308.png

 

Теперь переходим в окно FCEUX и пытаемся начать игру. Кхм, не получается.

post-1-0-39256600-1457977054.png
 

Пробуем поменять следующий байт, предварительно вернув начальное значение предыдущего байта.

post-1-0-71082400-1457977308.png

 

Снова пытаемся начать игру. Теперь всё нормально, но почему-то нет никаких изменений. Давайте заглянем Name Table Viewer. Ага, оказывается верхняя строка не отображается на экране из-за этого не удалось увидеть изменений, но они есть.

post-1-0-90062700-1457977308.png

 

А значит мы нашли то, что искали. Т.е. задача выполнена. Подобным способом можно искать и другие данные: поинтеры, запакованные ресурсы, запакованный текст, не запакованный текст и т.д

Прикрепленные изображения

  • 253d11540fc7.png
  • 484214946a32.png
  • c84e0d78dcdc.png
  • post-2-0-48278800-1457976184.png
  • fceux_2016-03-14_22-16-49.png
  • fceux_2016-03-14_22-27-10.png
  • fceux_2016-03-14_22-37-11.png
  • fceux_2016-03-14_22-30-07.png
  • fceux_2016-03-14_22-41-21.png
  • fceux_2016-03-14_22-43-51.png

  • 3

#4 lancuster

lancuster

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 443 сообщений
  • ГородМурманск

Отправлено 14 Март 2016 - 20:07

Я так и думал, что там сжатие используется.
Про Code/Data Logger не слыхал ранее. Попробую. :)
  • 0

Мой канал на YouTube: https://www.youtube....studiolancuster

Канал на Twitch: https://www.twitch.t...reamerlancuster

Группа в ВК: https://vk.com/virtu...tudio_lancuster

 


#5 lancuster

lancuster

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 443 сообщений
  • ГородМурманск

Отправлено 14 Март 2016 - 21:52

А как палитру исправить? Она же там другая стоит.
  • 0

Мой канал на YouTube: https://www.youtube....studiolancuster

Канал на Twitch: https://www.twitch.t...reamerlancuster

Группа в ВК: https://vk.com/virtu...tudio_lancuster

 


#6 Марат

Марат

    Пользователь

  • Пользователи
  • PipPip
  • 14 сообщений
  • ГородАстана

Отправлено 14 Март 2016 - 22:21

Ну так я же показал, как находить данные. Палитра это тоже данные ищи маленькую область окрашенную синим цветом. Меняй байты, смотри что происходит. Палитра занимает размер 32 байта. Значит, можно искать область окрашенную синим цветом размером в 32 байта. Либо просто в ppu в палитре наведи курсор на цвет и узнай какие там номера. Затем в Hex Editor в ROM file ищи эту последовательность.


  • 0

#7 Марат

Марат

    Пользователь

  • Пользователи
  • PipPip
  • 14 сообщений
  • ГородАстана

Отправлено 14 Март 2016 - 22:23

bYGX3As.png

Побаловался немного.


  • 0

#8 lancuster

lancuster

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 443 сообщений
  • ГородМурманск

Отправлено 14 Март 2016 - 22:30

Ясно. Сейчас попробую. ;)
  • 0

Мой канал на YouTube: https://www.youtube....studiolancuster

Канал на Twitch: https://www.twitch.t...reamerlancuster

Группа в ВК: https://vk.com/virtu...tudio_lancuster

 


#9 lancuster

lancuster

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 443 сообщений
  • ГородМурманск

Отправлено 15 Март 2016 - 01:45

Последние 2 подуровня отредактировал, убрал нечестные места и лишние шипы. Но увы - переделать игру до неузнаваемости, видимо, не удастся. :( Ну и ладно. В конце-концов, фикс-хак - тоже хак, верно? :)
  • 0

Мой канал на YouTube: https://www.youtube....studiolancuster

Канал на Twitch: https://www.twitch.t...reamerlancuster

Группа в ВК: https://vk.com/virtu...tudio_lancuster

 


#10 lancuster

lancuster

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 443 сообщений
  • ГородМурманск

Отправлено 15 Март 2016 - 22:16

JP Ronny (Asder) (Fix Hack by LANCUSTER). Упрощены нечестные места на нескольких уровнях. Взломана на 9 жизней. Если не устраивает количество жизней - вы можете внести любое другое значение по адресу 7a и 1b3 для первого и второго игрока соответственно:
lancuster / Файлы / JP_Ronny_(Asder)_(Fix_Hack_by_LANCUSTER).nes
А вот версия фикс-хака с бесконечными жизнями:
lancuster / Файлы / JP_Ronny_(Asder)_(Fix_Hack_by_LANCUSTER)_[t1].nes
P. S.: ещё хотел спросить по поводу Karnov. Как там найти расположение бонусов и врагов? В FatCamp можно только твёрдые блоки и фоны менять, и ещё палитру.
  • 0

Мой канал на YouTube: https://www.youtube....studiolancuster

Канал на Twitch: https://www.twitch.t...reamerlancuster

Группа в ВК: https://vk.com/virtu...tudio_lancuster

 





Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Рейтинг@Mail.ru Яндекс.Метрика