Cheat Engine Standalone

1 view
Skip to first unread message

Jennifer Leos

unread,
Aug 3, 2024, 10:41:45 AM8/3/24
to akereqhe

Cheat Engine (CE) is a proprietary, source available[5] freeware memory scanner/debugger created by Eric Heijnen ("Byte, Darke") for the Windows operating system in 2000.[6][7] Cheat Engine is mostly used for cheating in computer games and is sometimes modified and recompiled to support new games. 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, often found on user forums or at the request of another user.

Cheat Engine can view the disassembled memory of a process and allow the addition and/or alteration of game states to give the user advantages such as infinite health, time, or ammunition. It also has some Direct3D manipulation tools, allowing vision through walls "Wallhacking" and zooming in/out "FOV changes", and with some advanced configuration, Cheat Engine can move the mouse to get a certain texture into the center of the screen. This is commonly used to create aimbots. However, the main use for Cheat Engine is in single player aspect of games, and its use in multiplayer games is discouraged.[9]

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 Kit and is written in C.[12]

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 as well as other gaming sites.[13]

Cheat Engine Lazarus has the ability to load its unsigned 64-bit device driver on Windows Vista and later x64 bit versions of Windows, 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 Driver Entry. However, since the Driver Entry parameters are not actually valid, the driver must be modified for DBVM.

Cheat Engine allows its users to share their addresses and code locations 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 including Lua scripts and code locations, usually carrying the file extension .ct. 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 on the Fearless Revolution website.[14]

In addition to simple memory addresses, cheat tables can extend the functionality of Cheat Engine using the Lua scripting language. Almost all of Cheat Engine's features are scriptable, and it is even possible to design custom dialogs to interact with scripts.

In 2017, the Entertainment Software Association (ESA) sent a copyright infringement notice asking Eric Heijnen to cease and desist. The notice claimed Cheat Engine allowed evading anti-cheat technologies, accessing in-game DLC items/microtransaction items that could only be bought with real money. Eric Heijnen responded by shutting down the cheat tables section to the public, asking them to be hosted off-site and coming to an agreement with ESA.[15] The Cheat Engine community was not happy with the steps taken, and prominent members moved to a new community website called Fearless Revolution where old cheat tables have been uploaded and new ones are being posted. The Cheat Engine website and forums only focus on development of the tool itself now, and cheat tables have moved to Fearless Revolution forums.[16][17]

The installers of Cheat Engine are known to include potentially unwanted programs which are often bloatware or malware, and as a result, most anti-virus software detects the installer as a virus.[18][19][20] Bloatware-free versions are generally available on the product's Patreon page, or users can build the program from the GitHub repository through any Pascal compiler.[21]

I have some small flash games in facebook. How can i prevent cheating with cheat engine? My swf file sends the score to my database by php. I just dont want people to hack highscores in my flash games by using cheat engine. What is the best way to avoid these issues?

Long answer; It's a lot of work. One option is to make a server-side port of your game, make sure everything is deterministic, and send over all player actions and validate them on the server-side port (and discard any failing validations).

I just add some random number to the scores ( let's say 100 ) and then substract it when I show it somewhere. After this I obfusticate the SWF file. So I would have something like : myScores = 100;. If he have 15 scores, the memory will have that 115 number and he will be looking for 15, not 115. Then I substract 100 from 115 and get the real points to be displayed. It is important to protect your swf from decompiling ( there is plenty soft that will obfusticate it ). I also run my own encrypt/decrypt function when sending to the PHP ;)

I'm trying to make an exhaustive list of all the indie games that were created using the Doom engine as a base. I'm looking specifically for standalone titles here, not TCs that require some other IWAD to run. Here's what I have so far.

EDIT: I.M.Meen TC - Uses .iwad extension, basically a remake of that old edutainment game, but without the education part.
EDIT 2: Nido Force - An action-platformer made in GLOOME engine for the same contest Nocturne In Yellow was in.

From what i recall there was a post stating it was to go standalone. But that was years ago. (I do this quite often, eh? ''I seem to recall'', ''I think that..'' Little snippets of memories, because there was a reason why i listed them as standalone.

Thanks by the way for pulling this legwork and your extensive knowledge on not only this matter but generally anything else Doomrelated. A somewhat definitive list will work well for both ZDoom and DoomWiki.

Hedon 2 is now out as well, although both games are bundled together commercially and can't be purchased/downloaded separately, so up to your discretion whether it counts as another item for the list.

Somewhat related, but the game Radix: Beyond the Void (published in 1995) has been converted to the Doom engine by Jim Valavanis using his port DelphiDoom as a base: RAD Engine. It's a backdoor into the Doom world, but it's worth thinking about.

Late response, but i just tried out the 1.0 beta from 2014. It does use FreeDoom IWAD, but its basically used in the same manner Return of the Triad and Mayhem Mansion use dummy IWAD's - It does not seem to use anything from the IWAD whatsoever.

Haze (Lost in Cold Haze to be exact) is a horror mod that was being developped for Zdoom since mid 2010 up until January 2012. It is now considered discontinued, or "on an unplanned hold" if you prefer ;p
Haze relied heavilly on spooky atmosphere and used all possible tricks and hacks of Zdoom's software renderer (not Gzdoom's OPENGL pretty stuff) to achieve that, and was going to sport a surirval horror-esque gameplay with enemies being much stronger and dangerous than the player could handle, forcing him/her to retreat, avoid enemies and ultimately fear them...
The story revolved around one Ryan Porter, who was driving home from a party one night with his cousin and friends, but upon sighting a mysterious figure on the road made a wrong turn. The car ended up at the bottom of the highway cliff the next day with Ryan stranded in the wreak, and something out there being in the forest...
What you have here is about 30% done game, an unfinished but working prototype.

What you played there is not representative of the final product! The full version will run on the Eternity Engine with new monsters, features, blackjack and hookers! Once it comes out - we will all enjoy a true masterpiece as we all collectively shit our adult-diapers in the retirement home!

I'm joking of course, but I have heard that the devs (or dev?) have shared progress reports over the years about the mod's development, which kinda indicates that it could still become a full TC and even possibly the first ever Eternity Engine TC, unless someone beats them to the punch first.

1. "Standalone" - No installation of Cheat Engine required, but it is unknown what kind of programs Cheat Engine automatically packs into the trainer.
2. "Requires Cheat Engine" - An installation of Cheat Engine required, gives a chance to skip extra unnecessary programs that we don't know what they do.

hey man do you know how to locate character model adress and is it possiblr to do model swaps so you could for exmple use the orc captain models and look like them or even do a full character swap and use their moves?

Hey! Nope, sadly enough :( As of now, the community can only make texture mods. There are some threads on the Conquest forums about this. One needs to crack the encryption of the models and make a pack/repack tool for it.

c80f0f1006
Reply all
Reply to author
Forward
0 new messages