Search Methods

This article covers all common search methods and what to consider. The tool MungPlex is being used since it supports many different emulators.

Choosing the right datatype and search settings

Picking the right datatype

Before you start searching for certain memory addresses/cheats you have to be aware of what kind of datatype the address might hold. Integers can be used to search for all types, even floats but this might not be always practicable. If you have integers indicating the amount of items, lap count etc. you have to distinguish the size first. First of all, check whether the amount can become negative? If yes, you are looking for an unsigned integer. But most likely you will be looking for positive ones since negative item counts rarely appear in games.
You can read more about integer types here.


If you are looking for the value of some health bar, coordinate, timer etc. you are looking for a float or even double. You can search for a 32-bit integer instead (64-bit integer for doubles) but only do this if you are aware of what floats look like in hexadecimal. But you should be aware of this being possible since many cheat search tools don't support float types.
You can read more about floats here.


Booleans can be found by searching for an 8-bit integer and distinguishing between 0 (false) and 1 (true) depending on the state of a certain event or action (for instance whether a race is over or a level is completed). You can read more about floats here.

DatatypeEntity
8-bit IntegerItem count, Lap count, Lives, IDs, single color channels (of RGB or RGBA), single letter/symbol (Text)
16-bit IntegerItem count, Money, Points, Lives, IDs, Rotation, single letter/symbol (Text)
32-bit IntegerItem count, Money, Points, IDs, Rotation, Colors (RGB, RGBA), Text (utf-8, Emoji), Speed, Gravity
64-bit IntegerItem count, Points, IDs
BooleansEvent/action (race/level cleared)
32-bit FloatSize, Rotation, Coordinate, Opacity/Transparency, Colors, Intensity of effects, Engine-related properties, audio volume, audio speed, timer, time speed
64-bit Float (Double)Engine-related properties, Intensity of effects

Search Settings

After distinguishing the datatype you should think of the right search settings.

  • Endiannes
    • Little Endian: Least significant byte first (Switch, PJ64)
    • Big Endian: Most significant byte first (GameCube, Wii, Wii U, N64)
  • Signess: Use this option corresponding to the signess of the target value
  • Known/Unknown: Whether a comparision should be done by a specific value
  • Alignment: Whether the search should only consider addresses dividable by 4 (or all even addresses if int16). An aligned search can speed up the search process and reduce memory usage by the factor of 4 (or 2 if 16-bit search); but at the risk of skipping the value you are looking for.
  • Hex values: Wheather to show all values as decimal or hexidecimal

Known value search

If you are looking for a specific value such as like as your life count this search method has you covered!
A known value search is performed by doing comparisions according to a specific, known value. If the correct amount is already given on-screen an Equal to comparision is what you need.
Here's a step-by-step instuction:

  1. Pick the right datatype and search settings
  2. Check the current value and type it into the corresponding text field of the search manager
  3. Select Eaqual as comparision type
  4. Start the search
  5. Refine your results by increasing or decreasing the target value in-game until you are left with only a few results
  6. Test certain addresses by writing/poking a value that is different to the current one to the selected address
  7. If the value updates in-game you found the right address!

In the following example demonstrates exactly this procedure. I have chosen to hack the life count in Super Mario 64!

  1. The maximum amount of lifes we can get it 100. Therefore the life count never exceeds 255 and we are good to go with an 8-bit value type. In order to miss no possible result we do an unaligned search.
    search settings
  2. The current amount of lives is 4 and can be entered into the search manager.
    current value
  3. Select Eaqual to as comparision type
  4. Start the search
    enter current value
  5. Refine your results by increasing or decreasing the target value in-game until you are left with only a few results.
    first results current value
    Here I lost another life and searched for the new value.
    updated value refine
  6. Test certain addresses by writing/poking a value that is different to the current one to the selected address
  7. If the value updates in-game you found the right address!

Unknown value search

©Lawn Meower (Sophie Schmidt) 2015 - 2024