Ошибка при сканировании массива байт cheat engine

Содержание

  • Учимся работать с Cheat Engine
    • Изменение значений в игре
    • Включение SpeedHack
  • Вопросы и ответы

Как пользоваться Cheat Engine

Если вы хотите поиграть в компьютерные игры не совсем честно, но не знаете как это сделать, тогда данная статья именно для вас. Сегодня мы расскажем вам, как можно взломать различные игры с помощью специализированного софта. Делать это мы будем с помощью Cheat Engine.

Скачать последнюю версию Cheat Engine

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

Рассматриваемая нами программа для взлома весьма функциональна. С помощью нее можно выполнять множество различных задач. Но для большинства из них потребуется определенный багаж знаний, например опыт работы с HEX (Хекс). Мы не будем нагружать вас различными терминами и поучениями, поэтому просто расскажем вам об общих приемах и способах применения Cheat Engine.

Изменение значений в игре

Данная функция является самой популярной из всего арсенала Cheat Engine. Она позволяет изменить нужным образом практически любое значение в игре. Это может быть здоровье, броня, количество боеприпасов, денег, координаты персонажа и многое другое. Вы должны понимать, что использование данной функции далеко не всегда завершается успешно. Причиной неудачи может быть как ваша ошибка, так и надежная защита игры (если рассматривать онлайн-проекты). Тем не менее попытаться взломать показатели вы все же можете. Вот что нужно сделать:

  1. Загружаем с официального сайта Cheat Engine, после чего устанавливаем ее на компьютер либо ноутбук, а после этого запускаем.
  2. Вы увидите на рабочем столе следующую картину.
  3. Главное окно программы CheatEngine

  4. Теперь следует запустить клиент с игрой либо открыть таковую в браузере (если речь идет о веб-приложениях).
  5. После того, как игра будет запущена, необходимо определиться с тем, показатель чего именно вы хотите изменить. К примеру, это какая-то валюта. Смотрим в инвентарь и запоминаем ее текущее значение. В приведенном ниже примере данное значение равняется 71 315.
  6. Пример показателя валюты в игре

  7. Теперь снова возвращаемся к запущенной Cheat Engine. Необходимо в главном окне найти кнопку с изображением компьютера. До первого нажатия эта кнопка будет с мигающей обводкой. Нажимаем на нее один раз левой кнопкой мыши.
  8. Нажимаем кнопку выбора процесса в CheatEngine

  9. В результате на экране появится окно меньших размеров со списком запущенных приложений. Из подобного списка вам нужно выделить ту строчку левой кнопки мыши, которая отвечает за игру. Ориентироваться можно по иконке слева от названия, а если таковая отсутствует, то по самому имени приложения. Как правило, имя содержит название приложения либо слово «GameClient». Выбрав нужную позицию, следует нажать на кнопку «Open», которая располагается немного ниже.
  10. Выбираем из списка приложение и открываем его в CheatEngine

  11. Кроме того, выбрать нужную игру можно также из списка процессов или открытых окон. Для этого нужно просто перейти в одну из вкладок с соответствующим названием вверху.
  12. Альтернативный список приложений в CheatEngine

  13. Когда игра будет выбрана из списка, программе потребуется буквально пару секунд, чтобы провести так называемую инъекцию библиотек. Если ей это удастся, то в самом верху главного окна Cheat Engine будет отображено название приложения, которое вы выбрали ранее.
  14. Имя подключенного процесса в CheatEngine

  15. Теперь можно приступить непосредственно к поиску нужного значения и его дальнейшему редактированию. Для этого в поле с названием «Value» вводим значение, которое мы ранее запомнили и которое хотим изменить. В нашем случае это 71 315.
  16. Вводим начальное значение валюты в игре в CheatEngine

  17. Далее нажимаем кнопку «First Scan», которая находится выше поля ввода.
  18. Чтобы результаты поиска получились более точными, можно установить опцию паузы в игре во время сканирования. Делать это не обязательно, но в некоторых случаях помогает сузить перечень вариантов. Чтобы включить данную функцию, достаточно поставить отметку в чекбокс напротив соответствующей строки. Ее мы отметили на изображении ниже.
  19. Включаем функцию паузы в игре при сканировании в CheatEngine

  20. Нажав на кнопку «First Scan», вы увидите спустя короткий промежуток времени все найденные результаты в левой части программы в виде своеобразного списка.
  21. Список найденных значений в CheatEngine

    Lumpics.ru

  22. За искомое значение отвечает лишь один адрес. Поэтому необходимо отсеять лишние. Для этого нужно вернуться в игру и изменить числовое значение валюты, жизней или того, что вы хотите изменить. Если это какая-то валюта, то достаточно просто что-либо купить или продать. Не важно, в какую сторону изменится значение. В примере после манипуляций у нас получилось число 71 281.
  23. Показатель валюты в игре после изменений

  24. Возвращаемся снова к Cheat Engine. В строке «Value», куда ранее мы вписывали значение 71 315, теперь указываем новое число — 71 281. Проделав это, жмем кнопку «Next Scan». Она находится немного выше строчки ввода.
  25. Отсееваем лишние значения повторным сканированием в CheatEngine

  26. При самых хороших раскладах вы увидите в списке значений лишь одну нужную строчку. Если же таких будет несколько, то необходимо повторить предыдущий пункт еще раз. Имеется в виду смена значения в игре, ввод нового числа в поле «Value» и повторный поиск через «Next Scan». В нашем случае все получилось с первого раза.
  27. Итоговый результат поиска адреса в CheatEngine

  28. Выделяем найденный адрес одиночным нажатием левой кнопкой мыши. После этого нажимаем на кнопку с красной стрелкой. Ее мы отметили на скриншоте ниже.
  29. Кнопка переноса адреса в редактор CheatEngine

  30. Выбранный адрес переместится в нижнюю часть окна программы, где можно производить дальнейшие правки. Для изменения значения кликаем два раза левой кнопкой мышки на той части строки, где находятся цифры.
  31. Изменяем в редакторе значение валюты в игре

  32. Появится маленькое окошко с единственным полем для ввода. В нем пишем то значение, которое вы хотите получить. К примеру вы хотите 1 000 000 денег. Именно данное число и пишем. Подтверждаем действия нажатием кнопки «OK» в этом же окне.
  33. Вводим необходимое значение и подтверждаем ввод в CheatEngine

  34. Возвращаемся обратно к игре. Если все сделано верно, то изменения тут же вступят в силу. Вы увидите примерно следующую картину.
  35. Изменение валюты в самой игре

  36. В некоторых случаях необходимо еще раз изменить числовое значение в игре (купить, продать и так далее) для того, чтобы новый параметр вступил в силу.

