Открыть сервисСервис

Cheat Engine — программа для модификации игр

Cheat Engine (CE) — бесплатное программное обеспечение с открытым исходным кодом для анализа и модификации процессов оперативной памяти компьютера, предназначенное в первую очередь для работы с одиночными компьютерными играми. Программа позволяет находить значения в памяти запущенного процесса, изменять их и создавать так называемые «чит-коды» — наборы адресов и значений, сохраняемые в файлы с расширением .CT. Cheat Engine распространяется по лицензии GNU GPL и поддерживается разработчиком Дармом Андерсеном (Dark Byte).

Основные возможности

Cheat Engine выполняет ряд функций, связанных с прямым доступом к памяти процессов:

  • поиск и изменение значений в оперативной памяти процесса (целые числа, числа с плавающей точкой, строки, двоичные данные);
  • создание и редактирование таблиц адресов (cheat tables) с описанием найденных значений;
  • отслеживание указателей (pointer scan) для поиска многоуровневых цепочек адресов;
  • модификация скорости процесса (speedhack);
  • включение и выключение бесконечных жизней, патронов и других игровых параметров через изменение памяти;
  • дамп памяти процесса и поиск скрытых объектов;
  • подключение отладчика к процессу, установка точек останова;
  • сканирование модулей и поиск уязвимостей в памяти.

Программа работает на операционных системах Windows (основная платформа) и имеет экспериментальную поддержку Linux через слой совместимости Wine. Для 64-битных систем требуется отдельная версия.

Интерфейс и основные элементы

При запуске Cheat Engine открывается главное окно с панелью инструментов. Основные элементы интерфейса:

ЭлементНазначение
Кнопка с изображением компьютераОткрытие списка запущенных процессов для выбора целевого приложения
Поле «Value»Ввод искомого значения
«Value Type»Выбор типа данных (4 байта, 2 байта, 1 байт, float, double, string, array of byte)
«Scan Type»Тип сканирования (Exact Value, Bigger than, Smaller than, Unknown initial value)
«First Scan»Первичное сканирование памяти
«Next Scan»Уточняющее сканирование для сокращения списка найденных адресов
Таблица слеваСписок найденных адресов с текущими значениями
Таблица справа (address list)Сохранённые адреса для постоянного мониторинга и редактирования

Пошаговое использование

Выбор процесса

После запуска игры или иного приложения нажимается кнопка с изображением компьютера в верхнем левом углу Cheat Engine. В открывшемся списке выбирается процесс нужной программы (например, game.exe). После нажатия «Open» программа подключается к выбранному процессу.

Первичное сканирование

В поле «Value» вводится известное значение игрового параметра — например, количество золота, здоровье, патроны. Выбирается тип данных: для большинства целых чисел подходит «4 Bytes», для дробных значений — «Float». Нажимается «First Scan». В левой таблице отображается список адресов памяти, содержащих указанное значение.

Уточнение списка

Игровой параметр изменяется в игре (например, покупается предмет за золото, расходуются патроны). В Cheat Engine вводится новое значение и нажимается «Next Scan». Из списка исключаются адреса, значения которых не изменились соответствующим образом. Процедура повторяется до тех пор, пока не останется один-несколько адресов.

Изменение значений

Найденный адрес двойным щелчком добавляется в правую таблицу (address list). Значение можно изменить, щёлкнув по нему, и зафиксировать, установив флажок «Active» — в этом случае программа будет постоянно перезаписывать значение в памяти, не давая игре его изменить.

Создание таблицы

Файл с расширением .CT сохраняется через меню «File → Save». Таблица содержит адреса, описания и настройки изменений. Такие таблицы распространяются в интернете и позволяют другим пользователям применять готовые модификации без повторного поиска адресов.

Указатели и многоуровневые адреса

В большинстве современных игр адреса игровых значений не являются постоянными и пересоздаются при каждом запуске. Для решения этой проблемы используется механизм указателей: в памяти процесса располагается цепочка адресов, ведущая к искомому значению. Cheat Engine позволяет находить такие цепочки с помощью функции «Pointer Scan» и сохранять их в таблице в виде многоуровневых записей вида [[[base+offset]+offset]+offset].

Speedhack

Функция Speedhack замедляет или ускоряет выполнение процесса, перехватывая системные вызовы времени. Включается одноимённым флажком в главном окне, после чего задаётся коэффициент скорости. На практике чаще используется для замедления игр с высокой скоростью протекания событий.

Правовой и этический статус

Cheat Engine сам по себе является нейтральным инструментом анализа памяти и может использоваться в легитимных целях: отладка собственных программ, исследование работы приложений, тестирование безопасности. Разработчик неоднократно подчёркивал, что программа предназначена для одиночных игр. Использование Cheat Engine в многопользовательских онлайн-играх нарушает условия обслуживания большинства игровых платформ и может привести к блокировке аккаунта. Ряд антивирусных программ детектирует Cheat Engine как потенциально нежелательное программное обеспечение (PUP), что связано с его возможностями по внедрению кода в процессы.

История

Cheat Engine впервые появилась в 2000-х годах как проект энтузиаста, работающего под псевдонимом Dark Byte. Программа развивалась как бесплатная альтернатива коммерческим чит-трейнерам. С течением времени добавлялись новые функции: поддержка 64-битных систем, дебаггер, скриптовый язык на основе Auto Assembler для создания сложных модификаций. На сегодняшний день Cheat Engine является одним из наиболее известных инструментов подобного рода в русскоязычном и мировом интернет-сообществе.

Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru