| Разработка и ромхакинг > Ромхакинг и программирование |
| [NES] Учебник по ромхакингу |
| << < (8/13) > >> |
| DendyJunior3:
--- Цитата: ALXR от 29 Сентябрь 2016, 00:39:08 ---Если на вход будет подано 0, то цикл выполнится куда больше, чем 0 раз. --- Конец цитаты --- Ты ж писал, что подается от 1 до 4 |
| ALXR:
--- Цитата: DendyJunior3 от 29 Сентябрь 2016, 01:52:14 ---Ты ж писал, что подается от 1 до 4 --- Конец цитаты --- Неправильно твой вопрос прочитал :blush: |
| CaH4e3:
--- Цитата: lancuster от 28 Сентябрь 2016, 23:50:33 ---Нафиг писать "ниббл", если и так видно, что это означает? :) --- Конец цитаты --- и что это означает, расскажи нам Добавлено позже: --- Цитата: DendyJunior3 от 29 Сентябрь 2016, 01:52:14 ---Ты ж писал, что подается от 1 до 4 --- Конец цитаты --- --- Цитата: ALXR от 29 Сентябрь 2016, 13:06:19 ---Неправильно твой вопрос прочитал :blush: --- Конец цитаты --- вообще там не подается 1, только от 2 до 4 хех (ДА, У МЕНЯ ЕСТЬ УЖЕ ДИЗАСМ ЭТОЙ ИГРЫ ЛОЛ) |
| DendyJunior3:
--- Цитата: CaH4e3 от 30 Сентябрь 2016, 22:00:28 ---ДА, У МЕНЯ ЕСТЬ УЖЕ ДИЗАСМ ЭТОЙ ИГРЫ ЛОЛ --- Конец цитаты --- ты уже приписал свое имя к копирайтам лол? |
| CaH4e3:
да, а что? |
| lancuster:
А то, что ты - пират, лолъ. :D |
| CaH4e3:
и снова искрометный юмор от гуру стэндапа ланкустера * CaH4e3 сыто лолкает |
| lancuster:
* CaH4e3 сыто лолкает, поедая говно. Лолъ :D |
| CaH4e3:
дада, продолжай плясать, смешная говорящая голова, вдруг хаки начнут получаться (на самом деле нет) лол |
| lancuster:
Это только твоя смешная голова так думает. Остальные так не считают. :P |
| Maximum:
Переименуйте уже тему в "Санчез и Ланкастер: Противостояние" :D |
| lancuster:
Нет-нет. Вернемся к теме. Скоро напишу ещё один урок. Кому не надо - валите мимо. ;) |
| Mefistotel:
Ещё статья попалась из журнала хакер: https://xakep.ru/2014/10/19/start-romhaking/ |
| CaH4e3:
--- Цитата: Mefistotel от 02 Октябрь 2016, 05:42:08 ---Ещё статья попалась из журнала хакер: https://xakep.ru/2014/10/19/start-romhaking/ --- Конец цитаты --- --- Цитата ---пойнтерами (разделители текста) --- Конец цитаты --- уровень компетентности авторов хакера всегда славился своей недосягаемостью лол дальше этой фразы можно, впринципе, уже не читать |
| lancuster:
Разделители текста? Ха! А я-то всегда думал, что это указатели. :) |
| lancuster:
Если кому нужно - вот ещё урок: [NES Ромхакинг] Урок № 5: Использование Game Genie кодов в ромхакинге и создание своих собственных GG кодов В данном мини-уроке мы с вами рассмотрим, как можно использовать Game Genie (коды обмана) для взлома игр. О том, что же такое Game Genie, наверное, вам рассказывать не стоит. Все мы играли в консольные игры на эмуляторы, доставали читы из Интернета и вставляли их в специальное окно, чтобы включить их в игру и получить желаемый результат. Ну, а для тех, кто не в курсе – я вкратце поясню. Game Genie (коды обмана) – это код, состоящий из 6 или 8 букв, в котором зашифрован адрес байта, который заменяется на указанный в этом же коде. Пример: SXSLUOVK - 39D3?CE:AD. Вставив код обмана и активировав его в эмуляторе, вы получите нужный эффект незамедлительно. Но если эти коды можно использовать для временного эффекта – почему бы их не внедрить непосредственно в ром, чтобы иметь возможность играть во взломанный ром на любом эмуляторе или даже на приставке?.. Разумеется, мы так и поступим, правда? В таком случае предлагаю вам один очень интересный и, на мой взгляд, самый полезный ресурс для любого новичка в ромхакинге – GameHacking.Net. На нём собраны коды к большинству популярных консолей. И что самое главное – коды к ним добавляют такие же геймеры-любители, как и мы с вами, так что если захотите помочь ресурсу с наполнением страниц новыми рабочими кодами – можете зарегистрироваться на нём и помочь его облагородить. Чтобы найти коды для нужной вам игры, переходим по адресу: gamehacking.org/?sys=nes (откроется страница со списком NES игр), где выбираем заглавную букву вашей игры и затем ищем её в списке. В данном случае рассмотрим такую игру, как «Чип и Дейл спешат на помощь»: gamehacking.org/game/29235 . У меня лично вот такой файл в наличии: Chip_'n_Dale_Rescue_Rangers_(U)_[!].nes (хотя это не столь важно, главное – чтобы регион совпадал). Заходим на страницу, видим кучу кодов, среди которых есть и ранее невиданного вами типа RAW. «Что они обозначают, как ими пользоваться?» - спросите вы. Отвечу: на сайте представлены коды трёх типов – GENIE, RAW и PAR. Что такое GENIE, вы, наверное, уже догадались. RAW (от англ. «raw» - «сырой») – в буквальном смысле «сырой код». Если вы читали мои предыдущие статьи, то вы, скорее всего, поймёте, что указанный код RAW – это адрес переменной во временной памяти эмулятора. Рядом указано значение, которое необходимо ввести в RAM памяти, чтобы получить эффект, указанный в описании чита (к каждому коду есть своё описание, но только на английском языке). Собственно, это всё равно, что кто-то уже нашёл переменные за вас, и вам нужно только сделать бряк и найти значение в ROM, чтобы заменить его на указанное. PAR (Pro Action Rocky) – аналог RAW, но в библиотеке чит-кодов для NES он не встречается, так что его рассматривать не будем (его можно встретить в списках читов к более мощным консолям). А теперь – краткий ликбез для тех, кто плохо понимает английский: 1-Hit Kill Bosses – убийство боссов с одного удара Always Have или Always Start With – Всегда иметь / Всегда стартовать с указанным предметом, жизнями и пр.. Jump In Mid-Air – прыгать в воздухе (бесконечные прыжки) Infinite Lives – бесконечные (неопределённые) жизни Infinite Health/Energy – бесконечное здоровье/энергия Invincibility/Invulnerability – бессмертие/неуязвимость Level/Stage Modifier – выбор уровня Walk Thru Walls/Enemies – ходить через стены/врагов … Остальное и так понятно. Как встраивать Game Genie в игру: Берём любой понравившийся код со страницы, указанной выше. Например, вы хотите, чтобы в игре поверх ящиков отображалось их содержимое. В таком случае берите чит под названием X-Ray Vision (alt), код: ENSEXLEI. Копируете код, запускаете Chip 'n Dale Rescue Rangers на эмуляторе FCEUX 2.2.3 и затем заходите в Debug->Game Genie Encoder/Decoder. В появившемся окне вводите данный код в форму Game Genie Code: Можете вводить вручную и с маленькой буквы (регистр не учитывается) – главное, чтобы код вводился вами без ошибок. Как только код будет полностью вами введён (или вставлен) – утилита сама напишет вам прямой путь на необходимое значение в ROM памяти. Нажав дважды на строчку в Possible Affected Address, вы попадёте прямо на нужное значение, которое вам нужно поменять. В окошке Game Genie Encoder/Decoder Value означает текущее значение в роме, а Compare (сравнение) – значение, на которое вам его нужно поменять. И как только вы это сделаете, и игра прочитает данные изменения – результат будет виден сразу: Как видите, ничего сверхсложного в этом нет. Хочу ещё отметить, что коды с шестью буквами вместо восьми дают не всегда стабильный и не всегда правильный эффект, поскольку вставляют одно и то же значение в несколько мест, так что встраивать их в игру я не рекомендую, потому как ром можно запороть. … Ну, и напоследок я бы хотел показать вам, каким образом получаются эти самые Game Genie. У нас уже есть готовый код… что нам делать дальше? Ищем в Интернете прогу под названием Game Genie Converter. Открыв её, выбираете пункт NES, затем вставляете имеющийся код в верхнее поле, как показано на картинке: Таким образом, вы увидели GG код в расшифрованном виде. В Hex Code указан код в RAM (тот, что вы получаете после срабатывания брейкпоинта), далее идут всё те же – текущее и новое значение. Ниже располагается Instruction – инструкция машинного кода. Ранее я уже упоминал некоторые из них: DEC – DECREASE, INC – INCREASE, CMP – COMPARE, NOP - NOPE. Собственно говоря, это всё, что вам нужно знать о создании и применении Game Genie в ромхакинге. Благодарю за внимание! ;) |
| neoborg:
lancuster, :thumbup: |
| Kinbeas:
lancuster, полезная вещь. Даже странно, что ты на базе этого мало что посоздавал. )) |
| lancuster:
Дык я не пират. :D |
| neoborg:
готово около 50% :D |
| Навигация |
| Главная страница сообщений |
| Следующая страница |
| Предыдущая страница |