GG help
Help about use GameGuardian

Contextual help

In the interface, some elements are marked with a special icon, at the top right, with the symbol "i" in the circle.
Pressing or long pressing, on this element, shows help on this element.


Basic information

After you start the application, by clicking the "Start" button, a floating icon will appear on the screen. It can be dragged to any location.
Short tapping on the icon will open the main application interface, long tap - show a panel for changing the speed of the game.

In the main screen you can see:

  • In the upper left corner - the icon of the game. Tapping on it allows you to select another game.
  • Located in the center are bookmarks to navigate through the tabs. Tapping on the desired bookmark displays the appropriate tab.

    In total there are 4 tabs: settings, search, saved list and the memory editor.
  • In the upper right corner of the interface is the closing button. Press it and the interface will be hidden, and a floating icon will appear on the screen.
  • At the bottom of the screen there is a status bar and the eye icon. If you press and hold on the eye icon, the interface becomes transparent, as long as you do not release your finger.
  • The rest of the contents on the screen depends on which tab you're on.

    On each tab, except for the settings tab, there is a menu button, which contains a variety of possible actions. In it you will find the main actions for this tab.

    Settings tab contains a variety of settings, help, and information about the application, and the exit button.

    Search tab contains:
  • Pause button, the name of the selected game, the number of results found, and the refresh button.
  • Below is a panel with quick access icons and a menu button. All icons are duplicated on the menu, so if you do not know the meaning of the icon, it can always be viewed by clicking on the menu button (the rightmost).
  • Below those icons will be the list of search results.

    Saved list tab contains:
  • Pause button, the name of the selected application, the menu button and the refresh button.
  • Below those icons will be the list of saved values.

    Memory editor tab is similar to the previous, only here instead of a list of saved values it displays memory contents.

    In all three lists (the search results, saved values and memory editor), you can perform a long tap on the items to show the context menu.

Videos:

  1. http://gameguardian.net/forum/gallery/image/158-how-use-eye-icon-gameguardian/

The floating icon

  • The floating icon:
    • Tap to open the interface.
    • Tap and hold to toggle the speedhack panel.
    • It can be moved to any place by dragging and dropping the icon.
    • Transparency and hide timer can be customized in app settings.


      If after clicking the "Start" button you do not see a floating icon:

      To properly run GameGuardian on your firmware, you need to allow usage popup windows in system settings for GameGuardian.

      The popup does not show on Huawei phones by default. You will need to allow GameGuardian to show popup. Please open the Phone Manager, then Dropzone Management and please make sure it is turned on for GameGuardian.

      The Popup also does not show on some Xiaomi phones. You need to head to Settings -> Installed apps -> GameGuardian -> Other permissions -> Display pop-up window.

      Also, other phones may have different procedures to allow apps to show Popup windows. All such apps are usually affected this way, for example the Google Translator app with the Tap To Translate functionality. Therefore, you can simply google "YOUR_PHONE tap to translate" to find the solution. For example, for Xiaomi Redmi devices the solution is as follows:

      https://productforums.google.com/forum/#!topic/translate/1Pywh5vI1kE

      Also you can use GameGuardian without floating windows:
      http://gameguardian.net/v-240

Scripts

  • Scripts:
    GameGuardian supports the execution of scripts written in Lua.

    On the search tab, click the menu and select "Execute script".
    Here you can select the script file for execution, see the existing GameGuardian API methods, or go to the official site to read help on the API or download ready scripts.
    Also, you can extract help from the API on the memory card to read it without the Internet.

    If you want to write your own script, then you need an external text file editor.
    GameGuardian does not allow editing scripts, it only executes them.

    Read API help for more details.

Videos:

  1. http://gameguardian.net/forum/files/category/6-lua-scripts/
  2. http://gameguardian.net/help/

Exact search

  • Exact search:
    1. Switch to GameGuardian from a game.
    2. Tap the "Known (exact) search" button in the "Search" tab.
    3. Input the number that is displayed in the game.
    4. Select the suitable data type, or choose "Auto" (if you are not sure) and other options (if needed) and click "Search".
    5. When finished searching, search results will be displayed in the list.
    6. Go back to the game. After the value has changed, switch to GameGuardian again.
    7. Search for the value that changed.
    8. If there are too many results, continue to step 6.
    9. If only a few results are left, you can try to modify, store or freeze the value.


