Tutorial Make D3D Menu Hack

Sebenarnya jika di tulis / di jelaskan dari keseluruhan source nya akan amat panjang, jadi saya rangkum

Step 1 : Siapkan Alat Perang
  1. MSVC++ 2008 / 2010
  2. Windows DirectX 9.0 SDK Update - (Summer 2004) (Recommeded)
  3. D3D Menu base source. Download disini  
Penjelasan
Buka Project MenuBase nya.
Liat di D3DBase.cpp :
//==================================================================
//Hack Vars
int hack1 = 1;
int hack2 = 0;
int hack3 = 0;
int hack4 = 1;
int hack5 = 0;
//==================================================================
 
itu adalah deklarasi untuk menambahkan Hack.  
Misal saya buat :
int Wallhack = 1
 
#Next
void DemonMenu::BuildMenu(char * menuname, int x, int y, int h, int w, DWORD TITLECOL, DWORD BACKCOLOR, DWORD BORDERCOLOR, LPDIRECT3DDEVICE9 pDevice)
{
    if(GetAsyncKeyState(VK_INSERT)&1)show=(!show);
    if(!show) {
        DrawBox(0,0, w, 20, BACKCOLOR, BORDERCOLOR, pDevice);
        PrintText(menuname, 5, 2, TITLECOL, pFont);
        return;
    }

    DrawBox(x,y, w, h, BACKCOLOR, BORDERCOLOR, pDevice);
    PrintText(menuname, x+10, y+2, TITLECOL, pFont);
    CreateItem(1,"Hack 1", &hack1);
    CreateItem(2,"Hack 2", &hack2); 
    CreateItem(3,"Hack 3", &hack3);
    CreateItem(4,"Hack 4", &hack4);
    CreateItem(5,"Hack 5", &hack5);
    RenderMenu();
}  
 
Lihat di bagian ini :
CreateItem(1,"Hack 1", &hack1);
itu untuk menambahkan hack yang akan tampil ke layar.
Nah, lihat di bagian ini "&hack1" itu adalah fungsi pemanggil dari "int hack1 = 1;"
Misal saya buat :
CreateItem(1,"Hack Penglihatan Batin 1", &Wallhack);  
Keterangan :
"Hack Penglihatan Batin" = text yang muncul ke layar
"&Wallhack" = fungsi pemanggil dari "int Wallhack = 1"


Step 2 : Fungsi Hack
Karena di basenya hanya berisi fungsi menu saja, maka kita buat sendiri fungsi hacknya
Pertama, Simpan ini di Globals : 
typedef HRESULT (WINAPI* tDrawIndexedPrimitive)(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE PrimType,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount);
tDrawIndexedPrimitive oDrawIndexedPrimitive = NULL;
UINT Stride = 0;
Trus Masukan Fungsi Wallhack ini :
HRESULT WINAPI hkDrawIndexedPrimitive(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE PrimType,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount)
{
    if(&Wallhack) //Fungsi pemanggil dari "int Wallhack = 1"
    {
    if(Stride == 62) // Stride dari Stride Logger, Lebih Jelasnya Lihat di Page 2 http://www.kaskus.us/showpost.php?p=608381156&postcount=2
    {
            pDevice->SetRenderState( D3DRS_ZENABLE,false );
            pDevice->SetRenderState( D3DRS_FILLMODE,D3DFILL_SOLID ); // Membuat Si pemain tranparant ke dingding
            oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
                 pDevice->SetRenderState( D3DRS_ZENABLE, true );
            pDevice->SetRenderState( D3DRS_FILLMODE,D3DFILL_SOLID ); // Membuat Si pemain tranparant ke dingding
            
     }
    }

    return oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);

}  
Misal kita tambahakan Hacknya selain wallhack
Kita buat lg :
int Wallhack = 1 // yang tadi
int Wireframe = 1 //Nambah hack
int Wirechams = 1 //Nambah Hack 
ini juga :
CreateItem(1,"Hack Penglihatan Batin", &Wallhack); // yang tadi
CreateItem(1,"Wiresableng", &Wireframe); // Nambah menu
CreateItem(1,"Buto ijo", &Wirechams); // Nambah menu  
Buat fungsi hack untuk Wireframe dan wirechams
if(&Wireframe) // Lebih jelasnya lihat disni http://svjbrothers.blogspot.com/2012/04/tutorial-make-wallhack-chams.html
{
    if(Stride == 62)
    {
        pDevice->SetRenderState( D3DRS_ZENABLE,false );
        pDevice->SetRenderState( D3DRS_FILLMODE, D3DFILL_WIREFRAME );
        oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
             pDevice->SetRenderState( D3DRS_ZENABLE, true );
        pDevice->SetRenderState( D3DRS_FILLMODE,D3DFILL_SOLID );
            
    }  
if(&Wirechams)  // Lebih jelasnya lihat disni http://svjbrothers.blogspot.com/2012/04/tutorial-make-wallhack-chams.html
    { 
        if(Stride == 62)
        {      
            pDevice->SetRenderState( D3DRS_FILLMODE, D3DFILL_SOLID );
            }  
            {
            pDevice->SetTexture(0, texPurple);
            pDevice->SetRenderState( D3DRS_FILLMODE, D3DFILL_WIREFRAME );
            } 
        else
        {         
            pDevice->SetRenderState( D3DRS_FILLMODE, D3DFILL_SOLID );
        }  
    } 
NB : Bila ingin menambahkan hack, ikuti saja step-step tadi 



SELESAI


"Jangan segan untuk bertanya, bila agan kesulitan silahkan reply, maka akan saya bantu semaksimal mungkin

Credit :
CodeDemon for Base Source
Kuya.Gaol a.k.a iephonkvj For Tutorial 


"Jangan segan untuk bertanya, bila agan kesulitan silahkan tinggalkan komentar di bawah, maka akan saya bantu semaksimal mungkin "

1 komentar:

heru herawan mengatakan...

Untuk mengetahui alamat game yg akan di hack gimana gan?

Poskan Komentar

  • Digg
  • del.icio.us
  • StumbleUpon
  • Yahoo! Buzz
  • Technorati
  • Facebook
  • TwitThis
  • MySpace
  • LinkedIn
  • Google
  • Reddit
  • Netvibes
Design by eckoCS1Copyright © 2010 Cheater Baturaja | Powered by Blogger