
Originally Posted by
Froomz
if(bSilent && !bAimStep)
{
auto pWeapon = G::LocalPlayer->GetWeapon( );
float flServerTime = G::LocalPlayer->GetTickBase( ) * I::Globals->interval_per_tick;
if(pWeapon && pWeapon->GetNextPrimaryAttack( ) > flServerTime) return;
}
static Angle angAimAngles;
static int iClosestIndex;
iClosestIndex = Aim::ClosestAngle( angAimAngles );
if(iClosestIndex != -1)
{
G::Aimbotting = true;
angAimAngles.x -= (G::LocalPlayer->GetPunch( ).x * 2.f);
angAimAngles.y -= (G::LocalPlayer->GetPunch( ).y * 2.f);
bool bShouldAutoShoot = false;;
if(bSilent) FixMove->Start( );
if(bSmooth)
G::UserCmd->viewangles = (Aim::Smooth( G::UserCmd->viewangles, angAimAngles, flSmoothness ));
else
{
if(true)//bAimStep)
{
Angle angNextAngle;
bool bFinished = Aim::AimStep( G::LastAngle, angAimAngles, angNextAngle );
G::UserCmd->viewangles = angNextAngle;
G::LastAngle = angNextAngle;
if(bFinished) bShouldAutoShoot = true;
}
else
{
G::UserCmd->viewangles = angAimAngles;
bShouldAutoShoot = true;
}
}
if(bSilent) FixMove->End( );
if(bShouldAutoShoot && bAutoShoot && (!bHitChance || (pWeapon && (1.0f - pWeapon->GetAccuracyPenalty( )) * 100.f >= flHitChanceAmt)))
{
G::UserCmd->buttons |= IN_ATTACK;
}
if(bAutoStop)
{
G::UserCmd->forwardmove = 0;
G::UserCmd->sidemove = 0;
G::UserCmd->upmove = 0;
}
if(bAutoCrouch)
{
G::UserCmd->buttons |= IN_DUCK;
}
}
}
You shouldn't code with your CTRL, C, and P keys. Bad skid. Much disappointment.
This is copy-pasta taken from A5's ****** for his Gamerfood_CSGO hack.
Don't believe me? Look at the code from him in bold below:
Code:
if(bSilent) FixMove->Start( );
Code:
auto pWeapon = G::LocalPlayer->GetWeapon( );
float flServerTime = G::LocalPlayer->GetTickBase( ) * I::Globals->interval_per_tick;
Code:
if(true)//bAimStep)
{
Angle angNextAngle;
bool bFinished = Aim::AimStep( G::LastAngle, angAimAngles, angNextAngle );
G::UserCmd->viewangles = angNextAngle;
G::LastAngle = angNextAngle;
if(bFinished) bShouldAutoShoot = true;
}
Code:
if(bSilent) FixMove->End( );
if(bShouldAutoShoot && bAutoShoot && (!bHitChance || (pWeapon && (1.0f - pWeapon->GetAccuracyPenalty( )) * 100.f >= flHitChanceAmt)))
{
G::UserCmd->buttons |= IN_ATTACK;
}
if(bAutoStop)
{
G::UserCmd->forwardmove = 0;
G::UserCmd->sidemove = 0;
G::UserCmd->upmove = 0;
}
if(bAutoCrouch)
{
G::UserCmd->buttons |= IN_DUCK;
}
Here is the snippet taken directly from A5's ****** in RageBot.cpp. Relevant part is in bold.
Code:
void CRageBot::GoToTarget()
{
bool auto_shoot = false;
bool can_shoot = true;
bool reloading = false;
auto weapon = G::LocalPlayer->GetWeapon();
float server_time = G::LocalPlayer->GetTickBase() * I::Globals->interval_per_tick;
float next_shot = weapon->GetNextPrimaryAttack() - server_time;
if( next_shot > 0 )
can_shoot = false;
// just simple velocity prediction, not engine prediction
m_besthitbox = m_bestent->GetPredicted( m_besthitbox );
QAngle aim_angle = M::CalcAngle( G::LocalPlayer->GetEyePosition(), m_besthitbox );
aim_angle -= G::LocalPlayer->GetPunch() * 2.f;
// fixmove for silentaim
CFixMove fixMove;
if( Vars.Ragebot.Silent )
fixMove.Start();
if( Vars.Ragebot.Aimstep && can_shoot )
{
G::Aimbotting = true;
QAngle angNextAngle;
bool bFinished = Aimstep( G::LastAngle, aim_angle, angNextAngle, Vars.Ragebot.AimstepAmount );
G::UserCmd->viewangles = angNextAngle;
G::LastAngle = angNextAngle;
if( bFinished ) auto_shoot = true;
}
else if( can_shoot )
{
G::Aimbotting = true;
G::UserCmd->viewangles = aim_angle;
auto_shoot = true;
}
if( Vars.Ragebot.Silent )
fixMove.End();
if( Vars.Ragebot.AutoStop )
{
G::UserCmd->forwardmove = 0;
G::UserCmd->sidemove = 0;
G::UserCmd->upmove = 0;
G::UserCmd->buttons = 0;
}
if( Vars.Ragebot.AutoCrouch )
G::UserCmd->buttons |= IN_DUCK;
float hitchance = 75.f + ( Vars.Ragebot.HitChanceAmt / 4 );
if( auto_shoot && can_shoot && Vars.Ragebot.AutoFire && ( !Vars.Ragebot.HitChance || ( 1.0f - G::LocalPlayer->GetWeapon()->GetAccuracyPenalty() ) * 100.f >= hitchance ) )
G::UserCmd->buttons |= IN_ATTACK;
}
Taking code and switching up the order of which some things are ran doesn't make it any less copy-pasta.
You didn't even take time to rename some of the variables. You just left them exactly as they were when you pasted them in.






Terrible. The lack of effort is cringeworthy. 




