Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


Mono Instance Scanner & Deep Pointer Support

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine Extensions
View previous topic :: View next topic  
Author Message
wbx001
How do I cheat?
Reputation: 0

Joined: 23 Apr 2026
Posts: 2

PostPosted: Thu Apr 23, 2026 6:44 am    Post subject: Mono Instance Scanner & Deep Pointer Support Reply with quote

This is a professional release documentation for your plugin. It highlights the core features and provides a clear example of how to use the API within a Cheat Engine Auto Assembler (AA) script.
Advanced Mono Instance Scanner & API (v2.1)
A powerful developer tool and API for Cheat Engine to scan, wrap, and manipulate Mono objects with ease.
🌟 Key Features
Deep Scanning: Recursively scan class instances and add them to your address list with one click.
Smart BackingField Mapping: Access auto-properties like <Speed>k__BackingField simply by using .Speed in Lua.
Metatable Wrapper: Provides a Lua-native way to read and write Mono fields.
Pointer Chain Support: Automatically resolves nested pointers when recursion depth is set (>0).
API-First Design: Easily integrate Mono object manipulation into your own scripts.
🛠 Installation
Place MonoApi.lua into your Cheat Engine autorun folder.
Place MonoScannerUI.lua into the same autorun folder.
Restart Cheat Engine and attach to a Mono-based game.
Right-click anywhere in the Address List and select "Scan Mono Instances".
💻 Scripting API Usage
Pure Lua Example
lua
Code:

-- Get all instances of ExperienceManager with 1 level of nested pointers
local managers = getMonoInstances("OctoberStudio", "ExperienceManager", 1)

if #managers > 0 then
    local mgr = managers[1]
    print("Current XP: " .. mgr.Experience) -- Auto-maps from <Experience>k__BackingField
    mgr.Experience = 99999                  -- Direct memory write
   
    -- Accessing nested object (requires depth >= 1)
    if mgr.PlayerStats then
        mgr.PlayerStats.Health = 100
    end
end


Cheat Engine Auto Assembler (AA) Example
You can trigger Lua API logic directly from a standard AA script using the {$lua} block. This is perfect for "One-Click" cheats.
asm
Code:

[ENABLE]
{$lua}
-- This block runs when the script is enabled
local list = getMonoInstances("OctoberStudio", "ExperienceManager", 0)
if #list > 0 then
    -- Example: Set a specific field on all found instances
    for i, inst in ipairs(list) do
        inst.Experience = 999999
        inst.Level = 100
    end
    print("Experience Manager patches applied!")
else
    print("Error: No instances found. Please enter the game world first.")
end
{$asm}

[DISABLE]
// Usually, no action is needed here for Lua-based memory writes


⚠️ Notes
Namespace: Use "" (empty string) for the Default Namespace.
Case Sensitivity: Class and Namespace names must match exactly as shown in the Mono Disassembler.
IL2CPP: This tool is designed for Mono runtimes. It will not work on games using the IL2CPP backend.

Update:
V1.1:
Lua Filter Expression: Added a real-time filtering field. You can now use Lua logic to filter thousands of instances.
Syntax: Must use the instance.fieldName format.
Example: instance.money == 1460 and instance.resourceKey == "boy_1"

Deep String Parsing: Enhanced System.String support.
The scanner now automatically resolves Mono String pointers.
Displays actual text content in the Address List using Unicode String type.

Dynamic Instance Counter:
The root group header now displays the class name along with the total count of matched instances.
Format: ClassName: Count (e.g., PlayerData: 3).



example4.png
 Description:
 Filesize:  36.72 KB
 Viewed:  456 Time(s)

example4.png



example3.png
 Description:
 Filesize:  64.9 KB
 Viewed:  456 Time(s)

example3.png



example2.png
 Description:
 Filesize:  56.68 KB
 Viewed:  456 Time(s)

example2.png



monoApi.lua
 Description:
v1.1

Download
 Filename:  monoApi.lua
 Filesize:  6.58 KB
 Downloaded:  45 Time(s)


MonoScannerUI.lua
 Description:
v1.1

Download
 Filename:  MonoScannerUI.lua
 Filesize:  10.15 KB
 Downloaded:  45 Time(s)

Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine Extensions All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites