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

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

Оффлайн FCEUX

  • Пользователь
  • Сообщений: 3
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6930 : 21 Декабрь 2022, 10:22:24 »
А зачем тебе именно чит нужен? Патч намного удобней, кликнул 2 раза и применил на том роме, на котором хочешь, гораздо быстрей, чем вводить читы вручную. Если патч не подходит к другому рому, ну значит и читы тоже не подойдут, так как адреса находятся в других местах   Просто патч все автоматом делает за тебя, представь, что изменений вдресов в роме больше сотни - ты запаришься читы вводить вручную - сто кодов Game Genie - это жесть

Мне нужно внести именно одно два однобайтовое изменение в ром тому и патч, просто хотелось понять как это работает. Про ips я знаю, без надобности. Большое спасибо!

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5674
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6931 : 21 Декабрь 2022, 12:59:03 »
типа ips
Только делать IPS самому, чтобы не нарваться на оптимизаторов (Lunar IPS и другое дерьмо), которые объединяют близкие изменённые байты из-за чего может произойти редкая ситуация с изменением ненужных байтов в хаке на основе целевого рома.
Мне нужно внести именно одно два однобайтовое изменение в ром
Лучше вообще не использовать Game Genie для NES, это чисто для коротких ненадёжных читов, для запоминания изменений или передачи текстом, лучше обычные "позиция_в_файле:байты_для_вставки" (ABCD: EF 01 23).
Сделать Game Genie на основе двух файлов почти так же как и сделать свой GG:
1) Сравниваете файлы.
2) Высчитываете номер PRG банка изменённого байта.
3) В отладчике во время игры (рекомендую Mesen) смотрите по каким CPU адресам появляется банк, чтобы вычислите CPU адрес байта.
4) Составляете дешифрованный GG - "CPU_адрес?Оригинальный_байт:Новый_байт" (например, 8FFF?A9:60) и переводите в GG.
5) Проверяете чит на коллизии с другими банками, нужно убедиться, что по CPU адресу во время игры не будет других банков с таким же проверочным байтом (например 00 может встречаться часто), иначе эмулятор или программа для вшития GG заденет лишние байты. Если есть коллизия, то всё, такое изменение нельзя представить в виде GG, нужно придумать другой чит. Для проверки можно использовать программы для вшития GG (как Game Genie Guy!, но она кривая, и ucon64), будет видно сколько произошло изменений одного чита, исключаем изменение CHR ROM (потому что программа тупая и будет шарить там). Для NROM коллизий не будет, для MMC3 в CPU $E000-FFFF всегда фиксированный банк + в зависимости от игры также $8000-9FFF или $C000-DFFF, для других мапперов по ситуации.
Повторяете всё для каждого байта. Пункты 2) и 3) можно заменить на установку точек остановки RWX с запасом на нужные адреса.
Как видно, GG это проблема для серьёзных читов/хаков, в редких случаях PRG в адресах CPU $4020-7FFF, куда GG не достать. Может в каких-то эмуляторах догадались иметь читы в виде позиции в файле, а лучше позицию PRG (чтобы исключить трейнеры, заголовок iNES и т. п.), чтобы не жонглировать патчами.
UPD: Кстати, не называйте профили (ник) известными названиями. Теперь при поиске по FCEUX будут выводиться сообщения с обращениями к пользователю FCEUX. Не знаю о чём люди думают, золотые люди которые имеют ники вида dima47813675.
« Последнее редактирование: 21 Декабрь 2022, 13:16:14 от Sharpnull »

Оффлайн Беларус учит русский

  • Модератор
  • Сообщений: 1421
    • ВКонтакте
    • Steam
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6932 : 21 Декабрь 2022, 15:40:56 »

Sharpnull, про Lunar IPS и "другое дерьмо" уж очень интересно, где-нибудь про это писал? Почему портят данные, если они рядом?