Вот собственно и вся методология поиска и изменения нужного параметра. Мы советуем при сканировании и отсеве параметров не менять настройки программы по умолчанию. Для этого необходимы более глубокие знания. А без них вы попросту не сможете добиться желаемого результата.

Важно помнить, что при работе с онлайн-играми далеко не всегда получится проделать описанные выше манипуляции. Виной всему защита, которую нынче стараются установить практически везде, даже в браузерные проекты. Если у вас что-либо не получается, то это не значит, что всему виной ваши ошибки. Возможно, это установленная защита не дает подключиться Cheat Engine к игре, вследствие чего на экране могут возникнуть различные ошибки. Кроме того, часто встречаются ситуации, когда поменять значения выходит лишь на уровне клиента. Это значит что отображаться будет введенное вами значение, но сервер по факту увидит лишь настоящие цифры. Это также заслуга системы защиты.

Включение SpeedHack

SpeedHack — это изменение скорости движения, стрельбы, полета и прочих параметров в игре. С помощью Cheat Engine сделать это абсолютно несложно.

  1. Заходим в ту игру, в которой нужно изменить скорость.
  2. Далее снова возвращаемся к ранее запущенному Cheat Engine. Жмем на кнопку в виде компьютера с лупой в левом верхнем углу. О ней мы упоминали в предыдущем разделе.
  3. Открываем окно выбора процесса в CheatEngine

  4. Выбираем из появившегося списка свою игру. Чтобы она появилась в данном перечне, ее необходимо предварительно запустить. Выбрав приложение, жмем кнопку «Open».
  5. Выбираем из списка запущенных приложений необходимое в CheatEngine

  6. Если защита позволит программе подключиться к игре, то вы не увидите на экране никакого сообщения. В верхней части окна лишь отобразится название подключенного приложения.
  7. Отображение названия подключенного процесса в CheatEngine

  8. С правой стороны окна Cheat Engine вы найдете строчку «Enable Speedhack». Ставим отметку в чекбоксе рядом с данной строчкой.
  9. Ставим галочку напротив строчки в CheatEngine

  10. Если попытка включения завершится успехом, вы увидите ниже появившуюся строчку для ввода и ползунок. Изменить скорость можно как в большую сторону, так и вовсе опустить ее до нуля. Для этого нужно ввести в строчку нужное значение скорости либо выставить его с помощью ползунка путем перетягивания последнего.
  11. Меняем скорость в игре посредством CheatEngine

  12. Для того чтобы изменения вступили в силу, нужно нажать кнопку «Apply» после того, как выбрали нужную скорость.
  13. Подтверждаем внесенные изменения в скорость игры через CheatEngine

  14. После этого ваша скорость в игре изменится. В некоторых случаях увеличивается скорость не только ваша, но и всего происходящего в игровом мире. Кроме того, иногда сервер не успевает обрабатывать подобные запросы, в результате чего возникают некие рывки и подергивания. Это связано с защитой игры и обойти это, к сожалению, никак нельзя.
  15. Если вам необходимо отключить Speedhack, то достаточно просто закрыть Cheat Engine или снять галочку напротив строки в окне программы.

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

