ГлавнаяОбратная связьВ избранное

PSJailbreak - свободу Playstation!

PSJailbreak.ru - это старейший сайт в рунете посвящённый игровой приставке Playstation 3, запуску сторонних программ и игр на ней. У нас вы найдёте всю самую актуальную информацию по джэилбрэйку консоли.

Читы для CCAPI 2.70

  1. Оффлайн

    Смыч

    Звание: Форумщик

    Посетители

    Сообщений: 123

    Симпатий: 42

    Трофеев: 6

    Mihailkins
    Получил от тебя письмо с вопросом про чит UFC Undisputed 3. Нет, эта игра мне не знакома, но я готов подробно рассмотреть в этой теме методику её чита. Для начала я её найду, скачаю, посмотрю, что она из себя представляет, а потом буду описывать здесь все свои шаги. Наберись терпения и отслеживай данную тему.

    Смыч — это круто!

    5 Апреля 2016 - 20:50 / #11
  2. Оффлайн

    Смыч

    Звание: Форумщик

    Посетители

    Сообщений: 123

    Симпатий: 42

    Трофеев: 6

    И так, образ игры оказался у меня в закромах. Поэтому начнём сейчас.
    ПОДГОТОВКА
    Дабы избежать глюков и проблем с запуском игры, будем использовать точную копию данного игрового диска. Для этого просканируем содержимое образа диска или содержимое папки с игрой в программе ODE_ISOCheck_01e, открыв в ней наш образ UFC® Undisputed™ 3.iso или папку. Программа сообщит нам, что мы имеем дело с кодом диска BLES01231. Мы идём на сайт http://jonnysp.bplaced.net и скачиваем оттуда IRD файл нашей игры. Получим файл BLES01231-83A32C6AE5985D537B5AEB4727A89528.ird. В этом файле хранится информация о структуре и файлах лицензионного диска BLES01231. После того, как сканирование нашего ISO файла завершится, не закрывая программуODE_ISOCheck_01e, открываем в ней наш IRD файл через меню Load. Произойдёт сравнение наших файлов с эталонными файлами. Если наш образ оригинальный, то мы получим такую картинку: http://www.psjailbreak.ru/uploads/forum/images/2016-04/1459941559scan.jpg
    Теперь проверим, существует ли патч обновления для нашей игры. Есть несколько способов, но я использую программу PsnStuffX v03.07.08. В закладке Game Updater вводим код игры BLES01231 и жмём Search. К сожалению видим, что патчей обновления не существует. Это значит, что нам придётся раздраконить наш точный ISO образ и залить его на внутренний HDD приставки в папку GAMES. Или залить папку с игрой, если мы имеем игру в таком виде. Сделаем это через FTP с помощью программы FileZilla. Создадим в папке GAMES подпапку UFC® Undisputed™ 3 и зальём туда содержимое нашего ISO образа, т.е. папки PS3_GAME, PS3_UPDATE и файл PS3_DISC.SFB.
    Чтобы иметь полный доступ к инструментам разработчика, нам нужно иметь приставку разработчика. Но к счастью, сейчас очень быстро можно переделать свою обычную игровую приставку в приставку разработчика. Для этого скачиваем и устанавливаем прошивку Rebug 4.78.2. Также устанавливаем набор инструментов для этой прошивки Rebug Toolbox 02.02.09. Запускаем Toolbox и извлекаем индивидуальный коренной ключ шифрования с помощью функции Dump eid root key в меню Utilities. Данный ключ будет извлечён из самого сердца вашей приставки и будет храниться в папке программы Rebug Toolbox, пока вы не удалите это приложение. Дальше подменяем тип вашей обычной приставки (CEX) на приставку разработчика (DEX) функцией Rewrite Target ID in Flash в меню DEX/CEX. Именно в этот момент и будет использован ваш коренной ключ шифрования для расшифровки и последующей зашифровки изменённой постоянной памяти приставки. Теперь осталось переключится на ядро прошивки разработчика (DEX) c помощью функции Swap LV2 Kernel всё в том же меню DEX/CEX. После перезагрузки приставки вы будете обладать приставкой разработчика, она же DEX, она же Debug.
    Теперь нам осталось установить на приставку последнюю слитую версию набора инструментом для разработчика PS3, под названием ProDG v4.20.1.
    На этом подготовка закончена. Если у вас возникли трудности и вопросы уже на этом этапе - пишите.
    tERBO, Sarg, Mihailkins и ещё 1 нравится это сообщение.
    Сообщение отредактировал Смыч 06.04.2016 в 13:26

    Смыч — это круто!

    6 Апреля 2016 - 13:23 / #12
  3. Оффлайн

    Смыч

    Звание: Форумщик

    Посетители

    Сообщений: 123

    Симпатий: 42

    Трофеев: 6

    Подключение компьютера к приставке.
    Следующим этапом необходимо подключиться к нашей DEX приставке компьютером по сетевому кабелю. Wi-Fi подключение не прокатит. Присваиваем приставке IP адрес вручную в настройках сети. Например 192.168.0.3. Запускаем ProDG Target Manager for PS3 (..\bin\ps3tm.exe) на компе и выбираем File\Add Target. В появившемся окошке придумываем имя своей приставке, например "Сонька" и выбираем тип приставки Debugging station (DECHA00J / DECHA00A / DECHJ00J / DECHJ00A). Нажимаем кнопочку Next. В следующем окне вводим IP адрес нашей приставки. В нашем примере это 192.168.0.3. Порт оставляем 1000. Жмём Next, а на следующем окне - Finish.
    Проверяем связь. Правой кнопкой мыши по нашей Соньке и выбираем Connect. Если всё хорошо, то через пару секунд статус нашей приставки поменяется на Connected и на её значке загорится зелёный кружок. Подключаться к приставке можно в любой момент. Лишь бы она была включена. Программа Target Manager запомнила нашу приставку, и нам к ней больше обращаться напрямую не придётся. Эта прога сама будет запускаться и висеть в системном трее, когда мы будем подключаться к приставке с помощью самой главной программы для читов - NetCheat PS3 4.53 (скачать можно отсюда: http://netcheat.gamehacking.org/ncUpdater/ncUpdateDir.zip .
    Всегда запускаем NetCheat PS3 файлом NetCheatPS3.exe. В первую очередь идём на закладку APIs и двойным щелчком мыши переключаемся в режим соединения с приставкой Target Manager API (420.1.14.7). Подтверждаем наш выбор, который программа запомнит и будет всегда использовать, пока мы его не переключим. Посмотреть всегда можно в нижней строке программы, какой интерфейс связи используется.
    Проверим связь, нажав Connect в программе NetCheat PS3. Если всё хорошо, то в нижнем левом углу загорится жёлтый квадратик и появится надпись Connected.
    Подключение к игре.
    И так, мы заимели DEX приставку с последней DEX прошивкой и подключились к ней с помощью набора программ разработчиков. Но чтобы подключиться ещё и к самой игре, нужно чтобы игра тоже была для разработчиков, а не для обычных игроков. Для этого нужно расшифровать и распаковать запускной файл игры EBOOT.BIN, внести в него соответствующие изменения и зашифровать обратно без компрессии. Говоря жаргонным языком геймеров - переподписать. Для этих целей предлагаю использовать набор программ E/S/S/S/E Resigner v4.2, который монжо взять тут:http://www.ps3hax.net/showthread.php?t=79491 .
    После разархивирования E/S/S/S/E Resigner закидываем в корневую папку программы файл EBOOT.BIN от нашей игры, который находится в ..\PS3_GAME\USRDIR\. Запускаем исполнительный файл ESSSE_RESIGNER.bat и выбираем первый пункт, нажав клавишу "1" и "Ввод". Программа спросит по-английски, поместили ли мы файл EBOOT.BIN в папку с программой. Жмём "Ввод". Программа за несколько секунд изучит наш EBOOT.BIN, применит известные ей ключи шифрования от соответствующей прошивки, расшифрует и распакует в файл EBOOT.ELF. Дальше спросит у нас, что мы дальше хотим сделать. Наш вариант в данном случае № 4 - Resign to DEX (NON-DRM). По-русски говоря, переподписать (модифицировать и собрать обратно) файл для разработчиков, не используя защиту DRM, т.е. файл не привязывается к железу приставки, т.к. он принадлежит дисковой игре, где вся защита основана на распознавании лицензионного диска именно BD-приводом приставки. Нажимаем "4" и "Ввод". Следующим вопросом будет, сжимать ли наш файл. Всегда для DEX файлов не применяем сжатие, иначе игра при запуске зависнет на чёрном экране. Жмём "2" и "Ввод", а после нескольких секунд - ещё раз "Ввод".
    В результате мы получили рядом с оригинальным файлом EBOOT.BIN.ORIG модифицированный файл EBOOT.BIN, который и закидываем с заменой в папку с игрой ../dev_hdd0/GAMES/UFC® Undisputed™ 3/PS3_GAME/USRDIR/ на приставке.
    Запускаем Мультимен и монтируем нашу игру. Запускаем игру через голубенький значок BD-диска и ждём, пока игра установит свои данные. Уже в этот момент можно пробовать подключиться к игре в NetCheat PS3 кнопочкой Attach. Если всё сделали правильно, то в нижнем левом углу программы загорится зелёный квадратик и появится надпись Process Attached. Кнопка Attach доступна только после подключения к приставке.
    P.S. Используйте более простое имя папки с игрой на внутреннем HDD приставки, т.к. у меня по FTP файлы в папку UFC® Undisputed™ 3 не копировались.
    tERBO, Sarg, Mihailkins и ещё 1 нравится это сообщение.
    Сообщение отредактировал Смыч 06.04.2016 в 19:20

    Смыч — это круто!

    6 Апреля 2016 - 19:04 / #13
  4. Оффлайн

    Смыч

    Звание: Форумщик

    Посетители

    Сообщений: 123

    Симпатий: 42

    Трофеев: 6

    Творчество
    И так, техническая часть, жёстко привязанная к своему алгоритму, пройдена, и мы приступаем к творческой части. Погоняв немного в эту игру, я понял, что быстро разобраться не получится. Игра не какие-то там драчки, а сложная система рейтингов и достижений. Прогнав обучение и проиграв пару матчей, я всё же заработал 400 Shop Points. Попробуем ломануть эти магазинные очки. Заходим в магазин и подключаемся к игре в NetCheat PS3. Начнём с того, что просканируем память приставки и посмотрим, в каких диапазонах она располагается. Для этого заходим в закладку Range и нажимаем Find Ranges. Не обязательно дожидаться полного окончания сканирования памяти. Можно прервать процесс, когда сканирование перевалит за значение 40000000. Дело в том, что дальше этого значения почти все игры не хранят свои данные. И так у меня обнаружилось 8 диапазонов. Но отбросим сразу мусор и запомним два основных, с которыми и будем работать.
    Первый диапазон - это 00010000 - 01F10000. Это стандартный диапазон для любой игры, в котором хранится в расшифрованном и распакованном виде наш исполнительный файл EBOOT.BIN. Начало диапазона 00010000 одинаково всегда и для любой игры. А вот конец зависит от размера и степени сжатия исполнительного файла. К тому же, ближе к концу диапазона игра может содержать свои переменные, например, те же деньги. Так что будем работать в первую очередь с этим диапазоном.
    Второй интересующий нас диапазон - это 30000000 - 3AB00000. Это огромный участок памяти, в котором содержится вся наша текущая игра в открытом виде. В 95% случаях именно в нём будут находится интересующие нас переменные. Но чтобы убить двух зайцев сразу, мы запусти на компе сразу две программы NetCheat PS3 и подключимся двумя сразу к нашей игре. В закладке Search выставим в обеих программах следующие значения и в следующей последовательности:
    Search Equal To - здесь указывается, что мы вообще ищем. Т.к. мы знаем числовое значение наших магазинных очков 400, то наш выбор означает, что мы ищем точное значение, эквивалентное чему-то.
    Type 4 bytes - это означает, что любое наше число будет занимать 4 байта в памяти, т.е. 00 00 00 00. Даже если у нас всего 400 магазинных очков, то в памяти будет хранится шестнадцатиричное значение 00000190. Как я заметил, все современные игры на PS3 хранят свои данные в 4-х байтном формате. И только старые игры с аркадных автоматов, типа Metal Slug используют двухбайтный формат данных. Дальше в дебри не лезем, хотя они есть.
    Value - само значение. В первую очередь снимаем галочку на Hex и вводим в привычном нам виде значение магазинных очков 400.
    Осталось ввести диапазон памяти, в котором мы будем искать наше значение. В первой запущенной программе NetCheat PS3 вводим первый диапазон (Start Address 00010000 и Stop Address 01F10000), а во второй запущенной программе - второй диапазон (Start Address 30000000 и Stop Address 3AB00000). И нажимаем кнопочку Initial Scan в первой NetCheat PS3, а после окончания - ту жу кнопочку, но во второй запущенной программе NetCheat PS3.
    И так, у меня в первом диапазоне нашлось 52 значения, а во втором - 474. Теперь покупаем в игре себе майку за 100 очков и у нас остаётся 300. Меняем искомое значение в обеих запущенный NetCheat PS3 на 300 и продолжаем поиски в найденных значениях кнопочкой Next Scan. В первом диапазоне ничего не нашлось, а во втором осталось 5 значений. Хорошо. Покупаем вторую майку за 100 очков и имеем всего 200 очков в остатке. Продолжаем поиск по значению 200 во втором диапазоне и получаем всё те же 5 найденных значений. Выделим первое из них 0 38701120 000000C8 правой кнопкой мыши и выберем Copy. Переключаемся на закладку Codes и вставляем в правое квадратное поле наш код "горячими" клавишами Ctrl+C. Важно, чтобы в левом поле было подсвечено имя нашего чит-кода. По умолчанию это NEW CODE. Если у вас там вообще пусто, то даже правильный чит-код не заработает. Помните про это всегда.
    Ну и что же означает наш чит-код 0 38701120 000000C8?
    0 - это его тип, т.е. запись определённого количества байт, начиная с определённого адреса.
    38701120 - адрес в памяти приставки - с которого начнётся запись.
    000000C8 - значение, которое мы засылаем на определённый адрес в памяти приставки.
    Поставим галочку на Constant Write и NetCheat PS3 будет несколько раз в секунду засылать в память приставки значение 000000C8 на адрес 38701120. Для нас же на приставке будет казаться, что количество магазинных очков не изменяется. Проверим это. Купим третью майку за 100 очков. Сработало! После покупки количество очков осталось 200. Увеличим себе очки, заменив одну циферку в засылаемом значении. Например, 000001C8. Ого! Сразу же стало 456 очков. Скупим все майки!
    Теперь давайте проверим, постоянность работы нашего чит-кода. Для этого нужно перезагрузить приставку, запустить эту же игру и опять войти в магазин. В NetCheat PS3 нужно переподключиться к игре. Для этого от неё отключаемся кнопкой Disconnect, и опять подключаемся.
    Т.к. у нас уже вбит чит-код и стоит галочка Constant Write, в магазине сразу же поменялось значение на 456 и не меняется при покупках.
    Поздравляю! Мы с вами создали первый и самый простенький чит-код, который смело можно выкладывать на специализированных сайтах и добавлять в базы кодов.
    Есть вопросы - пишите. Нужно читнуть другое значение в данной игре - пишите. Иначе через пару дней перейдём по поступившей заявке к европейской версии игры Call of Duty 3.
    Arahnod, tERBO, Sarg и ещё 3 нравится это сообщение.
    Сообщение отредактировал Смыч 06.04.2016 в 23:55

    Смыч — это круто!

    6 Апреля 2016 - 23:48 / #14
  5. Оффлайн

    Смыч

    Звание: Форумщик

    Посетители

    Сообщений: 123

    Симпатий: 42

    Трофеев: 6

    Дальнейшее рассмотрение темы прекращается, т.к. за неделю не поступило ни одного вопроса или комментария. Не уверен в интересе данной темы других пользователей.

    Смыч — это круто!

    12 Апреля 2016 - 17:05 / #15
  6. Оффлайн

    Смыч

    Звание: Форумщик

    Посетители

    Сообщений: 123

    Симпатий: 42

    Трофеев: 6

    По заявке товарища Sear Biss рассмотрим создание чита для игры Call of Duty 3 [BLES00016]. Сегодня мы будем делать чит посложнее. Полезем в инструкции игры.
    И так, проверяем, что для нашей игры нет обновления, и модифицируем EBOOT.BIN, опираясь на наш опыт из предыдущих сообщений. Запустив игру и поиграв минут 5, мы попадаем в игре под обстрел. Я забрал у мёртвого немца его автомат MP40 и решил сделать бесконечные патроны в его рожке (магазине). После нескольких попыток найти значение патронов магазина в памяти приставки, оказалось, что они хранятся в диапазоне 10000000 - 10B80000. А именно 10160B68. Если заморозить значение 00000015 в этом адресе памяти, то патроны в рожке никогда не заканчиваются и не требуется перезарядка. Давайте найдём инструкцию (команду) в машинном коде исполняемого файла EBOOT.BIN, уменьшающую патроны в магазине при стрельбе, чтобы её модифицировать. Для этих целей незаменима программа-отладчик, входящая в состав ProDG, называемая ps3debugger.exe. Запускайте её всегда после запуска NetCheat PS3 и после присоединения игры к ней. Так бывает, что отладчик при запуске висит с окном скачивания какого-то файла с приставки. Причём, это окно можно увидеть, только если свернуть все окна программ Windows. Наберитесь терпения, не трогайте комп и приставку, попейте чаю. Максимум через 20 минут всё откроется.
    В отладчике также нужно приконнектиться к игре. Для этого всегда в первую очередь фиксируем в нажатом состоянии кнопочку Auto Update (четвёртая справа), чтобы видеть в реальном времени все изменения в приставке. Затем открываем окно Processes. Обычно процесс уже присоединён (не активен пункт контекстного меню Attach Process). Но на всякий случай убедитесь в этом, а затем щёлкните двойным щелчком по процессу, чтобы он раскрылся. Вот как это должно выглядеть: http://www.psjailbreak.ru/uploads/forum/images/2016-04/1460839364process.jpg
    Если же к процессу мы отладчиком подключаемся (делаем Attach Process), то игра на приставке станет на паузу, а в отладчике выскочит окошко с вопросом. Отвечаем Continue without symbols. Игру с паузы снимаем в NetCheat PS3, нажав зелёный треугольник в верхнем правом углу. Кстати, это большой плюс в подключении к приставке через Target Manager API, что всегда можно поставить игру на паузу в NetCheat PS3.
    И так, к процессу подключились. Сворачиваем окошко с процессом, а открываем окна Disassembly и Registers. Даём задание программе-отладчику перехватить команду записи в найденный нами адрес памяти 10160B68. Для этого заходим в меню Debug и выбираем Hardware Breakpoints. В появившемся окошке в строке Address вводим 0x10160B68, ставим галочку on WRITE и нажимаем OK. Этими действиями мы сказали отладчику следующее: "Включи отслеживание (OK) на запись (on WRITE) шестнадцатиричного (0x) адреса (10160B68)". Вот теперь, как только мы попытаемся выстрелить из автомата, игра сама станет на паузу, а в окне Disassembly жёлтая стрелочка покажет нам адрес 002AAD34 интересующей нас инструкции. Напомню, что в данном диапазоне памяти лежит расшифрованный и распакованный EBOOT.BIN. А значит, мы по сути ковыряемся в исполняемом файле. Читы, сделанные модификацией исполняемого файла ценятся больше, т.к. многие пользователи (в том числе и пользователи ODE) могут подменить оригинальный EBOOT.BIN на модифицированный читами и играть, не используя каждый раз компьютер и дополнительные программы.
    И так, инструкция найдена, и мы в первую очередь должны убедиться, что никакие другие инструкции не задействованы. Жмём F5 и видим, что игра снялась с паузы. Отключаем отслеживание, чтобы оно нам не мешало. Снова заходим в Hardware Breakpoints, оставляем в строке Address значение 0x10160B68, оставляем галочку on WRITE, но нажимаем кнопочку Disable. Этими действиями мы сказали отладчику следующее: "Отключи отслеживание (Disable) на запись (on WRITE) шестнадцатиричного (0x) адреса (10160B68)".
    Давайте изучим нашу инструкцию по адресу 002AAD34. Мы видим четырёхбайтный (32-х битный) машинный код 7C07592E, который понимает и выполняет процессор приставки во время выстрела из автомата MP40. Для человека понять этот код очень сложно, т.к. принцип работы любого процессора и мозга человека очень сильно отличается. Поэтому для понимания машинных кодов существует почти универсальный язык программирования Ассемблер, показывающий человеку в понятном виде, в виде мнемоник, что делает процессор. Посмотрим на мнемоники нашей инструкции. Это stwx r0,r7,r11. Если вы, как и я, не особо знаете Power Accembler, то, подсветив мышком команду stwx, мы увидим подсказку к данной команде. В нашем случае процессор складывает значения регистров r7 и r11. а в результат, который является адресом, записывает значение, хранящееся в регистре r0. Давайте подробно рассмотрим этот момент.
    Во-первых, расположите два окна Disassebly и Registers так, чтобы было видно содержимое обоих окон. Во-вторых, изучать работу инструкции нужно во время паузы игры на данной инструкции, т.е. во время выстрела. Если вы поставите на паузу игру в любой другой момент, то значения регистров могут быть самыми различными, и будет бессмысленно разбираться в команде. Поэтому щёлкните мышкой левее адреса 002AAD34, чтобы появился тёмно-красный кружок. Игра сама станет на паузу, когда будет выполняться данная инструкция, т.е. во время выстрела из MP40. В моём случае, отбросив лишние нули, r0=10, r7=101608C0, r11=2A8. И так, r7+r11=101608C0+2A8=10160B68. Здесь сформировался адрес хранения патронов в рожке MP40 и запишется туда шестнадцатиричное значение 10, т.е. 16 патронов в рожке. После выстрела значение регистра r0 будет уже 0F, т.е 15 патронов. В принципе, можно уже убить эту инструкцию, и тогда уменьшающееся значение r0 никогда не будет записано в наш адрес патронов в рожке 10160B68. А можно проследить код выше и найти команду, уменьшающую значение r0 на 1. Долго искать не пришлось. Двумя строками выше видим команду xori r0,r0, 0x1. Грубо говоря, это значит, что процессор присваивает регистру r0 значение 1. И потом на 1 будет уменьшено наше значение патронов. Можно также убить эту инструкцию, а можно модифицировать её.
    Удаление инструкции. Если мы хотим избавиться от неугодной нам инструкции, мы её удаляем. Но нельзя просто заменить 7C07592E на 00000000. Процессор дойдёт до этой строки и увидит отсутствие команды в принципе, и остановится. На приставке вы получите зависшую игру. Нужно проставить команду ничего неделания nop, т.е. заменить 7C07592E на 60000000. Это можно сделать прямо из окна Disassembly, нажав правую кнопку мыши на строке, выбрать Disassembly, а затем выбрать Set address to NOP (или просто нажать Delete). В NetCheat PS3 это можно сделать кодом 0 002AAD34 60000000. Проверив игру с таким кодом, вы видим, что патроны в рожке перестали уменьшаться и для других типов оружия, т.к. данная инструкция отвечала и за другое оружие.
    Модификация инструкции. Удаление инструкции не всегда приводит к ожидаемым результатам. Порой удалив инструкцию, отнимающую у твоего героя здоровье, оказывается, что здоровье перестаёт отниматься и у всех твоих врагов. Поэтому приходиться ковыряться в коде глубже и менять алгоритм работы целой процедуры. Давайте в данном примере изменим инструкцию xori r0,r0, 0x1 по адресу 002AAD2C, которая присваивает регистру r0 значение 1. Сделаем xori r0,r0, 0x0, чтобы патроны уменьшались на 0. Для этого код 68000001 меняем на 68000000. Это можно сделать в NetCheat PS3 кодом 0 002AAD2C 68000000, а можно открыть редактор памяти (Memory) в отладчике, перейти по адресу 0x002AAD2C и изменить 68000001 на 68000000. В итоге следующая процедура subf r0,r0,r8 возьмёт значение патронов в рожке из r8, уменьшит на r0, которое у нас будет равно 0, и запишет результат тот же r0. И, как вы помните, следубщая инструкция stwx r0,r7,r11 запишет в адрес памяти наше итоговое количество патронов в рожке. Вот таким вот извращённым способов в этой игре реализован учёт отстреленных патронов в магазине.
    Sear Bliss, tERBO, PSP и ещё 1 нравится это сообщение.
    Сообщение отредактировал Смыч 17.04.2016 в 11:52

    Смыч — это круто!

    17 Апреля 2016 - 11:49 / #16
  7. Оффлайн

    Mihailkins

    Звание: Постоялец

    Посетители

    Сообщений: 12

    Трофеев: 3

    Смыч,
    Спасибо за подробное объяснение, узнал много чего нового, местную валюту взломал, но меня интересует еще одно значение которое мне никак не поддается. Это все статы бойца. Когда я захожу в меню создания CAF (то есть бойца), то на распределения по пунктам мне дают 14000 очков по моему. Я пробовал взломать это число в NetCheat но после того как я изменяю число, и сканирую его повторно, то программа просто ничего не находит. И я конечно бы хотел чтобы кто-то проверил, реально ли взломать эти значения, потому что мне уже действительно надоело, и я не знаю что еще предпринять.
    Сообщение отредактировал Mihailkins 19.04.2016 в 13:44
    19 Апреля 2016 - 13:44 / #17
  8. Оффлайн

    Смыч

    Звание: Форумщик

    Посетители

    Сообщений: 123

    Симпатий: 42

    Трофеев: 6

    Mihailkins
    Хорошо. Решим и этот вопрос.

    Двухбайтное представление числа.
    На примере рассмотрим всё ту же игру UFC® Undisputed™ 3 [BLES01231].Если зайти в меню CUSTOM, затем в меню CREATE A FIGHTER, потом загрузить или создать нового бойца, то мы попадём в различные характеристики нашего бойца. Некоторые из этих характеристик являются платными за POINTS. Например в меню FIGHTER ABILITIES заходим в STATS и в ATTR ATTRIBUTES и видим, что изначально нам дают 1350 очков. При попытке поиска данного значения в памяти стандартным способом мы в итоге ничего не найдём. В данном случае всё оказалось весьма банально. Значение POINTS хранится в двухбайтном виде. Поэтому в поиске ставим Type 2 bytes и в итоге найдём интересующий нас адрес. Это тот редкий случай, когда современная игра использует два байта в памяти для хранения какого-то значения. А если мы ищем 4-х байтное значение, то наш адрес сразу же отсеивается из-за несоответствия.
    Поясню. При поиске 4-х байтного значения 1350 NetCheat PS3 ищет в диапазоне памяти последовательность байт 00000546. А игра использует 0546, а до и после идут уже другие данные, например, 0000005F0546003F. И понятно, что 00000546 не находится. А вот при двухбайтном поиске ищется 0546 и наш искомый адрес не отсеивается.
    Полезно понимать принцип чит кода. Например, 30E73A30 - это адрес в памяти и по этому адресу может храниться только один байт. Если же мы делаем чит код 0 30E73A30 00000546, где 00000546 занимает 4 байта, то 00 запишется в 30E73A30, следующий 00 запишется в 30E73A31, 05 запишется в 30E73A32, а 46 запишется в 30E73A33. Такой чит в нашем случае не будет работать, а может и подвесит приставку, т.к. он перекрывает адреса памяти, не хранящие интересующее нас значение. А вот чит код 0 30E73A30 0546 изменит только необходимые значения.
    Но давайте закончим с этим читом. В нашем случае чит код 0 30E73A30 0546 перестаёт работать после перезагрузки приставки. Это значит, что адрес для хранения POINTS каждый раз формируется новый. Можно, конечно, каждый раз искать этот адрес, а можно найти инструкцию в исполняемом файле, как описывалось в предыдущем посте. В нашем случае отловились две инструкции: 00304B4C B06602F0 sth r3,0x2F0 (r6) и 00304AC8 987F02F6 stb r3,0x2F6 (r31). Удалим первую, сделав чит код 0 00304B4C 60000000. В итоге получим постоянный и приятный эффект, когда при покупке того же STRENGHT у нас не уменьшаются POINTS, однако при откате STRENGHT нам возвращают POINTS. smile-03
    Mihailkins, PSP нравится это сообщение.
    Сообщение отредактировал Смыч 19.04.2016 в 20:58

    Смыч — это круто!

    19 Апреля 2016 - 20:47 / #18
  9. Оффлайн

    Mihailkins

    Звание: Постоялец

    Посетители

    Сообщений: 12

    Трофеев: 3

    Смыч,
    Спасибо! Попробую, обязательно отпишусь.
    20 Апреля 2016 - 13:56 / #19
  10. Оффлайн

    Mihailkins

    Звание: Постоялец

    Посетители

    Сообщений: 12

    Трофеев: 3

    Цитата: Смыч
    0 00304B4C 60000000


    Все, теперь я дома и попробовал взломать сам. И у меня получилось, чит код совпал с вашим, я очень благодарен вам. Приятно что есть люди которые помогают новичкам просто так без всякой лени. А так же спасибо остальным людям которые привели меня к этому. Больше вопросов у меня нет)
    22 Апреля 2016 - 16:50 / #20

Пользователи которые читают эту тему

Сейчас онлайн:1
(пользователей:0, гостей: 1)