Cheat Engine Guides & Tutorials

Step-by-step guides, community tutorials, and real user experiences to master memory scanning, pointers, and scripting.

Start Here: Built-in Tutorial

After installing Cheat Engine, run the built-in tutorial from your Start Menu (or Programs). It walks you through:

  • Attaching to a process (the tutorial game)
  • First scan and next scan (exact value, unknown value)
  • Adding addresses to the list and freezing values
  • Finding what writes to an address
  • Pointers and pointer scan (step 5 and beyond)

Reaching at least step 5 gives you a solid base. Many forum users recommend completing the full tutorial for pointers and code injection.

Tutorials & Wiki

More: Tutorials · Wiki

Wiki Topics (Deep Dives)

Community Experiences & Tips

“Unknown initial value” and “Changed/Unchanged”

When you don’t know the exact value (e.g. health bar with no number), use Unknown initial value, then Scan type: Changed value or Unchanged value after you take damage or heal. Filter repeatedly until the list is manageable, then try changing values to find the right one.

Common approach shared on the forum and wiki.

Float vs 4 Bytes for health/percentages

Many games store health as a Float (e.g. 0.0–1.0 or 0–100.0). If exact value search with 4 Bytes gives too many or no results, try Float or Double. See wiki: Finding values - Floats / Integers.

Pointers: why addresses change after restart

Direct addresses often change when you restart the game (ASLR, dynamic allocation). Use Pointer Scan to find a pointer path that stays valid across restarts. The built-in tutorial and wiki “Pointers” and “Cheat Engine Tutorial Guide (x64/x32)” cover this.

Lua: auto-attach and simple scripts

You can use Lua to auto-attach to a process by name and run scripts when the process is opened. Forum and wiki: “How to setup a Lua auto attach script”, “Introduction to Lua with CE: Beginner to Basic Script Writer”. .CT files can contain Lua scripts; only use tables from trusted sources (scripts can do anything CE can).

Quick Reference

Goal Typical steps
Find a known number (gold, ammo)Exact value → Next scan (change value in game) → Add to list / Freeze
Find unknown value (health bar)Unknown initial value → Changed/Unchanged → repeat → try editing
Stable address after restartPointer scan from found address; use pointer in table
Change code (infinite ammo, etc.)Find what writes → Auto Assembler (injection or replace)
Unity / Mono gameMono menu (Activate mono features) → .NET/Mono dissector; wiki Mono tutorials