На этом данная статья подходит к концу. Мы рассказали вам об основных и самых востребованных функциях CheatEngine. Но это не значит, что программа больше ни на что не способна. На самом деле, ее возможности очень велики (составление трейнеров, работа с хексом, подмена пакетов и так далее). Но для этого потребуются куда большие знания, а пояснять подобные манипуляции понятным всем языком не так-то просто. Надеемся, у вас получится достигнуть поставленных целей. А если вам нужна будет консультация или совет — милости просим в комментарии к этой статье.

Если вам интересна тема взлома игр и использования читов, рекомендуем ознакомиться со списком софта, который в этом поможет.

Подробнее: Программы-аналоги ArtMoney

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Pick a username
Email Address
Password

By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.

Already on GitHub?
Sign in
to your account

13 часов назад, JackNewMan сказал:

Как-то неудобно немного. Возможно я чего-то не знаю или что-то делаю неправильно.

Дело в том, что у компьютерного процессора всего несколько регистров. RAX, RBX, RCX, и еше некоторые.

Для сравнения, — у человека есть всего две руки. Человек может одновременно держать в руках всего две вещи. Чтобы взять третью, необходимо положить первую или вторую. И так по очереди. Чтобы узнать, что держит человек сейчас, в данную миллисекунду, нужно подойти к нему именно в данную миллисекунду, и посмотреть.  В следующую миллисекунду, человек уже возможно будет держать что-то другое, и мы уже не увидим и не узнаем, что было до этого.

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

Человек может вести запись того, что он держал в своих руках последние 5, 10, 20, минут. Но специально человек этого не делает.

9 часов назад, Garik66 сказал:

для этих целей проще ИМХО воспользоваться опцией СЕ трассировка

Трассировка, это и есть запись процессором того, что он держал в своих регистрах в последние, указанные нами, секунды. Или не секунды, — я забыл, что-там указывается.

Перейти к контенту

