Cheat engine ошибка сценария

Все форумы
  

Программы и OC

ЕгорЛях

ЕгорЛях

24 февраля

Помогите у меня поевляеться ошибка Сценарий C/Users/%username%/Appdata/Local/temp/cheeng-temp/arh-finish.vbs строка 5 символ 1 Ошибка не удается найти указанный файл Код 80070002 Источник (null)


1

Комментарии: 4

сначала

лучшие

  • новые
  • старые
  • лучшие

Ваш комментарий


FLOCKI9525

27 февраля

Помогли?

Просто у меня такая же ошибка не знаю что делать

  • пожаловаться
  • скопировать ссылку

1


OptimisticKedrick

24 апреля

Нашел ответ?

Тоже такая ошибка

  • пожаловаться
  • скопировать ссылку

0


LaconicHidalgo

15 мая

Да нашел, а что

  • пожаловаться
  • скопировать ссылку

0


12NoName3


LaconicHidalgo

19 мая

скинь, у меня просто такая же проблема

  • пожаловаться
  • скопировать ссылку

0

Самые новые и популярные игры можно получать бесплатно

Пополнение Steam-кошелька не проблема, если у вас есть бонусы

Дорогие и дефицитные геймерские девайсы теперь не нужно покупать

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

Ошибка сценария Windows

Что такое Script Error или ошибка сценария?

Нужно понимать, что ошибка скрипта – это сбой в предустановленной инструкции сценария. Спровоцировать нарушение хода процедуры может что угодно: как неправильно прописанный код, так и ошибки в системе пользователя. Чаще всего появляются в браузере и в сообщении указывается ссылка на строку с проблемой. Команда в том месте не может быть выполнена. Проблема возникает из-за одного из языков сценариев, чаще всего JavaScript или VBScript. Также ошибка скрипта может появляться в некоторых программах и играх.

Причины ошибки сценария

Как уже упоминалось, причин может быть много:

  • неправильная работа Internet Exporer или его некорректная настройка;
  • проблема в коде сайта, обычно в JavaScript;
  • конфликт между игровыми модами или повреждение файлов;
  • отсутствие полномочий на доступ к необходимым файлам и др.

Разновидности ошибок сценариев

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

  • ошибка сценария в Internet Explorer;
  • неисправность в Google Chrome, Opera и др. браузерах, связанная с JS;
  • повреждение скрипта в Windows;
  • игровая проблема.

Каждая категория имеет свои особенности устранения, поэтому в зависимости от рода ошибки, нужно искоренять заболевание системы.

Ошибка сценария в Internet Explorer

На этой странице произошла ошибка сценария – одна из самых распространённых неисправностей, возникает обычно в браузере, особенно часто в IE, при этом версия не играет роли. Причиной проблемы становится либо сам ресурс, к которому вы пытаетесь получить доступ, либо неисправность со стороны клиента.

На этой странице произошла ошибка сценария фото 1

Предварительно следует переустановить/обновить браузер, вероятно, он имеет какие-то повреждения. Более простой вариант – это просто почистить кеш и куки, процедура выполняется через «Свойства браузера».  Чтобы быстро удалить временные файлы, достаточно нажать комбинацию Ctrl + Shift + Del и запустить процедуру кнопкой «Удалить». Альтернативный вариант — через CCleaner.

Читайте также: CCleaner — программа очистки компьютера от мусора

Есть также несколько более эффективных способов исправления проблемы, которые имеет смысл описать более детально.

Способ 1: отключаем отображение сообщения об ошибке

Устранить ошибку сценария, если проблема со стороны веб-ресурса, не представляется возможным всем, кроме администраторов сайта. Однако можем просто выключить отображение этого окна отладки, оно не будет мелькать, а система продолжит работать стабильно.

Что нужно сделать при ошибке скрипта:

  1. Откройте Internet Explorer.
  2. Нажмите на кнопку меню и выберите «Свойства браузера».

На этой странице произошла ошибка сценария фото 2

  1. Перейдите в раздел «Дополнительно».
  2. Установите флаги возле опций «Отключить отладку сценариев».
  3. Немного ниже снимите выделение с уведомления об ошибке.

На этой странице произошла ошибка сценария фото 3

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

Способ 2: включаем активные скрипты

Блокировка активных сценариев, ActiveX и Java может влечь появление ошибки сценария. Несколько простых настроек должны исправить проблему:

  1. Нажмите на изображение шестеренки и перейдите в «Свойства браузера».
  2. Кликните по вкладке «Безопасность», а затем – по кнопке «Другой».
  3. Пролистайте список вниз и в блоке «Сценарии» активируйте «Активные сценарии».
  4. Немногим ниже по списку включите «Выполнять сценарии приложений Java», а затем — «Фильтрация ActiveX».
  5. Установите флаги в положения «Выполнять сценарии элементов ActiveX».
  6. Закройте окно и перезапустите браузер.

ошибка сценария

Способ 3: включить безопасный режим для проблемного сайта

Этот способ показан в видео и он получил много положительных отзывов. Стоит попробовать.

Если у вас показывается «Ошибка сценария: на этой странице произошла ошибка скрипта», сделайте следующее:

  1. В «Свойствах браузера» на вкладке «Безопасность» выберите «Опасные сайты».
  2.  Нажмите на кнопку «Сайты» и добавьте ссылку на тот веб-ресурс, на котором появляется ошибка сценария.

ошибка сценария

Ошибка сценария в играх (Sims 4)

Script error может появляться не только в Sims 4, но и в других, но чаще всего именно здесь. Что касается этой игры, должно сработать следующее решение:

  1. Выселите семью из дома для полного сброса повседневных желаний.
  2. Удалите все предметы, провоцирующие ошибки, в основном это двери, но не только.
  3. Сохраните состояние домов и семей и перезапустите игру.
  4. Снова заселите семью в дом, на этот раз без ошибки.

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

Ошибка сценариев Windows 11, 10, 7

Подобного рода проблема, возникает из-за ошибки сценариев Windows сразу после запуска системы или через время. При этом все версии Windows в зоне риска, что увеличивает вероятность столкнуться с неисправностью. Благо, здесь тоже можно отключить уведомление и забыть о проблеме.

Как отключить ошибку сценариев в Windows:

  1. Введите в поиск Windows «Свойства браузера» и перейдите во вкладку «Дополнительно».
  2. Установите галочки в строки «Отключить отладку сценариев (Internet Explorer)» и «Отключить отладку сценариев (другие)».
  3. Нажмите на кнопку «Применить» и закройте окно.

Как убрать ошибку сценария при запуске:

  1. Нажмите Win + R и введите regedit;
  2. ПКМ по разделу HKEY_LOCAL_MACHINE, выберите свойство «Разрешения…»;

Ошибка сценариев Виндовс фото 1

  1. Выберите среди пользователей пункт «Все» и снизу установите флаг возле «Полный доступ»;
  2. Нажмите на кнопку «Дополнительно»;

kak-ubrat-oshibku-scenarija-windows-6

  1. Установите выделение на субъект «Все» и клик по «Изменить»;
  2. Снова задайте «Полный доступ» и перезагрузите ПК;
  3. Используйте сочетание Win + R и введите cmd, затем вставьте строку: Regsvr32 C:WindowsSystem32Msxml.dll.
  4. Если не сработает предыдущее, дополнительно попробуйте regsvr32 msxml3.dll затем regsvr32 dispex.dll.

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

Если появляется ошибка сценария при запуске и далее загрузка системы не производится, необходимо запустить Windows из безопасного режима и откатиться, также следует проделать описанную ранее процедуру. На крайний случай необходимо воспользоваться средством восстановления с установочного дистрибутива.

Что еще можно попробовать?

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

  • Ошибка сценария со ссылкой logincdn.msauth.net решается по инструкции для IE. Также нужно понимать, что сбой относится к OneDrive, а он не работает с накопителями в файловых системах FAT32 (часто так отформатированы флешки). Поддерживает только NTFS или HFS+. Если все способы не помогут исправить сбой с кодом logincdn.msauth.net, попробуйте сделать сброс IE.
  • Сбой подобного рода»dataset» есть null или не является объектом, со ссылкой на file:///c:/searcherbar/js/localization.js или многочисленные другие файлы. Это означает, что проблема в каком-то файле JavaScript. В данном случае проблема в вирусе searcherbar — он устанавливает различные параметры поиска и может добавлять рекламу. Стоит просканировать систему с помощью Malwarebytes AdwCleaner или любого другого софта. Вот лучшие бесплатные антивирусы для Windows. В целом проблему вызывает то, что планировщик заданий пытается запустить программу, которой нет или была удалена не полностью.
  • Ошибка сценария в Datakam player чаще всего появляется при попытке воспроизведения ролика с видеорегистратора. Программу часто рекомендуют тем, у кого есть также GPS-карта. Однако сама программа работает криво, здесь лучшим советом будет переход на RegistratorViewer.
  • Проблема в Microsoft Teams преимущественно появляется у пользователей Windows 7, так как программа более не поддерживает ее. На форуме Microsoft некоторые пишут, что включение отладки и серфинг по настройкам может помочь. Насколько это правда — сложно сказать.
  • В Hamachi суть проблемы заключается в программе, обычно появляется при регистрации. Нужно выполнить регистрацию через браузер и просто войти в приложении и ошибки не будет.

Совет! Если вы не веб-программист, то это тот случай, когда не имеет значения код 0, строка 23 или строка 657 символ 9. Все перечисленное никак вам не поможет в решении проблемы.