Оффлайн Cyneprepou4uk

  • Пользователь
  • Сообщений: 217
  • Пол: Мужской
  • Самый лысый ромхакер
    • ВКонтакте
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6933 : 21 Декабрь 2022, 16:50:22 »
perfect_genius, допустим у тебя 3 рядом стоящих байта, например FF FF FF. Ты делаешь хак, где меняешь первый и третий байты на 00, то есть будет 00 FF 00. Lunar IPS сохранит строку 00 FF 00 целиком, так как для него в плане экономии места файла выгоднее записать все 3 байта и указать длину строки 3, вместо того, чтобы для каждого байта 00 указывать отдельный адрес с длиной строки 1.

Это приводит к тому, что если вдруг ты решишь поменять второй байт FF и создать отдельный патч, то эти 2 патча уже будут несовместимы, если применять их в неправильном порядке, ведь первый патч просто вернет FF как в оригинале.

Оффлайн Mr2

  • Пользователь
  • Сообщений: 1668
  • Пол: Мужской
  • Free roaming sorcerer
    • Facebook
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6934 : 21 Декабрь 2022, 18:08:38 »
Это приводит к тому, что если вдруг ты решишь поменять второй байт FF и создать отдельный патч, то эти 2 патча уже будут несовместимы, если применять их в неправильном порядке, ведь первый патч просто вернет FF как в оригинале.
Это не проблема IPS патча, это проблема исключительно хакера. :facepalm: В IPS патчах распространяется полная модификация игры, следовательно оптимизация байт вполне оправдана.

10 лет назад был выпущен Чит патчер, который идеально подходит для чит кодов. Но видимо его время ещё не пришло, нам интереснее выдумывать свой велик в виде IPS, HEX, а самое оно, это закидывать на форум сотни ромов с парой изменённых байт.  :wall:

Оффлайн MaxWooD

  • Пользователь
  • Сообщений: 1129
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6935 : 21 Декабрь 2022, 19:15:19 »
10 лет назад был выпущен Чит патчер
Есть замечательная программа Game Genie Guy!, чтобы пропатчит ром кодами GG.

Оффлайн Cyneprepou4uk

  • Пользователь
  • Сообщений: 217
  • Пол: Мужской
  • Самый лысый ромхакер
    • ВКонтакте
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6936 : 21 Декабрь 2022, 19:34:27 »
Это не проблема IPS патча, это проблема исключительно хакера.

Чушь.

Оффлайн MaxWooD

  • Пользователь
  • Сообщений: 1129
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6937 : 21 Декабрь 2022, 20:28:10 »
нужно генерировать коды
Как понять? Просто вставить код GG не получится?

Оффлайн Mr2

  • Пользователь
  • Сообщений: 1668
  • Пол: Мужской
  • Free roaming sorcerer
    • Facebook
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6938 : 21 Декабрь 2022, 21:19:47 »
Как понять? Просто вставить код GG не получится?
Тут вроде как речь идёт о создании патча:
Мне нужно внести именно одно два однобайтовое изменение в ром тому и патч

То есть автору придётся самому создавать GG коды, а не вставлять уже готовые.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5674
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6939 : 29 Декабрь 2022, 00:44:45 »
[NES] Сапёр / Minesweeper / Mine sweeper из "8-in-1 (Sachen Super Cartridge Version 3)"
Простое исправление меню у вытащенного Сапёра из многоигровки. 3 режима: установленные размеры поля, выбор размера, на 2 игрока. В сети есть ромы для каждого режима отдельно. PRG 16KiB, CHR 8KiB, NROM (mapper 0).

Оффлайн Texic

  • Пользователь
  • Сообщений: 59
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6940 : 05 Январь 2023, 20:22:36 »
[SMD] Comix Zone - hardcore hack
Увеличивает сложность врагов, делая их везде как на последнем уровне.
Привет, а скажи пожалуйста, у тебя случаем нет РОМа, который наоборот, упрощает прохождение, а именно - убирает потерю здоровья при ударах под объектам? Всю жизнь это бесило. Такой бред, блин)
Хочется хоть раз пройти нормально, без необходимости рассчитывать количество ударов по бочкам.

