summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornavewindre <boneyaard@gmail.com>2018-12-09 17:12:07 +0100
committernavewindre <boneyaard@gmail.com>2018-12-09 17:12:07 +0100
commitdd9bbd12ef353f270d95ba733e1ef465d15d2b44 (patch)
treebfbb407601eff0bb8547f713688e665944a6e03b
parent430f93006fb8ac7c37c8cfc984d3d02b9f7dc693 (diff)
hack works now please go fix rest
-rw-r--r--cheat/internal_rewrite/CInput.hpp1
-rw-r--r--cheat/internal_rewrite/ClientClass.hpp530
-rw-r--r--cheat/internal_rewrite/c_base_player.cpp15
-rw-r--r--cheat/internal_rewrite/c_base_player.hpp4
-rw-r--r--cheat/internal_rewrite/c_base_weapon.hpp124
-rw-r--r--cheat/internal_rewrite/create_move.cpp16
-rw-r--r--cheat/internal_rewrite/extra.cpp37
-rw-r--r--cheat/internal_rewrite/extra.hpp2
-rw-r--r--cheat/internal_rewrite/hooks.cpp24
9 files changed, 395 insertions, 358 deletions
diff --git a/cheat/internal_rewrite/CInput.hpp b/cheat/internal_rewrite/CInput.hpp
index 84802d3..a7c2127 100644
--- a/cheat/internal_rewrite/CInput.hpp
+++ b/cheat/internal_rewrite/CInput.hpp
@@ -12,6 +12,7 @@ struct verified_cmd_t {
class CInput {
void* pvftable; //0x00
+ char pad[ 0x8 ];
public:
bool m_fTrackIRAvailable; //0x04
bool m_fMouseInitialized; //0x05
diff --git a/cheat/internal_rewrite/ClientClass.hpp b/cheat/internal_rewrite/ClientClass.hpp
index fc1f140..d62ec55 100644
--- a/cheat/internal_rewrite/ClientClass.hpp
+++ b/cheat/internal_rewrite/ClientClass.hpp
@@ -2,260 +2,282 @@
#include "Valve/dt_common.h"
#include "Valve/dt_recv.h"
-enum ClassId_t {
- CAI_BaseNPC,
- CAK47,
- CBaseAnimating,
- CBaseAnimatingOverlay,
- CBaseAttributableItem,
- CBaseButton,
- CBaseCombatCharacter,
- CBaseCombatWeapon,
- CBaseCSGrenade,
- CBaseCSGrenadeProjectile,
- CBaseDoor,
- CBaseEntity_,
- CBaseFlex,
- CBaseGrenade,
- CBaseParticleEntity,
- CBasePlayer,
- CBasePropDoor,
- CBaseTeamObjectiveResource,
- CBaseTempEntity,
- CBaseToggle,
- CBaseTrigger,
- CBaseViewModel,
- CBaseVPhysicsTrigger,
- CBaseWeaponWorldModel,
- CBeam,
- CBeamSpotlight,
- CBoneFollower,
- CBreakableProp,
- CBreakableSurface,
- CC4,
- CCascadeLight,
- CChicken,
- CColorCorrection,
- CColorCorrectionVolume,
- CCSGameRulesProxy,
- CCSPlayer,
- CCSPlayerResource,
- CCSRagdoll,
- CCSTeam,
- CDEagle,
- CDecoyGrenade,
- CDecoyProjectile,
- CDynamicLight,
- CDynamicProp,
- CEconEntity,
- CEconWearable,
- CEmbers,
- CEntityDissolve,
- CEntityFlame,
- CEntityFreezing,
- CEntityParticleTrail,
- CEnvAmbientLight,
- CEnvDetailController,
- CEnvDOFController,
- CEnvParticleScript,
- CEnvProjectedTexture,
- CEnvQuadraticBeam,
- CEnvScreenEffect,
- CEnvScreenOverlay,
- CEnvTonemapController,
- CEnvWind,
- CFEPlayerDecal,
- CFireCrackerBlast,
- CFireSmoke,
- CFireTrail,
- CFish,
- CFlashbang,
- CFogController,
- CFootstepControl,
- CFunc_Dust,
- CFunc_LOD,
- CFuncAreaPortalWindow,
- CFuncBrush,
- CFuncConveyor,
- CFuncLadder,
- CFuncMonitor,
- CFuncMoveLinear,
- CFuncOccluder,
- CFuncReflectiveGlass,
- CFuncRotating,
- CFuncSmokeVolume,
- CFuncTrackTrain,
- CGameRulesProxy,
- CHandleTest,
- CHEGrenade,
- CHostage,
- CHostageCarriableProp,
- CIncendiaryGrenade,
- CInferno,
- CInfoLadderDismount,
- CInfoOverlayAccessor,
- CItem_Healthshot,
- CItemDogtags,
- CKnife,
- CKnifeGG,
- CLightGlow,
- CMaterialModifyControl,
- CMolotovGrenade,
- CMolotovProjectile,
- CMovieDisplay,
- CParticleFire,
- CParticlePerformanceMonitor,
- CParticleSystem,
- CPhysBox,
- CPhysBoxMultiplayer,
- CPhysicsProp,
- CPhysicsPropMultiplayer,
- CPhysMagnet,
- CPlantedC4,
- CPlasma,
- CPlayerResource,
- CPointCamera,
- CPointCommentaryNode,
- CPointWorldText,
- CPoseController,
- CPostProcessController,
- CPrecipitation,
- CPrecipitationBlocker,
- CPredictedViewModel,
- CProp_Hallucination,
- CPropDoorRotating,
- CPropJeep,
- CPropVehicleDriveable,
- CRagdollManager,
- CRagdollProp,
- CRagdollPropAttached,
- CRopeKeyframe,
- CSCAR17,
- CSceneEntity,
- CSensorGrenade,
- CSensorGrenadeProjectile,
- CShadowControl,
- CSlideshowDisplay,
- CSmokeGrenade,
- CSmokeGrenadeProjectile,
- CSmokeStack,
- CSpatialEntity,
- CSpotlightEnd,
- CSprite,
- CSpriteOriented,
- CSpriteTrail,
- CStatueProp,
- CSteamJet,
- CSun,
- CSunlightShadowControl,
- CTeam,
- CTeamplayRoundBasedRulesProxy,
- CTEArmorRicochet,
- CTEBaseBeam,
- CTEBeamEntPoint,
- CTEBeamEnts,
- CTEBeamFollow,
- CTEBeamLaser,
- CTEBeamPoints,
- CTEBeamRing,
- CTEBeamRingPoint,
- CTEBeamSpline,
- CTEBloodSprite,
- CTEBloodStream,
- CTEBreakModel,
- CTEBSPDecal,
- CTEBubbles,
- CTEBubbleTrail,
- CTEClientProjectile,
- CTEDecal,
- CTEDust,
- CTEDynamicLight,
- CTEEffectDispatch,
- CTEEnergySplash,
- CTEExplosion,
- CTEFireBullets,
- CTEFizz,
- CTEFootprintDecal,
- CTEFoundryHelpers,
- CTEGaussExplosion,
- CTEGlowSprite,
- CTEImpact,
- CTEKillPlayerAttachments,
- CTELargeFunnel,
- CTEMetalSparks,
- CTEMuzzleFlash,
- CTEParticleSystem,
- CTEPhysicsProp,
- CTEPlantBomb,
- CTEPlayerAnimEvent,
- CTEPlayerDecal,
- CTEProjectedDecal,
- CTERadioIcon,
- CTEShatterSurface,
- CTEShowLine,
- CTesla,
- CTESmoke,
- CTESparks,
- CTESprite,
- CTESpriteSpray,
- CTest_ProxyToggle_Networkable,
- CTestTraceline,
- CTEWorldDecal,
- CTriggerPlayerMovement,
- CTriggerSoundOperator,
- CVGuiScreen,
- CVoteController,
- CWaterBullet,
- CWaterLODControl,
- CWeaponAug,
- CWeaponAWP,
- CWeaponBaseItem,
- CWeaponBizon,
- CWeaponCSBase,
- CWeaponCSBaseGun,
- CWeaponCycler,
- CWeaponElite,
- CWeaponFamas,
- CWeaponFiveSeven,
- CWeaponG3SG1,
- CWeaponGalil,
- CWeaponGalilAR,
- CWeaponGlock,
- CWeaponHKP2000,
- CWeaponM249,
- CWeaponM3,
- CWeaponM4A1,
- CWeaponMAC10,
- CWeaponMag7,
- CWeaponMP5Navy,
- CWeaponMP7,
- CWeaponMP9,
- CWeaponNegev,
- CWeaponNOVA,
- CWeaponP228,
- CWeaponP250,
- CWeaponP90,
- CWeaponSawedoff,
- CWeaponSCAR20,
- CWeaponScout,
- CWeaponSG550,
- CWeaponSG552,
- CWeaponSG556,
- CWeaponSSG08,
- CWeaponTaser,
- CWeaponTec9,
- CWeaponTMP,
- CWeaponUMP45,
- CWeaponUSP,
- CWeaponXM1014,
- CWorld,
- DustTrail,
- MovieExplosion,
- ParticleSmokeGrenade,
- RocketTrail,
- SmokeTrail,
- SporeExplosion,
- SporeTrail,
+enum ClassID_t {
+ CAI_BaseNPC = 0,
+ CAK47,
+ CBaseAnimating,
+ CBaseAnimatingOverlay,
+ CBaseAttributableItem,
+ CBaseButton,
+ CBaseCombatCharacter,
+ CBaseCombatWeapon,
+ CBaseCSGrenade,
+ CBaseCSGrenadeProjectile,
+ CBaseDoor,
+ CBaseEntity,
+ CBaseFlex,
+ CBaseGrenade,
+ CBaseParticleEntity,
+ CBasePlayer,
+ CBasePropDoor,
+ CBaseTeamObjectiveResource,
+ CBaseTempEntity,
+ CBaseToggle,
+ CBaseTrigger,
+ CBaseViewModel,
+ CBaseVPhysicsTrigger,
+ CBaseWeaponWorldModel,
+ CBeam,
+ CBeamSpotlight,
+ CBoneFollower,
+ CBRC4Target,
+ CBreachCharge,
+ CBreachChargeProjectile,
+ CBreakableProp,
+ CBreakableSurface,
+ CC4,
+ CCascadeLight,
+ CChicken,
+ CColorCorrection,
+ CColorCorrectionVolume,
+ CCSGameRulesProxy,
+ CCSPlayer,
+ CCSPlayerResource,
+ CCSRagdoll,
+ CCSTeam,
+ CDangerZone,
+ CDangerZoneController,
+ CDEagle,
+ CDecoyGrenade,
+ CDecoyProjectile,
+ CDrone,
+ CDronegun,
+ CDynamicLight,
+ CDynamicProp,
+ CEconEntity,
+ CEconWearable,
+ CEmbers,
+ CEntityDissolve,
+ CEntityFlame,
+ CEntityFreezing,
+ CEntityParticleTrail,
+ CEnvAmbientLight,
+ CEnvDetailController,
+ CEnvDOFController,
+ CEnvGasCanister,
+ CEnvParticleScript,
+ CEnvProjectedTexture,
+ CEnvQuadraticBeam,
+ CEnvScreenEffect,
+ CEnvScreenOverlay,
+ CEnvTonemapController,
+ CEnvWind,
+ CFEPlayerDecal,
+ CFireCrackerBlast,
+ CFireSmoke,
+ CFireTrail,
+ CFish,
+ CFists,
+ CFlashbang,
+ CFogController,
+ CFootstepControl,
+ CFunc_Dust,
+ CFunc_LOD,
+ CFuncAreaPortalWindow,
+ CFuncBrush,
+ CFuncConveyor,
+ CFuncLadder,
+ CFuncMonitor,
+ CFuncMoveLinear,
+ CFuncOccluder,
+ CFuncReflectiveGlass,
+ CFuncRotating,
+ CFuncSmokeVolume,
+ CFuncTrackTrain,
+ CGameRulesProxy,
+ CGrassBurn,
+ CHandleTest,
+ CHEGrenade,
+ CHostage,
+ CHostageCarriableProp,
+ CIncendiaryGrenade,
+ CInferno,
+ CInfoLadderDismount,
+ CInfoMapRegion,
+ CInfoOverlayAccessor,
+ CItem_Healthshot,
+ CItemCash,
+ CItemDogtags,
+ CKnife,
+ CKnifeGG,
+ CLightGlow,
+ CMaterialModifyControl,
+ CMelee,
+ CMolotovGrenade,
+ CMolotovProjectile,
+ CMovieDisplay,
+ CParadropChopper,
+ CParticleFire,
+ CParticlePerformanceMonitor,
+ CParticleSystem,
+ CPhysBox,
+ CPhysBoxMultiplayer,
+ CPhysicsProp,
+ CPhysicsPropMultiplayer,
+ CPhysMagnet,
+ CPhysPropAmmoBox,
+ CPhysPropLootCrate,
+ CPhysPropRadarJammer,
+ CPhysPropWeaponUpgrade,
+ CPlantedC4,
+ CPlasma,
+ CPlayerResource,
+ CPointCamera,
+ CPointCommentaryNode,
+ CPointWorldText,
+ CPoseController,
+ CPostProcessController,
+ CPrecipitation,
+ CPrecipitationBlocker,
+ CPredictedViewModel,
+ CProp_Hallucination,
+ CPropCounter,
+ CPropDoorRotating,
+ CPropJeep,
+ CPropVehicleDriveable,
+ CRagdollManager,
+ CRagdollProp,
+ CRagdollPropAttached,
+ CRopeKeyframe,
+ CSCAR17,
+ CSceneEntity,
+ CSensorGrenade,
+ CSensorGrenadeProjectile,
+ CShadowControl,
+ CSlideshowDisplay,
+ CSmokeGrenade,
+ CSmokeGrenadeProjectile,
+ CSmokeStack,
+ CSpatialEntity,
+ CSpotlightEnd,
+ CSprite,
+ CSpriteOriented,
+ CSpriteTrail,
+ CStatueProp,
+ CSteamJet,
+ CSun,
+ CSunlightShadowControl,
+ CSurvivalSpawnChopper,
+ CTablet,
+ CTeam,
+ CTeamplayRoundBasedRulesProxy,
+ CTEArmorRicochet,
+ CTEBaseBeam,
+ CTEBeamEntPoint,
+ CTEBeamEnts,
+ CTEBeamFollow,
+ CTEBeamLaser,
+ CTEBeamPoints,
+ CTEBeamRing,
+ CTEBeamRingPoint,
+ CTEBeamSpline,
+ CTEBloodSprite,
+ CTEBloodStream,
+ CTEBreakModel,
+ CTEBSPDecal,
+ CTEBubbles,
+ CTEBubbleTrail,
+ CTEClientProjectile,
+ CTEDecal,
+ CTEDust,
+ CTEDynamicLight,
+ CTEEffectDispatch,
+ CTEEnergySplash,
+ CTEExplosion,
+ CTEFireBullets,
+ CTEFizz,
+ CTEFootprintDecal,
+ CTEFoundryHelpers,
+ CTEGaussExplosion,
+ CTEGlowSprite,
+ CTEImpact,
+ CTEKillPlayerAttachments,
+ CTELargeFunnel,
+ CTEMetalSparks,
+ CTEMuzzleFlash,
+ CTEParticleSystem,
+ CTEPhysicsProp,
+ CTEPlantBomb,
+ CTEPlayerAnimEvent,
+ CTEPlayerDecal,
+ CTEProjectedDecal,
+ CTERadioIcon,
+ CTEShatterSurface,
+ CTEShowLine,
+ CTesla,
+ CTESmoke,
+ CTESparks,
+ CTESprite,
+ CTESpriteSpray,
+ CTest_ProxyToggle_Networkable,
+ CTestTraceline,
+ CTEWorldDecal,
+ CTriggerPlayerMovement,
+ CTriggerSoundOperator,
+ CVGuiScreen,
+ CVoteController,
+ CWaterBullet,
+ CWaterLODControl,
+ CWeaponAug,
+ CWeaponAWP,
+ CWeaponBaseItem,
+ CWeaponBizon,
+ CWeaponCSBase,
+ CWeaponCSBaseGun,
+ CWeaponCycler,
+ CWeaponElite,
+ CWeaponFamas,
+ CWeaponFiveSeven,
+ CWeaponG3SG1,
+ CWeaponGalil,
+ CWeaponGalilAR,
+ CWeaponGlock,
+ CWeaponHKP2000,
+ CWeaponM249,
+ CWeaponM3,
+ CWeaponM4A1,
+ CWeaponMAC10,
+ CWeaponMag7,
+ CWeaponMP5Navy,
+ CWeaponMP7,
+ CWeaponMP9,
+ CWeaponNegev,
+ CWeaponNOVA,
+ CWeaponP228,
+ CWeaponP250,
+ CWeaponP90,
+ CWeaponSawedoff,
+ CWeaponSCAR20,
+ CWeaponScout,
+ CWeaponSG550,
+ CWeaponSG552,
+ CWeaponSG556,
+ CWeaponSSG08,
+ CWeaponTaser,
+ CWeaponTec9,
+ CWeaponTMP,
+ CWeaponUMP45,
+ CWeaponUSP,
+ CWeaponXM1014,
+ CWorld,
+ CWorldVguiText,
+ DustTrail,
+ MovieExplosion,
+ ParticleSmokeGrenade,
+ RocketTrail,
+ SmokeTrail,
+ SporeExplosion,
+ SporeTrail,
};
class ClientClass {
diff --git a/cheat/internal_rewrite/c_base_player.cpp b/cheat/internal_rewrite/c_base_player.cpp
index 981f63b..865f809 100644
--- a/cheat/internal_rewrite/c_base_player.cpp
+++ b/cheat/internal_rewrite/c_base_player.cpp
@@ -212,14 +212,14 @@ void c_base_player::invalidate_physics_recursive( int flags ) {
}
}
-void c_base_player::update_clientside_animation() {
- bool backup = m_bClientSideAnimation();
- m_bClientSideAnimation() = true;
+void c_base_player::update_clientside_animation( ) {
+ bool backup = m_bClientSideAnimation( );
+ m_bClientSideAnimation( ) = true;
- using fn = void(__fastcall*)(void*);
- pattern::first_code_match<fn>(g_csgo.m_chl.dll(), xors("55 8B EC 51 56 8B F1 80 BE ? ? ? ? ? 74 36"))(this);
+ using fn = void( __fastcall* )( void* );
+ pattern::first_code_match<fn>( g_csgo.m_chl.dll( ), xors( "55 8B EC 51 56 8B F1 80 BE ? ? ? ? ? 74 36" ) )( this );
- m_bClientSideAnimation() = backup;
+ m_bClientSideAnimation( ) = backup;
}
@@ -582,7 +582,8 @@ void c_base_player::do_ent_interpolation( bool reset ) {
if( !lerp )
return;
- if( anim_data->m_last_interp_origin.dist_to( anim_data->m_interp_origin ) > 64.f )
+ //yes
+ if( anim_data->m_last_interp_origin.dist_to( anim_data->m_interp_origin ) > 128.f )
return;
for( size_t i{ }; i < 3; ++i ) {
diff --git a/cheat/internal_rewrite/c_base_player.hpp b/cheat/internal_rewrite/c_base_player.hpp
index 78c84ac..690f55c 100644
--- a/cheat/internal_rewrite/c_base_player.hpp
+++ b/cheat/internal_rewrite/c_base_player.hpp
@@ -306,7 +306,7 @@ public:
NETVAR( m_hGroundEntity, "m_hGroundEntity", "DT_CSPlayer", 0, uint32_t );
NETVAR( m_flConstraintRadius, "m_flConstraintRadius", "DT_CSPlayer", 0, float );
- OFFSET( m_CachedBoneData, 0x28FC + sizeof( void* ), CUtlVector< matrix3x4 > );
+ OFFSET( m_CachedBoneData, 0x290C + sizeof( void* ), CUtlVector< matrix3x4 > );
OFFSET( m_flSpawnTime, 0xA2C0, float );
OFFSET( m_IKContext, 0x265c, IKContext* );
public:
@@ -405,7 +405,7 @@ public:
__forceinline vec3_t get_eye_pos( ) {
vec3_t yes;
//fuck references Lol
- util::get_vfunc< void( __thiscall* )( void*, vec3_t& ) >( this, 277 )( this, yes );
+ util::get_vfunc< void( __thiscall* )( void*, vec3_t& ) >( this, 279 )( this, yes );
//thanks senator!! !11
return yes;
diff --git a/cheat/internal_rewrite/c_base_weapon.hpp b/cheat/internal_rewrite/c_base_weapon.hpp
index 97f40d6..2abc997 100644
--- a/cheat/internal_rewrite/c_base_weapon.hpp
+++ b/cheat/internal_rewrite/c_base_weapon.hpp
@@ -4,71 +4,79 @@
#include "netvars.hpp"
enum ItemDefinitionIndex_t {
- WEAPON_NONE,
- WEAPON_DEAGLE = 1,
- WEAPON_ELITE = 2,
- WEAPON_FIVESEVEN = 3,
- WEAPON_GLOCK = 4,
+ WEAPON_NONE = 0,
+ WEAPON_DEAGLE,
+ WEAPON_ELITE,
+ WEAPON_FIVESEVEN,
+ WEAPON_GLOCK,
WEAPON_AK47 = 7,
- WEAPON_AUG = 8,
- WEAPON_AWP = 9,
- WEAPON_FAMAS = 10,
- WEAPON_G3SG1 = 11,
+ WEAPON_AUG,
+ WEAPON_AWP,
+ WEAPON_FAMAS,
+ WEAPON_G3SG1,
WEAPON_GALILAR = 13,
- WEAPON_M249 = 14,
+ WEAPON_M249,
WEAPON_M4A1 = 16,
- WEAPON_MAC10 = 17,
+ WEAPON_MAC10,
WEAPON_P90 = 19,
- WEAPON_UMP45 = 24,
- WEAPON_XM1014 = 25,
- WEAPON_BIZON = 26,
- WEAPON_MAG7 = 27,
- WEAPON_NEGEV = 28,
- WEAPON_SAWEDOFF = 29,
- WEAPON_TEC9 = 30,
- WEAPON_TASER = 31,
- WEAPON_HKP2000 = 32,
- WEAPON_MP7 = 33,
- WEAPON_MP9 = 34,
- WEAPON_NOVA = 35,
- WEAPON_P250 = 36,
+ WEAPON_MP5SD = 23,
+ WEAPON_UMP45,
+ WEAPON_XM1014,
+ WEAPON_BIZON,
+ WEAPON_MAG7,
+ WEAPON_NEGEV,
+ WEAPON_SAWEDOFF,
+ WEAPON_TEC9,
+ WEAPON_TASER,
+ WEAPON_HKP2000,
+ WEAPON_MP7,
+ WEAPON_MP9,
+ WEAPON_NOVA,
+ WEAPON_P250,
WEAPON_SCAR20 = 38,
- WEAPON_SG556 = 39,
- WEAPON_SSG08 = 40,
- WEAPON_KNIFEGG = 41,
- WEAPON_KNIFE = 42,
- WEAPON_FLASHBANG = 43,
- WEAPON_HEGRENADE = 44,
- WEAPON_SMOKEGRENADE = 45,
- WEAPON_MOLOTOV = 46,
- WEAPON_DECOY = 47,
- WEAPON_INCGRENADE = 48,
- WEAPON_C4 = 49,
+ WEAPON_SG556,
+ WEAPON_SSG08,
+ WEAPON_KNIFEGG,
+ WEAPON_KNIFE,
+ WEAPON_FLASHBANG,
+ WEAPON_HEGRENADE,
+ WEAPON_SMOKEGRENADE,
+ WEAPON_MOLOTOV,
+ WEAPON_DECOY,
+ WEAPON_INCGRENADE,
+ WEAPON_C4,
+ WEAPON_HEALTHSHOT = 57,
WEAPON_KNIFE_T = 59,
- WEAPON_M4A1_SILENCER = 60,
- WEAPON_USP_SILENCER = 61,
+ WEAPON_M4A1_SILENCER,
+ WEAPON_USP_SILENCER,
WEAPON_CZ75A = 63,
- WEAPON_R8REVOLVER = 64,
- WEAPON_MP5SD = 23,
+ WEAPON_R8REVOLVER,
+ WEAPON_TAGRENADE = 68,
+ WEAPON_FISTS,
+ WEAPON_BREACHCHARGE,
+ WEAPON_TABLET = 72,
+ WEAPON_MELEE = 74,
+ WEAPON_AXE,
+ WEAPON_HAMMER,
+ WEAPON_SPANNER = 78,
+ WEAPON_KNIFE_GHOST = 80,
+ WEAPON_FIREBOMB,
+ WEAPON_DIVERSION,
+ WEAPON_FRAG_GRENADE,
WEAPON_KNIFE_BAYONET = 500,
WEAPON_KNIFE_FLIP = 505,
- WEAPON_KNIFE_GUT = 506,
- WEAPON_KNIFE_KARAMBIT = 507,
- WEAPON_KNIFE_M9_BAYONET = 508,
- WEAPON_KNIFE_TACTICAL = 509,
+ WEAPON_KNIFE_GUT,
+ WEAPON_KNIFE_KARAMBIT,
+ WEAPON_KNIFE_M9_BAYONET,
+ WEAPON_KNIFE_TACTICAL,
WEAPON_KNIFE_FALCHION = 512,
WEAPON_KNIFE_BOWIE = 514,
- WEAPON_KNIFE_BUTTERFLY = 515,
- WEAPON_KNIFE_PUSH = 516,
- GLOVE_STUDDED_BLOODHOUND = 5027,
- GLOVE_T_SIDE = 5028,
- GLOVE_CT_SIDE = 5029,
- GLOVE_SPORTY = 5030,
- GLOVE_SLICK = 5031,
- GLOVE_LEATHER_WRAP = 5032,
- GLOVE_MOTORCYCLE = 5033,
- GLOVE_SPECIALIST = 5034,
- GLOVE_HYDRA = 5035,
+ WEAPON_KNIFE_BUTTERFLY,
+ WEAPON_KNIFE_PUSH,
+ WEAPON_KNIFE_URSUS = 519,
+ WEAPON_KNIFE_GYPSY_JACKKNIFE,
+ WEAPON_KNIFE_STILETTO = 522,
+ WEAPON_KNIFE_WIDOWMAKER
};
class weapon_info_t {
@@ -211,19 +219,19 @@ public:
}
__forceinline weapon_info_t* get_wpn_info( ) {
- return util::get_vfunc< 443, weapon_info_t* >( this );
+ return util::get_vfunc< 448, weapon_info_t* >( this );
}
__forceinline void update_accuracy_penalty( ) {
- return util::get_vfunc< 468, void >( this );
+ return util::get_vfunc< 472, void >( this );
}
__forceinline float get_spread( ) {
- return util::get_vfunc< 436, float >( this );
+ return util::get_vfunc< 440, float >( this );
}
__forceinline float get_inaccuracy( ) {
- return util::get_vfunc< 467, float >( this );
+ return util::get_vfunc< 471, float >( this );
}
__forceinline void set_glove_model( int model_index ) {
diff --git a/cheat/internal_rewrite/create_move.cpp b/cheat/internal_rewrite/create_move.cpp
index 75a36e4..04fd0c6 100644
--- a/cheat/internal_rewrite/create_move.cpp
+++ b/cheat/internal_rewrite/create_move.cpp
@@ -104,20 +104,22 @@ bool __fastcall hooks::create_move( void* ecx_, void* edx_, float input_sample_f
g_ctx.m_cmd_numbers.push_back( ucmd->m_cmd_nr );
}
else {
- //int choked = cl->m_netchannel->m_nChokedPackets;
+ int choked = cl->m_netchannel->m_nChokedPackets;
//printf( "choked: %d\n", choked );
//
- //cl->m_netchannel->m_nChokedPackets = 0;
+ cl->m_netchannel->m_nChokedPackets = 0;
//
- //int in_seq = cl->m_netchannel->m_nInSequenceNr;
+ int in_seq = cl->m_netchannel->m_nInSequenceNr;
+ int reliable = cl->m_netchannel->m_nInReliableState;
//
- //g_cheat.m_extra.add_latency( cl->m_netchannel );
- //send_datagram_o( cl->m_netchannel, 0, 0 );
+ g_cheat.m_extra.add_latency( cl->m_netchannel );
+ send_datagram_o( cl->m_netchannel, 0, 0 );
//
//cl->m_netchannel->m_nInSequenceNr = in_seq;
//
- //cl->m_netchannel->m_nOutSequenceNr--;
- //cl->m_netchannel->m_nChokedPackets = choked;
+ cl->m_netchannel->m_nInReliableState = reliable;
+ cl->m_netchannel->m_nOutSequenceNr--;
+ cl->m_netchannel->m_nChokedPackets = choked;
}
g_cheat.m_ragebot.m_antiaim->on_runcommand( );
diff --git a/cheat/internal_rewrite/extra.cpp b/cheat/internal_rewrite/extra.cpp
index 07a8aaf..cbca0be 100644
--- a/cheat/internal_rewrite/extra.cpp
+++ b/cheat/internal_rewrite/extra.cpp
@@ -80,9 +80,9 @@ namespace features
void c_extra::update_netchannel( ) {
// fuck u bithc
- auto *netchan = g_csgo.m_global_state->get_client_state()->m_netchannel;
+ auto *netchan = g_csgo.m_global_state->get_client_state( )->m_netchannel;
- if (netchan->m_nInSequenceNr != m_last_sequence) {
+ if( netchan->m_nInSequenceNr != m_last_sequence ) {
m_last_sequence = netchan->m_nInSequenceNr;
// emplace new record
@@ -91,36 +91,39 @@ namespace features
netchan->m_nInReliableState,
netchan->m_nInSequenceNr
};
- m_net_records.emplace_back(record);
+ m_net_records.emplace_back( record );
}
+ // here's the thing.
+ // stl is autistic and it crashes.
+
// clear outdated records
- for (auto &it = m_net_records.begin(); it != m_net_records.end(); ++it) {
- const float delta = g_csgo.m_globals->m_realtime - it->m_realtime;
+ for( size_t i{ }; i < m_net_records.size( ); ++i ) {
+ const float delta = g_csgo.m_globals->m_curtime - m_net_records.at( i ).m_curtime;
// 200ms is the max we can fake anyway..
// hnn this might be why it's so fucked :/
- if (delta > 0.4f)
- m_net_records.erase(it);
+ if( delta > 0.4f )
+ m_net_records.erase( m_net_records.begin( ) + i );
}
}
void c_extra::add_latency( INetChannel* channel ) {
- auto nci = g_csgo.m_engine()->GetNetChannelInfo();
- float in_latency = nci->GetLatency(0);
-
+ auto nci = g_csgo.m_engine( )->GetNetChannelInfo( );
+ float in_latency = nci->GetLatency( 0 );
+
// amount of latency we want to achieve
- float latency = 0.15f - (in_latency + g_csgo.m_globals->m_frametime) - TICK_INTERVAL();
+ float latency = 0.15f - ( in_latency + g_csgo.m_globals->m_frametime ) - TICK_INTERVAL( );
- if ( g_ctx.m_local && g_ctx.m_local->is_valid( ) ) {
+ if( g_ctx.m_local && g_ctx.m_local->is_valid( ) ) {
// god this is autistic
- for (auto &it = m_net_records.begin(); it != m_net_records.end(); ++it) {
- const float delta = g_csgo.m_globals->m_realtime - it->m_realtime;
+ for( auto& it : m_net_records ) {
+ const float delta = g_csgo.m_globals->m_curtime - it.m_curtime;
- if (delta >= latency) {
+ if( delta >= latency ) {
// apply latency
- channel->m_nInReliableState = it->m_reliable;
- channel->m_nInSequenceNr = it->m_sequence;
+ channel->m_nInReliableState = it.m_reliable;
+ channel->m_nInSequenceNr = it.m_sequence;
break;
}
diff --git a/cheat/internal_rewrite/extra.hpp b/cheat/internal_rewrite/extra.hpp
index 5c7d5f4..f3ab837 100644
--- a/cheat/internal_rewrite/extra.hpp
+++ b/cheat/internal_rewrite/extra.hpp
@@ -9,7 +9,7 @@ namespace features
// i'm gay
struct netchan_record_t {
- float m_realtime;
+ float m_curtime;
int32_t m_reliable;
int32_t m_sequence;
};
diff --git a/cheat/internal_rewrite/hooks.cpp b/cheat/internal_rewrite/hooks.cpp
index 812a46d..bd78929 100644
--- a/cheat/internal_rewrite/hooks.cpp
+++ b/cheat/internal_rewrite/hooks.cpp
@@ -71,8 +71,8 @@ bool hooks::commit( factory::c_csgo* instance ) {
instance->m_netshowfragments->hook( 13, &hooks::net_showfragments_get_int );
instance->m_csm_shadows->hook( 13, &hooks::cl_csm_shadows_get_int );
- //paint_traverse_o = d->create_hook( &hooks::paint_traverse, instance->m_panel->get_old_function< void* >( 41 ) );
- //create_move_o = d->create_hook( &hooks::create_move, instance->m_clientmode->get_old_function< void* >( 24 ) );
+ paint_traverse_o = d->create_hook( &hooks::paint_traverse, instance->m_panel->get_old_function< void* >( 41 ) );
+ create_move_o = d->create_hook( &hooks::create_move, instance->m_clientmode->get_old_function< void* >( 24 ) );
override_mouse_input_o = d->create_hook( &hooks::override_mouse_input, instance->m_clientmode->get_old_function< void* >( 23 ) );
get_viewmodel_fov_o = d->create_hook( &hooks::get_viewmodel_fov, instance->m_clientmode->get_old_function< void* >( 35 ) );
do_post_screen_space_effects_o = d->create_hook( &hooks::do_post_screen_space_effects, instance->m_clientmode->get_old_function< void* >( 44 ) );
@@ -80,9 +80,9 @@ bool hooks::commit( factory::c_csgo* instance ) {
lock_cursor_o = d->create_hook( &hooks::lock_cursor, instance->m_surface->get_old_function< void* >( 67 ) );
run_command_o = d->create_hook( &hooks::run_command, instance->m_prediction->get_old_function< void* >( 19 ) );
in_prediction_o = d->create_hook( &hooks::in_prediction, instance->m_prediction->get_old_function< void* >( 14 ) );
- //draw_model_execute_o = d->create_hook( &hooks::draw_model_execute, instance->m_model_render->get_old_function< void* >( 21 ) );
- //scene_end_o = d->create_hook( &hooks::scene_end, instance->m_render_view->get_old_function< void* >( 9 ) );
- //get_screen_size_o = d->create_hook( &hooks::get_screen_size, instance->m_surface->get_old_function< void* >( 44 ) );
+ draw_model_execute_o = d->create_hook( &hooks::draw_model_execute, instance->m_model_render->get_old_function< void* >( 21 ) );
+ scene_end_o = d->create_hook( &hooks::scene_end, instance->m_render_view->get_old_function< void* >( 9 ) );
+ get_screen_size_o = d->create_hook( &hooks::get_screen_size, instance->m_surface->get_old_function< void* >( 44 ) );
//
//// this has annoyed me for so long
//emit_sound_o = d->create_hook(&hooks::emit_sound, instance->m_engine_sound->get_old_function< void * >(5));
@@ -90,11 +90,11 @@ bool hooks::commit( factory::c_csgo* instance ) {
on_screen_size_changed_o = d->create_hook( &hooks::on_screen_size_changed, instance->m_surface->get_old_function< void* >( 116 ) );
play_sound_o = d->create_hook( &hooks::play_sound, instance->m_surface->get_old_function< void* >( 82 ) );
material_system_o = d->create_hook( &hooks::material_system, instance->m_mat_system->get_old_function< void* >( 21 ) );
- //suppress_lists_o = d->create_hook( &hooks::suppress_lists, instance->m_partition->get_old_function< void* >( 16 ) );
- ////draw_small_entities_o = d->create_hook( &hooks::draw_small_entities, instance->m_clientleaf->get_old_function< void* >( 39 ) );
- //simulate_o = d->create_hook( &hooks::simulate, instance->m_engine_vgui->get_old_function< void* >( 39 ) );
- //begin_lock_o = d->create_hook( &hooks::begin_lock, instance->m_mdl_cache->get_old_function< void* >( 33 ) );
- //end_lock_o = d->create_hook( &hooks::end_lock, instance->m_mdl_cache->get_old_function< void* >( 34 ) );
+ suppress_lists_o = d->create_hook( &hooks::suppress_lists, instance->m_partition->get_old_function< void* >( 16 ) );
+ draw_small_entities_o = d->create_hook( &hooks::draw_small_entities, instance->m_clientleaf->get_old_function< void* >( 42 ) );
+ simulate_o = d->create_hook( &hooks::simulate, instance->m_engine_vgui->get_old_function< void* >( 39 ) );
+ begin_lock_o = d->create_hook( &hooks::begin_lock, instance->m_mdl_cache->get_old_function< void* >( 33 ) );
+ end_lock_o = d->create_hook( &hooks::end_lock, instance->m_mdl_cache->get_old_function< void* >( 34 ) );
//
auto packet_start = pattern::first_code_match< void* >( instance->m_engine.dll( ), xors( "55 8B EC 8B 45 08 89 81 ? ? ? ? 8B 45 0C 89 81 ? ? ? ? 5D C2 08 00 ? ? ? ? ? ? ? 56" ) );
packet_start_o = d->create_hook( &hooks::packet_start, packet_start );
@@ -102,8 +102,8 @@ bool hooks::commit( factory::c_csgo* instance ) {
auto process_packet = pattern::first_code_match< void * >(instance->m_engine.dll(), xors("55 8B EC 83 E4 C0 81 EC ? ? ? ? 53 56 57 8B 7D 08 8B D9"));
process_packet_o = d->create_hook(&hooks::process_packet, process_packet);
//
- //auto update_clientside_anim = pattern::first_code_match< void* >( instance->m_chl.dll( ), xors( "55 8B EC 51 56 8B F1 80 BE ? ? ? ? ? 74 36" ) );
- //update_clientside_animation_o = d->create_hook( &hooks::update_clientside_animation, update_clientside_anim );
+ auto update_clientside_anim = pattern::first_code_match< void* >( instance->m_chl.dll( ), xors( "55 8B EC 51 56 8B F1 80 BE ? ? ? ? ? 74 36" ) );
+ update_clientside_animation_o = d->create_hook( &hooks::update_clientside_animation, update_clientside_anim );
//
auto send_datagram = pattern::first_code_match< void* >( instance->m_engine.dll( ), xors( "55 8B EC 83 E4 F0 B8 ? ? ? ? E8 ? ? ? ? 56 57 8B F9 89 7C 24 18" ) );
send_datagram_o = d->create_hook( &hooks::send_datagram, send_datagram );