Автор Тема: [NES] Хаки на любой вкус  (Прочитано 1081719 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Lomax

  • Ушел с форума
  • Сообщений: 3191
    • Просмотр профиля
[NES] Хаки на любой вкус
« : 24 Октябрь 2011, 10:07:12 »
В архиве лежат сами игры, пользуюсь эмулятором FCEUX 2.1.5.
Главный

Приколы


HARDCORE

SOFTCORE

Обновление от 01.03.2012
* Lomax NES_01-03-2012.7z (11703.05 КБ - загружено 13007 раз.)

Если вы не хотите качать из-за каждого хака весь архив заново, заходите на мой сайт: там в разделе хаки все есть. Также там можно будет почитать мини-обзоры на различные игры (уже два))) ), и  выложил свои переводы AVGN)
_http://lomaxdomain.jimdo.com/ (сайт недоступен)
« Последнее редактирование: 21 Ноябрь 2015, 13:47:46 от Iron »

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5040 : 13 Май 2015, 23:18:29 »
lancuster, читать - http://www.romhacking.net/documents/630/
Можно просто спросить у авторов хака: http://romhacking.ru/
Блин, на английском...  :'(
А можешь сам посмотреть, какой адрес (номер) отвечает за первый трек? Который играет в мире 1-1 в Super Mario Xmas. Патч прилагаю.

Оффлайн babulya

  • Пользователь
  • Сообщений: 1204
  • Пол: Мужской
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5041 : 13 Май 2015, 23:43:16 »
lancuster, какой файл для пропатчивания нужен?

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5042 : 13 Май 2015, 23:53:35 »
Super Mario Bros. (JU).nes Но мне в него нужно поместить вот эту русскую музыку. И всю остальную с патча, который я указал в ссылке.

Добавлено позже:
Doomguard45, Ti_, скажите, можно ли в первом уровне игры Cheetahmen включить кнопку В (прыжок)? Я хочу сделать левел хак этой игры, и чтоб персонаж не обходил дыры, а перепрыгивал через них. Да, и ещё: как отключить прыжок в воздухе во втором и третьем уровне?
« Последнее редактирование: 14 Май 2015, 12:14:12 от lancuster »

Оффлайн babulya

  • Пользователь
  • Сообщений: 1204
  • Пол: Мужской
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5043 : 15 Май 2015, 16:28:35 »
lancuster, на выходных гляну, если время будет. Тебе нужно, чтобы эта мелодия играла во всех уровнях?

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5044 : 15 Май 2015, 17:52:06 »
Ну, чтоб она вообще была. Если места не хватит - можно какую-то из оригинальных стереть. Я хочу сделать полностью русский хак Марио. Типа "Русский мужик Ваня", который будет спасать свою Марью. :D

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5045 : 15 Май 2015, 18:54:16 »
Зачем так усложнять? Найти код взаимодействий игроков. И там по ситуации смотреть, и не факт что даже цикл, ведь всего 2 игрока. Может просто функция быть, где X(attacker) и Y(target) номера слотов. И вначале она запускается как x=0/y=1, а потом x=1/y=0.   Может быть даже 2 функции вообще подряд:   JSR check_p1_vs_p2;  JSR check_p2_vs_p1;.
Суть в том, чтобы сделать чтобы порядок чередовался, для этого достаточно любого счетчика кадрового или игрового если есть, точно также как и делают со спрайтами в играх, чередуя в каждом кадре их, чтобы отобразить больше, хоть и мерцанием.

LDA Frame_counter
AND #1
BEQ varian1
 JSR check_2_vs_1
 JSR check_1_vs_2
JMP next_code

varian1:
 JSR check_1_vs_2
 JSR check_2_vs_1

next_code:
 ....



Ну видимо там именно цикл, потому что кроме перебива ударов есть и другие глюки в пользу p2, например на p2 хитбоксы почему-то меньше, чем на p1. Причина этого мне не понятна, т.к. числовое значение для границ хитбоксов в РОМе и при расчётах в RAM одинаково, а на деле хитбоксы на p1 больше, чем на p2. Я даже видео сделал по этому поводу:

Ну, или просто скриншотик)


Короче, глючья в пользу этого p2 там навалом, и подозреваю, что оно идёт из одного и того же источника, и связано именно с "приоритетом в цикле".