Оффлайн AuAurora

  • Пользователь
  • Сообщений: 1782
  • Мур
    • Youtube
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6941 : 05 Январь 2023, 22:38:54 »
или раз уж реализьм - добавить регенерацию) слабую

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3259
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6942 : 06 Январь 2023, 08:59:28 »
Привет, а скажи пожалуйста, у тебя случаем нет РОМа, который наоборот, упрощает прохождение
У меня нет, но что-то подобное есть на ромхакинг.нет и в стиме.
https://www.romhacking.net/hacks/4509/
https://steamcommunity.com/sharedfiles/filedetails/?id=674962389

Оффлайн Texic

  • Пользователь
  • Сообщений: 59
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6943 : 06 Январь 2023, 13:20:40 »
У меня нет, но что-то подобное есть на ромхакинг.нет и в стиме.
https://www.romhacking.net/hacks/4509/
https://steamcommunity.com/sharedfiles/filedetails/?id=674962389
Ооооооо, премного благодарен!

Оффлайн paul_met

  • Супермодератор
  • Сообщений: 8197
  • Пол: Мужской
  • Похититель эмуляции
    • Youtube
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6944 : 16 Январь 2023, 18:51:33 »
Решил таки попробовать покопаться в играх для мегадрайва и разобраться как там всё устроено, так как дано не давали покоя некоторые нюансы. Например, всегда бесила это толстенная чёрная полоса внизу экран в Landstalker, которая закрывает приличную площадь обзора. Разбираясь пол дня с отладчиками системы, ассемблером и кое-какими доками удалось убрать эту полосу, но в определённые моменты возникают проблемы с выводом тайлов (не всё рендерится или рендериться неправильно).

256342-0 256344-1

Оффлайн yousver2

  • Пользователь
  • Сообщений: 2576
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6945 : 16 Январь 2023, 19:32:46 »
paul_met, мож там конец уровня и просто ничего нет, кроме каши?

Оффлайн paul_met

  • Супермодератор
  • Сообщений: 8197
  • Пол: Мужской
  • Похититель эмуляции
    • Youtube
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6946 : 16 Январь 2023, 20:22:26 »
paul_met, мож там конец уровня и просто ничего нет, кроме каши?
Нет, это на любом экране происходит и неважно в каком месте комнаты находишься.

Оффлайн yousver2

  • Пользователь
  • Сообщений: 2576
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6947 : 16 Январь 2023, 20:51:34 »
paul_met, ща не могу глянуть, сатурн ломаю) а попробуй экран сдвинуть вниз на размер этой полоски бывшей. Может вверху такой каши не будет
Тебе в любом случае желательно его сдвинуть, чтобы персонаж был отцентрован, а то щас он где то вверху лазиет )
« Последнее редактирование: 16 Январь 2023, 20:58:02 от yousver2 »

Оффлайн Berstain

  • Emu-Land Team
  • Сообщений: 2723
  • Пол: Мужской
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6948 : 17 Январь 2023, 03:17:24 »
paul_met,  было бы здорово, если б управление подправил. :)

Оффлайн paul_met

  • Супермодератор
  • Сообщений: 8197
  • Пол: Мужской
  • Похититель эмуляции
    • Youtube
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6949 : 17 Январь 2023, 08:32:56 »
paul_met,  было бы здорово, если б управление подправил. :)
Если речь о косяке с D-Pad, то это уже давным-давно поправили.

Оффлайн Berstain

  • Emu-Land Team
  • Сообщений: 2723
  • Пол: Мужской
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6950 : 17 Январь 2023, 10:04:46 »
paul_met,  речь именно о нем.
Но, я увы был не в курсе.
Если  есть возможность, кинь в лс, или сюда.

