This Code No spread?

Posts 111 of 11 · Page 1 of 1
This Code No spread?
Since I was looking for no-spread for cod4 i found this.

Code:
struct FViewAngle 
{ 
	float Y; 
	float X; 
};

float WeaponViewAngleX = 0.0f;
float WeaponViewAngleY = 0.0f;

void GetWeaponViewAngles ( FViewAngle* pReturnAngle = NULL )
{
	WeaponViewAngleX = *( float* )0x79E770;
	WeaponViewAngleY = *( float* )0x79E76C;

	if ( pReturnAngle )
	{
		pReturnAngle->X = WeaponViewAngleX;
		pReturnAngle->Y = WeaponViewAngleY;
	}
}

void GetPlayerViewPoint ( Vector* pReturnViewPoint )
{
	DWORD CG_GetPlayerViewPoint = 0x456580;

	_asm
	{
		mov eax, 0x794474;
		mov edx, dword ptr ds: [ pReturnViewPoint ];
		push edx
		call dword ptr ds: [ CG_GetPlayerViewPoint ];
		add esp, 0x4
	}
}

void GetWeaponSpread ( weapon_t* pWeapon, float* WeaponSpread )
{
	DWORD CalculateWeaponSpread = 0x416C70;

	float MaxSpread = 0.0f;
	float BaseSpread = 0.0f;
	float SpreadMultiplier = 0.0f;

	_asm
	{
		mov ecx, dword ptr ds: [ pWeapon ];
		mov edx, 0x794474

		lea edi, dword ptr ds: [ BaseSpread ];
		lea esi, dword ptr ds: [ MaxSpread ];

		call dword ptr ds: [ CalculateWeaponSpread ];

		fld dword ptr ds: [ 0x84CAA0 ];
		fdiv qword ptr ds: [ 0x70AEE0 ];
		fstp dword ptr ds: [ SpreadMultiplier ];
	}

	*WeaponSpread = BaseSpread + ( ( MaxSpread - BaseSpread ) * SpreadMultiplier );
}

void TransformAngles ( FViewAngle* pViewAngles, Vector* pReturnVector, Vector* pESIReturnVector, Vector* pEDIReturnVector )
{
	DWORD TransformByAngles = 0x563460;

	_asm
	{
		mov edi, dword ptr ds: [ pEDIReturnVector ];
		mov esi, dword ptr ds: [ pESIReturnVector ];
		mov edx, dword ptr ds: [ pViewAngles ];

		mov ecx, dword ptr ds: [ pReturnVector ];
		push ecx;
		call dword ptr ds: [ TransformByAngles ];
		add esp, 0x4;
	}
}

void CalculateBulletLocation ( float* WeaponSpread, Vector* pReturnedVectorByAngle, Vector* pPlayerViewLocation, Vector* pReturnESIVector, Vector* pReturnEDIVector, Vector* pReturnBulletLocation )
{
	DWORD RepositionBulletLocation = 0x456470;

	Vector* pCopyOfReturnESIVector = new Vector;
	pCopyOfReturnESIVector->X = pReturnESIVector->X;
	pCopyOfReturnESIVector->Y = pReturnESIVector->Y;
	pCopyOfReturnESIVector->Z = pReturnESIVector->Z;

	float MaxFloatVector = 8192.0f;

	_asm
	{
		xor ecx, ecx;
		push ecx;
		fld dword ptr ds: [ MaxFloatVector ];
		fstp dword ptr ds: [ esp ];	

		mov edx, dword ptr ds: [ pReturnEDIVector ];
		push edx;

		mov eax, dword ptr ds: [ pReturnESIVector ];
		push eax;

		mov ecx, dword ptr ds: [ pCopyOfReturnESIVector ];
		push ecx;

		mov edx, dword ptr ds: [ pPlayerViewLocation ];
		push edx;

		push ecx;

		mov eax, dword ptr ds: [ WeaponSpread ];
		fld dword ptr ds: [ eax ];
		fstp dword ptr ds: [ esp ];		
		
		mov ecx, dword ptr ds: [ 0x794474 ];

		push ecx;
		mov edi, dword ptr ds: [ pReturnBulletLocation ];
		mov eax, dword ptr ds: [ pReturnedVectorByAngle ];

		call dword ptr ds: [ RepositionBulletLocation ];

		add esp, 0x1C
	}

	delete pCopyOfReturnESIVector;
}

