Sebenarnya jika di tulis / di jelaskan dari keseluruhan source nya akan amat panjang, jadi saya rangkum
Step 1 : Siapkan Alat Perang
- MSVC++ 2008 / 2010
- Windows DirectX 9.0 SDK Update - (Summer 2004) (Recommeded)
- 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 hacknyaPertama, 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 wallhackKita 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 wirechamsif(&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
Credit :
CodeDemon for Base SourceKuya.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:
Untuk mengetahui alamat game yg akan di hack gimana gan?
Posting Komentar