Скажи, а можно сделать так, чтобы перебивал тот игрок, кто раньше кнопку нажал, вплоть до тысячных/миллионных долей секунды? Или НЕС такие трюки не позволяет?
Какая-то теория по этому вопросу есть тут - http://wiki.nesdev.com/w/index.php/Clock_rate , но там всё не на русском, поэтому не очень понятно.
« Последнее редактирование: 15 Май 2015, 19:09:55 от Shredder »

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5046 : 15 Май 2015, 19:55:15 »
Ну видимо там именно цикл, потому что кроме перебива ударов есть и другие глюки в пользу p2, например на p2 хитбоксы почему-то меньше, чем на p1. Причина этого мне не понятна, т.к. числовое значение для границ хитбоксов в РОМе и при расчётах в RAM одинаково, а на деле хитбоксы на p1 больше, чем на p2. Я даже видео сделал по этому поводу:

Ну, или просто скриншотик)


Короче, глючья в пользу этого p2 там навалом, и подозреваю, что оно идёт из одного и того же источника, и связано именно с "приоритетом в цикле".

Скажи, а можно сделать так, чтобы перебивал тот игрок, кто раньше кнопку нажал, вплоть до тысячных/миллионных долей секунды? Или НЕС такие трюки не позволяет?
Какая-то теория по этому вопросу есть тут - http://wiki.nesdev.com/w/index.php/Clock_rate , но там всё не на русском, поэтому не очень понятно.
Данные джойстиков каждый кадр считываются кодом чтения джоев. 1 Раз. Ты же не будешь их скажем каждую строку считывать, загрузив проц по полной. 
К тому же тебе всё равно придётся менять цикл или последовательность (1-ый против 2-ого, или 2-ой против 1-ого), потому что механика столкновений тоже 1 раз кадр обрабатывается (или ты хочешь обрабатывать кнопки и столкновения быстрее чем в 60 фпс?).
Эмуляторы в любом случае больше 1 нажатия за кадр не поддерживают.

Насчёт того что там 'именно цикл' это сути не меняет никак. Был цикл всегда в одну 'сторону' . Надо сделать чтобы был и в другую, и чередовать по кадрам.

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5047 : 15 Май 2015, 20:07:30 »
В играх НЕС есть какой-нибудь общий счётчик кадров (ячейка в памяти) ? Или в каждой игре он свой?

Добавлено позже:
В TMNT TF вижу, что значение ячейки $0022 непрерывно увеличивается на 1 и зацикливается, начинаясь с нуля, когда достигает макс. значения в hex - FF (255). В принципе, можно повесить рандом на эту ячейку. Но идея с записью в память соотношения перехватов от обоих игроков и слежения, чтобы они всегда были равны, - выглядит лучше. Я уже написал часть этого кода. Смущает только тот факт, что приходится плодить костыли вместо исправления [потенциального] корня проблемы.
« Последнее редактирование: 15 Май 2015, 20:18:58 от Shredder »

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5048 : 15 Май 2015, 21:01:24 »
Ti_, Shredder, поможете мне с этим ромом? Cheetahmen_The_(Unl)_(T-Rus_by_LANCUSTER).zip
Нужно на первом уровне включить персонажу прыжок (кнопка В), а на втором и третьем отключить возможность прыгать в воздухе.
Сможете помочь?

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5049 : 15 Май 2015, 21:55:42 »
lancuster
Включить кнопку B без полномасштабной переделки игры, думаю, не получится, т.к., судя по логике, "высота для прыжка" там уже используется для хождения по диагонали (вверх-вниз). Потому игрок там и не прыгает, что вертикальная координата смещается по нажатию вверх или вниз, а иного способа прыжка в игре не предусмотрено. "Повторные прыжки" во втором и третьем уровнях при нажатии прыжка во время воздушного удара - это, судя по всему, баги. Устранить их можно, сделав подпрограмму, если позволяет место в РОМе, или "заткнув" дырку в основном коде, если для этого не требуется код бОльшего объёма.

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5050 : 15 Май 2015, 22:26:01 »
Можно освободить место, убрав пробелы из текста (заменив их на переносы). Там их много. Тогда получится?

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5051 : 15 Май 2015, 23:41:07 »
на втором и третьем отключить возможность прыгать в воздухе.

Для второго уровня найди в роме адрес 91BC и замени 2904 на EAEA
Для третьего - 1113D, замени 2904 на EAEA

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5052 : 15 Май 2015, 23:56:17 »
Для второго уровня найди в роме адрес 91BC и замени 2904 на EAEA
Для третьего - 1113D, замени 2904 на EAEA
И тогда точно получится? Хорошо, завтра попробую.
Ещё такой вопрос. Там нумерация уровней отображается вот так: 1, 2, 3, 3, 4, 5. Хотя должна быть 1, 2, 3, 4, 5 и 6 соответственно. Как это исправить? Да, и вот ещё: в игре по-прежнему присутствует баг, известный из второй части. Это когда герой убивает босса, тот умирает, а герой остается на прежнем месте. Связано это с тем, что герой наносит двойной удар. Решающий удар тоже должен быть двойной. Но если удар не двойной - сам понимаешь... Так вот, как в хексе исправить этот баг, сделав боссов проходимыми при любом раскладе?

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5053 : 16 Май 2015, 00:30:02 »
И тогда точно получится?

Точно.

Ещё такой вопрос. Там нумерация уровней отображается вот так: 1, 2, 3, 3, 4, 5. Хотя должна быть 1, 2, 3, 4, 5 и 6 соответственно. Как это исправить?

Где отображается? Перед стартом уровня? У меня всё нормально.

Да, и вот ещё: в игре по-прежнему присутствует баг, известный из второй части. Это когда герой убивает босса, тот умирает, а герой остается на прежнем месте. Связано это с тем, что герой наносит двойной удар. Решающий удар тоже должен быть двойной. Но если удар не двойной - сам понимаешь... Так вот, как в хексе исправить этот баг, сделав боссов проходимыми при любом раскладе?

Данная игра - кладезь багов. Посмотри патч для второй части, вроде там был аналогичный баг и кто-то его исправлял. Может, возьмёшь код оттуда.

 :lol:

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5054 : 16 Май 2015, 00:41:36 »
Точно.

Где отображается? Перед стартом уровня? У меня всё нормально.

Данная игра - кладезь багов. Посмотри патч для второй части, вроде там был аналогичный баг и кто-то его исправлял. Может, возьмёшь код оттуда.

 :lol:
Попробую. Но это, в принципе, прокатит только на 4 уровне.
Насчёт нумерации - смотри лучше. Последний уровень показан как пятый, хотя он по идее шестой.

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5055 : 16 Май 2015, 01:12:30 »
Насчёт нумерации - смотри лучше. Последний уровень показан как пятый, хотя он по идее шестой.

Уровень с птицей в конце?

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5056 : 16 Май 2015, 01:27:46 »
Да. И пятый уровень, который значится как 4. Который не мог пройти Нёрд. И там, где экран мерцает - значится 3 вместо 4.

Добавлено позже:
Да, и ещё. Проблема в том, что патч заточен под определенный ром определенного размера. Пропатчив ром иного размера, можно нарушить его работоспособность в целом.

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5057 : 16 Май 2015, 01:45:45 »
Да. И пятый уровень, который значится как 4. Который не мог пройти Нёрд. И там, где экран мерцает - значится 3 вместо 4.

Повторюсь - у меня всё нормально с нумерацией. Именно в твоём роме, в других не знаю. Проверил не единожды. Но если сдохнуть в пятом уровне, упав в яму, то попадаешь в какой-то однокомнатный "девятый", а из него сразу в "десятый", с кашей из графики, из которого нет выхода, кроме как потерять все жизни.

Да, и ещё. Проблема в том, что патч заточен под определенный ром определенного размера. Пропатчив ром иного размера, можно нарушить его работоспособность в целом.

Не патчить, а посмотреть, какой код добавляет патч, затем портировать его в другой ром.
Тебе необходимо сделать, чтобы босс не травмировался об тело игрока подобно простым врагам и не получал от этого урон. А получал урон и сдыхал только от ударов рукой.

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5058 : 16 Май 2015, 01:56:06 »
Как я его посмотрю? Может, там этих кодов штук 100. Как я это узнаю? Буду каждый отдельно пробовать?
А так, чтоб навскидку - я так не умею. :(

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5059 : 16 Май 2015, 13:10:57 »
lancuster
Боссов оказалось исправить не сложно. Патч к игре можешь забрать на моём сайте:
http://www.nesx.ru/cheetahmen-bugfix-t18.html

Будет время и желание, может поковыряю и остальные баги.

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5060 : 16 Май 2015, 13:50:17 »
Shredder , спасибо. ;)
Потом подумай, как исправить глюки в 10 уровне, сделав его проходимым при любом раскладе. А я потом сделаю левел-хак всех уровней.