Если у Вас остались вопросы по теме «Как убрать ошибку сценария в Windows?», то можете задать их в комментариях

Содержание

  1. cheat engine не запускается
  2. 1- Очистите мусорные файлы, чтобы исправить cheat engine 6.2.exe, которое перестало работать из-за ошибки.
  3. 2- Очистите реестр, чтобы исправить cheat engine 6.2.exe, которое перестало работать из-за ошибки.
  4. 3- Настройка Windows для исправления критических ошибок cheat engine 6.2.exe:
  5. Как вы поступите с файлом cheat engine 6.2.exe?
  6. Некоторые сообщения об ошибках, которые вы можете получить в связи с cheat engine 6.2.exe файлом
  7. CHEAT ENGINE 6.2.EXE
  8. процессов:
  9. Cheat Engine для Windows 10 бесплатно
  10. Cheat Engine для Windows 10 на компьютер
  11. Скачать Cheat Engine бесплатно — официальная версия
  12. Cheat Engine на русском — Изменить любые значения в играх
  13. Не запускается чит и выдает ошибку?
  14. Если же вы пользуетесь не Windows Defender, то я распишу все действия на 2-ух известных антивирусах, скачанных из интернета.
  15. Ошибка с Avast
  16. 360 Total Security
  17. Установка Microsoft Visual C++
  18. Отключение Smart Screen
  19. Если и это не помогло, а желание играть с читом ещё велико, то сбросьте настройки Windows до Заводских.
  20. Не запускается CS:GO после установки чита/»Система VAC не смогла проверить вашу игровую сессию» и другие ошибки с CS:GO
  21. Как пользоваться Cheat Engine
  22. Как работает программа Cheat Engine
  23. Как пользоваться популярной программой Cheat Engine
  24. Преимущества программы Cheat Engine

Файл cheat engine 6.2.exe из SSPlus является частью SN Pro tool. cheat engine 6.2.exe, расположенный в C:UsersUsuarioAppDataLocalTemp@FE4C.tmpCheat Engine 6.2.exe с размером файла 828056 байт, версия файла 4, 0, 37, 0, подпись 2566ace180a5809c6cf4e238ba716eba.

В вашей системе запущено много процессов, которые потребляют ресурсы процессора и памяти. Некоторые из этих процессов, кажется, являются вредоносными файлами, атакующими ваш компьютер.
Чтобы исправить критические ошибки cheat engine 6.2.exe,скачайте программу Asmwsoft PC Optimizer и установите ее на своем компьютере

1- Очистите мусорные файлы, чтобы исправить cheat engine 6.2.exe, которое перестало работать из-за ошибки.

2- Очистите реестр, чтобы исправить cheat engine 6.2.exe, которое перестало работать из-за ошибки.

clean registry%20 %20full thumb

3- Настройка Windows для исправления критических ошибок cheat engine 6.2.exe:

windows configuration thumb

Всего голосов ( 21 ), 9 говорят, что не будут удалять, а 12 говорят, что удалят его с компьютера.

Как вы поступите с файлом cheat engine 6.2.exe?

Некоторые сообщения об ошибках, которые вы можете получить в связи с cheat engine 6.2.exe файлом

(cheat engine 6.2.exe) столкнулся с проблемой и должен быть закрыт. Просим прощения за неудобство.

(cheat engine 6.2.exe) перестал работать.

cheat engine 6.2.exe. Эта программа не отвечает.

(cheat engine 6.2.exe) — Ошибка приложения: the instruction at 0xXXXXXX referenced memory error, the memory could not be read. Нажмитие OK, чтобы завершить программу.

(cheat engine 6.2.exe) не является ошибкой действительного windows-приложения.

(cheat engine 6.2.exe) отсутствует или не обнаружен.

CHEAT ENGINE 6.2.EXE

Проверьте процессы, запущенные на вашем ПК, используя базу данных онлайн-безопасности. Можно использовать любой тип сканирования для проверки вашего ПК на вирусы, трояны, шпионские и другие вредоносные программы.

процессов:

Cookies help us deliver our services. By using our services, you agree to our use of cookies.

1bwjj13p

Программа предназначенная для взлома игр. Позволяет искать в памяти многих запущенных приложений какие то конкретные значения (патронов, жизней, очков), изменяя данные значения в памяти — меняем их в игре.
Для удобства позволяет сохранять таблицы адресов таких значений, давая возможность игрокам создавать некое подобие трейнеров в среде Cheat Engine.

Установка:
1) Распаковать архив.
2) Запустить CheatEngine66.exe и следовать инструкциям установщика.

Установка русификатора:
1) Скопировать содержимое папки «Русификатор» в корневую папку с установленной программой Cheat Engine
2) При первом запуске Cheat Engine появиться окно с предложением выбрать язык программы.
Выберите «Russian» и нажмите «Ok». Перезапустите Cheat Engine.

zqz02qvg

Если по каким-либо причинам окно выбора языка не появилось, то зайдите в настройки Cheat Engine.
Выберите меню «Languages», затемы выберите «Russian» и нажмите кнопку «Select Language». Перезапустите Cheat Engine.

Автор Natalia Colod задал вопрос в разделе Другие языки и технологии

Почему Cheat Engine 6.2 не работает на сайты? и получил лучший ответ

Ответ от MaRTiN Integer[новичек]
ну во-первых смотря на какие сайты, а если у других работает на тех сайтах на которых у тебя не работает, то ты скорее всего не те значки тыкаешь когда там выбирать надо

Источник

Cheat Engine для Windows 10 бесплатно

skachat dlya windows 10 Категория: Редактор ресурсов
Поддерживаемые ОС: Windows 10
Разрядность: 32 bit, 64 bit, x32, x64
Для устройств: Компьютер
Язык интерфейса: на Русском
Версия: Последняя
Разработчик: Community

Без труда можно Скачать Cheat Engine для Windows 10 — программное обеспечение, предназначенное для изменения ресурсных значений в компьютерных играх. Может применяться пользователями для приобретения неуязвимости, редких игровых артефактов, дополнительных очков опыта и других специальных возможностей, открытия новых локаций, пополнения запасов маны, боеприпасов и здоровья. Эффективно только с оффлайн играми у современных онлайн игр стоит защита.

Cheat Engine для Windows 10 на компьютер

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

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

Источник

Скачать Cheat Engine бесплатно — официальная версия

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

big image home

Cheat Engine на русском — Изменить любые значения в играх

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

Поиск параметра осуществляется по значению, которое пользователь вводит в специальное поле, например, количество денег или определенного ресурса. Далее HEX-код находится методом исключения из отобранных системой, пока не останется только одна строка. Конечно, можно рискнуть и изменить любое из найденных значений, но в этом случае есть риск «сломать» игру. Программа работает в 99% одиночных видеоигр и позволяет получить абсолютно любое преимущество. В онлайн-играх Cheat Engine работает далеко не всегда из-за встроенной защиты. Использовать программу в онлайне рекомендуется на другом аккаунте из-за риска получить бан, но лучше в онлайн играх данную программу не применять.

Источник

Не запускается чит и выдает ошибку?

Не запускается чит и выдает ошибку?

Пользователи часто сталкиваются проблемой при запуске читов в игру. В данной статье поговорим какие ошибки возникают при запуске читов

1. Блокировка чита антивирусами:
Каждый чит имеет своеобразный код, так как это идет вмешательство в игру, либо иногда возникает и-за того что некоторые читы защищены протектами, поэтому защитник windows ругается на это.

Решение: Отключить антивирус при загрузке игры

2. Программное обеспечение:
Некоторые dll файлы отсутствуют у вас в папке SySteam, это и-за того что у вас не установлено полное программное обеспечение и пишет «Отсутствует файл msvcp.dll»

Решение: Установить программное обеспечение

Распространенные ошибки решаются следующими действиями. Открываете «Поиск Windows».

poisk windows

Вписываете в строку поиска «Безопасность Windows».

bezopasnost windows

Во вкладке «Защита от вирусов и угроз» нажимаем на «Журнал Защиты».

zashhita ot virusov i ugroz

После, разрешаете и восстанавливаете все файлы связанные с вашим читом.

avast oshibka

Если же вы пользуетесь не Windows Defender, то я распишу все действия на 2-ух известных антивирусах, скачанных из интернета.

Ошибка с Avast

kok

Нажмите «Обзор» во вкладке «Путь к файлам», найдите файл с читом и нажмите «ОК».

360 Total Security

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

У кого-то может возникнуть вопрос: «А не легче просто отключить антивирус?» Нет, не легче. Потому что возможно потом вы скачаете какой-то вредоносный файл на свой компьютер с выключенный антивирусом, а потом винить будете меня и разработчиков чита.

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

Установка Microsoft Visual C++

Если же это не помогло, то установите на компьютер Microsoft Visual C++:
• перейдите по ссылке и скачайте Microsoft Visual C++
• поставьте галочку возле «Я принимаю условия лицензии» и нажмите «Установить».

lpel

после установки можете нажимать «Закрыть».

rkere


После запустите чит от имени администратора.

vshlel

Отключение Smart Screen

Если и это не помогло, то переустановите Steam ( CS:GO ) на прямую к Локальному Диску, например: «Локальный Диск D→Steam→…»

enoen


Если и это не помогло, а желание играть с читом ещё велико, то сбросьте настройки Windows до Заводских.

Зайдите в «Параметры» (через пуск и значок шестеренки или клавиши Win+I)→»Обновление и безопасность»→»Восстановление».

rolg


В разделе «Вернуть компьютер в исходное состояние» нажмите «Начать».