Vector GetHitLocationBySpread ( float WeaponSpread )
{
	Vector pViewPoint = Vector( 0, 0, 0 );
	GetPlayerViewPoint( &pViewPoint );

	FViewAngle pWeaponAngles;
	GetWeaponViewAngles( &pWeaponAngles );

	Vector pReturnVector = Vector( 0, 0, 0 );
	Vector pReturnESIVector = Vector( 0, 0, 0 );
	Vector pReturnEDIVector = Vector( 0, 0, 0 );
	TransformAngles( &pWeaponAngles, &pReturnVector, &pReturnESIVector, &pReturnEDIVector );

	Vector pBulletLocation = Vector( 0, 0, 0 );
	CalculateBulletLocation( &WeaponSpread, &pReturnVector, &pViewPoint, &pReturnESIVector, &pReturnEDIVector, &pBulletLocation );

	return pBulletLocation;
}

void CalculateBulletDisplacement ( Vector* pBulletDisplacement )
{
	if ( !pLocalEntity || !pLocalClient )
		return;

	if ( pLocalClient->IsZoomed )
		return;

	weapon_t* pWeapon = GetWeapon( pLocalEntity->WeaponID );

	if ( !pWeapon )
		return;

	float WeaponSpread = 0.0f;
	GetWeaponSpread( pWeapon, &WeaponSpread );

	*pBulletDisplacement = ( GetHitLocationBySpread( WeaponSpread ) - GetHitLocationBySpread( 0.0f ) ) * -1;
}
it is, but do you know how to implement it into a hack?
Quote Originally Posted by jdslashv2 View Post
it is, but do you know how to implement it into a hack?
Nope Since Im not That Far Experinced yet.

you can use it.

Give me credits in that chase
I changed it from quote to code.
Quote Originally Posted by Moto View Post
I changed it from quote to code.
Ur random u know.
Quote Originally Posted by Moto View Post
I changed it from quote to code.
[highlight="C++"]struct FViewAngle
{
float Y;
float X;
};

float WeaponViewAngleX = 0.0f;
float WeaponViewAngleY = 0.0f;

void GetWeaponViewAngles ( FViewAngle* pReturnAngle = NULL )
{
WeaponViewAngleX = *( float* )0x79E770;
WeaponViewAngleY = *( float* )0x79E76C;

if ( pReturnAngle )
{
pReturnAngle->X = WeaponViewAngleX;
pReturnAngle->Y = WeaponViewAngleY;
}
}

void GetPlayerViewPoint ( Vector* pReturnViewPoint )
{
DWORD CG_GetPlayerViewPoint = 0x456580;

_asm
{
mov eax, 0x794474;
mov edx, dword ptr ds: [ pReturnViewPoint ];
push edx
call dword ptr ds: [ CG_GetPlayerViewPoint ];
add esp, 0x4
}
}

void GetWeaponSpread ( weapon_t* pWeapon, float* WeaponSpread )
{
DWORD CalculateWeaponSpread = 0x416C70;

float MaxSpread = 0.0f;
float BaseSpread = 0.0f;
float SpreadMultiplier = 0.0f;

_asm
{
mov ecx, dword ptr ds: [ pWeapon ];
mov edx, 0x794474

lea edi, dword ptr ds: [ BaseSpread ];
lea esi, dword ptr ds: [ MaxSpread ];

call dword ptr ds: [ CalculateWeaponSpread ];

fld dword ptr ds: [ 0x84CAA0 ];
fdiv qword ptr ds: [ 0x70AEE0 ];
fstp dword ptr ds: [ SpreadMultiplier ];
}

*WeaponSpread = BaseSpread + ( ( MaxSpread - BaseSpread ) * SpreadMultiplier );
}

void TransformAngles ( FViewAngle* pViewAngles, Vector* pReturnVector, Vector* pESIReturnVector, Vector* pEDIReturnVector )
{
DWORD TransformByAngles = 0x563460;

_asm
{
mov edi, dword ptr ds: [ pEDIReturnVector ];
mov esi, dword ptr ds: [ pESIReturnVector ];
mov edx, dword ptr ds: [ pViewAngles ];

mov ecx, dword ptr ds: [ pReturnVector ];
push ecx;
call dword ptr ds: [ TransformByAngles ];
add esp, 0x4;
}
}