13 часов назад, JackNewMan сказал:

Как-то неудобно немного. Возможно я чего-то не знаю или что-то делаю неправильно.

Дело в том, что у компьютерного процессора всего несколько регистров. RAX, RBX, RCX, и еше некоторые.

Для сравнения, — у человека есть всего две руки. Человек может одновременно держать в руках всего две вещи. Чтобы взять третью, необходимо положить первую или вторую. И так по очереди. Чтобы узнать, что держит человек сейчас, в данную миллисекунду, нужно подойти к нему именно в данную миллисекунду, и посмотреть.  В следующую миллисекунду, человек уже возможно будет держать что-то другое, и мы уже не увидим и не узнаем, что было до этого.

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

Человек может вести запись того, что он держал в своих руках последние 5, 10, 20, минут. Но специально человек этого не делает.

9 часов назад, Garik66 сказал:

для этих целей проще ИМХО воспользоваться опцией СЕ трассировка

Трассировка, это и есть запись процессором того, что он держал в своих регистрах в последние, указанные нами, секунды. Или не секунды, — я забыл, что-там указывается.

@Karlos007

Unless I specify the region…
aob
Maybe the process (yuzu) is to big in memory?
Also lua / asm aobscans don’t find either.

Cheat Engine 7.1 (Also tried 7.0 and different settings / debuggers)
Windows 10 pro v2004 64 bits
32gb ram / i7-6700 cpu

@mgrinzPlayer

Is it related with this commit? c0534e3
Did you try to compile CE from source and above issue still exists?

@Karlos007

I’m trying to compile the 64 bit but only the 32 app compiles :/ and that doesn’t scan at all.

lazarus-2.0.10-fpc-3.2.0-win64
lazarus-2.0.10-fpc-3.2.0-win32

lazarus-2.0.10-fpc-3.2.0-cross-x86_64-win64-win32
lazarus-2.0.10-fpc-3.2.0-cross-i386-win32-win64

What files should I install?

@Karlos007

aob1

@mgrinzPlayer

@Karlos007

@mgrinzPlayer

Does it find when you tick MEM_MAPPED option in «CE Settings->Scan settings»?

If not, you can try modify memscan.pas file, something like changing the lines with «size: dword» or «size: integer» to «size: qword»…

@Karlos007

  • yeah MEM_MAPPED is ticked
  • Still the same changing line 5232: size: dword -> size: qword
  • It’s weird because other scans work if they are early in memory (this one is 212629A0A50)
    Start 0000000000000000 Stop 7fffffffffffffff doesn’t find
    Start 21262900000 Stop 7fffffffffffffff does find…

@mgrinzPlayer

I wrote «something like …».

You can try other places too. Maybe:

  • «addressSize: dword» => «addressSize: qword»
  • «memorySize: dword» => «memorySize: qword»
  • «maxregionsize: dword» => «maxregionsize: qword»

If it still doesn’t work, then, I think there’s no an easy fix like this one c0534e3

Edit:
typo

@Karlos007

I don’t know why but that worked, seems to be related to that 2GB, even if it’s not unknown initial value.
Also makes the lua scripts work.
Thank you so much for your help, I’m gonna keep making my cheat table :)

@mgrinzPlayer

You can help and find the smallest possible change which fixes your issue.

Extract source files again. Then:

  • do one change, build/compile
  • check
  • if problem exists, do next change, build/compile
  • check

Note: while doing this, you should use Lazarus «Run=>Clean up and build project» (all options selected except «package output directories»).

@Karlos007

Seems that
456: maxregionsize: qword; does the job
Normal Cheat Engine 7 doesn’t find anything, but extracting source files and changing that line finds the address.

@mgrinzPlayer

OK. Thank you. This information should be useful. I’m adding permalink to this line:

maxregionsize: dword; //max size of buffer to be allocated when not unknown scan

@cheat-engine

what is your buffersize in scansettings?

@Karlos007