nshhn


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

gshdg


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

Не запускается CS:GO после установки чита/»Система VAC не смогла проверить вашу игровую сессию» и другие ошибки с CS:GO

Благо решение данной проблемы простое и очевидное

ene

kek

После окончания проверки CS:GO должна работать!

Источник

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

Иногда схватка с чрезмерно сложным боссом портит впечатление от игры, когда тот упорно не дает продвигаться дальше по сюжету. Подобные проблемы, вызванные отсутствием баланса, легко решить с помощью Cheat Engine – программы для изменения внутриигровых параметров. Это отличное решение, которым пользуются тысячи геймеров.

Как работает программа Cheat Engine

Cheat Engine представляет собой высокопроизводительный HEX-редактор, работающий в стандартном режиме и Speed Hack. Пользоваться программой сможет даже новичок, по-крайней мере, изменить количество денег или увеличить здоровье главного героя в 10 или 100 раз – базовые операции не представляют собой ничего сложного.

Как пользоваться популярной программой Cheat Engine

Рассмотрим, как работает программа на примере игры Heroes 3. Допустим, что изначальное количество золота составляет 20000 – почему бы не сделать себе миллион золотых. Сверните игру и запустите Cheat Engine, затем выполните манипуляции, описанные ниже.

Нажимаем кнопку с изображением компьютера.

1

Откроется окно, в котором представлен список запущенных процессов – в нашем случае нужен h3wog.exe. Название «экзешника» можно посмотреть в папке с игрой.

2

Нажимаем кнопку Открыть. В строке Значение указывается текущее количество золота. Нажимаем кнопку Поиск. В открывшейся таблице, находящейся слева, отобразятся найденные значения, соответствующие введенному запросу.

3

Найдите нужную строку из доступных, используя метод сортировки. Потратьте золото в игре – пусть текущее количество денег в казне изменится. Эту комбинацию цифр введите в Cheat Engine в поле значение – выполните эту манипуляцию и нажмите кнопку Отсев ( ни в коем случае не Новый поиск, иначе придется начинать заново!).

4

Продолжайте поиск, пока не останется одна строка с закодированным количеством денег. Кликните по оставшейся строке левой кнопкой мыши, а затем правой и в контекстном меню выберите пункт Изменить значение у выбранных адресов памяти. Введите число, соответствующее сумме золота, которое желаете получить, например, 1 миллион.

5

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

Вы не собираетесь ничего менять и хотите запустить Speed Hack для получения преимущества в игре? В таком случае выполните манипуляции, описанные выше, до того момента, когда задается значение параметра в соответствующем поле. Искать HEX-код не нужно, выберите exe-файл с игрой и справа от поля Значение отметьте галочкой поле Спидхак. После этого в игре произойдет ускорение, которое затронет только игрового персонажа или и окружение.

6

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

Преимущества программы Cheat Engine

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

Программа поддерживает русский язык. Требования Cheat Engine к аппаратной конфигурации ПК лояльные – программа работает даже на слабых компьютерах. В продуманной навигации с легкостью разберется даже новичок. Изменения дополнительных параметров не требуется, делайте это только в том случае, если вы – продвинутый пользователь. Подобная необходимость возникает при сложном поиске, когда требуется изменить параметры конкретного противника и не затрагивать остальное игровое окружение.

Программа Cheat Engine легка в освоении и не вызывает сложностей у новичков. Геймеры пользуются этой программой каждый день и получают в любимых играх максимум удовольствия. Загрузите Cheat Engine на нашем портале и забудьте о возможных сложностях в видеоиграх. Программа работает в Windows XP и новее. Cheat Engine – это универсальный инструмент.

Источник

pachela

    • Поделиться

Есть скрипт и этот скрипт косячит. А если быть точным, то он в упор отказывается видеть процесс. Вот код скрипта

Скрытый текст

function CEButton1Click(sender)

GameName = "notepad++.exe"
GameID = getProcessIDFromProcessName(GameName)


if(GemeID == nul) then
   showMessage("запустите процесс!")
   return
end

openProcess(GameName)


result = AOBScan(0xA0,0x86,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xA0,0x86,0x01,0x00,0x00)
if(result == nul) then
   showMessage("сигнатура не рабочая!")
   return
end
cound = stringlist_getcount(result)
i = 0
while i~= cound do

address = stringlist_getcount(result,i)

writeBytes(address,0x60,0xE3,0x16,0x00)
end
showMessage("актевировано!")
end

Пока что не разбирал работоспособность скрипта дальше чем сообщение «Запустите процесс!». Что я делаю не так?

П.с. Как использовать фуркцию memrec_freeze? Мне нужно что бы запись байт происходила в цикле, т.е. заморожено =).

// Пользуемся тегами кода и спойлера (если код большой). Garik66. Пока устное предупреждение.

Ссылка на комментарий
Поделиться на другие сайты

Garik66

    • Поделиться

2 часа назад, pachela сказал:

то он в упор отказывается видеть процесс

Попробуй первую часть скрипта переписать так:

Скрытый текст

function CEButton1Click(sender)

GameName = "notepad++.exe"
GameID = getProcessIDFromProcessName(GameName)


if(GemeID == nil) then
   showMessage("запустите процесс!")
   
   openProcess(GameName)
end

-- дальше код я не смотрел Garik66

result = AOBScan(0xA0,0x86,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xA0,0x86,0x01,0x00,0x00)
if(result == nul) then
   showMessage("сигнатура не рабочая!")
   return
end
cound = stringlist_getcount(result)
i = 0
while i~= cound do

address = stringlist_getcount(result,i)

writeBytes(address,0x60,0xE3,0x16,0x00)
end
showMessage("актевировано!")
end

И второе — ты уверен в своей сигнатуре?

Ссылка на комментарий
Поделиться на другие сайты

pachela

  • Автор
    • Поделиться

14 часа назад, Garik66 сказал:

Попробуй первую часть скрипта переписать так:

  Скрыть содержимое

function CEButton1Click(sender)

GameName = "notepad++.exe"
GameID = getProcessIDFromProcessName(GameName)


if(GemeID == nil) then
   showMessage("запустите процесс!")
   
   openProcess(GameName)
end

-- дальше код я не смотрел Garik66

result = AOBScan(0xA0,0x86,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xA0,0x86,0x01,0x00,0x00)
if(result == nul) then
   showMessage("сигнатура не рабочая!")
   return
end
cound = stringlist_getcount(result)
i = 0
while i~= cound do

address = stringlist_getcount(result,i)

writeBytes(address,0x60,0xE3,0x16,0x00)
end
showMessage("актевировано!")
end

И второе — ты уверен в своей сигнатуре?

1. Можно на русском, что делает openProcess()? Он создает процесс или переключается на него?

2. Сигнатура на 100% нужная. Первые 4 байта дублируются в конце сигнатуры всегда. Был бы код не на Луа, а на «С», при использовании патерна, я бы с 13 байта и по 0хА0 поставил бы «?», т.к. эти байты при определенных условиях могут изменяться. Но для начала нужно разобраться с «топорной» сигнатурой и не допускать изменения наличной сигнатуры. Т.е. пока я не захочу, эта сигнатура будет иметь именно такой вид.

Ссылка на комментарий
Поделиться на другие сайты

SnedS91

    • Поделиться

53 минуты назад, pachela сказал:

1. Можно на русском, что делает openProcess()? Он создает процесс или переключается на него?

2. Сигнатура на 100% нужная. Первые 4 байта дублируются в конце сигнатуры всегда. Был бы код не на Луа, а на «С», при использовании патерна, я бы с 13 байта и по 0хА0 поставил бы «?», т.к. эти байты при определенных условиях могут изменяться. Но для начала нужно разобраться с «топорной» сигнатурой и не допускать изменения наличной сигнатуры. Т.е. пока я не захочу, эта сигнатура будет иметь именно такой вид.

Уважаемый pachela. Имею смелость заметить, что вы используете какой то заведомо «рабочий» код, изменив его под себя, не понимая сути. Мы лишь можем направить или указать на ошибки в общем случае.

Во-первых, советую ознакомиться с синтаксисом (в данном случае Lua) и обратить внимание на опечатки в коде.

Во-вторых, все инструкции CE используемые в Lua описываются подробно в файле main.lua, находящимся в корневой папке с Cheat Engine.

В-третьих, использовать «??» в сигнатуре до сих пор возможно. 


Изменено 7 февраля, 2017 пользователем SnedS91


  • Плюс


    2

Ссылка на комментарий
Поделиться на другие сайты

pachela

  • Автор
    • Поделиться

2 минуты назад, SnedS91 сказал:

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

Во-первых, советую ознакомиться с синтаксисом (в данном случае Lua) и обратить внимание на опечатки в коде.

Во-вторых, все инструкции CE используемые в Lua описываются подробно в файле main.lua, находящимся в корневой папке с Cheat Engine.

В-третьих, использовать «??» в сигнатуре до сих пор возможно. 

Уважаемый SnedS91 код приведенный мной ранее действительно взят как по идее рабочий из видеомануала по созданию сего именно кода. И потому то я понимаю, что в коде для чего нужно. Но вот беда в том, что работоспособность кода на видео не была показана!!!

По поводу main.lua я знаю. Но вопрос то стоял по другому? Одно дело справочный материал на английском, а другое, когда на русском.

По поводу возможности использовать в Луа сигнатуры с «??» нигде не встречал, посему и предположил что нельзя!

Ну и в конце концов: Почему на офф-форуме СЕ люди подсказывают, помогают и объясняют, а тут только предлагают платные услуги и тыкают носом?

