WarRock EU - Code Snippets

03/26/2011 12:22 Yazzn˜#2851
Code:
struct tStatus
{
	bool bPatched;
	bool bSaved;
};

template <typename Type>

struct tValues
{
	unsigned long Adr;
	Type OffValue;
	Type OnValue;
};

template <typename Type>

class tMemPatch
{
public:
	tValues<Type> Values;
	tStatus Status;

	tMemPatch( unsigned long /* used unsigned long instead of DWORD -> i don't need to include windows.h */ Adr, Type value )
	{
		Values.Adr = Adr;
		Values.OnValue = value;
	}

	void Patch( )
	{
		if( !Status.bSaved )
		{
			Values.OffValue = *(Type*)Values.Adr;
			Status.bSaved = true;
		}
		else if( !Status.bPatched )
		{
			*(Type*)Values.Adr = Values.OnValue;
			Status.bPatched = true;
		}
	}

	void Restore( )
	{
		if( Status.bSaved && Status.bPatched )
		{
			*(Type*)Values.Adr = Values.OffValue;
			Status.bPatched = false;
		}
	}
};
Usage:

Code:
tMemPatch <float> PatchName( 0xAB844F /* address */, 3 /* value */ );

// to modify the address:
PatchName.Patch( );

// to restore the old value:
PatchName.Restore( );
03/26/2011 13:32 •~•Pr0Sk1ll•~•#2852
OMG Yazzn why stellste des Public -.-"
AntiSpam:
meine CrosshairSource + SizeSource
Code:
if(Crosshairsize == 1)
{
	int x = ( GetSystemMetrics( 0 ) / 2);
	int y = ( GetSystemMetrics( 1 ) / 2);
	D3DRECT rec = { x - 10, y, x + 10, y + 1};
	D3DRECT rec2 = { x, y - 10, x + 1, y + 10};  
		{
			if(Crosshair == 1)
			{
				pDevice->Clear(1, &rec, D3DCLEAR_TARGET, RED,0,0); 
			        pDevice->Clear(1, &rec2, D3DCLEAR_TARGET, RED,0,0); 

				}
			}
		}
made by me

€:
um Farbe zu ändern einfach RED mit einer anderen definierten Farbe tauschen
oda via switch source mehrer Cases machen mit Farben.
Um die Größe zu ändern einfach
Code:
	D3DRECT rec = { x - 10, y, x + 10, y + 1};
	D3DRECT rec2 = { x, y - 10, x + 1, y + 10};
da die Zahlen[10,1,10] #ndern in was ihr wollt :D

Give Creditz
03/26/2011 13:39 r a z e r _#2853
Quote:
Originally Posted by •~•Pr0Sk1ll•~• View Post
OMG Yazzn why stellste des Public -.-"
die patchclass ist allenfalls basic und nicht gerade sehr umfangreich.. sowas zu coden dauert ~5min.

Quote:
Originally Posted by •~•Pr0Sk1ll•~• View Post
AntiSpam:
meine CrosshairSource + SizeSource
Code:
if(Crosshairsize == 1)
{
	int x = ( GetSystemMetrics( 0 ) / 2);
	int y = ( GetSystemMetrics( 1 ) / 2);
	D3DRECT rec = { x - 10, y, x + 10, y + 1};
	D3DRECT rec2 = { x, y - 10, x + 1, y + 10};  
		{
			if(Crosshair == 1)
			{
				pDevice->Clear(1, &rec, D3DCLEAR_TARGET, RED,0,0); 
			        pDevice->Clear(1, &rec2, D3DCLEAR_TARGET, RED,0,0); 

				}
			}
		}
bullshit... IDirect3DDevice9::Clear erlaubt keine transparenz und laggt ohne Ende, das benutzen von Sprites oder das zeichnen mit DrawPrimitiveUP ist einfach besser ;)

Btw.. sag nicht, dass dies deine Source ist, wenn man das googlet findet man exakt das, nur 2 Jahre älter. No Comment.
03/26/2011 13:41 •~•Pr0Sk1ll•~•#2854
omg ich hab mir des selber ausgedacht -.-"
und oke wegen patch Source meine is umfangreicher+besser
und mein D3D Crosshair laggt kein bisschen
€: Razer gib mir den namen was ich suchen soll!
des hab ich selber gecodet ohne iwo zu guckn!!!
03/26/2011 13:43 Norbert8#2855
Quote:
Originally Posted by Yazzn˜ View Post
Code:
struct tStatus
{
	bool bPatched;
	bool bSaved;
};

template <typename Type>

struct tValues
{
	unsigned long Adr;
	Type OffValue;
	Type OnValue;
};

