diff options
| author | navewindre <boneyaard@gmail.com> | 2018-09-24 23:07:59 +0200 |
|---|---|---|
| committer | navewindre <boneyaard@gmail.com> | 2018-09-24 23:07:59 +0200 |
| commit | b7375a7582db7ba2ee8a4dacfab226a3fd8fc514 (patch) | |
| tree | 93274596a51169dd44e532a2b624bb5b75424853 /internal_rewrite | |
| parent | ed07a29b5f14696247eed5ffcd9e8441742719b2 (diff) | |
?
Diffstat (limited to 'internal_rewrite')
| -rw-r--r-- | internal_rewrite/d3d.cpp | 2 | ||||
| -rw-r--r-- | internal_rewrite/ragebot_antiaim.cpp | 70 | ||||
| -rw-r--r-- | internal_rewrite/renderer.hpp | 2 | ||||
| -rw-r--r-- | internal_rewrite/scene_end.cpp | 2 | ||||
| -rw-r--r-- | internal_rewrite/settings.hpp | 1 | ||||
| -rw-r--r-- | internal_rewrite/ui.h | 3 | ||||
| -rw-r--r-- | internal_rewrite/ui_dropdown_item.h | 2 | ||||
| -rw-r--r-- | internal_rewrite/visual.hpp | 2 | ||||
| -rw-r--r-- | internal_rewrite/visual_local.cpp | 37 |
9 files changed, 92 insertions, 29 deletions
diff --git a/internal_rewrite/d3d.cpp b/internal_rewrite/d3d.cpp index e9df4fa..194ac5e 100644 --- a/internal_rewrite/d3d.cpp +++ b/internal_rewrite/d3d.cpp @@ -48,7 +48,7 @@ namespace d3d , 0, 12, 0 ); //change this idc create_font( &f_esp_small, xors( "Tahoma" ), 0, 11, 500 ); create_font( &f_16, xors( "Verdana" ), 0, 16, 0 ); - create_font( &f_18, xors( "Verdana" ), 0, 18, 900 ); + create_font( &f_18, xors( "Verdana" ), 0, 24, 700 ); create_font( &f_menu, #ifndef COMIC_SANS
xors( "Tahoma" )
diff --git a/internal_rewrite/ragebot_antiaim.cpp b/internal_rewrite/ragebot_antiaim.cpp index 145e714..91aac42 100644 --- a/internal_rewrite/ragebot_antiaim.cpp +++ b/internal_rewrite/ragebot_antiaim.cpp @@ -388,6 +388,33 @@ namespace features return tr.endpos;
}
+ float get_min_dist( vec3_t origin ) {
+ const float max_dist = 150.f;
+ float dist = 0.f;
+ float ret = FLT_MAX;
+
+ CTraceFilterWorldAndPropsOnly filter;
+ CGameTrace tr;
+ Ray_t ray;
+
+ for( size_t f = 0.f; f < 360.f; f += 45.f ) {
+ vec3_t rotated = math::get_rotated_pos( origin, f, max_dist );
+
+ ray.Init( origin, rotated );
+
+ g_csgo.m_trace( )->TraceRay( ray, MASK_SOLID, &filter, &tr );
+ dist = tr.endpos.dist_to( origin );
+
+ if( dist <= 75.f )
+ return 75.f;
+
+ if( dist < ret )
+ ret = dist;
+ }
+
+ return ret;
+ }
+
bool c_ragebot::c_antiaim::run_freestanding( int player ) {
if( !g_settings.rage.edge_detection )
return false;
@@ -421,13 +448,14 @@ namespace features local_pos = g_ctx.m_local->get_eye_pos( );
aim_angle = math::vector_angles( enemy_pos, local_pos );
- float dist = ( float )( g_settings.rage.freestanding_distance( ) );
+ float local_dist = get_min_dist( local_pos );
+ float enemy_dist = get_min_dist( enemy_pos );
float start_dmg = get_damage( enemy_pos, local_pos, ent, g_ctx.m_local );
- auto test_dmg = [ & ]( float dist ) {
- vec3_t enemy_left = math::get_rotated_pos( enemy_pos, aim_angle.y - 90.f, dist );
- vec3_t enemy_right = math::get_rotated_pos( enemy_pos, aim_angle.y + 90.f, dist );
+ auto test_dmg = [ & ]( float dist, float enemy_dist, float delta = 50.f ) {
+ vec3_t enemy_left = math::get_rotated_pos( enemy_pos, aim_angle.y - 90.f, enemy_dist );
+ vec3_t enemy_right = math::get_rotated_pos( enemy_pos, aim_angle.y + 90.f, enemy_dist );
enemy_left = trace_ent_pos( enemy_pos, enemy_left, ent );
enemy_right = trace_ent_pos( enemy_pos, enemy_right, ent );
@@ -444,24 +472,48 @@ namespace features float dmg_right = get_damage( enemy_left, local_right, ent, g_ctx.m_local )
+ get_damage( enemy_right, local_right, ent, g_ctx.m_local );
- if( std::abs( dmg_left - dmg_right ) < 25.f )
+ if( std::abs( dmg_left - dmg_right ) < delta )
return false;
float max_dmg = math::max( dmg_left, dmg_right );
direction = dmg_left > dmg_right;
cur_damage = max_dmg;
- return max_dmg > 25.f;
+ return max_dmg > delta;
};
- float radius = ( g_ctx.m_local->get_hitbox_pos( 0 ) - g_ctx.m_local->m_vecOrigin( ) ).length2d( );
+ float radius = std::floorf( ( g_ctx.m_local->get_hitbox_pos( 0 ) - g_ctx.m_local->get_hitbox_pos( HITBOX_PELVIS ) ).length2d( ) );
+ radius = radius >= 15.f ? 20.f : 10.f;
- if( !test_dmg( radius + 1.f ) ) {
+ float enemy_radius = std::floorf( ( ent->get_hitbox_pos( 0 ) - ent->get_hitbox_pos( HITBOX_PELVIS ) ).length2d( ) );
+ enemy_radius = enemy_radius >= 15.f ? 20.f : 10.f;
+
+ if( !test_dmg( radius + 1.f, enemy_radius + 1.f, 25.f ) ) {
if( cur_damage < start_dmg * 2.f )
return false;
}
- if( !test_dmg( dist ) )
+ bool found = false;
+
+ for( size_t i = 5; i > 0; --i ) {
+ float cur_dist = local_dist / i;
+ float cur_enemy_dist = enemy_dist / i;
+
+ if( cur_dist < radius )
+ continue;
+
+ if( cur_enemy_dist < enemy_radius )
+ continue;
+
+ if( test_dmg( cur_dist, cur_enemy_dist, 125.f / i ) ) {
+ found = true;
+ break;
+ }
+ else if( cur_damage > 125.f / i )
+ break;
+ }
+
+ if( !found )
return false;
m_direction = direction;
diff --git a/internal_rewrite/renderer.hpp b/internal_rewrite/renderer.hpp index 1247440..59e4dd1 100644 --- a/internal_rewrite/renderer.hpp +++ b/internal_rewrite/renderer.hpp @@ -46,7 +46,7 @@ public: void initialize( );
font_t f_esp_small{ xors( "Tahoma" ), 11, 500, FONTFLAG_DROPSHADOW };
- font_t f_bold{ xors( "Verdana" ), 18, 900, FONTFLAG_DROPSHADOW | FONTFLAG_ANTIALIAS };
+ font_t f_bold{ xors( "Verdana" ), 24, 700, FONTFLAG_ANTIALIAS };
font_t f_12{
#ifndef COMIC_SANS
xors( "Tahoma" )
diff --git a/internal_rewrite/scene_end.cpp b/internal_rewrite/scene_end.cpp index 619ac48..997ed21 100644 --- a/internal_rewrite/scene_end.cpp +++ b/internal_rewrite/scene_end.cpp @@ -6,7 +6,7 @@ void __fastcall hooks::scene_end( void* ecx_, void* edx_ ) { scene_end_o( edx_, 0 ); - if( !g_csgo.m_panic && g_ctx.m_local && g_settings.visuals.chams.enabled( ) && g_settings.visuals.chams.ignore_z( ) && g_settings.visuals.chams.clear_occlusion ) { + if( !g_csgo.m_panic && g_ctx.m_local && g_settings.visuals.chams.enabled( ) && g_settings.visuals.chams.ignore_z( ) && g_settings.visuals.chams.clear_occlusion && !g_settings.misc.hide_from_obs ) { g_ctx.m_drawing_screneend = true; for( int i = 1; i < g_csgo.m_globals->m_maxclients; ++i ) { auto ent = g_csgo.m_entlist( )->GetClientEntity< >( i ); diff --git a/internal_rewrite/settings.hpp b/internal_rewrite/settings.hpp index 2f082e4..cf4f506 100644 --- a/internal_rewrite/settings.hpp +++ b/internal_rewrite/settings.hpp @@ -268,7 +268,6 @@ namespace data con_var< bool > break_lby_edge{ &holder_, fnv( "rage_break_lby_edge" ) };
con_var< int > edge_dtc_normal{ &holder_, fnv( "rage_edge_dtc_normal" ), 0 };
- con_var< int > freestanding_distance{ &holder_, fnv( "rage_freestanding_dist" ), 50 };
con_var< int > edge_dtc_standing{ &holder_, fnv( "rage_edge_dtc_standing" ), 100 };
con_var< int > edge_dtc_moving{ &holder_, fnv( "rage_edge_dtc_moving" ), 100 };
con_var< int > edge_dtc_priority{ &holder_, fnv( "rage_edge_dtc_priority" ), 0 };
diff --git a/internal_rewrite/ui.h b/internal_rewrite/ui.h index 3f80a08..36d2f7d 100644 --- a/internal_rewrite/ui.h +++ b/internal_rewrite/ui.h @@ -426,9 +426,6 @@ namespace ui edge_form->add_item( std::make_shared< ui::c_checkbox >( 0, 0, xors( "freestanding" ),
&g_settings.rage.edge_detection ) );
- edge_form->add_item( std::make_shared< ui::c_slider< int > >( 0, 0, 140, 50, 200, &g_settings.rage.freestanding_distance )
- )->set_cond( [ ]( ) { return g_settings.rage.edge_detection( ); } );
-
edge_form->add_item( std::make_shared< ui::c_dropdown< > >( 0, 0, 140, xors( "priority" ),
&g_settings.rage.edge_dtc_priority, &dropdowns::edge_priority )
)->set_cond( [ ]( ) { return g_settings.rage.edge_dtc_normal( ) && g_settings.rage.edge_detection( ); } );
diff --git a/internal_rewrite/ui_dropdown_item.h b/internal_rewrite/ui_dropdown_item.h index 9afbbd2..f959f71 100644 --- a/internal_rewrite/ui_dropdown_item.h +++ b/internal_rewrite/ui_dropdown_item.h @@ -154,7 +154,9 @@ namespace ui { xors( "on hold" ), 1 },
{ xors( "toggle" ), 2 },
{ xors( "always" ), 3 },
+#ifdef _DEBUG
{ xors( "auto" ), 4 }
+#endif
};
static std::vector< dropdown_item_t< > > world_esp_type = {
diff --git a/internal_rewrite/visual.hpp b/internal_rewrite/visual.hpp index f6558aa..7b18fa4 100644 --- a/internal_rewrite/visual.hpp +++ b/internal_rewrite/visual.hpp @@ -18,7 +18,7 @@ namespace features class c_visuals {
private:
static const clr_t esp_green( uint8_t alpha = 255 ) {
- return clr_t( 1, 216, 62, alpha );
+ return clr_t( 110, 200, 20, alpha );
}
static const clr_t esp_red( uint8_t alpha = 255 ) {
return clr_t( 240, 0, 0, alpha );
diff --git a/internal_rewrite/visual_local.cpp b/internal_rewrite/visual_local.cpp index adb84c3..c519b6f 100644 --- a/internal_rewrite/visual_local.cpp +++ b/internal_rewrite/visual_local.cpp @@ -20,6 +20,9 @@ namespace features draw_spread( );
spectator_list( );
+ const int offset = 21;
+
+
if( g_ctx.m_local->is_valid( ) ) {
//isvalveds
@@ -29,7 +32,7 @@ namespace features clr_t col = clr_t::blend( esp_green( ), esp_red( ), std::clamp( percentage, 0.f, 1.f ) );
- draw_really_big_string( 10, cur_pos += 15, col, xors( "DMG: %d" ), m_teamdmg );
+ draw_really_big_string( 10, cur_pos += offset, col, xors( "DMG: %d" ), m_teamdmg );
}
static float incoming_latency;
@@ -46,12 +49,14 @@ namespace features clr_t col = clr_t::blend( esp_red( ), esp_green( ), percentage );
- bool visible = g_settings.misc.net_fakeping_active;
- if( g_settings.misc.net_fakelag == 4 )
- visible = true;
+ //bool visible = g_settings.misc.net_fakeping_active;
+ //if( g_settings.misc.net_fakelag == 4 )
+ //visible = true;
- if( percentage > 0.35f || visible ) {
- draw_really_big_string( 10, cur_pos += 15, col, xors( "PING" ) );
+ if( percentage > 0.35f ) {
+ draw_really_big_string( 9, ( cur_pos += offset ), clr_t( 110, 110, 110, 255 ), xors( "PING" ) );
+ draw_really_big_string( 11, cur_pos + 2, clr_t( 0, 0, 0, 255 ), xors( "PING" ) );
+ draw_really_big_string( 10, cur_pos, col, xors( "PING" ) );
}
}
}
@@ -77,25 +82,31 @@ namespace features bool breaking = lby_delta > 35.f && time_delta > 0.2f;
if( g_cheat.m_ragebot.m_antiaim->is_edging( ) ) {
- draw_really_big_string( 10, cur_pos += 15, esp_green( ), xors( "EDGE" ) );
+ draw_really_big_string( 9, ( cur_pos += offset ), clr_t( 110, 110, 110, 255 ), xors( "EDGE" ) );
+ draw_really_big_string( 11, cur_pos + 2, clr_t( 0, 0, 0, 255 ), xors( "EDGE" ) );
+ draw_really_big_string( 10, cur_pos, esp_green( ), xors( "EDGE" ) );
}
if( g_settings.rage.break_lby( ) ) {
- draw_really_big_string( 10, cur_pos += 15, breaking ? esp_green( ) : esp_red( ), xors( "LBY" ) );
+ draw_really_big_string( 9, ( cur_pos += offset ), clr_t( 110, 110, 110, 255 ), xors( "LBY" ) );
+ draw_really_big_string( 11, cur_pos + 2, clr_t( 0, 0, 0, 255 ), xors( "LBY" ) );
+ draw_really_big_string( 10, cur_pos, breaking ? esp_green( ) : esp_red( ), xors( "LBY" ) );
auto animstate = g_ctx.m_local->get_animstate( );
if( animstate && animstate->m_velocity < 0.1f && animstate->m_bOnGround ) {
- draw_filled_rect( 11, ( cur_pos += 4 ) + 14, 31, 2, clr_t( 0, 0, 0, 170 ) );
+ draw_filled_rect( 11, ( cur_pos += 4 ) + 18, 36, 3, clr_t( 0, 0, 0, 170 ) );
float progress = ( float )g_cheat.m_ragebot.m_antiaim->get_next_update( ) / TIME_TO_TICKS( 1.1f );
if( progress <= 1.f )
- draw_filled_rect( 11, cur_pos + 14, 30 * progress, 1, esp_green( ) );
+ draw_filled_rect( 11, cur_pos + 19, 34 * progress, 1, esp_green( ) );
}
}
if( g_settings.rage.preserve_fps && g_settings.rage.enabled && util::is_low_fps( ) ) {
- draw_really_big_string( 10, cur_pos += 15, esp_red( ), xors( "FPS" ) );
+ draw_really_big_string( 9, ( cur_pos += offset ), clr_t( 110, 110, 110, 255 ), xors( "FPS" ) );
+ draw_really_big_string( 11, cur_pos + 2, clr_t( 0, 0, 0, 255 ), xors( "FPS" ) );
+ draw_really_big_string( 10, cur_pos, esp_red( ), xors( "FPS" ) );
}
}
@@ -112,7 +123,9 @@ namespace features float speed = g_ctx.m_local->m_vecVelocity( ).length2d( );
if( speed > 255.f && speed * g_csgo.m_globals->m_interval_per_tick * max_ticks > 50 ) {
bool breaking = g_cheat.m_lagmgr.is_breaking_lc( );
- draw_really_big_string( 10, cur_pos += 15, breaking ? esp_green( ) : esp_red( ), xors( "LC" ) );
+ draw_really_big_string( 9, ( cur_pos += offset ), clr_t( 110, 110, 110, 255 ), xors( "LC" ) );
+ draw_really_big_string( 11, cur_pos + 2, clr_t( 0, 0, 0, 255 ), xors( "LC" ) );
+ draw_really_big_string( 10, cur_pos, breaking ? esp_green( ) : esp_red( ), xors( "LC" ) );
}
}
}
|
