Jump to content
Welcome, Guest
Existing user? Sign In

Sign In



Sign Up
The MatriX
  • Welcome To Ghbsys
  • CS GO Streaming Version is released. Have fun streaming while cheating!
  • Have a Payment Issue? Send us a Support ticket.
  • Make a thread if you need support or join our discord for live support.
  • Have Suggestions? Make a thread and you'll earn Ghbsys Points for implemented suggestions.
  • Join our discord to stay well connected! Don't forget to integrate your discord to the site
  • Welcome to [GHB] - GAmEhAcKbAsTaRdS Forum

    Welcome to [GHB] - GAmEhAcKbAsTaRdS Forum, like most online communities you must register to view or post in our community, but don't worry this is a simple free process that requires minimal information for you to signup. Be apart of [GHB] - GAmEhAcKbAsTaRdS Forum by signing in or creating an account.
    • Start new topics and reply to others
    • Subscribe to topics and forums to get email updates
    • Get your own profile page and make new friends
    • Send personal messages to other members.

    need help with d3d


    ownor22
     Share

    Recommended Posts

    hi, ive made a d3d hack and it whas working but 2 hours later wr crashed and evrytime i try to start it again warrock crashes without even getting to the log in screen

     

    struct CPlayer
    {
    char uk1[40];
    float stamina;
    char uk2[68]; 
    float norecoil1;  
    float norecoil2;  
    float norecoil3; 
    char uk3[260];   
    BYTE state;   
    BYTE state2; 
    char uk4[54];  
    float xx; 
    float zz; 
    float yy;   
    char uk5[136]; 
    float nofall;  
    char uk6[16]; 
    float x; 
    float z;  
    float y;  
    }; //by ZeaS || Size=0x026C(620)
    
    char *sHeadShot[]={"0.0","Head","Neck"};
    char *sSuperjump[]={"0.0","1500","2000","3000"};
    char *sPremium[]={"0.0","Gold","Silver","Bronze"};
    char *sSpeed[]={"0.0","100","200","300"};
    char *sTeleportSlot[]={"1","2","3"};
    char *sTrans[]={"0","10","20","30","40","50","60","70","80","90","100"};
    char *sStamina[]={"0.0", "Stealth", "1.0"};
    
    int NullPointer;
    
    int SettingsFolder;
    int PlayerFolder;
    
    int NFD;
    int Recoil;
    int Spread;
    int CHPremium=0;
    int Superjump;
    int FastFlag;
    int FastMedic;
    int FastAmmo;
    int FastRepair;
    int Water;
    int Speed;
    int Ingame;
    
    int Trans;
    int Fps;
    int dDate;
    int Credits;
    int MoveM;
    
    HRESULT Initialize(LPDIRECT3DDEVICE8 pDevice)
    {
    if(Init) pMenu->PostReset();
       return S_OK;
    }
    
    HRESULT PreReset()
    {
    if(Init) pMenu->PreReset();
       return S_OK;
    }
    
    HRESULT PostReset(LPDIRECT3DDEVICE8 pDevice)
    {
    if(Init) pMenu->PostReset();
       return S_OK;
    }
    
    HRESULT Release()
    {
    if(Init) pMenu->PreReset();
       return S_OK;
    }
    
    
    /*
    HRESULT WINAPI myBeginScene(LPDIRECT3DDEVICE8 pDevice)
    {
       _asm pushad;
    
       _asm popad;
    
       return pBeginScene(pDevice);
    }
    */
    
    
    HRESULT WINAPI mySetStreamSource(LPDIRECT3DDEVICE8 pDevice, UINT nStreamNumber, LPDIRECT3DVERTEXBUFFER8 pStreamData, UINT nStride)
    {
       _asm pushad;
    
       _asm popad;
    
       return pSetStreamSource(pDevice, nStreamNumber, pStreamData, nStride);
    }
    
    HRESULT GenerateTexture(IDirect3DDevice8 *pD3Ddev, IDirect3DTexture8 **ppD3Dtex, DWORD colour32)
    {
    if( FAILED(pD3Ddev->CreateTexture(8, 8, 1, 0, D3DFMT_A4R4G4B4, D3DPOOL_MANAGED, ppD3Dtex)) )
    	return E_FAIL;
    
    WORD colour16 =	((WORD)((colour32>>28)&0xF)<<12)
    		|(WORD)(((colour32>>20)&0xF)<<
    		|(WORD)(((colour32>>12)&0xF)<<4)
    		|(WORD)(((colour32>>4)&0xF)<<0);
    
    D3DLOCKED_RECT d3dlr;    
    (*ppD3Dtex)->LockRect(0, &d3dlr, 0, 0);
    WORD *pDst16 = (WORD*)d3dlr.pBits;
    
    for(int xy=0; xy < 8*8; xy++)
    	*pDst16++ = colour16;
    
    (*ppD3Dtex)->UnlockRect(0);
    
    return S_OK;
    }
    
    HRESULT WINAPI myDrawIndexedPrimitive(LPDIRECT3DDEVICE8 pDevice, D3DPRIMITIVETYPE pType, UINT nMinIndex, UINT nNumVertices, UINT nStartIndex, UINT nPrimitiveCount)
    {
       _asm pushad;
    
       _asm popad;
    
       return pDrawIndexedPrimitive(pDevice, pType, nMinIndex, nNumVertices, nStartIndex, nPrimitiveCount);	;
    }
    bool eFps( int* a ){
    pMenu->EnableFps(*a);
    return true;
    }
    bool eTrans( int* a ){
    pMenu->SetMenuTrans(((*a)*10));
    return true;
    }
    bool eDate( int* a ){
    pMenu->EnableDate(*a);
    return true;
    }
    bool eCredits( int* a ){
    pMenu->EnableCredits(*a);
    return true;
    }
    bool eMove( int* a ){
    pMenu->ToggleMove(*a);
    return true;
    }
    HRESULT WINAPI myPresent ( LPDIRECT3DDEVICE8 pDevice, CONST RECT* pSourceRect, CONST RECT* pDestRect, HWND hDestWindowOverride, CONST RGNDATA* pDirtyRegion )
    {
       _asm pushad;
    	PostReset(pDevice);
    
    	if(!Init){
    
    		pMenu = new Menu(pDevice);
    		pMenu->SetMenu(20,16,150,400,2,MENU_BORDER,true);
    		pMenu->SetMenuFont("Verdana", 8, D3DFONT_BOLD);
    		pMenu->SetMenuColor(D3DCOLOR_ARGB(80,100,0,0), NULL);
    
    		pMenu->SetTitleFont("Arial", 10, D3DFONT_BOLD);
    
    		pMenu->SetTitle("ownor22 v1.0"); //<= EL TITULO DEL MENU!
    
    		pMenu->SetTitleColor(D3DCOLOR_ARGB(255,255,255,255)); //<= LOS COLORES DEL MENU
    
    		pMenu->SetupCredits("Thanks To ownor22"); //<= LOS CREDITOS, DADME CREDITOS! <<BLIPI>>
    
    		    pMenu->AddItem("player stuff",GlobalFolder, &PlayerFolder, 3, ITEM_FOLDER);
    			pMenu->AddItem("Speed",GlobalOpt, &Speed, 1, ITEM_NORMAL);
    			pMenu->AddItem("Water",GlobalOpt, &Water, 1, ITEM_NORMAL);
    			pMenu->AddItem("Premium",GlobalOpt1, &CHPremium, 3, ITEM_NORMAL);
    			pMenu->AddItem("NFD",GlobalOpt, &NFD, 1, ITEM_NORMAL);		
    			pMenu->AddItem("Superjump",GlobalOpt, &Superjump, 1, ITEM_NORMAL);
    			pMenu->AddItem("Aim Related",GlobalFolder, &PlayerFolder, 3, ITEM_FOLDER);
    			pMenu->AddItem("Recoil",GlobalOpt, &Recoil, 1, ITEM_NORMAL);
    			pMenu->AddItem("Spread",GlobalOpt, &Spread, 1, ITEM_NORMAL);
    			pMenu->AddItem("Fast A/H/F/R",GlobalFolder, &PlayerFolder, 3, ITEM_FOLDER);
                   pMenu->AddItem("FastFlag",GlobalOpt, &FastFlag, 1, ITEM_NORMAL);
    			pMenu->AddItem("FastMedic",GlobalOpt, &FastMedic, 1, ITEM_NORMAL);
    			pMenu->AddItem("FastAmmo",GlobalOpt, &FastAmmo, 1, ITEM_NORMAL);
    			pMenu->AddItem("FastRepair",GlobalOpt, &FastRepair, 1, ITEM_NORMAL);
    
    			pMenu->AddItem("Settings",GlobalFolder, &SettingsFolder, 1, ITEM_FOLDER);
    			pMenu->AddItem("Move Menu",GlobalOpt, &MoveM, 1, ITEM_NORMAL, eMove);
    			pMenu->AddItem("Trans",sTrans, &Trans, 10, ITEM_NORMAL, eTrans);
    			pMenu->AddItem("Fps",GlobalOpt, &Fps, 1, ITEM_NORMAL, eFps);
    			pMenu->AddItem("Date",GlobalOpt, &dDate, 1, ITEM_NORMAL, eDate);
    			pMenu->AddItem("Credits",GlobalOpt, &Credits, 1, ITEM_NORMAL, eCredits);
    
    			pMenu->AddItem("",GlobalNull, &NullPointer, 0, ITEM_MENU_BREAK);
    
    		Init = true;
    	}
    
    	if(Init){
    			pMenu->MenuNav();
    			pMenu->DrawMenu();
    	} 
    
    
    	DWORD dwPlayerPtr = *(DWORD*)ADR_PLAYERPTR; 
    	DWORD dwServerPointer = *(DWORD*)ADR_SERVERPTR;// <- In game
    	if(dwPlayerPtr != 0)
    
    	{
    
    			if(GetAsyncKeyState(VK_CONTROL))
    	{
    			if(Superjump){
    			  *(float*)(dwPlayerPtr+OFS_X) = 2000.0F;
    			     }
    				 }
    			if(FastFlag)
    				*(float*)ADR_FASTFLAG = 10.0F;
    	}
                   if(FastMedic)
    				*(float*)ADR_FASTMEDIC = 10.0F;
        {
                   if(FastAmmo)
    				*(float*)ADR_FASTAMMO = 10.F;
    	}
    	        if(FastRepair)
    		        *(float*)ADR_FASTREPAIR = 10.0F;
    	{
    		    if(Water)
    				*(float*)ADR_WATER = 0;
    	}
                   if(Speed)
    				*(float*)ADR_SPEED = 1;
        {
    	        if (CHPremium==1){*(int*)(dwServerPointer+OFS_PREMIUM) = 3;}
    		    if (CHPremium==2){*(int*)(dwServerPointer+OFS_PREMIUM) = 2;}
    			if (CHPremium==3){*(int*)(dwServerPointer+OFS_PREMIUM) = 1;}
    	}
    	        if(NFD)
    				*(float*)(dwPlayerPtr+OFS_NFD) = -35000.0F;
        {
    	        if(Recoil)
    			    *(float*)(dwPlayerPtr + OFS_NORECOIL1) = 0;
    				*(float*)(dwPlayerPtr + OFS_NORECOIL2) = 0;
    				*(float*)(dwPlayerPtr + OFS_NORECOIL3) = 0;
    	}
                   if(Spread)
    				*(float*)(ADR_NOSPREAD) = 0;
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    	PreReset();
       _asm popad;
    
       return pPresent( pDevice, pSourceRect, pDestRect, hDestWindowOverride, pDirtyRegion );
    }
    HRESULT WINAPI myEndScene(LPDIRECT3DDEVICE8 pDevice)
    {
       _asm pushad;
    
       _asm popad;
    
       return pEndScene(pDevice);
    }
    HRESULT WINAPI myReset (LPDIRECT3DDEVICE8 pDevice,D3DPRESENT_PARAMETERS* pPresentationParameters)
    {
       _asm pushad;
    
       _asm popad;
    
       return pReset(pDevice,pPresentationParameters);
    }
    
    int Main_Routine (void)
    {
       HMODULE D3D8BASE = NULL;
       for (;D3D8BASE == NULL;Sleep(100))
       D3D8BASE = LoadLibraryA("d3d8.dll");
       DWORD* VTableHook = 0;                  
       DWORD hD3D8 = (DWORD)GetModuleHandleA("d3d8.dll");
       DWORD VIRTUALTABLE = FindPattern(hD3D8, 0x128000, (PBYTE)"\xnub\x06\x00\x00\x00\x00\x89\x86\x00\x00\x00\x00\x89\x86", "xx????xx????xx");
       memcpy(&VTableHook, (void*)(VIRTUALTABLE+2), 4);
    
    pReset				  = (oReset)               DetourCreate((PBYTE)VTableHook[14], (PBYTE)myReset, DETOUR_TYPE_HACKSHIELD, 0);
    //	pBeginScene			  = (oBeginScene)          DetourCreate((PBYTE)VTableHook[34], (PBYTE)myBeginScene, DETOUR_TYPE_HACKSHIELD, 0);
    pEndScene			  = (oEndScene)            DetourCreate((PBYTE)VTableHook[35], (PBYTE)myEndScene, DETOUR_TYPE_HACKSHIELD, 0);
    //	pDrawIndexedPrimitive = (oDrawIndexedPrimitive)DetourCreate((PBYTE)VTableHook[71], (PBYTE)myDrawIndexedPrimitive, DETOUR_TYPE_JMP, 0);
    //	pSetStreamSource      = (oSetStreamSource)     DetourCreate((PBYTE)VTableHook[83], (PBYTE)mySetStreamSource, DETOUR_TYPE_JMP, 0);
    //	pSetTransform		  = (oSetTransform)		   DetourCreate((PBYTE)VTableHook[37], (PBYTE)mySetTransform, DETOUR_TYPE_HACKSHIELD, 0);
    pPresent			  = (oPresent)			   DetourCreate((PBYTE)VTableHook[15], (PBYTE)myPresent, DETOUR_TYPE_HACKSHIELD,0);
    
       return 0;
    }
    
    BOOL WINAPI DllMain ( HMODULE hDll, DWORD dwReason, LPVOID lpReserved )
    {
       DisableThreadLibraryCalls(hDll);
    
       if ( dwReason == DLL_PROCESS_ATTACH )
       {        	
           CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)Main_Routine, NULL, NULL, NULL);	
       }
       return TRUE;

     

    can any1 see what i did wrong i get no errors btw.

    thank you

    Edited by Maxn
    For better reading a Codebox...
    Link to comment
    Share on other sites

    If there isn't any errors what is happening with it? (or not happening)

     

    lol if i knew than i would'nt ask O.o

    Link to comment
    Share on other sites

    • 2 weeks later...

    Do some logging.

    Are you not hooking something correctly?

    Or are the offsets wrong?

    Maybe you need to do some NULL or ingame checks.

    Link to comment
    Share on other sites

    Guest
    This topic is now closed to further replies.
     Share

    • Recently Browsing   0 members

      • No registered users viewing this page.
    ×
    ×
    • Create New...