5 ms·
Could just be a simple property that existed on some game object, which was exposed in the interface but nothing in the game ever accessed the property. Then a
by warent 4y ago
Could just be a simple property that existed on some game object, which was exposed in the interface but nothing in the game ever accessed the property. Then a getter would report the read to their backend. The cheat programs probably automatically read every property of these objects.
- jeroenhd 4y agoI'm no reverse engineering expert but I doubt cheats would actually call getters when they have access to the raw memory underneath. Maybe lazy cheats do use that mechanism, but it's hardly a foolproof system. If this is how detection was done, I imagine Valve has targeted this detection system for a specific cheat tool/framework.
- warent 4y agoYes I'm seeing now how unsophisticated and probably incorrect my approach is, clearly running into the limits of my understanding of compiled programs / cheat engines :)
- voldacar 4y agoA getter? If I write a cheat, I'm just reading bytes from the address of the honeypot in ram
- jamesfinlayson 4y agoPossibly - a lot of Source engine (and so probably Source 2 as well) plugins work by reverse engineering Linux/Mac builds of the games and building class definitions for in-game objects and calling the methods to get health/armor/ammo counts etc.