1024 KB Currently working fine with my compiled CE.
I was changing between 512 and 1024 and more settings but always failed to scan the one that I not compiled.

@cheat-engine

i can’t see why maxregionsize would cause a difference as it’s size is limited by buffersize.
but i’ll check (tomorrow)

(did you do a full build or a compile after getting the latest source?)

@mgrinzPlayer

@Karlos007

I also have to sleep :)
aob2
I deleted the entire folder cheat-engine-master and unziped again before editing that one line.
I used «Run=>Clean up and build project»; now has 1130 files but when I tried before it was 0 since I deleted all.

@cheat-engine

How many bytes is the AOB you’re scanning for ? more than 2000?

If you compile in debug-nomt 64-bit. Does it still fail ?

@Karlos007

The array is around 50.
I have others with 500 that work fine.
Complied in debug-nomt 64-bit with the original master folder? Without touching line 456?

@mgrinzPlayer

Without touching line 456?

Do both, the more information the better.

@Karlos007

Both find the address, but takes much more time scanning. Around 3 minutes instead of 15 sec.
I see that master memscan.pas 456 it’s now maxregionsize: qword; instead of maxregionsize: dword;

@mgrinzPlayer

To be perfectly sure. You extracted source files from that zip file you downloaded earlier, right?

To summarize it. This?

line 456 has dword line 456 has qword
build mode is release 64bit doesn’t find finds
build mode is debug-nomt 64-bit finds/slow finds/slow

or this?

line 456 has dword line 456 has qword
build mode is release 64bit doesn’t find finds
build mode is debug-nomt 64-bit doesn’t find finds/slow

@Karlos007

Yep the first one, debug-nomt 64-bit slowly finds with dword and qword
release finds with qword only
(7.1 / 7.0 / 6.8.3 .exe from the github page don’t find either)

Гоша386

  • #1

gskgyqfjnrazmpjz0x.png

В этом гайде мы научимся заменять байты через прогу Cheat Engine. Тут всё понятно расписано как и что делать.

c7haftyyjsuwrrshwretfhgn.jpg

1. Запускаем обход. После запуска обхода открываем CheatEngine.

abrmyegksg4cbnjy.png

2.Находим процесс: crossfire.exe

jcuvjkrb6vzcprfvuyc.png

3.После того как мы нашли процесс.Выбираем вкладку (Тип) и ищем (Array of Bytes)

cscpcmfkeyex9wesxnwbng.png

4.В строке (Hex) прописывае начальные байты. Вот мы ввели начальный байты ножа (выделено красным)

xhkqtnjy2xaezcnsskkrtbs.png

5.Жмём на поиск. И слева вылазиют байты (они выделины красным) нам нужен первый (подчёркнут зелёным).

sxxffuybqq9wxfswetsdpck.png

6.Теперь правой кнопкой мыши щелкаем по первому байту и нажимаем (Перейти в память по этому адресу).

qarmwubtarhjcdhu1gk.png

7.Вылезет вот такое окно.

fcpjj9rkarhgrduc.jpg

8.Ищем строку начинающиюся на 4D 6F 64. Теперь нам нужен полный байт оружия, на которое хотим поменять. Полностью выделяем свой (полный) байт. И возращаемся к Cheat Engine.

rfqgpfvzy7fcawtqmahx.jpg

9.Жмем на 4D, ,и кликаем правой кнопкой мыши по этому значению.У вас откроется меню ,выбираем (Вставить из буфера обмена)

qx3kbfapruqmupuzvyvkqv.jpg

10. Вот что у нас получилось:

btbzsztr9srrjbtax.jpg

11.Внимание на символы в синем квадрате,слова knife заменились на слова вашего байта.
Результат:

zfc6huekhhwststeeben.jpg

Скачать эту программу сможете перейдя по сылке

jwxxwxvgfubdvl8xhxpvdev.gif

Последнее редактирование модератором: 6 Ноя 2012

  • #1

