QAngle oldView = cmd->viewangles; float oldSidemove = cmd->sidemove; float oldForwardmove = cmd->forwardmove; // Do all aimbot / nospread / norecoil stuff here DWORD dwEBP = NULL; __asm MOV dwEBP, EBP; BYTE* bSendPacket = ( BYTE* )( *( char** )dwEBP - 0x1 ); float flServerTime = ( float )*( int* )( ( DWORD )ME + offsets.m_nTickBase ) * g_pGlobals->interval_per_tick; float flNextPrimaryAttack = *( float* )( ( DWORD )weapon->GetBaseWeapon( ME ) + offsets.m_flNextPrimaryAttack ); bool bBulletTime = true; if( flNextPrimaryAttack > flServerTime ) bBulletTime = false; if( cmd->buttons & IN_ATTACK && bBulletTime ) { *bSendPacket = false; } else { *bSendPacket = true; cmd->viewangles = oldView; cmd->sidemove = oldSidemove; cmd->forwardmove = oldForwardmove; }
Announcement
Collapse
No announcement yet.
Perfect Silent Aim
Collapse
X
-
Perfect Silent Aim
Code:Tags: None
-
Guest
Re: Perfect Silent Aim
Correct way to use m_flNextPrimaryAttack:
PHP Code:float flServerTime = (float)*(int*)((DWORD)pLocal + Offsets::CBasePlayer__localdata__m_nTickBase) * Ptr::pGlobals->interval_per_tick;
float flNextPrimaryAttack = *(float*)((DWORD)pWeapon + Offsets::CBaseCombatWeapon__LocalActiveWeaponData__m_flNextPrimaryAttack);
bool bBulletTime = true;
if(flNextPrimaryAttack > flServerTime)
bBulletTime = false;
-
Comment
-
Re: Perfect Silent Aim
Originally posted by ViRTUS View Post
Quoted in case of edit.lolmaoman: Germans are born with a lifetime x22 login engraved into their birth certificates. True story.
Comment
-
Re: Perfect Silent Aim
Originally posted by how02 View PostDon't forget to fix for glock/famas burstmodePHP Code:// Determine if we're burst firing.
if ( (m_iWeaponID == WEAPON_GLOCK18) || (m_iWeaponID == WEAPON_FAMAS) ) {
iBurstShotsRemaining = m_pWeapon->GetBurstShotsRemaining();
if ( iBurstShotsRemaining > 0 ) {
flNextBurstShot = m_pWeapon->GetNextBurstShot();
if ( (flNextBurstShot > 0.0f) && (m_flCurTime >= flNextBurstShot) )
m_bBursting = true;
}
}
PHP Code:int CCSWeapon::GetBurstShotsRemaining ( void )
{
int iWeaponID = GetWeaponID();
if ( iWeaponID == WEAPON_FAMAS ) {
return *(int*)((char*)this + g_pNetVars->m_iBurstShotsRemaining);
} else if ( iWeaponID == WEAPON_GLOCK18 ) {
return *(int*)((char*)this + g_pNetVars->m_iBurstShotsRemaining - 0x8);
}
return 0;
}
PHP Code:float CCSWeapon::GetNextBurstShot ( void )
{
int iWeaponID = GetWeaponID();
if ( iWeaponID == WEAPON_FAMAS ) {
return *(float*)((char*)this + g_pNetVars->m_iBurstShotsRemaining + 0x4);
} else if ( iWeaponID == WEAPON_GLOCK18 ) {
return *(float*)((char*)this + g_pNetVars->m_iBurstShotsRemaining - 0x4);
}
return 0.0f;
}
Comment
-
Guest
Re: Perfect Silent Aim
Originally posted by phallus View Post...
PHP Code:if(iWeapon == Weapon_glock) {
bool bBurstMode = *(bool*)((DWORD)pWeapon + Offsets::CWeaponGlock__m_bBurstMode);
if(bBurstMode) {
int iBurstShotsRemaining = *(int*)((DWORD)pWeapon + Offsets::CWeaponGlock__m_iBurstShotsRemaining);
if(iBurstShotsRemaining > 0)
bBulletTime = true;
}
}
else if(iWeapon == Weapon_famas) {
bool bBurstMode = *(bool*)((DWORD)pWeapon + Offsets::CWeaponFamas__m_bBurstMode);
if(bBurstMode) {
int iBurstShotsRemaining = *(int*)((DWORD)pWeapon + Offsets::CWeaponFamas__m_iBurstShotsRemaining);
if(iBurstShotsRemaining > 0)
bBulletTime = true;
}
}
Originally posted by wav View PostflNextPrimaryAttack/TickBase is only updated during prediction which means this code may miss a whole tick before you fire again
Comment
-
Re: Perfect Silent Aim
Originally posted by how02 View Post
PHP Code:if(iWeapon == Weapon_glock) {
bool bBurstMode = *(bool*)((DWORD)pWeapon + Offsets::CWeaponGlock__m_bBurstMode);
if(bBurstMode) {
int iBurstShotsRemaining = *(int*)((DWORD)pWeapon + Offsets::CWeaponGlock__m_iBurstShotsRemaining);
if(iBurstShotsRemaining > 0)
bBulletTime = true;
}
}
else if(iWeapon == Weapon_famas) {
bool bBurstMode = *(bool*)((DWORD)pWeapon + Offsets::CWeaponFamas__m_bBurstMode);
if(bBurstMode) {
int iBurstShotsRemaining = *(int*)((DWORD)pWeapon + Offsets::CWeaponFamas__m_iBurstShotsRemaining);
if(iBurstShotsRemaining > 0)
bBulletTime = true;
}
}
Originally posted by wav View PostflNextPrimaryAttack/TickBase is only updated during prediction which means this code may miss a whole tick before you fire againLast edited by phallus; 07-03-2013, 03:58 PM.
Comment
-
Re: Perfect Silent Aim
Originally posted by how02 View Post
bBulletTime may be true the next tick after you fired but atleast it won't slow down your fire rate.
Originally posted by phallus View Postso emulate/call prediction/do your ghetto shit; not hard
fNextPredictedPrimaryAttack = TicksToTime ( NextFireTick );
if ( flNextPredictedPrimaryAttack >= flNextPrimaryAttack )
{
// now we know the exact next tick we can fire on
}
CurrentTick = CurrentTickBase + NumberOfCommandsQueued;
flTime = TicksToTime ( CurrentTick );
if ( flTime >= flNextPrimaryAttack )
{
// get to the chopper
}Last edited by wav; 07-03-2013, 08:51 PM.
Comment
-
Re: Perfect Silent Aim
Originally posted by keybodeCredits: how02
and since source 2007 leak whats even the point of posting all this? you're only going to enable fools that are either too dumb or busy collecting payhake money
Comment
-
Re: Perfect Silent Aim
Originally posted by extern4ever View Postwut? this shit was done by badst3r and avitamin 2 years ago (maybe someone was even faster?) then in these 2 years it got spreaded like aids (blame the gay furry if you know what i mean)
and since source 2007 leak whats even the point of posting all this? you're only going to enable fools that are either too dumb or busy collecting payhake money
wut? all cars was done by Carl Benz 137 years ago
Comment
-
Re: Perfect Silent Aim
Originally posted by wav View PostDon't be a padhole.
Hopefully Valve updates like they in GoldSrc when fags couldn't figure out offset to HUD_PostRunCmd return address for their jumpgate hooking. Whole world of bitching was had.
Good times.
Comment
Comment