Я не прошу написать мне сложную программу с кучей функций, GUI, БлекДжеком и проститутками, а всего навсего прошу подсказать где допущена ошибка, как ее исправить и как лучше внести коррекцию кода под себя. Человек который понимает в Луа, Си и хорошо знаком с СЕ, может решить эту задачку за 2 минуты! Я же возможно и могу решить эту задачку под посторонних подсказок, только на это уйдет уже не 2 минуты и скорее всего не 2 дня.

Я уже давно не школьник, имею жену и ребенка. У меня нет такой роскоши как безграничное время! Лучше же когда мне знающий человек подскажет, я погляжу где я был не прав, сделаю выводы, положу полученное знание на полочку и перейду на следующую ступень, со следующим заданием и новой трудностью, которую возможно я решу сам, а возможно буду снова спрашивать «гуру».

Ссылка на комментарий
Поделиться на другие сайты

Vlad2

    • Поделиться

Можно поробовать так openProcess(GameID)

Ссылка на комментарий
Поделиться на другие сайты

Vlad2

    • Поделиться
if(GemeID == nul) then

if (GameID == nil) then

Ссылка на комментарий
Поделиться на другие сайты

SnedS91

    • Поделиться

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

Кроме того в Lua есть возможность использовать aobscan более удобным способом, т.е. не набором байт, а строкой, к примеру:

AOBScan('A0 86 01 ?? 00') //можно и без пробелов 

Ссылка на комментарий
Поделиться на другие сайты

SnedS91

    • Поделиться

Скрытый текст

function CEButton1Click(sender)
	GameName = "notepad++.exe"
	
	if(openProcess(GameName) == nil) then
	   showMessage("запустите процесс!")
	   return
	end

	result = AOBScan('тут свои байты')
	if(result == nil) then
	   showMessage("сигнатура не рабочая!")
	   return
	end
	count = result.Count
	i = 0
	while i~= count do
		address = result.getString(i)
		writeBytes(address,{0x60,0xE3,0x16,0x00})
		i = i + 1
	end
	showMessage("активировано!")
end

Возможно в таком виде тебя устроит скрипт :)


Изменено 7 февраля, 2017 пользователем SnedS91

Ссылка на комментарий
Поделиться на другие сайты

MasterGH

    • Поделиться

6 часов назад, pachela сказал:

1. Можно на русском, что делает openProcess()? Он создает процесс или переключается на него?

Это подключение к процессу, как Attach to proccess. Процесс уже должен быть запущен.

Если нужно создать процесс и сразу подлючитья к нему, то

Цитата

createProcess(path, parameters OPTIONAL, debug OPTIONAL, breakonentrypoint OPTIONAL) : Creates a process. If debug is true it will be created using the windows debugger and if breakonentry is true it will cause a breakpoint to occur on entrypoint

Пример

createProcess('D:test.exe')

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

Ссылка на комментарий
Поделиться на другие сайты

pachela

  • Автор
    • Поделиться

В 07.02.2017в13:54, Vlad2 сказал:

if(GemeID == nul) then

if (GameID == nil) then

Спасибо. Действительно в исходнике который я выставил в начале темы было несколько недоделок. первая, это опечатки на которые как раз ты и указал. Сделал я эту ошибку т.к. когда просматривал видео, сразу пытался и писать код, а в видео автор сказал именно Нул! Это меня не удивило, т.к., по моему, в С+ есть Нул. Вторая недоделка это та, что автор видео в другом своем уроке сказал что в прошлом видео ошибся и забыл добавить openProcess(GameName).

В 07.02.2017в14:00, SnedS91 сказал:

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

Кроме того в Lua есть возможность использовать aobscan более удобным способом, т.е. не набором байт, а строкой, к примеру:

AOBScan('A0 86 01 ?? 00') //можно и без пробелов 

Это хорошо. И тут же сразу вопрос такой, имеет ли разница в скобочках? Двойные или одинарные ставятся? И еще, а можно ли в байтах обозначенных «??» ставить варианты, ну типа есть вариант что примерт такой вид или иной, но не совершенно иной? Возможно в виде переменной это обозначать? Ну это просто из любознательности, на последний вопрос можно ответить кратко: Да или Нет. И за это будет большое спасибо.

Представленный тобой скрипт работает отлично! Спасибо большое.

В 07.02.2017в18:14, MasterGH сказал:

Это подключение к процессу, как Attach to proccess. Процесс уже должен быть запущен.

Теперь разобрался. Просто написано «open» и это смущает. Хотя в справке и написано «подключиться», но все же перевод технической документации бывает двоякий.

Вот код который у меня вышел в результате, но я снова накосячил

Скрытый текст

function CEButton1Click(sender)
	GameName = "notepad++.exe"

	if(openProcess(GameName) == nil) then
	   showMessage("запустите процесс!")
	   return
	end

	result = AOBScan('A0 86 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 A0 86 01 00')
	if(result == nil) then
	   showMessage("сигнатура не рабочая!")
	   return
	end
	count = result.Count
	i = 0
	while i~= count do
		address = result.getString(i)
		writeBytes(address,0xC0, 0x5C, 0x15, 0x00)
		i = i + 1
	end
	while true do
		res2 = readInteger(address)
		if(res2 == 1400000) then
		Sleep(50)
		end
		if not(res2 == 1400000) then
		writeBytes(address,0xC0, 0x5C, 0x15, 0x00)
		end
	end
end

Код работает нормально, если не считать того печального факта, что СЕ со скриптом виснет наглухо. Я так понимаю что в конце нужно оставить только условие If not, а просто if убрать?

// Читаем правила (особенно пункт 1.3 ) Garik66

Ссылка на комментарий
Поделиться на другие сайты

pachela

  • Автор
    • Поделиться

Такс. Ну вот бороздя просторы большого ютубо-гугла я нашел причину почему трейнер вешается при активации, а точнее решение. Это запускать сканирование в потоки. Как я понял, то у меня должен быть 1 поток. Сначала 1 поток сканирует сигнатуру и записывает адрес. Далее поток освобождается и мы можем снова его использовать, что бы запустить цикл перезаписи, если изменяется значение в адресе.

Я все правильно понял?

Ссылка на комментарий
Поделиться на другие сайты

horror113

    • Поделиться

Скрытый текст

function CEButton1Click(sender)
if (getProcessIDFromProcessName('notepad.exe')==nil) then
messageDialog("Запустите игру...",-1,0)
return end
openProcess('notepad.exe')
potok = createNativeThread(potokF)
end

function potokF(senderThread)
results=AOBScan("3F 00 00 00 00 00 00 E0"  ,"*W*C*X")
if (results==nil) then
messageDialog("Сигнатура не найдена...",-1,0)
return end
count=stringlist_getCount(results)
for i = 0, (count-1), 1 do
address =stringlist_getString(results,i)
writeBytes(address,0x20, 0xF2, 0x0F, 0x59, 0xC9, 0x90, 0x90, 0x90)
end
messageDialog("Чит активирован!.",-1,0)
end

такой код устроит с потоком?

// Читаем правила (особенно пункт 1.3 ) Garik66

Ссылка на комментарий
Поделиться на другие сайты

SnedS91

    • Поделиться

2 часа назад, pachela сказал:

Это хорошо. И тут же сразу вопрос такой, имеет ли разница в скобочках? Двойные или одинарные ставятся? И еще, а можно ли в байтах обозначенных «??» ставить варианты, ну типа есть вариант что примерт такой вид или иной, но не совершенно иной? Возможно в виде переменной это обозначать? Ну это просто из любознательности, на последний вопрос можно ответить кратко: Да или Нет. И за это будет большое спасибо.

Представленный тобой скрипт работает отлично! Спасибо большое.

«??» или «xx» обозначение неизвестного байта. Переменную можно в принципе использовать, получится что-то вроде подстановки в шаблон.

36 минуты назад, pachela сказал:

Такс. Ну вот бороздя просторы большого ютубо-гугла я нашел причину почему трейнер вешается при активации, а точнее решение. Это запускать сканирование в потоки. Как я понял, то у меня должен быть 1 поток. Сначала 1 поток сканирует сигнатуру и записывает адрес. Далее поток освобождается и мы можем снова его использовать, что бы запустить цикл перезаписи, если изменяется значение в адресе.

Я все правильно понял?

Можно не использовать явно потоки, а создать таймер, например:

tmr = createTimer(nil,true)
function check()
 print('test') --тут свое сравнение и запись байт
end
tmr.setOnTimer(check)
tmr.setInterval(200)
Ссылка на комментарий
Поделиться на другие сайты

Garik66

    • Поделиться

17 час назад, pachela сказал:

1. Можно на русском, что делает openProcess()? Он создает процесс или переключается на него?

Подключается к процессу, если тот уже запущен. 

Если хочешь, чтобы трейнер не только подключался к процессу, но и запускал ну например тот же блокнот, можно сделать например так:

Скрытый текст

GameName = "notepad++.exe"
GameID = getProcessIDFromProcessName(GameName)

if(GemeID == nil) then
   showMessage("Процесс не запущен!Нажмите ОК! - ЗАПУЩУ :)")
   shellExecute('D://Notepad++/notepad++.exe/')   -- здесь поменяй путь к икзешнику на свой.
   sleep '1000'

   openProcess(GameName)
   showMessage("Процесс подключен! Работайте.")
end

17 час назад, pachela сказал:

2. Сигнатура на 100% нужная.

Если твоя сигнатура рабочая, то должен работать простейший АА-скрипт:

Скрытый текст