Здравствуйте Уважаемые!
при потытке сканирования паняти процесса l2.exe выдает 0 результатов, даже когда сканирую «неизвестное значение»
Игра на русском официальном сервере защищена программной frost, последний раз, примерно 2 года назад все хорошо сканировалось, сейчас, похоже, какую то защиту поставили

  • #2

Так ищи обход фроста, сейчас во многих играх нельзя сканировать память

  • #3

хе хе, а тут кто-то не так давно объяснял мне какой я дурак, и что память читать нет проблем. Если защита не дает смотреть память, то это скорее всего означает, что обойти ее можно только на уровне 0 кольца. А на уровне нулевого кольца работают только драйверы, ну из легальных инструментов. Так что если вы не системный программист, устанете обходить )

  • #4

bugaj [?]

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

Не пугайте людей, там не от чего уставать. Немного желания и времени — все что потребуется.

  • #5

bugaj [?]

обойти ее можно только на уровне 0 кольца. А на уровне нулевого кольца работают только драйверы

Написать драйвер не сложно. Правда для работы в x64 системе у него должна быть цифровая подпись, или хотя бы тестовая.

  • #6

ну я наверное драйвер то писал, если судить по моей подписи и знаю о чем говорю. По моим ощущениям у меня создание первого в жизни драйвера заняло больше месяца(нужного мне драйвера, а не того что есть в инетах в больших количествах), просто потому что инфа по этому делу трудно доступна ибо фрагментирована и разбросана по инету. А гуру драйверописания будут пичкать вас букварями, а не ответами, и если вы решите их все прочитать от корки до корки то это займет гораздо больше месяца. Т.е. как бы драйвер не сложно написать(если вы уже знаете как), но в условиях очень скудного доступа к информации весьма проблематично, хотя если вы в английском гуру, то в иностранных тырнетах с этим проще.

Кстати, где то тут есть тема про GameGuard и в ней ссылка на WinIO и в этом самом WinIO есть функции прямого доступа в память, т.е. теоретически они могут позволить писать и читать в память и есть вероятность, что защита это не будет это пресекать. Проблема только в том, как исследовать программу, это нужно свой cheat engine писать на этих функциях) если они конечно будут работать. И кстати WinIO вместе с исходниками распостраняется.

во я даже нашел топик http://autoit-script.ru/index.php/topic,14307.msg91374.html

  • #7

bugaj Никто и не спорит, что вы знаете. Но простите меня, irp-хуки на kb девайсы с управлением через i/o — явно не стоят месяца изучения. На счет работы с памятью приложений ring3 в ring0 — KeStackAttachProcess.

Вся эта теория — максимум сутки.

P.S. Даже если GameGuard будет сканировать указатели на обработчики IRP нужных девайсов, то обходится это так же просто. Все методы поиска подобных хуков заключаются на определении принадлежности указателя к адресному пространству драйвера конкретного девайса.

  • #8

ок. чего спорить, засекаем — за сколько автор топика обойдет фрост :whistle:

@Karlos007

Unless I specify the region…
aob
Maybe the process (yuzu) is to big in memory?
Also lua / asm aobscans don’t find either.

Cheat Engine 7.1 (Also tried 7.0 and different settings / debuggers)
Windows 10 pro v2004 64 bits
32gb ram / i7-6700 cpu

@mgrinzPlayer

Is it related with this commit? c0534e3
Did you try to compile CE from source and above issue still exists?

@Karlos007

I’m trying to compile the 64 bit but only the 32 app compiles :/ and that doesn’t scan at all.

lazarus-2.0.10-fpc-3.2.0-win64
lazarus-2.0.10-fpc-3.2.0-win32

lazarus-2.0.10-fpc-3.2.0-cross-x86_64-win64-win32
lazarus-2.0.10-fpc-3.2.0-cross-i386-win32-win64

What files should I install?

@Karlos007

aob1

@mgrinzPlayer

@Karlos007

@mgrinzPlayer

