Cheat Engine (Чит Энджин) — это бесплатная программа с открытым исходным кодом, которая сканирует оперативную память запущенного процесса и позволяет находить и изменять значения в нём: количество игровой валюты, очков здоровья, патронов и других параметров. Чаще всего её используют в одиночных играх, чтобы упростить прохождение или поэкспериментировать с механикой.
Инструмент создал разработчик под ником Dark Byte, и за годы существования программа выросла из простого «поисковика чисел» в полноценную среду с отладчиком, дизассемблером и поддержкой скриптов на языке Lua. При этом у Cheat Engine есть и обратная сторона: антивирусы нередко помечают её как потенциально опасную, а использование в онлайн-играх приводит к блокировке аккаунта. Разберёмся во всём по порядку.
Как работает Cheat Engine: принцип поиска значений
Любая запущенная игра хранит свои данные — здоровье персонажа, деньги, ресурсы — в оперативной памяти компьютера в виде чисел. Cheat Engine подключается к процессу игры и сканирует эту память, отыскивая ячейки, где хранится нужное значение.
Классический сценарий выглядит так. Допустим, у персонажа 100 единиц здоровья. Вы указываете программе найти все ячейки памяти со значением 100 — таких найдутся тысячи. Затем получаете урон, здоровье падает до 80, и вы выполняете повторный поиск уже среди найденных адресов по новому значению. После нескольких итераций остаётся один-два адреса, которые и отвечают за здоровье. Их можно изменить или «заморозить», чтобы значение не уменьшалось.
Так работает поиск точных значений. Для параметров без видимого числа (полоска здоровья без цифр, таймеры) применяется поиск «неизвестного значения» с фильтрами «увеличилось», «уменьшилось» или «изменилось». Это дольше, но принцип тот же — последовательное сужение круга адресов.
💡Cheat Engine не «взламывает» игру как файл — он изменяет данные в оперативной памяти на лету, пока процесс запущен. После перезапуска игры изменения исчезают, если не сохранить таблицу адресов.