Оффлайн paul_met

  • Супермодератор
  • Сообщений: 8197
  • Пол: Мужской
  • Похититель эмуляции
    • Youtube
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6951 : 17 Январь 2023, 10:23:00 »
paul_met,  речь именно о нем.
Но, я увы был не в курсе.
Если  есть возможность, кинь в лс, или сюда.
На ромхаке есть аж два патча. А если ручками, то вот будет выглядеть фикс управления:
Address Value
$193C 010C
$1940 04B2
$1948 0634
$1958 0304

Оффлайн Berstain

  • Emu-Land Team
  • Сообщений: 2723
  • Пол: Мужской
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6952 : 17 Январь 2023, 13:19:40 »
paul_met:D Спасибо.
Буду иметь ввиду.

Оффлайн paul_met

  • Супермодератор
  • Сообщений: 8197
  • Пол: Мужской
  • Похититель эмуляции
    • Youtube
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6953 : 19 Январь 2023, 15:42:01 »
В общем, пробой пера для мегадрайва стал Warlock. Хак добавляет поддержку 6-ти кнопочного геймпада. Теперь предметы можно переключать кнопкой "MODE", а использовать их кнопкой "Х".

« Последнее редактирование: 19 Январь 2023, 16:19:37 от paul_met »

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5674
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6954 : 20 Январь 2023, 19:44:36 »
[NES] Boogerman II - The Final Adventure (Rex-Soft) - MMC3
Адаптация под MMC3 маппер. Оригинал на клоне MMC3 (маппер 263) с изменёнными адресами регистров и перестановкой битов данных у них.

Оффлайн paul_met

  • Супермодератор
  • Сообщений: 8197
  • Пол: Мужской
  • Похититель эмуляции
    • Youtube
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6955 : 25 Январь 2023, 18:47:47 »
Double Dragon V - The Shadow Falls [Sega Mega Drive / Genesis].
Увеличено разрешение игры в режиме битвы до 320х224 (исходное - 256х224). Также увеличена видимая область по вертикале.
Ссылка на патч


Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5674
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6956 : 29 Январь 2023, 08:00:07 »
Пак некоторых моих хаков. Кое-где в src скрипты/код для сборки хака, для .py файлов требуется Python 3.

[GEN/MD] Berzerk - Rip, Fix Pad, Headless
Berzerk_Rip.gen - уменьшение рома до 128КБ, убрано аудио:
* На логотипе SEGA.
* Если хотя бы один враг остаётся при переходе на уровень - "Chicken, fight like a robot".
* Смерть на 1-м уровне - "Got the humanoid, got the intruder!", теперь всегда "Got the humanoid, got the chicken!".
Berzerk_Rip_FixPad.gen - как Rip с исправлением для 6-кнопочного контроллера.
Berzerk_Rip_FixPad_Headless.gen - как Rip_FixPad с убраной головой смерти.

[GEN/MD] Octopus - Rip
Уменьшение рома до 128КБ. Убран логотип SEGA и manual, уменьшен показ автора.

[NES/FC] Beetlejuice (U) [T+Rus_MagicTeam] - Level Select, Invincibility, Infinite Lives
* Неуязвимость и бесконечные жизни даются при нажатии кнопки B на заставке в начале игры.
* На карте в начале игры выбор уровня нажатием Влево/Вправо.

[NES/FC] Bootèe / Bootee - Manual Jump, Full Charge
Для прыжка держать кнопку A. Стрельба без заряда. Убраны инструкция вначале и полоска заряда.

[NES/FC] Elvira's Monster Party - Level Select, Full HP
Оригинал - https://www.romhacking.net/hacks/5423/.
Elvira's Monster Party_LevelSelect.nes - на главном экране кнопки влево/вправо выбирают уровень.
Elvira's Monster Party_LevelSelect_FullHP.nes - как предыдущий с полным HP на старте.

