Перейти к содержанию

КРАШ игры Warface


Рекомендуемые сообщения

Когда я инжектю мой dll код у меня закрывается игра, что делать помогите.

Держите мой код какой у меня!

 

Спойлер


#define SSGE_ADDR				0x141E112E0
#define IGAMEFRAMEWORK_ADDR			0x14211AE28
#define ICVAR_ADDR				0x141046DD0

#define IGAMEFRAMEWORK_GETCLIENTACTOR		0x470

#define ICVAR_OFFS_ENABLEKICK			0x494
#define ICVAR_OFFS_PVEKICK			0x498
#define ICVAR_OFFS_CHATENABLED			0xB30
#define ICVAR_OFFS_LOBBYCHATDELAY		0xB28
#define ICVAR_OFFS_INGAMECHATDELAY		0xB2C
#define ICVAR_OFFS_GAMETYPE			0x5F8

#define SSGE_I3DENGINE				0xF8
#define I3DENGINE_SETPOSTEFFECT			0x470
#define IACTOR_GETENTITY			0x1C8
#define IACTEOR_GETTEAMID			0xE30



class ISystemGlobalEnvironment
{
public:

	I3DEngine* GetI3DEngine()
	{
		return (I3DEngine*)*(DWORD64*)((DWORD64)this + SSGE_I3DENGINE);
	}

	static ISystemGlobalEnvironment* Base()
	{
		return *(ISystemGlobalEnvironment**)IGAMEFRAMEWORK_ADDR;
	}
};


class IGameFramework
{
public:
	bool GetClientActor(IActor** pActor)
	{
		return VirtualF<bool(__thiscall*)(PVOID, IActor**)>(this, IGAMEFRAMEWORK_GETCLIENTACTOR)(this, pActor);
	}

	static IGameFramework* Base()
	{
		return *(IGameFramework**)IGAMEFRAMEWORK_ADDR;
	}
};


class ICvar
{
public:
	template <class T>
	inline void SetValue(DWORD64 Offset, T Value){*(T*)((DWORD64)this + Offset) = Value;}

	template <class T>
	inline T GetValue(DWORD64 Offset)
	{
		return *(T*)((DWORD64)this + Offset);
	}

	static ICvar* Base()
	{
		return *(ICvar**)ICVAR_ADDR;
	}
};

void RadarHack()
{
	ISystemGlobalEnvironment* pSystemGlobalEnvironment = ISystemGlobalEnvironment::Base();
	if (!pSystemGlobalEnvironment) return;

	IGameFramework* pGameFramework = IGameFramework::Base();
	if (!pGameFramework) return;

	IGameRules* pGameRules = pGameFramework->GetCurrentGameRules();
	if (!pGameRules) return;

	IActorSystem* pActorSystem = pGameFramework->GetActorSystem(); 
	if (!pActorSystem) return;


	IActor* pActor = nullptr;

	if (pGameFramework->GetClientActor(&pActor))
	{
		IEntityIterator* pEntityIt = pSystemGlobalEnvironment->GetIEntitySystem()->GetEntityIterator();

		while (IEntity* pEntity = pEntityIt->GetNext())
		{
			if (IActor* tActor = pActorSystem->GetActor(pEntity->GetEntityId()))
			{
				pGameRules->AddEntity(pEntity->GetEntityId(), TRUE, UCHAR_MAX);
			}
		}
	}
}

 

 

Ссылка на комментарий
Поделиться на другие сайты

Просто измени это

 

#define SSGE_ADDR				0x141E112E0
#define IGAMEFRAMEWORK_ADDR			0x14211AE28
#define ICVAR_ADDR				0x141046DD0

 

на это

#define SSGE_ADDR				0x141E0D2E0
#define IGAMEFRAMEWORK_ADDR			0x142116E28
#define ICVAR_ADDR				0x142116178

 

Изменено пользователем JustHack
  • Понравилось 1
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.