Speedhack

  • Speedhack:
    • Tap and hold on the floating icon to show the speedhack panel.
    • Tap the arrows on either side of the icon, to change the game speed.
    • Tap and hold the current speed number to reset the game speed.
    • Tap and hold the floating icon to hide the speedhack panel.
    • List of speeds and timers used can be customized in app settings.
    • If the game does not respond to input or speedhack does not work, try using other green timers in GameGuardian settings.
    • You can use "Time jump" to jump ahead in time. Just select the menu on the search tab and choose "Time jump". You will need to specify how many seconds to jump. Amount to jump can be fractional.

Videos:

  1. http://gameguardian.net/forum/gallery/image/224-speed-hack-and-time-jump-gameguardian/

Group search

  • Group search:
    1. Switch to GameGuardian from a game.
    2. Tap the "Known (exact) search" button in the "Search" tab.
    3. Input search request for group search.
      Format: value 1 ; value 2 ; ... ; value N : group size
      2-32 values can be searched at the same time. The default group size is 512. The group size must be between 2 and 65536.
      For example, if you want to search 195 and 6543, you should input:
      195 ; 6543
      Of course you can specify the group size (300):
      195 ; 6543 : 300
      Also, you can set one or more data types:
      195D ; 6543
      This means you want to search a Dword value that is 195 and an Auto value that is 6543.
      Possible data types are the same as they are in search:
      B - Byte
      W - Word
      D - Dword
      X - Xor
      Q - Qword
      F - Float
      E - Double
      A - Auto
      Also you can write the number in hex (little-endian) notation:
      BAADh ; 6543
      or in reverse hex (big-endian) notation:
      BAADr ; 6543
      To input additional symbols, use the "HEX" button on internal keyboard.
    4. Select the suitable data type, or choose "Auto" (if you are not sure) to use as default. Other options do not matter for this type of search. Click "Search".
    5. When finished searching, search result will be displayed in the list.
    6. Back to the game. After the value has changed, switch to GameGuardian again.
    7. Repeat group search with appropriate changes.
    8. If there are too many results, repeat steps 6 and 7.
    9. If few results are left, you can try to modify, store or freeze the value.

      If you want respect order of values then specify : twice.
      Without group size:
      195 ; 6543 ::
      With group size:
      195 ; 6543 :: 300

      You can search in the range of values:
      190~210 ; 6543
      Also you can search outside the range of values:
      10~~4000 ; 6543


      You can use 0~~0 in an ordered group search along with the minimum size to specify any value of that type at the desired position.

      Examples
      123;0~~0;456::9
      123;0~~0;0~~0;789::13
      123;0~~0;456;0~~0;789::17

Videos:

  1. http://gameguardian.net/forum/gallery/image/229-how-to-use-ordered-group-search-gameguardian/

Range search

  • Range search:
    1. Switch to GameGuardian from a game.
    2. Tap the "Known (exact) search" button in the "Search" tab.
    3. Enter a border search range, separated by "~". For example, to search for values from 100 to 150, enter:
      100~150
      To search outside the range, you can specify the character "~" twice:
      100~~150
      Alternatively, you can select the sign "≠" and specify the character "~" once.
      To input additional symbols, use the "HEX" button on internal keyboard.
    4. Select the suitable data type, or choose "Auto" (if you are not sure) and other options (if needed) and click "Search".
    5. When finished searching, search results will be displayed in the list.
    6. Back to the game. After the value has changed, switch to GameGuardian again.
    7. Repeat range search with appropriate changes.
    8. If there are too many results, repeat steps 6 and 7.
    9. If few results are left, you can try to modify, store or freeze the value.

      The boundaries of the range included in the search results. You can select the type of search "≠" to find all values that do not belong to the range.
      In this search, all values are considered signed.

Videos:

  1. http://gameguardian.net/forum/gallery/image/222-example-of-range-search-gameguardian/
  2. http://gameguardian.net/forum/gallery/image/226-how-to-search-rounded-value-gameguardian/

