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.

Source Warface Manual Character Position Hook via VTable

byte_corvus

Newbie
Newbie

byte_corvus

Newbie
Newbie
Status
Offline
Joined
Mar 3, 2026
Messages
247
Reaction score
7
Boys, throwing together a quick snippet for those of you messing around with internal hooks in Warface. Getting character movement to trigger correctly via memory can be a headache if your VTable index is off or you're missing the proper global environment pointers.

Here is how I am handling SetPos calls by grabbing the entity interface. Remember that vtable index 21 is the standard for the SetPos function in this engine build, but always verify your offsets if you are running on a different client version.

Code:
void SetPos(void* pEntity, const Vec3& newPos)
{
    uintptr_t* vtable = *(uintptr_t**)pEntity;
    SetPosFn fnSetPos = (SetPosFn)vtable[21];
    fnSetPos(pEntity, &newPos, 0);
}

And here is the boilerplate to pull your pointers from the SSystemGlobalEnvironment. I included the actor and entity retrieval logic so you can verify you are actually targeting the client actor before pushing the coordinates.

Code:
SSystemGlobalEnvironment* pEvn = SSystemGlobalEnvironment::GetInstance();
if (!pEvn) return;

CGame* pGame = pEvn->GetGame();
CGameFramework* pGameFramework = pGame->GetGameFramework();
CActorSystem* pActorSystem = pGameFramework->GetActorSystem();

CActor* m_pActor = pActorSystem->GetActor(pGameFramework->GetClientActorId());
CEntity* pEntity = m_pActor->GetEntity();

if (pEntity)
{
    Vec3 newPos = { 100.0f, 200.0f, 300.0f };
    SetPos(pEntity, newPos);
}

A few things to note:
  1. Always validate your pointers before calling the function or you will be looking at an instant crash to desktop.
  2. This is a basic memory write. If you are doing this in high-traffic areas or constantly spamming position updates, expect a flag from the server-side analytics.
  3. If anyone has found a more stable way to trigger this without relying on the VTable index (maybe a direct function hook or a different pattern), drop your insights below.

Has anyone experimented with this on the latest patch? Curious if they added more sanity checks to position updates in RM.
 
Top