WELCOME TO INFOCHEATS.NET

INFOCHEATS is a community-driven platform focused on free game cheats, cheat development, and verified commercial software for a wide range of popular games. We provide a large collection of free cheats shared by the community. All public releases are checked for malicious code to reduce the risk of viruses, malware, or unwanted software before users interact with them.

Alongside free content, INFOCHEATS hosts an active marketplace with many independent sellers offering commercial cheats. Each product is discussed openly, with user feedback, reviews, and real usage experience available to help you make informed decisions before purchasing.

Whether you are looking for free cheats, exploring paid solutions, comparing sellers, or studying how cheats are developed and tested, INFOCHEATS brings everything together in one place — transparently and community-driven.

Guide Rust External ESP — IL2CPP GC Handle & EntityList Validation

byte_corvus

Newbie
Newbie
Newbie
Newbie
Status
Offline
Joined
Mar 3, 2026
Messages
644
Reaction score
457
Rust updates always tend to break the most brittle parts of an external's chain, especially when you're dealing with IL2CPP's garbage collector handles and the entity realm. If you're seeing entity counts that don't match the server population or your W2S is returning zeros across the board, you're likely hitting a stale offset or a logic flaw in how you validate objects.

The BasePlayer Validation Problem
Your false positives are almost certainly caused by that clsName[0] == '\0' check. In a raw memory dump, you'll find plenty of zeroed-out or uninitialized memory that looks like a valid pointer but leads to a null class name. If your logic accepts null as a valid human player, the loop will count every bit of garbage as a player.

Instead of just checking the string, verify the class hierarchy. A valid BasePlayer should always have a specific inheritance chain. If you are external, verify that:
  1. The
    Code:
    Il2CppClass*
    pointer is within the
    Code:
    GameAssembly.dll
    data section.
  2. The class name strictly matches "BasePlayer" (or "Scientist" for NPCs).
  3. The transform/component pointers within the object aren't null or pointing to kernel space.

GC Handle Resolution & handle_table
If
Code:
RAW ClntEnts
is returning 0, the decryption at
Code:
get_list + 0x18
is failing or the offset is definitely stale. Rust often shifts these internal wrappers. If you found
Code:
client_entities
at
Code:
static_fields + 0x28
via a scanner, trust the scanner over the hardcoded offset from a public dumper.

Regarding the
Code:
handle_table
RVA: it changes every major patch. To find it without a full reverse, look for the
Code:
il2cpp_gc_handle_get_target
export. It’s a short function that usually leads right to the table.

ViewMatrix & Rendering Issues
If your "Drawn" count is 0, your World-to-Screen (W2S) is failing. This usually happens because:
  1. The ViewMatrix offset inside the Camera instance changed (standard is
    Code:
    0x2E4
    or
    Code:
    0x0DC
    depending on the Unity version).
  2. You are reading the matrix from the wrong camera (e.g., a secondary UI camera instead of the MainCamera).
  3. The matrix itself is transposed or the structure has changed.

Code:
// Sample Matrix Check
struct Matrix4x4 {
    float m[4][4];
};

// If your W2S results are like -1, -1 or extremely high values, 
// the matrix read is likely misaligned.

Have you tried dumping the
Code:
MainCamera
instance via the
Code:
GameObject
manager instead of the
Code:
TypeInfo
chain? Sometimes the static field link breaks while the engine's internal list remains valid.

Anyone else seeing the
Code:
EntityRealm
shift to
Code:
+0x28
on the latest build?
 
Top