Cheat Engine
Cheat Engine, commonly abbreviated as CE, is an
open source memory scanner/
hex editor/
debugger created by Eric Heijnen ("Dark Byte") for the
Windows operating system.
[2] Cheat Engine is mostly used for
cheating in computer games, and is sometimes modified and
recompiled to evade
detection. This program resembles
L. Spiro's "Memory Hacking Software", TSearch, and
ArtMoney.
It searches for values input by the user with a wide variety of options
that allow the user to find and sort through the computer's memory.
Cheat Engine can also create standalone
trainers that can operate independently of Cheat Engine. Cheat Engine's latest version is 6.3.
Features
Cheat Engine can view the disassembled memory of a process and make
alterations to give the user advantages such as infinite health, time or
ammunition. It also has some
Direct3D
manipulation tools, allowing you to see through walls, zoom in/out and
with some advanced configuration allows Cheat Engine to move the
mouse for you to get a certain texture into the center of the screen. This is commonly used to create
aimbots.
Cheat Engine can inject code into other processes, but doing so can
cause anti virus software to mistake it for a virus. There are versions
that avoid this false identification at the cost of many features (those
which rely upon code injection). The most common reason for these false
identifications is that Cheat Engine makes use of some techniques also
used in trojan rootkits to gain access to parts of the system, and
therefore get flagged as suspicious. Newer versions of Cheat Engine are
less likely to be blocked by anti virus programs so features like
code injection can be used without problems.
As of version 6.1, Cheat Engine can produce
Game Trainers
from the tables. While trainers generated in this way are typically
very large for their intended purpose, generally used for testing
purposes, some have been released by trainers groups as "final"
versions.
[3]
Implementations
Two branches of Cheat Engine exist, Cheat Engine
Delphi and Cheat Engine
Lazarus. Cheat Engine Delphi is primarily for
32-bit versions of
Windows XP. Cheat Engine Lazarus is designed for 32 and
64 bit versions of
Windows 7. Cheat Engine is, with the exception of the Kernel Module, written in
Object Pascal.
Cheat Engine exposes an
interface to its
device driver with
dbk32.dll
, a
wrapper that handles both loading and initializing the Cheat Engine
driver and calling alternative Windows kernel functions. Due to a programming bug in Lazarus pertaining to the use of
try and except blocks, Cheat Engine Lazarus had to remove the use of
dbk32.dll
and incorporate the driver functions in the main executable.
The
Kernel module, while not essential to normal CE use can be used to set hardware
breakpoints and bypass
hooked API in
Ring 3, even some in Ring 0. The module is compiled with the
Windows Driver development kit and is written in
C.
[4]
Cheat Engine also has a
plugin architecture for those who do not wish to share their
source code with
the community.
They are more commonly used for game specific features, as Cheat
Engine's stated intent is to be a generic cheating tool These plugins
can be found in several locations on the cheat engine website, and also
other gaming sites.
[5]
Cheat Engine Lazarus has the ability to load its unsigned 64-bit
device driver on Windows Vista x64 edition, by using DBVM, a virtual
machine by the same developers that allows access to
kernel space from
user mode. It is used to allocate
nonpaged memory in
kernel mode, manually loading the executable image, and creating a system
thread at
DriverEntry. However, since the DriverEntry parameters are not actually valid, the driver must be modified for DBVM.
Cheat Tables
Cheat Engine allows its users to share their addresses, code
locations and cheats script with other users of the community by making
use of cheat tables. "Cheat Tables" is a file format used by Cheat
Engine to store data such as cheat addresses, scripts and code
locations, usually carrying the file extension .CT.
[6]
Using a Cheat Table is straightforward and involves simply opening the
Cheat Table through Cheat Engine and enabling/ticking the cheats stored
within it. The ability to save and share Cheat Tables has resulted in a
large online community for sharing cheats through the Cheat Engine
Forums. Popular Cheat Tables are hosted in a dedicated Cheat Table
section on the Cheat Engine website
[7]
References
External links