Search for encrypted values

  • Search for encrypted values:
    1. Switch to GameGuardian from a game.
    2. Tap the "Known (exact) search" button in the "Search" tab.
    3. Input the number that is displayed in the game.
    4. Select the suitable data type, or choose "Auto" (if you are not sure), any other options (if needed), check "The value is encrypted" and click "Search".
    5. When finished searching, search results will be displayed in the list.
    6. Go back to the game. After the value has changed, switch to GameGuardian again.
    7. Search for the value that changed. Checkbox "The value is encrypted" must be checked.
    8. If there are too many results, continue to step 6.
    9. If only a few results are left, you can try to modify, store or freeze the value.

Videos:

  1. http://gameguardian.net/forum/gallery/image/159-how-search-encrypted-value-gameguardian/

Unknown (fuzzy) search

  • Fuzzy search:
    1. Switch to GameGuardian from a game.
    2. Tap the "Unknown (fuzzy) search" button in the "Search" tab.
    3. Select the suitable data type, or choose "Auto" (if you are not sure) and click "Search".
    4. When finished searching, search results will be displayed in the list.
    5. Back to the game. After the value changed (or not), switch to GameGuardian again.
    6. Tap the "Unknown (fuzzy) search" button and select the type for how the value has changed.
    7. If there are too many results, continue step to 5.
    8. If only a few results are left, you can try to modify, store or freeze the value.

      You can specify the exact change of the value by clicking the "More" button.
      You can enter a range as an accurate value change:
      190~210
      To specify change outside the range of values, you can input:
      10~~4000

Videos:

  1. http://gameguardian.net/forum/gallery/image/162-search-unknow-with-known-changes-gameguardian/

Address (mask) search

  • Address (mask) search:
    You can search or filter out by address with mask.

    A typical example is searching for addresses that end with a known value. For example, on "12E".

    The search parameters are the address and mask.
    In the address can be used wildcards ("?"). This symbol means that it can be any character from "0" to "F".
    An additional mask is formed from the address, so the leading zeros are important. Thus, the search for "0120" and the search for "120" is not the same thing.
    In the first case will be found: "00010120", "00020120", "00030120" and so on. While in the second: "00001120", "00002120", "00003120" and so on.

    You can search both for equality and for the inequality indicated by the mask. The second option can be useful for eliminating unnecessary values.

    The address and mask are entered in the hexadecimal system and without the letter "h" at the end.
    The mask obtained from the address intersects with the mask that was entered by you. This is the resultant search mask.

    The following examples are equivalent, because the resulting mask has same - "FF0"

    Address: 12?
    Mask: FFF

    Address: 123
    Mask: FF0

    Address: 127
    Mask: FFF0

    Address: 129
    Mask: BFF0

    Address: 0121
    Mask: 0FF0


Videos:

  1. http://gameguardian.net/forum/gallery/image/263-example-of-the-mask-search-gameguardian/

Fill (increment) values

  • Fill (increment) values:
    It often happens that too many values are found, but they can not be changed from the game.
    In this case, the fill comes to the rescue.

    A typical example of use is the search for the price of an item, with a subsequent replacement by a negative one.

    1. Select the desired items.
    2. Select "Edit selected".
    3. Press the button "More" to display "Increment:" field, if this field is not present.
    4. In "Increment:" field, enter the increment value. Usually this is 1. And click "Yes".
    5. The selected items will receive new values.
    6. Go to the game and see how the desired value has changed, moving across game screens.
    7. If the value has not changed, then the desired element not among selected. Return to GameGuardian and using the "Remove selected" -> "Revert and remove", remove the selected items, returning them the previous value. Now you can try everything from the beginning with other elements, if there are any.
    8. If the value has changed, then the desired element is one of the selected elements. Remember the new value and return to GameGuardian.
    9. In the list of selected items, search for the desired value. Unselect it. Delete all other values, using "Remove selected" -> "Revert and remove", returning them the previous value.
    10. Modify the desired element value as you need.

      Typical errors are removal without revert. After that, the game can crash.

      If you find a lot of values, try to do fill in small portions to avoid crashes.

Videos:

  1. http://gameguardian.net/forum/gallery/image/227-how-to-use-fill-gameguardian/

Text (string, HEX, AoB) search

At the moment, the search for text is performed only through the lua script with some limitations. The script can be downloaded on our website in the downloads section.

Videos:

  1. http://gameguardian.net/forum/gallery/image/284-string-searchreplace-lua-script-gameguardian/