Does it find when you tick MEM_MAPPED option in «CE Settings->Scan settings»?

If not, you can try modify memscan.pas file, something like changing the lines with «size: dword» or «size: integer» to «size: qword»…

@Karlos007

  • yeah MEM_MAPPED is ticked
  • Still the same changing line 5232: size: dword -> size: qword
  • It’s weird because other scans work if they are early in memory (this one is 212629A0A50)
    Start 0000000000000000 Stop 7fffffffffffffff doesn’t find
    Start 21262900000 Stop 7fffffffffffffff does find…

@mgrinzPlayer

I wrote «something like …».

You can try other places too. Maybe:

  • «addressSize: dword» => «addressSize: qword»
  • «memorySize: dword» => «memorySize: qword»
  • «maxregionsize: dword» => «maxregionsize: qword»

If it still doesn’t work, then, I think there’s no an easy fix like this one c0534e3

Edit:
typo

@Karlos007

I don’t know why but that worked, seems to be related to that 2GB, even if it’s not unknown initial value.
Also makes the lua scripts work.
Thank you so much for your help, I’m gonna keep making my cheat table :)

@mgrinzPlayer

You can help and find the smallest possible change which fixes your issue.

Extract source files again. Then:

  • do one change, build/compile
  • check
  • if problem exists, do next change, build/compile
  • check

Note: while doing this, you should use Lazarus «Run=>Clean up and build project» (all options selected except «package output directories»).

@Karlos007

Seems that
456: maxregionsize: qword; does the job
Normal Cheat Engine 7 doesn’t find anything, but extracting source files and changing that line finds the address.

@mgrinzPlayer

OK. Thank you. This information should be useful. I’m adding permalink to this line:

maxregionsize: dword; //max size of buffer to be allocated when not unknown scan

@cheat-engine

what is your buffersize in scansettings?

@Karlos007

1024 KB Currently working fine with my compiled CE.
I was changing between 512 and 1024 and more settings but always failed to scan the one that I not compiled.

@cheat-engine

i can’t see why maxregionsize would cause a difference as it’s size is limited by buffersize.
but i’ll check (tomorrow)

(did you do a full build or a compile after getting the latest source?)

@mgrinzPlayer

@Karlos007

I also have to sleep :)
aob2
I deleted the entire folder cheat-engine-master and unziped again before editing that one line.
I used «Run=>Clean up and build project»; now has 1130 files but when I tried before it was 0 since I deleted all.

@cheat-engine

How many bytes is the AOB you’re scanning for ? more than 2000?

If you compile in debug-nomt 64-bit. Does it still fail ?

@Karlos007

The array is around 50.
I have others with 500 that work fine.
Complied in debug-nomt 64-bit with the original master folder? Without touching line 456?

@mgrinzPlayer

Without touching line 456?

Do both, the more information the better.

@Karlos007

Both find the address, but takes much more time scanning. Around 3 minutes instead of 15 sec.
I see that master memscan.pas 456 it’s now maxregionsize: qword; instead of maxregionsize: dword;

@mgrinzPlayer

To be perfectly sure. You extracted source files from that zip file you downloaded earlier, right?

To summarize it. This?

line 456 has dword line 456 has qword
build mode is release 64bit doesn’t find finds
build mode is debug-nomt 64-bit finds/slow finds/slow

or this?

line 456 has dword line 456 has qword
build mode is release 64bit doesn’t find finds
build mode is debug-nomt 64-bit doesn’t find finds/slow

@Karlos007

Yep the first one, debug-nomt 64-bit slowly finds with dword and qword
release finds with qword only
(7.1 / 7.0 / 6.8.3 .exe from the github page don’t find either)

Понравилась статья? Поделить с друзьями:
  • Ошибка при сканировании листа выравнивания головок
  • Ошибка при сканировании документа kyocera
  • Ошибка при сканировании диска windows 10
  • Ошибка при сканировании виндовс 10
  • Ошибка при сканировании в сетевую папку