How to Scan for Values in Cheat Engine (Tutorial) - Cheat Engine Tables

#1
Cheat Engine is a powerful tool used by gamers all around the world to modify single-player games. It allows users to scan for and change game data, such as the number of lives, coins, or any other value. Understanding how to effectively scan for values in Cheat Engine can significantly enhance your gaming experience, adding an entirely new dimension to how you play your favorite games. This article will guide you through the basics and into more advanced techniques for using Cheat Engine. Each topic will be a brief overview, as I make more tutorials, links will be added to each subject.

Getting Started with Cheat Engine

Download and Installation
Before diving into the world of in-game modification, you need to have Cheat Engine installed on your PC. It's available for free from their official website. Follow the installation guide carefully, ensuring you opt-out of any unwanted additional software. You can find an installation and settings tutorial Here.

Overview of Cheat Engine Interface
Once installed, open Cheat Engine and familiarize yourself with its interface. It might seem daunting at first, but it's pretty intuitive once you get the hang of it. Let's take a look at the main interface.
[Image: 42SyQmR.png]

  1. This is where you can select a process to open. Cheat Engine can attach to more than just games.
  2. This is where you can load an existing cheat table that either you've made or downloaded elsewhere.
  3. This will save your cheat table with any updated modifications. 
  4. The recent scan window shows all the found addresses that matched your last scan.
  5. Memory view will open a new window displaying points and operations within the currently selected process.
  6. Typically where the cheat tables will load including scripts, recent double clicked memory scans, and values.
  7. Deletes everything in your cheat menu (6).
  8. Pulls down all selected values in your recent scan window (4) and places them in cheat table (6).
  9. Starts the initial scan. (Works injunction with 12, 13, and 14).
  10. Preforms the next scan. (Works injunction with 12, 13, and 14).
  11. Undo's your last scan once.
  12. A known value you would like to search for
  13. The method of the scan value (exact, bigger and smaller than, between, and unknown).
  14. The value type (integer, float, string).
  15. Add a known address and pointers to the cheat table.


Preparing to Scan for Values

Picking the Right Game

Not all games work well with Cheat Engine, and using it with online multiplayer games is not recommended for both the ethical reasoning and complexity of anti-cheats, far grater than this tutorial will cover. Pick a single-player game to start with, ideally one that stores its data on your PC. Even if someone already has a cheat table out, try to make some of your own cheats.

Opening a Process in Cheat Engine

The first step is to open the game process in Cheat Engine. Click on the computer icon on the Cheat Engine (1), choose your game from the list of processes, and click "Open".


Understanding the Types of Scans (13)

Exact Value Scan

This is the simplest type of scan. If you know the exact value you want to change (like your current amount of gold), you can directly search for it.

Unknown Initial Value Scan
If you're not sure of the exact value, you start with this scan and narrow it down by playing the game and changing the value.

Comparative Scans: Increased/Decreased Value
Useful when the exact number is unknown but you can determine if it has increased or decreased during gameplay.


Conducting Your First Scan

Choosing the Value Type
Determine the value type (e.g., 4-byte, float, etc.) before scanning. Most games use 4-byte by default. Money is typically a float giving the decimal. If you're unsure of the type, you can scan all the value types (14).

Setting Scan Conditions
Set your scan conditions based on the type of scan. For an exact value scan, enter the known value and hit "First Scan." If the value isn't visible, choose "Unknown initial value" in the scan type (13). For the value type (14), use your best judgement. You may have to repeat scanning with different options before obtaining the correct value in memory.

Initiating the Scan
After pressing the "First Scan"(9) button. Cheat Engine will process and display all instances of that value. You'll probably get some crazy amount of results (could be in the millions). We know our value is somewhere in there so we will have to refine our search.


Refining Your Scan

Narrowing Down the Results
After changing the in-game value through gameplay, return to Cheat Engine and use the "Next Scan"(10) with the updated value to narrow down the results. You may (probably) have to do this more than once. Try to get it down to a manageable amount of values. I like working with anywhere from 1 to 200 results. 

Changing Values to Identify the Right One
Once you've narrowed down the results in your list of found addresses(4), you can start changing values in Cheat Engine to see if they affect the game. Be cautious and change one at a time, or you can be like me, freeze and change every value to see if I'm even in the ball park, hoping I don't crash the game. 


Using the Found Values

Modifying Values
To change a value, double-click on it, type in the new value, and press Enter. You should see the change reflected in the game. If it doesn't change right away, that means its not being constantly watched or nothing is being constantly written to the value. You may have to preform the appropriate action in game for the new value to take.

Pointer Scans for More Permanent Changes
For changes that persist even after restarting the game, you might need to perform a pointer scan, which is a bit more complex but yields more permanent results. Not much will be said about pointers in this tutorial, but know its a thing.


Advanced Tips and Tricks

Dealing with Dynamic Addresses
Game values might change memory addresses each time you play because the space in memory the game was in is cleared making room for other programs and games to load into. Learning how to find static pointers can help you modify values more consistently and make it so you don't have to scan for the same value time and time again.

Scripting in Cheat Engine for Automation
For repetitive tasks, Cheat Engine allows scripting in its Lua engine, automating the process of searching and modifying values. I'll be diving more into this later on.


Ethical Considerations and Tips

Fair Use Policy
Modify values responsibly. Enhancing personal gaming experience is fine, but affecting others negatively in multiplayer settings is frowned upon. Game hackers already have a bad name due to neglect from others. Don't be that guy, and if you are, keep it to yourself.


FAQs
  • Is using Cheat Engine on online multiplayer games recommended?
    No, using Cheat Engine on online multiplayer games is not recommended and can lead to bans.
  • Can Cheat Engine be detected by anti-cheat software?
    Yes, anti-cheats will always detect Cheat Engine and can lead to potential bans. Nothing you do at the user level will bypass a good anti-cheat.

  • Does Cheat Engine work on every game?
    Cheat Engine works best on single-player games that don’t store their data server-side or on games that doesn't have counter measures in place against Cheat Engine.

  • Is Cheat Engine safe to download and use?
    Yes, if downloaded from the official website, Cheat Engine is safe. However, be cautious during installation to opt-out of any bundled software.

So, tell me where should I go?
To the left, where nothing's right. Or go right, where nothings left..