XOR search

  • XOR search:
    If you know that the value you need is encrypted with a XOR key that is always at the same distance from the value, then you can use this mode to search by the decrypted value.
    1. Switch to GameGuardian from a game.
    2. Tap the "Known (exact) search" button in the "Search" tab.
    3. Enter a search number and XOR key distance, separated by "X". For example, to search for value 100 with a key on distance 8, enter:
      100X8
      To input additional symbols, use the "HEX" button on internal keyboard.
    4. Select the suitable data type, or choose "Auto" (if you are not sure) and other options (if needed) and click "Search".
    5. When finished searching, search results will be displayed in the list.
    6. Back to the game. After the value has changed, switch to GameGuardian again.
    7. Repeat XOR search with appropriate changes.
    8. If there are too many results, repeat steps 6 and 7.
    9. If few results are left, you can try to modify, store or freeze the value.

      You can use XOR search with range search. For example "100~150X8".
      Usually XOR search is slower from usual number search.
      This mode not supported in the group search or in the encrypted search.
      Distance must be from 1 to 4096 inclusive.
      You can input distance in hex form with h symbol at the end: "100~150X10h".
      Distance must respect values align. For example, dword must be aligned to 4-bytes boundary. This mean search "40X7" is useless for dword because 7 can not divide to 4.
      Combine this mode with another can cause problems on the bad firmware. For example, if you make usual search and after that refine in XOR mode this can cause hang or reboot your device. This must not happen if the first search will be in this mode.
      A fuzzy search of this mode is not supported. You can combine it but fuzzy work as usual and do not respect your XOR key with distance.
      Sign for values is respected. It is mean you can search value not equal, greater, smaller and so on.
      In this search, all values are considered signed.

Videos:

  1. http://gameguardian.net/forum/gallery/image/283-xor-search-guide-gameguardian/

Filters in search

You can filter the search results.
You can specify:

  • the limits for the address,
  • the limits for the value,
  • the required data types,
  • the desired fractional part of the number,
  • the desired type of pointer.
    You can combine any filters with each other.
    You can also disable one or any of the filters at any time.

    However, if a large amount of data is found, the filters can slow down the results.

    A filter on the fractional part of a number can be either by equality or by inequality.
    For integer types, the fractional part is zero. If you do not need integer types, exclude them using a type filter.

    Filter by pointer type allows to leave in the output only those values that can be a pointer to the desired type of memory.
    Possible memory types correspond to the colors in the memory editor:
    This can be executable memory, writable or read-only. In rare cases, it can be writable and executable memory.

    The pseudo-type "no pointer" corresponds to all types of data that can not be pointers, and also to those values of pointers that point to unallocated memory.

Videos:

  1. http://gameguardian.net/forum/gallery/image/415-filters-gameguardian/

Filtering in the memory editor

  • Filtering in the memory editor:
    You can specify a filter in the memory editor. Only those results that match the filter will be displayed.
    The filter supports wildcards:
    ^ - the start of the data,
    $ - the end of the data,
  • - any number of any characters,
    ? - the one any character.
    For example, to find the number 42, you need to enter ^42$.

Videos:

  1. http://gameguardian.net/forum/gallery/image/347-how-to-search-filter-in-the-memory-editor-gameguardian/

Others

  • Others:
    • For new searches, you must clear the previous search results by selecting "Clear" in the menu under the menu button.
    • To select another game tap on the game icon in the upper left corner.
    • To pause/resume a game - tap on the button below the icon in the upper left corner.
    • If you switch to a game while pause is active, the next time you open GameGuardian , that game will be paused automatically.
    • All frozen values are automatically added to the saved list. You can manage them under the appropriate tab.
    • All input data saves to the "History" list. You can use them by pressing the history button.

Videos:

  1. http://gameguardian.net/forum/gallery/image/191-history-usage-gameguardian/