[ENABLE]
aobscanmodule(INJECT,notepad++.exe,A0 86 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 A0 86 01 00 00)
registersymbol(INJECT)
INJECT:
  db 60 E3 16 00 00 00 00 00

[DISABLE]
INJECT:
  db A0 86 01 00 00 00 00 00

unregistersymbol(INJECT)

который будет делать, то что ты хотел:

Скрытый текст

В 06.02.2017в13:43, pachela сказал:

4. Детальное описание работы:
Программа должна по нажатию на кнопку находить уникальный массив байт (A0 86 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 A0 86 01 00 00) в приложении NotePad++ и внести изменения в начало найденого массива на (60 E3 16 00 00 00 00 00) Последние нули обязательны!!! Изменение должно быть заморожено, с частотой обновления заморозки 50-100мс.

Ссылка на комментарий
Поделиться на другие сайты

Vlad2

    • Поделиться

Насколько я помню нужно везде ставить два слэша

shellExecute('D://Notepad++/notepad++.exe/')

Ссылка на комментарий
Поделиться на другие сайты

srg91

    • Поделиться

3 hours ago, Vlad2 said:

Насколько я помню нужно везде ставить два слэша

shellExecute('D://Notepad++/notepad++.exe/')

Если я правильно понимаю про что вы, два слеша требуются только в случае обратного слеша — «» дабы экранировать символ экранирования:

shellExecute('D:Notepad++notepad++.exe')

В случае прямого слеша он требуется только один:

shellExecute('D://Notepad++/notepad++.exe')

Плюс можно использовать двойные квадратные скобки:

shellExecute([[D:Notepad++notepad++.exe]])


Изменено 8 февраля, 2017 пользователем srg91

Ссылка на комментарий
Поделиться на другие сайты

pachela

  • Автор
    • Поделиться

На сегодня для меня самый подходящий код вышел вот такой вот:

Скрытый текст

function CEButton1Click(sender)
if (getProcessIDFromProcessName('notepad++.exe')==nil) then
messageDialog("Запустите игру...",-1,0)
return end
openProcess('notepad++.exe')
potok = createNativeThread(potokF)
end

function potokF(senderThread)
results=AOBScan("0000000050C30000000000000000000000000000000000000000000050C300000000000000000000002F4375"  ,"*W*C*X")
  if (results==nil) then
  messageDialog("Сигнатура не найдена...",-1,0)
  return end
count=stringlist_getCount(results)
for i = 0, (count-1), 1 do
address =stringlist_getString(results,i)
writeBytes(address,0xC0,0x5C,0x15,0x00,0x80,0xC3,0xC9,0x01)
end
   while true do
			writeBytes(address,0xC0,0x5C,0x15,0x00,0x80,0xC3,0xC9,0x01)
            sleep(250)
	end
end

Одна проблема у него. Когда я генерирую трейнер и закрываю СЕ, то он не может найти сигнатуру! Хотя во время проверки в СЕ все идеально работает.

Я предполагаю следующее: В СЕ включены инструменты ядра. В трейнере же я не включаю их. Может из-за этого быть косяк?

// Читаем правила (особенно пункт 1.3 ) Garik66

Ссылка на комментарий
Поделиться на другие сайты

SnedS91

    • Поделиться

Не думаю что в этом проблема, попробуй убрать следующее

  ,"*W*C*X"

Ссылка на комментарий
Поделиться на другие сайты

pachela

  • Автор
    • Поделиться

6 минут назад, SnedS91 сказал:

Не думаю что в этом проблема, попробуй убрать следующее

  ,"*W*C*X"

не. Не в этом дело. Оно как то сразу после нажатия на кнопку пишет что сигнатура не та. Даже не ищет, просто клац на кнопку, а он говорит фига! Попробовал вписать dbk_initialize(true). Но наверно эт не правильно. Хотя драйвер загрузило. Так же вместо OpenProcess использовал dbk_useKernelmodeOpenProcess(). Но походу тоже не правильно использовал. И я думаю что для полного набора инструментов нужно еще и dbk_useKernelmodeProcessMemoryAccess() использовать.

Ссылка на комментарий
Поделиться на другие сайты

SnedS91

    • Поделиться

Раз говоришь, что обычный поиск дает результат, тогда скажи какая память сканируется? Т.е. каким образом выставлены флаги CgI6YQ_qBEY.jpg

Ссылка на комментарий
Поделиться на другие сайты

pachela

  • Автор
    • Поделиться

2 минуты назад, SnedS91 сказал:

Раз говоришь, что обычный поиск дает результат, тогда скажи какая память сканируется? Т.е. каким образом выставлены флаги CgI6YQ_qBEY.jpg

Точно так как у тебя. Если зайти в настройки СЕ, «Дополнительно» и выключить нижние 3 галочки (первая у меня не включена, почему то включение этой галочки приводит к BSOD), то поиск вообще ничего не даст. Он не находит никаких значений вообще!!! Когда я пишу трейнер, то использую СЕ с включенными инструментами ядра и потому когда тестирую трейнер все пашет, а когда компилю, то инструменты ядра я не использую. Вот почему я думаю что из-за этого косяк.

Но опыта у меня в этом маловато, потому прислушиваюсь к вашим словам.

Ссылка на комментарий
Поделиться на другие сайты

SnedS91

    • Поделиться

Попробуй убрать в настройках те галочки, перезапустить СЕ, потом убрать галку в главном окне с Writable (это для того чтобы не использовать CE Kernel). Найдется ли в таком случае сигнатура?

Ссылка на комментарий
Поделиться на другие сайты

pachela

  • Автор
    • Поделиться

14 минуты назад, SnedS91 сказал:

Попробуй убрать в настройках те галочки, перезапустить СЕ, потом убрать галку в главном окне с Writable (это для того чтобы не использовать CE Kernel). Найдется ли в таком случае сигнатура?

Поиск сразу заканчивается и ничего не находит.

Ссылка на комментарий
Поделиться на другие сайты

horror113

    • Поделиться

папробуй вставить этот скрипт

Скрытый текст

local FLAGS_OFFSET=0x450


dbk_initialize() 
dbk_useKernelmodeOpenProcess() 
dbk_useKernelmodeProcessMemoryAccess() 


openProcess(getOpenedProcessID())

local list=createStringlist() 
getThreadlist(list)

local i 
for i=0, list.count-1 do 
  local tid=tonumber('0x'..list[i]) 
 
  local PEThread=dbk_getPEThread(tid) 
  local PEThread_Flags=PEThread+FLAGS_OFFSET 

 
  local flags=readBytes(PEThread_Flags,1) 
  if bAnd(flags,4)==4 then

    flags=bAnd(flags,0xfb)
    writeBytes(PEThread_Flags, flags) 
  end 

end 

list.destroy() 

// Читаем правила (особенно пункт 1.3 ) Garik66

Ссылка на комментарий
Поделиться на другие сайты

I’m getting this error at this point in the code…
But I don’t think there’s something wrong…

function readAll(file)
  local f = io.open(file, "rb")
  local content = f:read("*all"); f:close()
  return content
end

I get this error attempt to index a nil value (local ‘f’) in this specific line:

local content = f:read("*all"); f:close()

Any help is appreciated
Thank you

I just tried to execute the script, but I got this error…
It was supposed to work without any errors…

I already tried to look around the internet, but nothing seems to be wrong with the code…

aynber's user avatar

aynber

21.9k8 gold badges51 silver badges61 bronze badges

asked Oct 25, 2022 at 17:32

Haruna Higurashi Taishou GKL's user avatar

4

first solution:

function readAll(file)
  local f = io.open(file, "ab+") -- create if it not exist
  local content = f:read("*all"); f:close()
  return content
end

second solution:

function readAll(file)
  local f = io.open(file, "rb+")
  if not f then return "" end -- check file
  local content = f:read("*all"); f:close()
  return content
end

answered Oct 25, 2022 at 18:34

Mike V.'s user avatar

Mike V.Mike V.

2,0027 silver badges19 bronze badges

Today I finished the episode 45 (hardes tasks: collect cards 100.000 from 100.000 / Upgade toys 140/140) but there is NO button to get to episode 46 like in the priveous episodes. :? Please refer to the attached picture.
Image

I see that there are more episodes [planed to be in future?] «JACUZZI», «WARD», «SCHOOL».
For me this is the end with this «GAME». I agree to HolyShit memberlist.php?mode=viewprofile&u=46578, the game is boring.
Before 1 month I played «HERO WARS» but it is also boring even if you have more options.
Spring is comming so I’ll spend more time outside. :)

CU!

P.S.: I use Firefox 87.0 (64-Bit) and with CE only the room-script (Numpad2,3,4) is working (Num 1 and 0 not).
How to work with CheatEngine72 (is installed with the installer) and the script4 (26KB) by using Windows (7-10) and firefox:

1. Close all tasks.
2. Open Firefox and login to [Link] (only one tab!!!!)
3. Open script cuntempire_script4.ct or cuntempire.ct (on the desctop or from filebrowser) from «Cake-san»
download/file.php?id=26812
4. «File» —> «Open Process» or Button «Select a process to open»
5. On the «Process List» select «00xxxxxx-Cunt Empire — Mozilla Firefox» and click the «Open» button
6. Confirmation «Keep the current adress list/code list?» —> Click the «Yes» button
7. In the lower part of CheatEngine (7.2) you have several options

Box
Active Description Adress Type Value
[ ] Room <script>
[ ] Card <script>

[ ] Quest allways colle… <script>

