Перейти к содержанию

MasterGH

Ветераны
  • Постов

    2 999
  • Зарегистрирован

  • Победитель дней

    129

Весь контент MasterGH

  1. Ну как найти?! Так же как на видео было показано )
  2. Я сделал статью по этому трейнми. Кому надо то она находится здесь.
  3. Здесь обсуждаем статью "Делаем супер прыжок для Jtrainme.exe"
  4. Можно найти. Но ты найдёшь лишь участок кода, а что именно в нём модифицировать может быть разным в других играх. Кстати движок там модифицирован, если не ошибаюсь это было сказано на видео. И если там отдача и полностью снимается, то всё равно выстрелы в одну точку точку не происходят из-за остающегося эффекта кучности при стрельбе. Когда смотришь не в прицел пули не попадают в одну точку.
  5. Всех поздравлю с официальным реализом CE 6.1 Добавлю, что в течении недели могут быть различные "патчи" для 6.1. После будет начало 6.2. Об этом писал Dark Byte. От себя же прокомментирую, что 6.1 финальная версия ещё сыровата. Судя по тому кол-ву багов которое было чуть ли не каждый день отрапортовано разработчику CE их ещё может быть довольно много. Все скачиваем и пользуемся.
  6. Я скачиваю файлы с форума без проблем. ZOCKIR, проблемы явно у только у тебя.
  7. Ищем адрес координаты X бегая влево или вправо. Затем находим Y рядом с адресом X. На Y ставим бряк на запись... определяем какая инструкция увеличивала Y. Кропотливо ищем "предел увеличения" выраженном в том или ином понятии - например, силы отталкивания (ищем до инструкции которая уменьшает Y). Возможно инструкция которая увеличивает и уменьшает Y одна и таже в этом случае надо исследовать внешние вызовы. Я этот трейнми не ломал, но стоило бы. Возможно игру лучше поставить в оконный режим чтобы спокойно отлаживать при пошаговой отладке. Если выкрою время, то попробую исследовать. У меня какое-то дежавю, я этот трейнми уже где-то видел у нас.
  8. Если я правильно понял, что цепочка указателей не работает в сгенеррированом трейнере, то, к сожалению, я не знаю причины. Я таким способом никогда не пользуюсь, поэтому актуальность нахождения причины не вижу. Т.е. я тратить время на это не буду. Указатели можно строить в автоассемблерных скриптах, что я всегда и делаю и советую остальным. Если это явная ошибка можешь её отписать разработчику Cheat Engine.
  9. Спасибо за ответ. Знаешь, просто не понятно, что тебе мешало написать программу на ассемблере по Дельфи коду. Ведь это проблема осталась и никуда не делась... Зато ты для себя выяснил главное, что можно на MASM написать программу написанную на Дельфи. И задать этот вопрос поисковику кстати тоже можно было
  10. Если ты хочешь кнопку добавить в автоматически генерируемый трейнер *.exe , то сначала генерируем и сохраняем трейнер например на рабочий стол. Например, я добавил один адрес в главную таблицу и повесил на него хоткей из генератора трейнеров. После чего сохранил трейнер, который получился размером 3,14 мб на рабочий стол. В этот момент уже был сгенерировал LUA код инициализации трейнеров... Да, да именно LUA, этот язык тут участвует.
  11. Я не очень понял происходящее. Скорее всего, ты не правильно определяешь позицию мины. Я точно не знаю, но мне кажется, что в зависимости от версии сапёра мины в виртуальной памяти идут рядами жёстко по 32 горизонтали (для сапёра в XP). И без разницы меньше ли у тебя поле по горизонтали в текуще игре - все равно будет ряд в 32 байта.
  12. Поиск сигнатуры это лишь малая толика того что надо. Требуется поиск сигнатуры, дизассемблер и ассемблер. А также функции дизассемблирующие инструкцию которая была найдена по сиганатуре. Анализирование этой инструкции с созданием инъекции кода по правилу постоянного значения. Это нужно потому что, может быть такое mov eax, [ecx + 14] mov eax, [edx + 18] Сигнатура будет валидная по байту инструкции MOV и рядом стоящим инструкциям. А вот регистры другие и смещения в структуре другие. Придётся тебе в свой трейнер ещё вставлять в будущем всё что я написал и тратить на это время. Можно сейчас уже реализовывать "интеллектуальное" внедрение на LUA, а уже потом в будущем делать свой трейнер с описанными функциями. Бывают редкие случаи, когда код игры так модернизируют, что сигнатура никак не может быть валидной - игра с Червяками (SER[G]ANT писал об этом). В этом случае нужно написать сканер валидных сигнатур по действиям в отладчике с двумя запущенными играми разных версий... но до этого ещё далеко, т.к. мне сейчас не до этого.
  13. К посту выше. Тоже самое, но со сканированием сигнатуры: Пример вызова, если CE 6.1 RC2 уже была подключена к процессу : --... GenerateAAscriptAggregateMemWithSignature(bufScript,"noRecoilWhenWalk","d9xxd9xxxxd9xxxxd9xxxxxxxxxxdexxdfxxf6xxxx75xxd9xxxxxxxxxxd9",8,"fstp st\nfldz", true) --... Этот пример частично для:
  14. Точно прокомментировать не могу, т.к. статью уже плохо помню. Помниться мне, что "Gam7290.tmp" может быть с другими цифрами, то же самое что с другим именем. Поэтому скрипт у кого-то работать не будет -- Обновлено Точно, цифры там могут меняться... Xipho перебирал все модули занятые процессом игры через Module32First и Module32Next, и по смещению RealNameOffset сравнивал имена модулей. Если модуль оказывался с нужным именем, то берётся базовый адрес модуля и от него уже пляшем.
  15. Новый LUA-скрипт генерации АА-скрипта в единую выделенную память Работать с ним можно так: bufScript = BeginGenerateAAscriptAggregateMem("allocMem","2048") bufScript = GenerateAAscriptAggregateMem(bufScript, "infGold", "0045464A", "xor eax, eax", true ) bufScript = GenerateAAscriptAggregateMem(bufScript, "infMana", "00454650", "xor ebx, ebx", true ) bufScript = EndGenerateAAscriptAggregateMem(bufScript) showMessage(bufScript) autoAssemble(bufScript) Происходит следующее. Создаётся один выделенный блок памяти. В нём размещаются все тела читов. При каждом таком размещении в таблицу CE добавляется AA-скрипт с активацией и деактивации ТОЛЬКО прыжков. Т.е. мы имеем созданный блок памяти и нам о нём знать не надо и не надо видеть его АА скрипт. Далее мы работает только включая и выключая прыжки. Названия читов должны быть английскими. Для того чтобы это дело работало,то выше написанного кода заместите следующий код:
  16. Тип 1 байт. Нужно изменять первую клетку правым щелчком мышки и искать правилом изменилось и не изменилось. Одно состояние клетки(пустое) - будет некоторое значение байта Другое состояние клетки (крестик, вопрос, мина при пустой клетке, мина на которой подорвался, цифра...) будет другое состояние байта.
  17. В настройках Сапёра изменять высоту и ширину поля и искать в CE... Далее поставить адреса в исходник в первом посте и скомпилировать... Хотя перед этим надо создать сетку, кнопку и настроить всё это в визуальном редакторе...
  18. Вроде, может работать ) Сомнения развеиваются на практике в отладчике. Мне лень проверять этот скрипт от и до, т.к. проще прогнать под пошаговой отладкой и даже там же исправлять инструкции и регистры если потребуется переписывать инструкции в реальном времени. Вообще можно попробовать сделать циклом на ассемблере (хорошее упражнение по программированию) И ещё может потребоваться сохранять/восстанавливать регистр флагов pushfd/popfd до и после тела чит-кода.
  19. Нужен массив булевых данных(1 байт, значение ноль или один) в выделенной памяти, которые изменяет пользователь по хоткеям. Нужные сравнения и прыжки.
  20. 27 мая(сегодня) Cheat Engine 6.1 Release Candidate 2
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.