template <typename Type>

class tMemPatch
{
public:
	tValues<Type> Values;
	tStatus Status;

	tMemPatch( unsigned long /* used unsigned long instead of DWORD -> i don't need to include windows.h */ Adr, Type value )
	{
		Values.Adr = Adr;
		Values.OnValue = value;
	}

	void Patch( )
	{
		if( !Status.bSaved )
		{
			Values.OffValue = *(Type*)Values.Adr;
			Status.bSaved = true;
		}
		else if( !Status.bPatched )
		{
			*(Type*)Values.Adr = Values.OnValue;
			Status.bPatched = true;
		}
	}

	void Restore( )
	{
		if( Status.bSaved && Status.bPatched )
		{
			*(Type*)Values.Adr = Values.OffValue;
			Status.bPatched = false;
		}
	}
};
Usage:

Code:
tMemPatch <float> PatchName( 0xAB844F /* address */, 3 /* value */ );

// to modify the address:
PatchName.Patch( );

// to restore the old value:
PatchName.Restore( );
die c&p stürzen sich alle drauf
03/26/2011 13:46 r a z e r _#2856
Es gibt public bases die das exakt so aufgebaut drin haben. Rly, no comment. Alleine schon das "Give Creditz" regt auf.. B2T: DrawPrimitiveUP regelt ;)
03/26/2011 13:49 Yazzn˜#2857
Quote:
omg ich hab mir des selber ausgedacht -.-"
und oke wegen patch Source meine is umfangreicher+besser
und mein D3D Crosshair laggt kein bisschen
I.) Umfangreicher? Patch Class = Speichern / Verändern / Zurücksetzen = All you need - Achso "deine" hat noch eine "Play Justin Biebers Music" Funktion?

Cool Story Bro.

II.) "Dein" D3D Crosshair laggt kein bisschen ?

Ahm... 2 Linien gezeichnet mit IDirect3DDevice9::Clear kann auch nicht laggen.
03/26/2011 13:51 r a z e r _#2858
Zeichne mal ein paar mehr Linien damit und erzähl mir, dass du keinen FPS Drop hast. Dann kriegste ein "made my day"...
03/26/2011 13:56 CyberRazzor#2859
PlantAnyWhere ohne bug...

Quote:
if (PlantAnyWhere)
{
if(memcmp((void *)ADR_MEMCROSSHAIR, (void *)"\x14", 1))
{
*(BYTE*)(ADR_MEMPLANTANYWHERE) = 0x0;
}
else
{
if (GetAsyncKeyState('F'))
{
if (dwPlayer!=0)
{
*(BYTE*)(ADR_MEMPLANTANYWHERE) = 0x1;
}
}
else if (!GetAsyncKeyState('F'))
{
*(BYTE*)(ADR_MEMPLANTANYWHERE) = 0x0;
}
}
}
else
{
*(BYTE*)(ADR_MEMPLANTANYWHERE) = 0x0;
}



Danke YaZZn für die tolle Patch Class funkt gut :awesome:
Finde aber sieht bissien aus wie system32 seine egal xP
03/26/2011 14:02 •~•Pr0Sk1ll•~•#2860
omg razer+Yazzn ihr könnt echt nur leute fertig machen oder?
2. Yazzn Justin Bieber = Spast ich HASSE ihn!
3. MAN ICH HAB DES EHRLICH SELBST GEMACHT bin kein C&P NUB!!!!
und um ehrlich zu sein ist meine patch Source größer! aber egal wenndes net glaubst geb ich dir gerne TV Daten
03/26/2011 14:11 .Eragon#2861
Leute....schaltet mal einen Gang runter....diese Streitereien sind meiner Meinung nach ziemlich...naja... :p
03/26/2011 14:15 CyberRazzor#2862
YaZZn / razzer

Wenn ihr die meinung seid jemand ist c&p dann behaltet es für euch und macht sie doch nicht immer runer :rolleyes:
03/26/2011 14:19 Norbert8#2863
Quote:
Originally Posted by CyberRazzor View Post
YaZZn / razzer

Wenn ihr die meinung seid jemand ist c&p dann behaltet es für euch und macht sie doch nicht immer runer :rolleyes:
Proskill ist doch selber schuld...
03/26/2011 14:21 •~•Pr0Sk1ll•~•#2864
OMG!
Norbert du kannst ruhig sein ich hab dir
geholfen bei deinem Hack!...Kameradenschwein
nur so ich hab mir des wirklich selber ausgedacht
03/26/2011 14:23 .Eragon#2865
boah ey...jetzt hört endlich damit auf !!

Das nervt jetzt wirklich -.-