Добавлено позже:
Shredder, скажи, а можно в этой игре проставить переносы в тексте? Я пытался в хексе проставить 0E, чтобы расширить текст. Но вместо этого выходит точка, которая даже не отображается на экране. Как сделать перенос строки в этой игре?
« Последнее редактирование: 16 Май 2015, 14:55:01 от lancuster »

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5061 : 16 Май 2015, 16:41:25 »
lancuster
Исправлен глюк с нумерацией уровней при заходе в бонусный уровень в 3-м раунде и глюк с вывалом непонятно куда из бонуса 5-го раунда. Забрать патч можно в той же теме.

С текстом ничего не скажу, переводами никогда не занимался)

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5062 : 16 Май 2015, 16:51:23 »
Понятно. Насчёт нумерации - спасибо, забрал. ;)
Можешь ещё последний недочет исправить. В 5 уровне не всегда можно успеть среагировать, поскольку враги летят очень быстро, а пули от них разлетаются во все стороны. Сможешь хотя бы замедлить их движение?
Да, и напоследок. Скоро будет готов мой перевод второй части этой игры. Сделаешь дебаг прыжков для Cheetahmen II?

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5063 : 16 Май 2015, 16:52:38 »
Что такое "дебаг прыжков"?

Добавлено позже:
С врагами если приноровиться, то всё можно пройти. В некоторых случаях надо использовать частичное отступление и другую тактику. Поэтому я считаю, что править ничего не нужно. Иначе будет слишком легко)

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5064 : 16 Май 2015, 17:02:10 »
Что такое "дебаг прыжков"?

Добавлено позже:
С врагами если приноровиться, то всё можно пройти. В некоторых случаях надо использовать частичное отступление и другую тактику. Поэтому я считаю, что править ничего не нужно. Иначе будет слишком легко)
Хорошо. Тогда я изменю их расположение на уровне. :)
Дебаг прыжков - в смысле "убрать прыжок в воздухе". А то ведь тоже будет слишком легко. ;)

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5065 : 16 Май 2015, 17:04:14 »
На вторую часть есть хак от другого автора. Там это разве не убрано (не смотрел)?

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

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5066 : 16 Май 2015, 17:09:19 »
На вторую часть есть хак от другого автора. Там это разве не убрано (не смотрел)?

А в первой лучше бы поменять местами кнопки удара и прыжка, иначе неудобно прыгать на B.
Там перерисован лайфбар, убран глюк с непроходимостью босса на 4 уровне и пофиксена нумерация всех уровней. Прыжок в воздухе остался. Управление менять не умею. Если подскажешь, какие значения нужно менять в хексе - тогда я сделаю. Или допили свой фикс-патч.
Вот ещё вопрос. На 10 уровне должен появляться грифон. Но из-за какого-то глюка там не видно, куда прыгать, и грифон часто вообще не появляется. Сможешь это исправить?
И, кстати, возможно ли перемещать врагов из одного уровня в другой? Чтоб было более-менее разнообразно?

Добавлено позже:
Вот как примерно выглядит борьба с грифоном на 10 уровне:
« Последнее редактирование: 16 Май 2015, 17:22:21 от lancuster »

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5067 : 16 Май 2015, 17:40:46 »
Да пофиг на кнопки, не так это важно.

И, кстати, возможно ли перемещать врагов из одного уровня в другой? Чтоб было более-менее разнообразно?

Не знаю. Но думаю, что да.

Вот ещё вопрос. На 10 уровне должен появляться грифон. Но из-за какого-то глюка там не видно, куда прыгать, и грифон часто вообще не появляется. Сможешь это исправить?


Добавлено позже:
Вот как примерно выглядит борьба с грифоном на 10 уровне:

Десятого уровня в этой игре вообще не существует. Это баг из-за неправильного кода в точке перехода в шестой из бонуса пятого. Всего в игре 6 уровней.

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5068 : 16 Май 2015, 18:47:55 »
Эммм... Ну, тогда исправь этот баг. И тогда я смогу сделать нормальный левел-хак для этой игры. :)

Оффлайн Shredder

  • Пользователь
  • Сообщений: 583
  • Пол: Мужской
  • Ninja Master
    • Просмотр профиля
Re: [NES] Хаки на любой вкус
« Ответ #5069 : 16 Май 2015, 18:53:36 »
Он уже исправлен.

Добавлено позже:
Кстати, почему игра так много весит? 416 кб. Намного более сложные игры весят 128. Неужели в ней такое количество говнокода? Или это просто плохой дамп?