void CalculateBulletLocation ( float* WeaponSpread, Vector* pReturnedVectorByAngle, Vector* pPlayerViewLocation, Vector* pReturnESIVector, Vector* pReturnEDIVector, Vector* pReturnBulletLocation )
{
DWORD RepositionBulletLocation = 0x456470;

Vector* pCopyOfReturnESIVector = new Vector;
pCopyOfReturnESIVector->X = pReturnESIVector->X;
pCopyOfReturnESIVector->Y = pReturnESIVector->Y;
pCopyOfReturnESIVector->Z = pReturnESIVector->Z;

float MaxFloatVector = 8192.0f;

_asm
{
xor ecx, ecx;
push ecx;
fld dword ptr ds: [ MaxFloatVector ];
fstp dword ptr ds: [ esp ];

mov edx, dword ptr ds: [ pReturnEDIVector ];
push edx;

mov eax, dword ptr ds: [ pReturnESIVector ];
push eax;

mov ecx, dword ptr ds: [ pCopyOfReturnESIVector ];
push ecx;

mov edx, dword ptr ds: [ pPlayerViewLocation ];
push edx;

push ecx;

mov eax, dword ptr ds: [ WeaponSpread ];
fld dword ptr ds: [ eax ];
fstp dword ptr ds: [ esp ];

mov ecx, dword ptr ds: [ 0x794474 ];

push ecx;
mov edi, dword ptr ds: [ pReturnBulletLocation ];
mov eax, dword ptr ds: [ pReturnedVectorByAngle ];

call dword ptr ds: [ RepositionBulletLocation ];

add esp, 0x1C
}

delete pCopyOfReturnESIVector;
}

Vector GetHitLocationBySpread ( float WeaponSpread )
{
Vector pViewPoint = Vector( 0, 0, 0 );
GetPlayerViewPoint( &pViewPoint );

FViewAngle pWeaponAngles;
GetWeaponViewAngles( &pWeaponAngles );

Vector pReturnVector = Vector( 0, 0, 0 );
Vector pReturnESIVector = Vector( 0, 0, 0 );
Vector pReturnEDIVector = Vector( 0, 0, 0 );
TransformAngles( &pWeaponAngles, &pReturnVector, &pReturnESIVector, &pReturnEDIVector );

Vector pBulletLocation = Vector( 0, 0, 0 );
CalculateBulletLocation( &WeaponSpread, &pReturnVector, &pViewPoint, &pReturnESIVector, &pReturnEDIVector, &pBulletLocation );

return pBulletLocation;
}

void CalculateBulletDisplacement ( Vector* pBulletDisplacement )
{
if ( !pLocalEntity || !pLocalClient )
return;

if ( pLocalClient->IsZoomed )
return;

weapon_t* pWeapon = GetWeapon( pLocalEntity->WeaponID );

if ( !pWeapon )
return;

float WeaponSpread = 0.0f;
GetWeaponSpread( pWeapon, &WeaponSpread );

*pBulletDisplacement = ( GetHitLocationBySpread( WeaponSpread ) - GetHitLocationBySpread( 0.0f ) ) * -1;
}[/highlight]

This you mean?

.
Quote Originally Posted by Shadeyz346 View Post


[highlight="C++"]struct FViewAngle
{
float Y;
float X;
};

float WeaponViewAngleX = 0.0f;
float WeaponViewAngleY = 0.0f;

void GetWeaponViewAngles ( FViewAngle* pReturnAngle = NULL )
{
WeaponViewAngleX = *( float* )0x79E770;
WeaponViewAngleY = *( float* )0x79E76C;

if ( pReturnAngle )
{
pReturnAngle->X = WeaponViewAngleX;
pReturnAngle->Y = WeaponViewAngleY;
}
}

void GetPlayerViewPoint ( Vector* pReturnViewPoint )
{
DWORD CG_GetPlayerViewPoint = 0x456580;

_asm
{
mov eax, 0x794474;
mov edx, dword ptr ds: [ pReturnViewPoint ];
push edx
call dword ptr ds: [ CG_GetPlayerViewPoint ];
add esp, 0x4
}
}

void GetWeaponSpread ( weapon_t* pWeapon, float* WeaponSpread )
{
DWORD CalculateWeaponSpread = 0x416C70;

float MaxSpread = 0.0f;
float BaseSpread = 0.0f;
float SpreadMultiplier = 0.0f;

_asm
{
mov ecx, dword ptr ds: [ pWeapon ];
mov edx, 0x794474

lea edi, dword ptr ds: [ BaseSpread ];
lea esi, dword ptr ds: [ MaxSpread ];

call dword ptr ds: [ CalculateWeaponSpread ];

fld dword ptr ds: [ 0x84CAA0 ];
fdiv qword ptr ds: [ 0x70AEE0 ];
fstp dword ptr ds: [ SpreadMultiplier ];
}

*WeaponSpread = BaseSpread + ( ( MaxSpread - BaseSpread ) * SpreadMultiplier );
}