Click in the empty box infront of the word «Room» to «Activate» the room-script. Wait…. more than 10 secounds. Be patient and leave your mouse and keybord untouched. If the box is with a red cross all is fine and you can go on otherwise you have to start new again with step 1

8. The box has a red cross, so the room-script is activated… Go back to firefox and here to the «Game».
9. Check if the notepad is active and play with the (Numpad2,3,4) to raise your income.

Hints:
a. Use AutoClicker30 (freeware to automate the mouse-clicks) and FreeCountdownTimer (plan your time to collect time based items or wait for eventstart and -end) !!!!
b. Don’t uses CE at the beginning of an episode, only if generated income talkes longer than 5 minutes to level up a business and don´t max the level of the businesses to fast otherwise you may not can get to the next episode.
c. In the EVENT (tournament/challange) first finish your tasks without CE! If it takes more than 5 minutes to level up an business use CE. DON’T automate Your businesses at the beginning because the game addapt the income of the «other fake players/bots». Open all businesses, so that you have more chances to get better GIRLS & TOYS in the castings.
10-15minutes before the EVENT ends:
— automate all businesses and
— level them up with the money by using CE but
— only use beer/champaine/absint/…. on GIRLS & TOYS in the AUTOMATED!!! businesse(s) where the income per secound has the highest value.
— If you level up girls, than first level up only one (single) girl, than the other girl(s) and than the toys in order to maximize the income

Certainly, something like this should do it (you can copy and paste into CE)

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>16</ID>
      <Description>"Scan"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
{$lua}
local function group_scan(group)
  local ms=createMemScan()
  ms.OnlyOneResult=true
  ms.FirstScan(soExactValue, vtGrouped, rtRounded, group, "",
  0, targetIs64Bit() and 0x00007fffffffffff or 0x00000000ffffffff, -- start stop addresses
  --0x07D00000, 0x07E00000, -- faster testing
  "", fsmNotAligned,"1", false, false, false, false)
  ms.waitTillDone()
  local res = ms.Result
  ms.destroy()
  return res
end

local function specific_scan(a,b,c,d)
  return group_scan(('4p:%d 4:* 4:* 4:%d 4:%d 4:* 4:* 4:* 4p:%d 4:* 4:%d'):format(a,b,b,c,d))
end

local function named_scan(values)
  -- interp from http://lua-users.org/wiki/StringInterpolation
  function interp(s, tab)
    return (s:gsub('($%b{})', function(w) return tab[w:sub(3, -2)] or w end))
  end
  return group_scan(interp('4p:${a} 4:* 4:* 4:${b} 4:${b} 4:* 4:* 4:* 4p:${c} 4:* 4:${d}',values))
end

if not syntaxcheck then
  --local result = specific_scan(5000,9000,3000,10000) -- commented to avoid two scans
  local result = named_scan({a=5000,b=9000,c=3000,d=10000}) -- alternative example
  if not result then error('not found') end
  -- unfortunately the scan seems to only return the first address even with a FoundList...
  local a_offset = 0x00
  local c_offset = 0x20
  memrec.Child[0].Address = result+a_offset
  memrec.Child[0].Active = true
  memrec.Child[0].Value = 500000
  memrec.Child[1].Address = result+c_offset
  memrec.Child[1].Active = true
  memrec.Child[1].Value = 500000
end
 
[DISABLE]
{$lua}
if not syntaxcheck then
  memrec.Child[0].Active = false
  memrec.Child[0].Value = 5000
  memrec.Child[1].Active = false
  memrec.Child[1].Value = 3000
end
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>17</ID>
          <Description>"a"</Description>
          <LastState Value="5000" RealAddress="07DE0000"/>
          <VariableType>4 Bytes</VariableType>
          <Address>07DE0000</Address>
        </CheatEntry>
        <CheatEntry>
          <ID>18</ID>
          <Description>"b"</Description>
          <LastState Value="3000" RealAddress="07DE0020"/>
          <VariableType>4 Bytes</VariableType>
          <Address>07DE0020</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>

This freezes both, but I wasn’t sure which you wanted to freeze so… just comment out/remove the .Active = lines for the one you don’t want to freeze

I’m trying to hack a game. I’m a bit of a white hat hacker — only for this specific game, and only because I enjoy it. There has recently been a spate of players getting away with much more than they should in game by (if the grapevine is to be believed) injecting lua scripts into the loaded game in cheat engine.

I use cheat engine sometimes, I know how to find a value, change it, lock it, find out what writes to it, etc. I wasn’t aware that a user can call an external lua file and have it run as if it had been called by the game in question (the copy of the file I’ve managed to beg/borrow/steal calls function from the game). I am way out of my depth here, I’m not even 100% sure this is seriously what’s been going on. Can anyone shed some light on whether or not this is possible (even a feeling of likelihood would help) and more importantly if it is possible, how I can go about replicating it.

I don’t want to mention the game specifically as (although it has a small user base) I don’t want to give others tips on how to hack it!). That being said, I realise I haven’t given much info, so please tell me what would be helpful to include!

P.S. I have no idea how to tag this — suggestions welcome!

