Well after making my first D3D C++ trainer i decided to make a tutorial for it.
I will try to be as friendly as possible in this tutorial.
This tutorial is for building a D3D menu in a DLL.
D3D Menu:
First of all we need to have some C++ knowledge.
Second thing we need its a D3D base menu, or your own D3D menu compatible with Directx 9(Mw3).
A Base menu: D3D Base Menu
![[Image: unledbkt.jpg]](http://img822.imageshack.us/img822/2207/unledbkt.jpg)
Memory Editing:
After getting a Menu for our trainer we need to know how to modify/read memory.
In our case the best ways to do this is using this functions(write memory):
You will need the <memory.h> or <string.h> header files.
void * memset ( void * ptr, int value, size_t num );
Explanation:
Fill block of memory;
Sets the first num bytes of the block of memory pointed by ptr to the specified value (interpreted as an unsigned char).
Parameters:
ptr - Pointer to the block of memory to fill.
value - Value to be set. The value is passed as an int, but the function fills the block of memory using the unsigned char conversion of this value.
num - Number of bytes to be set to the value.
*This function will be used to write values to a specified memory address.
![[Image: scaled.php?server=577&filename=memsettut...res=medium]](http://desmond.imageshack.us/Himg577/scaled.php?server=577&filename=memsettuto.png&res=medium)
Example Showing the usage of memset.
NOP - (No Operation) this call essentially making it do nothing.
A simpler way to nop its using this:
Made by s0beit.
Usage Example:
![[Image: scaled.php?server=208&filename=nop.png&res=medium]](http://desmond.imageshack.us/Himg208/scaled.php?server=208&filename=nop.png&res=medium)
Menu Part:
Here is where you are going to put your memory modifications.
![[Image: scaled.php?server=560&filename=tuts.png&res=medium]](http://desmond.imageshack.us/Himg560/scaled.php?server=560&filename=tuts.png&res=medium)
*Remember that when putting a code here it will be insisde a loop.
I think this is enought for now because as i said you need to have some knowledge of C++, if anyone have other question just pm me.
Thanks Barata...
I will try to be as friendly as possible in this tutorial.
This tutorial is for building a D3D menu in a DLL.
D3D Menu:
First of all we need to have some C++ knowledge.
Second thing we need its a D3D base menu, or your own D3D menu compatible with Directx 9(Mw3).
A Base menu: D3D Base Menu
![[Image: unledbkt.jpg]](http://img822.imageshack.us/img822/2207/unledbkt.jpg)
Memory Editing:
After getting a Menu for our trainer we need to know how to modify/read memory.
In our case the best ways to do this is using this functions(write memory):
You will need the <memory.h> or <string.h> header files.
void * memset ( void * ptr, int value, size_t num );
Explanation:
Fill block of memory;
Sets the first num bytes of the block of memory pointed by ptr to the specified value (interpreted as an unsigned char).
Parameters:
ptr - Pointer to the block of memory to fill.
value - Value to be set. The value is passed as an int, but the function fills the block of memory using the unsigned char conversion of this value.
num - Number of bytes to be set to the value.
*This function will be used to write values to a specified memory address.
![[Image: scaled.php?server=577&filename=memsettut...res=medium]](http://desmond.imageshack.us/Himg577/scaled.php?server=577&filename=memsettuto.png&res=medium)
Example Showing the usage of memset.
NOP - (No Operation) this call essentially making it do nothing.
A simpler way to nop its using this:
Code:
void nop_(PVOID address, int bytes)
{
DWORD d, ds;
VirtualProtect(address, bytes, PAGE_EXECUTE_READWRITE, &d);
memset(address, NOP, bytes);
VirtualProtect(address,bytes,d,&ds);
}Made by s0beit.
Usage Example:
![[Image: scaled.php?server=208&filename=nop.png&res=medium]](http://desmond.imageshack.us/Himg208/scaled.php?server=208&filename=nop.png&res=medium)
Menu Part:
Code:
void TestThread() //Raising text if ON / OFF
{
if( hack1 == 1)
PrintText("Wallhack [ON] text will change color", 30, 200, GREEN, dMenu.pFont);
else
PrintText("Wallhack [ON] text will change color", 30, 200, RED, dMenu.pFont);
} //Customize itHere is where you are going to put your memory modifications.
![[Image: scaled.php?server=560&filename=tuts.png&res=medium]](http://desmond.imageshack.us/Himg560/scaled.php?server=560&filename=tuts.png&res=medium)
*Remember that when putting a code here it will be insisde a loop.
I think this is enought for now because as i said you need to have some knowledge of C++, if anyone have other question just pm me.
Thanks Barata...
Don't worry if things aren't the way you planned, in the end everything will solve itself...