Typical usage algorithms

  • Typical usage algorithms:

    1) The value is not encrypted and known.
    A typical case would be for money, stars, coins, resources, etc.

    Use exact search.

    2) The value is unknown and/or encrypted.
    A typical case of an unknown value - any scale/bar. For example health, mana, nitro, etc. The changes are seen, but no numerical values are visible.
    A typical case for encrypted values would be money, stars, coins, etc., but when searching with 1 algorithm does not find anything, or change of found values does not lead to numbers changing in the game.

    Use fuzzy search.


    3) The value is encrypted (The value is encrypted).
    A typical case for encrypted values would be money, stars, coins, etc., but when searching with 1 algorithm does not find anything, or change of found values does not lead to numbers changing in the game.

    Use exact search, but always select the checkbox "The value is encrypted".
    Found results may have strange values due to encryption.

    Algorithm 3 is much faster than 2, but it may not work for all games.

    4) The value is not encrypted, known and placed near other known values.
    A typical case would be for price in store, hero stats, etc.

    Use group search for all numbers in one time.

Videos:

  1. http://gameguardian.net/forum/gallery/image/159-how-search-encrypted-value-gameguardian/
  2. http://gameguardian.net/forum/gallery/image/164-compare-methods-gameguardian/

How to speed up search

  • How to speed up search:
    0. If you are use an Android emulator on a PC (BlueStacks, Droid4X, Andy, NOX, Memu, AMIDuOS, Windroy, AVD, Genymotion, Koplayer, Leapdroid etc.), check that virtualization (VT Technology, Vanderpool Technology, Virtualization Technology, VTx, VT-d, VMX, Virtual Technology, Intel-VT, AMD-V, SVM, IOMMU) is enabled in the PC BIOS.
    1. If you have a lot of RAM, then you can store the data there. This greatly speeds up the search. Set the setting "Data in the RAM:" to "Yes". In an Android emulator on a PC, this can slow down the search.
    2. If you have little RAM, the data will be stored on the memory card. Use a memory card with a high write and read speed.
    3. You can also specify the storage of data in the internal memory of the device, if it faster than the memory card. Set the setting "Temporary path" to the desired path.
    4. On search, select only the desired regions. Avoid slow ("slow") and dangerous ("dangerous") regions.
    5. You can also specify the limits of the memory range, for search, if you know them. Click the button "More" in the search dialog and enter the limits.
    6. Search for only the desired types of data. The data type "Auto" is slow.
    7. Disable all possible "Hide GameGuardian from the game:" options.
    8. Try using "Experimental" or "Extended" in "Access to memory:". These options can lead to unstable work.

Videos:

  1. http://gameguardian.net/forum/gallery/image/192-how-to-speed-up-search-gameguardian/

How to get around protection in games

Some games are equipped with protection against memory editors. You can try the following:

  1. "Kill the game", and then "Restart the game (without protection)".
  2. "Disable protection for all applications (until reboot)", and then run (or restart) the game.
  3. Use all or part of the items in "Hide GameGuardian from the game:". All of them slow down the search.
  4. Search when the game is minimized.
  5. Search when the game is paused.
  6. Kill or pause some of the protective processes of the game, if the game has several processes.
  7. Use XPrivacy or similar tools to bypass protection.
  8. Use the modification of the game without protection.

Videos:

  1. http://gameguardian.net/forum/gallery/image/353-implosion-never-lose-hope-hack-level-hide-from-the-game-gameguardian/
  2. http://gameguardian.net/forum/gallery/image/354-implosion-never-lose-hope-hack-credits-hide-from-the-game-gameguardian/
  3. http://gameguardian.net/forum/gallery/image/360-implosion-never-lose-hope-hack-credits-restart-without-protection-gameguardian/
  4. http://gameguardian.net/forum/gallery/image/362-implosion-never-lose-hope-hack-credits-disable-protection-gameguardian/

Hints

  • Hints:

    • Not all games can be modified by GameGuardian. Typical list of examples:
      • data stored on a server (server-sided games)
      • the game needs persistent internet connection
      • network play with other players
      • you need to select a server to connect at the start of the game
      • you can not use some things without internet
      • game reloads data from server if you change something
    • Values that are seen are not always the same as the way they are stored. They can be different. For example on screen we see 34, but in memory the value is 34000.
    • If you can not modify a value - try modifying values which affected this value. For example, instead of changing the amount of gold, you can change the price of the thing and sell it. Or buy with a negative price.

    • If you always find the desired values in the same region (letters at the end of the items in the results list), you can select only these regions for a faster search.


Colors in the memory editor

  • Colors in the memory editor:
    If the hex representation is not white, but color, then most likely in this value is the pointer. The color indicates which type of memory this pointer refers to.
    This can be executable memory, writable or read-only. In rare cases, it can be writable and executable memory.