Cheat engine does not work with nat (nats is long integer, which muck bigger longint interval) ( **://www.polarhome.com:793/~franco/bigint.zip )
I have uploaded project :
**://www.mediafire.com/?olygw13or4oiyd9
When you click on Button3 appears strange SIGSEG error . I think , problem is because of huge asm insertions in Bigint18 unit. How to solve problem?

So problem is in how assembler code compiled. So in cheat engine with nat unit added n_muls1 procedure is

CPU Disasm
Address   Hex dump          Command                                  Comments
005F44B0  /$  8B75 08       MOV ESI,DWORD PTR SS:[EBP+8]             ; ASCII "4294967296"
005F44B3  |.  8B7D 0C       MOV EDI,DWORD PTR SS:[EBP+0C]
005F44B6  |.  83FF 00       CMP EDI,0
005F44B9  |.  75 0F         JNE SHORT 005F44CA
005F44BB  |.  C706 01000000 MOV DWORD PTR DS:[ESI],1
005F44C1  |.  C746 04 00000 MOV DWORD PTR DS:[ESI+4],0
005F44C8  |.  EB 2B         JMP SHORT 005F44F5
005F44CA  |>  8B0E          MOV ECX,DWORD PTR DS:[ESI]
005F44CC  |.  31DB          XOR EBX,EBX
005F44CE  |.  8D748E 04     LEA ESI,[ECX*4+ESI+4]
005F44D2  |.  F7D9          NEG ECX
005F44D4  |>  8B048E        /MOV EAX,DWORD PTR DS:[ECX*4+ESI]
005F44D7  |.  F7E7          |MUL EDI
005F44D9  |.  01D8          |ADD EAX,EBX
005F44DB  |.  83D2 00       |ADC EDX,0
005F44DE  |.  89048E        |MOV DWORD PTR DS:[ECX*4+ESI],EAX
005F44E1  |.  89D3          |MOV EBX,EDX
005F44E3  |.  41            |INC ECX
005F44E4  |.^ 75 EE         JNZ SHORT 005F44D4
005F44E6  |.  83FB 00       CMP EBX,0
005F44E9  |.  74 0A         JE SHORT 005F44F5
005F44EB  |.  8B75 08       MOV ESI,DWORD PTR SS:[EBP+8]
005F44EE  |.  FF06          INC DWORD PTR DS:[ESI]
005F44F0  |.  8B0E          MOV ECX,DWORD PTR DS:[ESI]
005F44F2  |.  891C8E        MOV DWORD PTR DS:[ECX*4+ESI],EBX
005F44F5  >  C3            RETN

And in project just with nat unit:

CPU Disasm
Address   Hex dump          Command                                  Comments
0053D440  /$  55            PUSH EBP                                 ; project1.0053D440(guessed Arg1,Arg2)
0053D441  |.  89E5          MOV EBP,ESP
0053D443  |.  8B75 08       MOV ESI,DWORD PTR SS:[ARG.1]
0053D446  |.  8B7D 0C       MOV EDI,DWORD PTR SS:[ARG.2]
0053D449  |.  83FF 00       CMP EDI,0
0053D44C  |.  75 0F         JNE SHORT 0053D45D
0053D44E  |.  C706 01000000 MOV DWORD PTR DS:[ESI],1
0053D454  |.  C746 04 00000 MOV DWORD PTR DS:[ESI+4],0
0053D45B  |.  EB 2B         JMP SHORT 0053D488
0053D45D  |>  8B0E          MOV ECX,DWORD PTR DS:[ESI]
0053D45F  |.  31DB          XOR EBX,EBX
0053D461  |.  8D748E 04     LEA ESI,[ECX*4+ESI+4]
0053D465  |.  F7D9          NEG ECX
0053D467  |>  8B048E        /MOV EAX,DWORD PTR DS:[ECX*4+ESI]
0053D46A  |.  F7E7          |MUL EDI
0053D46C  |.  01D8          |ADD EAX,EBX
0053D46E  |.  83D2 00       |ADC EDX,0
0053D471  |.  89048E        |MOV DWORD PTR DS:[ECX*4+ESI],EAX
0053D474  |.  89D3          |MOV EBX,EDX
0053D476  |.  41            |INC ECX
0053D477  |.^ 75 EE         JNZ SHORT 0053D467
0053D479  |.  83FB 00       CMP EBX,0
0053D47C  |.  74 0A         JE SHORT 0053D488
0053D47E  |.  8B75 08       MOV ESI,DWORD PTR SS:[ARG.1]
0053D481  |.  FF06          INC DWORD PTR DS:[ESI]
0053D483  |.  8B0E          MOV ECX,DWORD PTR DS:[ESI]
0053D485  |.  891C8E        MOV DWORD PTR DS:[ECX*4+ESI],EBX
0053D488  |>  C9            LEAVE
0053D489  .  C2 0800       RETN 8

So in first code (copied from ollyDBG) there are no

PUSH EBP 
MOV EBP,ESP
LEAVE 

 instructions.

Writing a Script

You need to have the Memory Viewer window open and go to «Tools->Auto Assemble» or hit CTRL+A to open the Auto assemble window. When you click «Execute» the code is not actually executed, but assembled into machine code. The code is actually executed when you overwrite existing game code and the game executes it in the normal course of playing or when you call CREATETHREAD.

Writing an address or label followed by a colon will do one of two opposite things. If the label is known, i.e. it is an address or if there is a defined symbol or memory has been allocated with that name, the assembler will move to that address for assembling the following code. If the label is unknown, it must have been passed to LABEL(name) (or you will get an error) and the value of that label will be set to the current position where code is set to be assembled.

Simple Example — Example showing ALLOC, LABEL, REGISTERSYMBOL and CREATETHREAD.

Assigning a Script to a CheatTable

Scripts assigned to cheat tables usually have two sections, «[ENABLE]» and «[DISABLE]». Code before «[ENABLE]» will be assembled every time the script is enabled OR disabled. The code in the «[ENABLE]» section will be assembled (not executed) when the entry is checked and the code in the «[DISABLE]» section will be assembled when the entry is unchecked.

You will generally alloc memory in [ENABLE] and overwrite existing instructions inside the process you have opened to jump to your code where you can modify values and jump back. You will then dealloc the memory and put the original instructions back when disabling.

To assign it to your cheat table, click on «File->Assign to current cheat table» and close the window because to edit the table script you have to double-click on the «<script>» value in your table.

Serious Sam 3 BFE Example — Example showing ENABLE and DISABLE

Injecting a DLL

loadlibrary(name) can be used to load a dll and register it’s symbols for
use by your assembly code. Note that you should not put quotes around the DLL name. Here’s an example:

LoadLibrary Example

General Information

Auto assemble allows you to write assembler code at different locations using a script. It can be found in the memory view part of cheat engine under extra.

See Auto Assembler Commands for a full list of all Auto Assembler commands.

Auto Assembler Commands

Command Description
AOBSCAN(name, xx xx xx xx xx) Scans the memory for the given array of byte and sets the result to the symbol named «name»
AOBSCANMODULE(name, moduleName, xx xx xx xx xx) Scans the memory of a specific module for the given array of byte and sets the result to the symbol names «name»
AOBSCANREGION(name, Sadd$, Fadd$, xx xx xx) Will scan the specific range from start address to finish addressfor the given AOB and labels it with the given name
ALLOC(allocName, sizeInBytes, Optional: AllocateNearThisAddress) Allocates a certain amount of memory and defines the specified name in the script. If AllocateNearThisAddress is specified CE will try to allocate the memory near that address. This is useful for 64-bit targets where the jump distance could be bigger than 2GB otherwise
DEALLOC(allocName) Deallocates a block of memory allocated with Alloc. It always gets executed last, no matter where it is positioned in the code, and only actually frees the memory when all allocations have been freed. Only usable in a script designed as a cheat table. (e.g used for the disable cheat)
CREATETHREAD(address) Will spawn a thread in the process at the specified address
DEFINE(name,whatever) Creates a token with the specified name that will be replaced with the text of whatever
FULLACCESS(address,size,preferedsize) Makes a memory region at the specified address and at least «size» bytes readable, writable and executable
GLOBALALLOC(name,size) Allocates a certain amount of memory and registers the specified name. Using GlobalAlloc in other scripts will then not allocate the memory again, but reuse the already existing memory. (Or allocate it anyhow if found it wasn’t allocated yet)
INCLUDE(filename) Includes another auto assembler file at that spot
LABEL(labelName) Enables the word labelName to be used as an address
LOADBINARY(address,filename) Loads a binary file at the specified address
LOADLIBRARY(filename) Injects the specified DLL into the target process
READMEM(address,size) Writes the memory at the specified address with the specified size to the current location
REGISTERSYMBOL(symbolName) Adds a symbol to the user-defined symbol list so cheat tables and the memory browser can use that name instead of a address (The symbol has to be declared in the script when using it)
UNREGISTERSYMBOL(symbolName) Removes a symbol from the user-defined symbol list. No error will occur if the symbol doesn’t exist.

Value Notation

Normally everything is written as hexadecimal in auto assembler, but there are ways to override this so you can input decimal values, and even floating point values.
for example, a integer value of 100 can be written in hex as 64, but you can also write it as #100, or as (int)100
for floating point value like 100.1 you can use (float)100.1
and for a double, you could use (double)100.1
NOTE:Use ‘dq (double)100.1’ instead of ‘dd’!

{$lua}

Auto assembler scripts support section written in Lua.You can start such a section using the {$lua} keyword, and end it with {$asm}.

The return value of such a function (if it returns a value at all) will be interpreted as normal auto assembler commands.

When syntax checking, the lua sections get executed. To make sure your lua script behaves properly in those situations, check the «syntaxcheck» boolean. If it’s true, then do not make permanent changes.
e.g:

if syntaxcheck then return end

Of course, if your script is meant to generate code, do make it return code so that it passes the initial syntax check. (e.g label definitions etc…)

Examples

Basic Example

00451029:
jmp 00410000
nop
nop
nop

00410000:
mov [00580120],esi
mov [esi+80],ebx
xor eax,eax
jmp 00451031

Example using LABEL

label(mylabel)

00451029:
jmp 00410000
nop
nop
nop
mylabel:

00410000:
mov [00580120],esi
mov [esi+80],ebx
xor eax,eax
jmp mylabel

Example using ALLOC

alloc(alloc1,4)

00451029:
jmp 00410000
nop
nop
nop

00410000:
mov [alloc1],esi
mov [esi+80],ebx
xor eax,eax
jmp 00451031

Example using ALLOC and LABEL

alloc(alloc1,4)
label(mylabel)

00451029:
jmp 00410000
nop
nop
nop
mylabel:

00410000:
mov [alloc1],esi
mov [esi+80],ebx
xor eax,eax
jmp mylabel

Example using FULLACCESS

FULLACCESS(00400800,4) //00400800 is usually read only non executable data, this makes it writeable and executable
00451029:
jmp 00410000
nop
nop
nop

00410000:
mov [00400800],esi
mov [esi+80],ebx
xor eax,eax
jmp 00451031

Example using DEFINE

DEFINE(clear_eax,xor eax,eax)
00400500:
clear_eax

Example using READMEM

alloc(x,16)
alloc(script,2048)

script:
mov eax,[x]
mov edx,[x+c]
ret

x:
readmem(00410000,16) //place the contents of address 00410000 at the address of X

See also

  • Assembler
  • Tutorials

Writing a Script

You need to have the Memory Viewer window open and go to «Tools->Auto Assemble» or hit CTRL+A to open the Auto assemble window. When you click «Execute» the code is not actually executed, but assembled into machine code. The code is actually executed when you overwrite existing game code and the game executes it in the normal course of playing or when you call CREATETHREAD.

Writing an address or label followed by a colon will do one of two opposite things. If the label is known, i.e. it is an address or if there is a defined symbol or memory has been allocated with that name, the assembler will move to that address for assembling the following code. If the label is unknown, it must have been passed to LABEL(name) (or you will get an error) and the value of that label will be set to the current position where code is set to be assembled.

Simple Example — Example showing ALLOC, LABEL, REGISTERSYMBOL and CREATETHREAD.

Assigning a Script to a CheatTable

Scripts assigned to cheat tables usually have two sections, «[ENABLE]» and «[DISABLE]». Code before «[ENABLE]» will be assembled every time the script is enabled OR disabled. The code in the «[ENABLE]» section will be assembled (not executed) when the entry is checked and the code in the «[DISABLE]» section will be assembled when the entry is unchecked.

You will generally alloc memory in [ENABLE] and overwrite existing instructions inside the process you have opened to jump to your code where you can modify values and jump back. You will then dealloc the memory and put the original instructions back when disabling.

To assign it to your cheat table, click on «File->Assign to current cheat table» and close the window because to edit the table script you have to double-click on the «<script>» value in your table.

Serious Sam 3 BFE Example — Example showing ENABLE and DISABLE

Injecting a DLL

loadlibrary(name) can be used to load a dll and register it’s symbols for
use by your assembly code. Note that you should not put quotes around the DLL name. Here’s an example:

LoadLibrary Example

General Information

Auto assemble allows you to write assembler code at different locations using a script. It can be found in the memory view part of cheat engine under extra.

See Auto Assembler Commands for a full list of all Auto Assembler commands.

Auto Assembler Commands

Command Description
AOBSCAN(name, xx xx xx xx xx) Scans the memory for the given array of byte and sets the result to the symbol named «name»
AOBSCANMODULE(name, moduleName, xx xx xx xx xx) Scans the memory of a specific module for the given array of byte and sets the result to the symbol names «name»
AOBSCANREGION(name, Sadd$, Fadd$, xx xx xx) Will scan the specific range from start address to finish addressfor the given AOB and labels it with the given name
ALLOC(allocName, sizeInBytes, Optional: AllocateNearThisAddress) Allocates a certain amount of memory and defines the specified name in the script. If AllocateNearThisAddress is specified CE will try to allocate the memory near that address. This is useful for 64-bit targets where the jump distance could be bigger than 2GB otherwise
DEALLOC(allocName) Deallocates a block of memory allocated with Alloc. It always gets executed last, no matter where it is positioned in the code, and only actually frees the memory when all allocations have been freed. Only usable in a script designed as a cheat table. (e.g used for the disable cheat)
CREATETHREAD(address) Will spawn a thread in the process at the specified address
DEFINE(name,whatever) Creates a token with the specified name that will be replaced with the text of whatever
FULLACCESS(address,size,preferedsize) Makes a memory region at the specified address and at least «size» bytes readable, writable and executable
GLOBALALLOC(name,size) Allocates a certain amount of memory and registers the specified name. Using GlobalAlloc in other scripts will then not allocate the memory again, but reuse the already existing memory. (Or allocate it anyhow if found it wasn’t allocated yet)
INCLUDE(filename) Includes another auto assembler file at that spot
LABEL(labelName) Enables the word labelName to be used as an address
LOADBINARY(address,filename) Loads a binary file at the specified address
LOADLIBRARY(filename) Injects the specified DLL into the target process
READMEM(address,size) Writes the memory at the specified address with the specified size to the current location
REGISTERSYMBOL(symbolName) Adds a symbol to the user-defined symbol list so cheat tables and the memory browser can use that name instead of a address (The symbol has to be declared in the script when using it)
UNREGISTERSYMBOL(symbolName) Removes a symbol from the user-defined symbol list. No error will occur if the symbol doesn’t exist.

Value Notation

Normally everything is written as hexadecimal in auto assembler, but there are ways to override this so you can input decimal values, and even floating point values.
for example, a integer value of 100 can be written in hex as 64, but you can also write it as #100, or as (int)100
for floating point value like 100.1 you can use (float)100.1
and for a double, you could use (double)100.1
NOTE:Use ‘dq (double)100.1’ instead of ‘dd’!

{$lua}

Auto assembler scripts support section written in Lua.You can start such a section using the {$lua} keyword, and end it with {$asm}.

The return value of such a function (if it returns a value at all) will be interpreted as normal auto assembler commands.

When syntax checking, the lua sections get executed. To make sure your lua script behaves properly in those situations, check the «syntaxcheck» boolean. If it’s true, then do not make permanent changes.
e.g:

if syntaxcheck then return end

Of course, if your script is meant to generate code, do make it return code so that it passes the initial syntax check. (e.g label definitions etc…)

Examples

Basic Example

00451029:
jmp 00410000
nop
nop
nop

00410000:
mov [00580120],esi
mov [esi+80],ebx
xor eax,eax
jmp 00451031

Example using LABEL

label(mylabel)

00451029:
jmp 00410000
nop
nop
nop
mylabel:

00410000:
mov [00580120],esi
mov [esi+80],ebx
xor eax,eax
jmp mylabel

Example using ALLOC

alloc(alloc1,4)

00451029:
jmp 00410000
nop
nop
nop

00410000:
mov [alloc1],esi
mov [esi+80],ebx
xor eax,eax
jmp 00451031

Example using ALLOC and LABEL

alloc(alloc1,4)
label(mylabel)

00451029:
jmp 00410000
nop
nop
nop
mylabel:

00410000:
mov [alloc1],esi
mov [esi+80],ebx
xor eax,eax
jmp mylabel

Example using FULLACCESS

FULLACCESS(00400800,4) //00400800 is usually read only non executable data, this makes it writeable and executable
00451029:
jmp 00410000
nop
nop
nop

00410000:
mov [00400800],esi
mov [esi+80],ebx
xor eax,eax
jmp 00451031

Example using DEFINE

DEFINE(clear_eax,xor eax,eax)
00400500:
clear_eax

Example using READMEM

alloc(x,16)
alloc(script,2048)

script:
mov eax,[x]
mov edx,[x+c]
ret

x:
readmem(00410000,16) //place the contents of address 00410000 at the address of X

See also

  • Assembler
  • Tutorials

@Mangaia

Hello,

I’m unable to install Cheat Engine. The Setup just doesn’t launch. I tried disabling all antivirus settings and realtime protections and etc, but nothing works! Can someone please help!

@cheat-engine

Tried both the normal and lite version?

If neither works, then you may have an anti cheat installed on your system, or something else that doesn’t want cheat engine to run.
do a driverquery /verbose and check for anti cheat drivers

@Mangaia

I tried both the normal and lite version. I had League Of Legends installed and I uninstalled it. Still doesn’t work. Nothing came up with the driverquery, couldn’t see any anti cheat drivers.. I also did add exclusions to windows the /temp folder and the folder that the installer is in. Still nothing.

@phpjunkie420

When I try to install Cheat Engine I had to select the file for exclusion, and the destination folder. After I do that I had no problems with install it. Might try disabling Windows Defender, then install Cheat Engine. Exclude the folder, and re-enable Windows Defender.

@Mangaia

I did disable and excluded it, but still nothing… still gives me an error

@phpjunkie420

So, when you double click the Cheat Engine icon to launch it nothing is happening? Do you have a virtual machine like VirtualBox?
Could try installing cheat engine on a virtual machine so you can get a look at all the files. See if everything is there on your PC. If everything is there then something is messing with the execution, or the installation.

I know this is a bit complicated by when you install programs there is stuff put in several different places. Like %USERPROFILE%AppData, %PROGRAMDATA%, and the registry HKEY_CURRENT_USERSoftwareCheat Engine. Could try checking all of those places and doing a complete wipe of Cheat Engine, and reinstall it.

@Mangaia

There is nothing about cheat engine in those places. When I run it, it shows the load bar, then after like 5-10 mins it loads up the installer and when I click next it loads up some stuff and ends up at thisimage

@fade2gray

Sounds like you are disconnecting from the internet before running the installer.

@Mangaia

How so? My internet is stable

@phpjunkie420

Okay, try creating the folder for Cheat Engine first and exclude it from Windows Defender, and the installation file. Then try installing it.

This will take time but if you have a key to windows you can try installing it on virtual machine.

@Mangaia

I’m not able to reach the point in which I select a place to install it at.. might try the virtual one in ab 10 mins and Ill u[date

@phpjunkie420

@phpjunkie420

It sounds like something in the background is intercepting and blocking the installation.

@fade2gray

Are you using a VPN — you may have to disable it to complete installation.

@fade2gray

@fade2gray

Installing CE is a multistep process.

  1. Download the installer from the CE website.
  2. Run the installer.
  3. The installer connects to a second web address (cloudfront.net) to download more files, after which the installation process continues.

Situations that might cause the problem you are experiencing.

  • You have disconnected from the internet before step 2.
  • You are using a VPN, proxy or a PiHole.
  • Your ISP is blocking your connection to the second web address.

See #1954 and #2099. If you suspect your ISP, and your PC has wi-fi, try using a mobile hotspot to download and install.

@Mangaia

None of these happen. Before I re-installed my PC I had Cheat Engine and it was working without any issues.

@Mangaia

I’m unable to use Virtual Boxes apparently. So that won’t do

@fade2gray

I’m unable to use Virtual Boxes apparently.

Why?

So, you are not using a VPN, a proxy or a PiHole on your clean Windows install, and as you have had CE installed on the previous setup, it seems unlikely that that your ISP is blocking the connection to complete installation (but the only way to prove that is try connecting to a mobile hotspot if your PC has Wi-Fi and have a phone with a data connection, and try installing using that).

Other than that, do you happen to be using a 3rd part antivirus like McAfee? Also, you could try disabling your firewall to make sure there’s no outbound rule blocking the connection.

@Mangaia

Nope no 3rd parties. I tried disabling it, that didn’t work. I made an online windows servers, installed it and transferred the installation folder and now it works. But BRUH, why doesn’t it just install normally….

@fade2gray

It really does sound like your ISP is the problem.

@Mangaia

But how did it work like 10 days ago and now it doesn’t? Really doesn’t make sense. Also our ISPs here do not block anything LOL

@Mangaia

Not even torrent downloading xD

@cheat-engine

can you post your driverlist here ? Perhaps you have overlooked one anti cheat driver with a non-normal name

(driverquery /verbose > filename) and post the filename here

@Mangaia

@Mangaia

can you post your driverlist here ? Perhaps you have overlooked one anti cheat driver with a non-normal name

(driverquery /verbose > filename) and post the filename here

Anything out of the pastebin I sent?

@cheat-engine

nothing i can see. But it’s possible it hides itself from querying in the driverlist

Did you restart your computer after disabling your AV ? (not shut down and back on, else the av would still be blocking)

the copied files from the online windows server do work when executing?

@Mangaia

Yep, I did all that. Not shutdown, but actual restart. Nothing happens. I don’t have an AntiVirus. All I got is windows defender. Which was fully disabled + firewall shutdown. When I installed on a Virtual Windows I copied the folder and it is now working fine. But installing it, doesn’t.

@fade2gray

Before I re-installed my PC I had Cheat Engine and it was working without any issues.

When you re-installed Windows, was it a clean install or was it a repair install? If it was a repair install, I wonder if there are any old CE temporary installation files left in your temp directory — C:Users<username>AppDataLocalTemp — that could be interfering.

They will all start with is- and will look something like this…

TempInstallerFiles

If you find any, delete them all and try again.

  • Charles произошла ошибка ssl безопасное подключение к серверу невозможно
  • Charge alt failure ошибка
  • Channel not found in installation skipping load routine lumion ошибка
  • Changing dns over https settings ошибка
  • Change ventilator 4280 hex ошибка abb