[NES/FC] Happily Ever After [T+Rus_PSCD] - Infinite Continue
Бесконечные продолжения.

[NES/FC] Karateka (J) - Colors, Easy

Karateka (J)_Blue.nes - замена цветов главного героя и роба голубая, HP всегда поровну с врагом и быстрое восстановление, ром расширен.
Karateka (J)_Lite.nes - как Blue, но роба остаётся белой, ром не расширен.

[NES/FC] Shin Jinrui - The New Type (J) [T+Rus_Mitz] / 新人類 / Adventures of Dino Riki - Easy
В начале 5 жизней, 5 сердечек, после смерти макс. кол-во сердечек не уменьшается ниже 5, каждые 10 000 очков дают жизнь (раньше только за 10 000, 50 000, 200 000, 500 000).

[NES/FC] Simpsons - Bart vs. the Space Mutants (U) - Midair Jump, Invincibility
Прыжки в воздухе. Неуязвимость, чтоб отключить: B + Start на главном экране. Умереть: A + B на паузе.

[NES/FC] Xiao Ma Li / 小玛利 - 18+, Colors

В оригинале девушку раздевали до купальника (всего 3 картинки), теперь начинается с купальника, потом без лифчика и в конце без трусов (просто полоска, ничего особенного). Каждый раз случайный цвет купальника. Оригинальный чит для просмотра картинок: Вверх, A, B, Select хотя бы раз нажать на главном экране, потом Start.

[SNES/SFC] Last Action Hero (U) - T+Rus, Easy

Last Action Hero (U) [T+Rus].sfc - перевод на русский.
Last Action Hero (U) [T+Rus]_Easy.sfc - как T+Rus и понижен уровень сложности: быстрые удары главного героя, задержка удара у врагов, времени больше на 10%, HP героя в 2 раза больше, билет восстанавливает HP на 33%, у вертолёта ракеты без ускорения (но частота появления такая же).
Last Action Hero (U) [T+Rus&Title].sfc - как T+Rus с Арнольдом Шварценеггером на главном экране, исправлен баг растяжения главного экрана.
Last Action Hero (U) [T+Rus&Title]_Easy.sfc - как T+Rus&Title и Easy.

[SNES/SFC] Nosferatu (U) - Infinite HP
Nosferatu (U)_InfHP_PauseLRAswitchInfHP_LRBtoDie.sfc - на паузе L+R+A - переключение бесконечного HP, L+R+B - таймер на 0, чтобы умереть, если застряли. Требует RAM на картридже.
Nosferatu (U) [t1]_fix.sfc - исправление заголовка рома с трейнером для правильной работы в эмуляторах.

Оффлайн paul_met

  • Супермодератор
  • Сообщений: 8197
  • Пол: Мужской
  • Похититель эмуляции
    • Youtube
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6957 : 29 Январь 2023, 09:43:06 »
NHL 97 / NHL 98 (Sega Mega Drive / Genesis).
Увеличено разрешение игр в режиме матча до 320х224 (исходное - 256х224). Для NHL 97 убрана проверка чексуммы, поэтому игра стартует быстрее.
Ссылка на патчи

256766-0

Онлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2697
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6958 : 29 Январь 2023, 14:13:49 »
Sharpnull, в Xiao Ma Li палитра осветлена (исправлена ошибка как в коте Феликсе)?

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5674
    • Просмотр профиля
Хаки на любой вкус
« Ответ #6959 : 29 Январь 2023, 15:09:30 »
Guyver(X.B.M.), да, просто убран Colour emphasis (CPU $E26B: LDA #$18 вместо#$F8). Когда все 3 бита установлены, то всё темнее, не знаю зачем это делать постоянно. Когда по отдельности ещё можно понять, но нужно делать отдельно версию для NTSC и Dendy/PAL, если не делать в коде игры проверку на NTSC/PAL/Dendy.