Pointer search

Searches for values that can be pointers to the desired address. You can specify a maximum limit for a possible offset.

Videos:

  1. http://gameguardian.net/forum/gallery/image/344-how-to-quickly-search-for-pointers-gameguardian/

Option "Add to value, do not replace"

  • Option "Add to value, do not replace":
    If this option is checked, the entered value will be added to the existing value, and not replace it. For example, the element has a value of 5, and you entered 7, in the value field. If this option is checked, the element will get a new value of 5 + 7, equal to 12. If not checked, then 7.
    You can enter both positive and negative values.
    This option is incompatible with the freezing of the value.

Videos:

  1. http://gameguardian.net/forum/gallery/image/336-option-add-to-value-do-not-replace-gameguardian/

Unrandomizer


The unrandomizer is a feature designed to replace certain functions commonly used in games to produce random values. At a very simple level then, for an example, there may be a game that uses a randomizer function to determine the player's reward. Enabling the unrandomizer would then cause GameGuardian to try to replace this random value with the specified value in order to change the result (for example, to get a certain reward).

The unrandomizer won't work in all cases. It will only handle functions that it knows about. In most cases and for most users, this will not be used, as it's more of an advanced/experimental feature.

Some functions return Qword, some - Double (rarely used).

Double values must be in the range from 0 to 1. However, you can specify any values there, because GameGuardian will correct all the incorrect variants automatically.

You can also specify an increment step. In this case, each subsequent result will increase by this value. For example, for increment 1 and the initial value 0, instead of a random value, 0, 1, 2, 3, ... will be returned.
This option can be useful for a complete search of all possible random results.

You can specify which functions to modify in the GameGuardian settings.

Videos:

  1. http://gameguardian.net/forum/gallery/image/366-unrandomizer-gameguardian/
  2. http://gameguardian.net/forum/gallery/image/381-russian-slots-hack-store-unrandomizer-gameguardian/

Restart the game (without protection)

This option will try to restart the game without protection.
However, many firmware contains bugs that can cause the device to reboot.
If this happens, do not try to start the game again, as this will restart the device again.
Just run GameGuardian - it will clear the bad settings.
Also you can try to reboot the device in a regular way, this too should fix the problem.

If the reboot has occurred - do not use this function, it will not work on your firmware.

Videos:

  1. http://gameguardian.net/forum/gallery/image/385-restart-without-protection-repair-the-reboot-run-gameguardian-gameguardian/
  2. http://gameguardian.net/forum/gallery/image/384-restart-without-protection-repair-the-reboot-reboot-device-gameguardian/

Disable protection for all applications (until reboot)

This option will try to patch the system (temporarily) so that all applications run without protection.
The changes will apply only to new applications starts. Therefore, the target application, after a successful patch, needs to be restarted.
To cancel the patch, just restart the device.
Perhaps there will be various bugs in the system, after this patch.

If the patch is successful, it is not recommended to run this function again, before rebooting the device.

If you have problems, do not use this function.


Work without root

GameGuardian can work without root, through a virtual environment. For example, through Parallel Space, VirtualXposed, Parallel Space Lite, GO multiple, 2Face and many others.
GameGuardian must be installed in a virtual environment. The game must also be installed there.
Not all features of the program are supported, but most functions should work.

You will not be able to crack games that are not installed in a virtual environment.

The first launch of GameGuardian, which performs a reinstallation with a random package name, must not be performed through a virtual environment.
Then you can add GameGuardian to the virtual environment and use.

Videos:

  1. http://gameguardian.net/noroot

Why my game is not in the process list?

The game must be running to select it.

If the game is running, but still it is not in the list, then maybe you have problems with the root, or firmware.
Try another root or other firmware.


Unexpected shutdown

Daemon was killed by something.

Usually it can be:

  1. Any memory killers or optimizers. You must disable any killers or add GameGuardian the white list in its settings.
  2. Daemon was killed by the system due to lack of memory.

    Set "Data in the RAM:" to "No".
    Use hardware acceleration of the interface, if possible.
    Do not use large apps.
    Disable all other unused apps.
    Try to use GameGuardian after rebooting your device.
  3. The memory card was unmounted, while GameGuardian stored temporary files on it. To prevent this from happening, specify a different path to the temporary files. For example, in the internal memory.