void TransformAngles ( FViewAngle* pViewAngles, Vector* pReturnVector, Vector* pESIReturnVector, Vector* pEDIReturnVector )
{
DWORD TransformByAngles = 0x563460;

_asm
{
mov edi, dword ptr ds: [ pEDIReturnVector ];
mov esi, dword ptr ds: [ pESIReturnVector ];
mov edx, dword ptr ds: [ pViewAngles ];

mov ecx, dword ptr ds: [ pReturnVector ];
push ecx;
call dword ptr ds: [ TransformByAngles ];
add esp, 0x4;
}
}

void CalculateBulletLocation ( float* WeaponSpread, Vector* pReturnedVectorByAngle, Vector* pPlayerViewLocation, Vector* pReturnESIVector, Vector* pReturnEDIVector, Vector* pReturnBulletLocation )
{
DWORD RepositionBulletLocation = 0x456470;

Vector* pCopyOfReturnESIVector = new Vector;
pCopyOfReturnESIVector->X = pReturnESIVector->X;
pCopyOfReturnESIVector->Y = pReturnESIVector->Y;
pCopyOfReturnESIVector->Z = pReturnESIVector->Z;

float MaxFloatVector = 8192.0f;

_asm
{
xor ecx, ecx;
push ecx;
fld dword ptr ds: [ MaxFloatVector ];
fstp dword ptr ds: [ esp ];

mov edx, dword ptr ds: [ pReturnEDIVector ];
push edx;

mov eax, dword ptr ds: [ pReturnESIVector ];
push eax;

mov ecx, dword ptr ds: [ pCopyOfReturnESIVector ];
push ecx;

mov edx, dword ptr ds: [ pPlayerViewLocation ];
push edx;

push ecx;

mov eax, dword ptr ds: [ WeaponSpread ];
fld dword ptr ds: [ eax ];
fstp dword ptr ds: [ esp ];

mov ecx, dword ptr ds: [ 0x794474 ];

push ecx;
mov edi, dword ptr ds: [ pReturnBulletLocation ];
mov eax, dword ptr ds: [ pReturnedVectorByAngle ];

call dword ptr ds: [ RepositionBulletLocation ];

add esp, 0x1C
}

delete pCopyOfReturnESIVector;
}

Vector GetHitLocationBySpread ( float WeaponSpread )
{
Vector pViewPoint = Vector( 0, 0, 0 );
GetPlayerViewPoint( &pViewPoint );

FViewAngle pWeaponAngles;
GetWeaponViewAngles( &pWeaponAngles );

Vector pReturnVector = Vector( 0, 0, 0 );
Vector pReturnESIVector = Vector( 0, 0, 0 );
Vector pReturnEDIVector = Vector( 0, 0, 0 );
TransformAngles( &pWeaponAngles, &pReturnVector, &pReturnESIVector, &pReturnEDIVector );

Vector pBulletLocation = Vector( 0, 0, 0 );
CalculateBulletLocation( &WeaponSpread, &pReturnVector, &pViewPoint, &pReturnESIVector, &pReturnEDIVector, &pBulletLocation );

return pBulletLocation;
}

void CalculateBulletDisplacement ( Vector* pBulletDisplacement )
{
if ( !pLocalEntity || !pLocalClient )
return;

if ( pLocalClient->IsZoomed )
return;

weapon_t* pWeapon = GetWeapon( pLocalEntity->WeaponID );

if ( !pWeapon )
return;

float WeaponSpread = 0.0f;
GetWeaponSpread( pWeapon, &WeaponSpread );

*pBulletDisplacement = ( GetHitLocationBySpread( WeaponSpread ) - GetHitLocationBySpread( 0.0f ) ) * -1;
}[/highlight]

This you mean?

.
he meant that yes, but he didnt do it properly
Quote Originally Posted by Skyline. View Post


he meant that yes, but he didnt do it properly
The one i did is not made by [ CODE] [/CODE] shit .
Quote Originally Posted by Shadeyz346 View Post


The one i did is not made by [ CODE] [/CODE] shit .
shifty bugger
why should i give you credit when i found this years ago on another site?
Credits for that code goes to an other dude lol.
Posts 111 of 11 · Page 1 of 1
This thread is closed for replies.

Tags for this Thread

None

Need help?