Эксперт
-
Автор темы
- #1
сурсы не новые, вроде не работает сейчас там обновить надо, у меня лв нет фиксите сами
катана, напиши в лс я твой дс проебал, по другому не достучаться до тебя
проверка вырезана
локации к гх я тоже проебал
катана, напиши в лс я твой дс проебал, по другому не достучаться до тебя
C++:
local name = globals.get_username()
local ffi = require("ffi")
ffi.cdef[[
void* GetProcAddress(void* hModule, const char* lpProcName);
void* GetModuleHandleA(const char* lpModuleName);
typedef struct {
uint8_t r;
uint8_t g;
uint8_t b;
uint8_t a;
} color_struct_t;
typedef void (*console_color_print)(const color_struct_t&, const char*, ...);
]]
local ffi_helpers = {
color_print_fn = ffi.cast("console_color_print", ffi.C.GetProcAddress(ffi.C.GetModuleHandleA("tier0.dll"), "?ConColorMsg@@YAXABVColor@@PBDZZ")),
color_print = function(self, text, color)
local col = ffi.new("color_struct_t")
col.r = color:r()
col.g = color:g()
col.b = color:b()
col.a = color:a()
self.color_print_fn(col, text)
end
}
local function coloredPrint(color, text)
ffi_helpers.color_print(ffi_helpers, text, color)
end
coloredPrint(color.new(255, 255, 51), "")
console.execute("clear")
print(name.." Welcome to nepherium release")
coloredPrint(color.new(255, 255, 51), " ---------Update---------\n")
coloredPrint(color.new(255, 255, 51), " v2.6 \n")
coloredPrint(color.new(255, 255, 51), " now location are in lua\n")
coloredPrint(color.new(255, 255, 51), " changed gh desing \n")
coloredPrint(color.new(255, 255, 51), " \n")
coloredPrint(color.new(255, 255, 51), " -------20.09.2021-------\n")
-------------------------------------------------------------------------------------------------API
local function fade(col1, col2, percent)
local r = math.floor(col1[1]*(100-percent)/100.0 + col2[1]*(percent)/100.0)
local g = math.floor(col1[2]*(100-percent)/100.0 + col2[2]*(percent)/100.0)
local b = math.floor(col1[3]*(100-percent)/100.0 + col2[3]*(percent)/100.0)
local a = math.floor(col1[4]*(100-percent)/100.0 + col2[4]*(percent)/100.0)
return color.new(r,g,b,a)
end
local function draw_rect_gradient_left(x, y, x1, y1, colors1, colors2)
for i = 0, x1, x1/255 do
render.draw_rect_filled(x+i, y, 1, y1, fade(colors1, colors2, i/x1*100))
end
end
function draw_rect_gradient_up(a7,a8,a9,aa,ab,ac)
for Q=0,aa,aa/255 do
render.draw_rect_filled(a7,a8+Q,a9,1,fade(ab,ac,Q/aa*100))
end
end
local ffi = require("ffi")
local previoustrails = {}
ffi.cdef[[
typedef struct {
float x;
float y;
float z;
} vec3_t;
struct beam_info_t {
int m_type;
void* m_start_ent;
int m_start_attachment;
void* m_end_ent;
int m_end_attachment;
vec3_t m_start;
vec3_t m_end;
int m_model_index;
const char *m_model_name;
int m_halo_index;
const char *m_halo_name;
float m_halo_scale;
float m_life;
float m_width;
float m_end_width;
float m_fade_length;
float m_amplitude;
float m_brightness;
float m_speed;
int m_start_frame;
float m_frame_rate;
float m_red;
float m_green;
float m_blue;
bool m_renderable;
int m_num_segments;
int m_flags;
vec3_t m_center;
float m_start_radius;
float m_end_radius;
} ;
typedef void (__thiscall* draw_beams_t)(void*, void*);
typedef void*(__thiscall* create_beam_points_t)(void*, struct beam_info_t&);
]]
local render_beams_signature = "B9 ? ? ? ? A1 ? ? ? ? FF 10 A1 ? ? ? ? B9"
local match = utils.find_signature("client.dll", render_beams_signature)
local render_beams = ffi.cast('void**', ffi.cast("char*", match) + 1)[0]
local render_beams_class = ffi.cast("void***", render_beams)
local render_beams_vtbl = render_beams_class[0]
local draw_beams = ffi.cast("draw_beams_t", render_beams_vtbl[6])
local create_beam_points = ffi.cast("create_beam_points_t", render_beams_vtbl[12])
local bor = bit.bor
local new = ffi.new
local g=render.create_font("Verdana",12,100,true,false,false)
local font = render.create_font("Verdana", 12, 100, true, true, false)
local font1 = render.create_font("Verdana", 12, 400, true, true, false)
local font2 = render.create_font( "Verdana", 25, 562, true, true, false )
local types = {"always", "holding", "toggled"}
local get_state, get_mode = menu.get_key_bind_state, menu.get_key_bind_mode
local screen_x, screen_y = engine.get_screen_width(), engine.get_screen_height()
local count = 0
local function add_bind(name, bind_name, x, y)
if get_state(bind_name) then
render.draw_text(font, x, y + 22 + (15 * count), color.new(255, 255, 255), name)
text_width = render.get_text_width(font, "[" .. types[get_mode(bind_name) + 1] .. "]")
render.draw_text(font, x + 151 - text_width - 5, y + 23 + (15 * count), color.new(255, 255, 255), "[" .. types[get_mode(bind_name) + 1] .. "]")
count = count + 1
end
end
-------------------------------------------------------------------------------------------------API
-------------------------------------------------------------------------------------------------force
menu.add_key_bind("FSF-on-Key")
client.add_callback("on_paint", function()
if not engine.is_in_game() then return end
for nomer = 0, 64 do
if menu.get_key_bind_state( "FSF-on-Key" ) == true then
menu.set_bool( "player_list.player_settings[" .. nomer .. "].force_safe_points", true )
else
menu.set_bool( "player_list.player_settings[" .. nomer .. "].force_safe_points", false )
end
end
end)
-------------------------------------------------------------------------------------------------force
-------------------------------------------------------------------------------------------------watermark
menu.add_combo_box( "Watermark", { "None", "Nepherium","MetaMod","GameSense"})
menu.add_combo_box( "MetaMod Style", { "Static", "Gradient"})
local screen_width = engine.get_screen_width()
menu.add_slider_int("Watermark X", 0, screen_width)
menu.add_slider_int("Watermark Y", 0, screen_width)
menu.add_color_picker("Watermark Color")
menu.add_color_picker("Only MetaMod Color")
menu.add_color_picker("Only MetaMod Color 2")
client.add_callback("on_paint", function()
if menu.get_int("Watermark") == 1 then
nepherium()
elseif menu.get_int("Watermark") == 2 then
meta()
elseif menu.get_int("Watermark") == 3 then
skeetw()
end
end)
function nepherium()
local aZ=engine.get_screen_width()
local a_=globals.get_username()
local b0=tostring(globals.get_ping())
local y=math.floor(1.0/globals.get_intervalpertick())
local b1=math.floor(1/globals.get_frametime())
local b2;
local x = menu.get_int("Watermark X")
local y = menu.get_int("Watermark Y")
if engine.is_connected()then
b2=tostring(" nepherium | "..a_.." | delay: "..b0 .."ms | "..y.."tick | "..b1 .." fps")
else
b2=tostring(" nepherium | "..a_.." ")
end;
local b4 = menu.get_color("Watermark Color")
local R=render.get_text_width(g,b2)
local b3=color.new(17,17,17,205)
local b5=R+5;
render.draw_rect_filled(x,y,b5,3,b4)
render.draw_rect_filled(x,y+2,b5,16,b3)
render.draw_text(g,x+2,y+3,b4,b2)
end
function meta()
if menu.get_int("MetaMod Style") == 0 then
local screen_width = engine.get_screen_width()
local username = globals.get_username()
local ping = tostring(globals.get_ping())
local tickrate = math.floor(1.0 / globals.get_intervalpertick())
local get_time = os.date("%X", os.time())
local x = menu.get_int("Watermark X")
local y = menu.get_int("Watermark Y")
--
local text
if engine.is_connected() then
text = tostring(" nepherium | " .. username .. " | delay: " .. ping .. "ms | " .. tickrate .. "tick | "..get_time.. " ")
else
text = tostring(" nepherium | " .. username .. " | " ..get_time.. " ")
end
--
local width = render.get_text_width(font1, text)
--
local line_color = menu.get_color("Watermark Color")
local text_color = color.new(255, 255, 255)
--
local w = width + 5
render.draw_rect_filled(x, y - 1, w, 22, color.new(0,0,0,100))
render.draw_rect_filled(x, y - 1, w, 2, line_color)
render.draw_text(font1, x + 2, y + 4, text_color, text)
elseif menu.get_int("MetaMod Style") == 1 then
local colork = menu.get_color("Watermark Color")
local colors = menu.get_color("Only MetaMod Color")
local colorf = menu.get_color("Only MetaMod Color 2")
local r_first = colork:r()
local g_first = colork:g()
local b_first = colork:b()
local a_first = colork:a()
local r_second = colors:r()
local g_second = colors:g()
local b_second = colors:b()
local a_second = colors:a()
local r_hyist = colorf:r()
local g_hyist = colorf:g()
local b_hyist = colorf:b()
local a_hyist = colorf:a()
local first = {r_first, g_first, b_first, a_first}
local second = {r_second, g_second, b_second, a_second}
local hyist = {r_hyist, g_hyist, b_hyist, a_hyist}
local screen_width = engine.get_screen_width()
local username = globals.get_username()
local ping = tostring(globals.get_ping())
local tickrate = math.floor(1.0 / globals.get_intervalpertick())
local get_time = os.date("%X", os.time())
local x = menu.get_int("Watermark X")
local y = menu.get_int("Watermark Y")
--
local text
if engine.is_connected() then
pizdec = 138
text = tostring(" nepherium | " .. username .. " | delay: " .. ping .. "ms | " .. tickrate .. "tick | "..get_time.. " ")
else
pizdec = 82
text = tostring(" nepherium | " .. username .. " | " ..get_time.. " ")
end
--
local width = render.get_text_width(font, text)
--
local text_color = color.new(255, 255, 255)
--
local w = width + 5
render.draw_rect_filled(x, y - 1, w, 22, color.new(0,0,0,100))
draw_rect_gradient_left(x, y - 1, w - pizdec, 2, first, second)
draw_rect_gradient_left(x + pizdec, y - 1, w - pizdec, 2, second, hyist)
render.draw_text(font, x + 2, y + 4, text_color, text)
end
end
function skeetw()
local x = menu.get_int("Watermark X")
local y = menu.get_int("Watermark Y")
local screen_width = engine.get_screen_width()
local username = globals.get_username()
local ping = tostring(globals.get_ping())
local tickrate = math.floor(1.0 / globals.get_intervalpertick())
local ip = globals.get_server_address()
local pl = globals.get_maxclients()
local color = menu.get_color("Watermark Color")
local text
if engine.is_connected() then
text1 = tostring("game")
text2 = tostring(" sense")
text = tostring(" | " .. username .. " | " .. ping .. "ms | " .. ip .. "")
else
text1 = tostring("game")
text2 = tostring(" sense")
text = tostring(" | " .. username .. " | 0 ms | Offline " )
end
local width = render.get_text_width(font, text)
local text_color = color.new(255, 255, 255)
local w = width + 5
render.draw_rect_filled(x - 6, y - 6, w + 13, 26, color.new(0, 0, 0, 255))
render.draw_rect_filled(x - 5, y - 5, w + 11, 24, color.new(34, 34, 34, 255))
render.draw_rect_filled(x + 1, y, w, 13, color.new(0, 0, 0, 255))
render.draw_rect(x - 1, y - 1, w + 3,15, color.new(56, 56, 56, 255))
render.draw_rect(x - 5, y - 5, w + 11, 24, color.new(56, 56, 56, 255))
render.draw_text(font, x + 3, y , text_color, text)
render.draw_text(font, x + 3, y , color.new(255, 255, 255, 255), text1)
render.draw_text(font, x + 2, y , color, text2)
end
menu.next_line()
-------------------------------------------------------------------------------------------------watermark
-------------------------------------------------------------------------------------------------Keybindings
menu.add_combo_box( "Keybindings", { "None", "KeyBind 1","MetaMod"})
local screen_width = engine.get_screen_width()
menu.add_slider_int("Keybindings X", 0, screen_width)
menu.add_slider_int("Keybindings Y", 0, screen_width)
menu.add_color_picker("Keybindings Color")
menu.add_color_picker("Keybindings Color 2")
client.add_callback("on_paint", function()
if menu.get_int("Keybindings") == 1 then
keyb()
elseif menu.get_int("Keybindings") == 2 then
metamod()
end
end)
function keyb()
local colork = menu.get_color("Keybindings Color")
local colors = menu.get_color("Keybindings Color 2")
local y = menu.get_int("Keybindings Y")
local x = menu.get_int("Keybindings X")
local size = 1
local dmg = menu.get_key_bind_state("rage.force_damage_key")
local sw = menu.get_key_bind_state("misc.slow_walk_key")
local fd = menu.get_key_bind_state("anti_aim.fake_duck_key")
local jump = menu.get_key_bind_state("misc.edge_jump_key")
local autopeek = menu.get_key_bind_state("misc.automatic_peek_key")
local back = menu.get_key_bind_state("anti_aim.manual_back_key")
local right = menu.get_key_bind_state("anti_aim.manual_right_key")
local left = menu.get_key_bind_state("anti_aim.manual_left_key")
local fk = menu.get_key_bind_state("anti_aim.manual_forward_key")
local hs = menu.get_key_bind_state("rage.hide_shots_key")
local dt = menu.get_key_bind_state("rage.double_tap_key")
--
if (menu.get_key_bind_state("rage.double_tap_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "double tap")
size = size + 1
end
--
if(menu.get_key_bind_state("rage.hide_shots_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "Hide Shots")
size = size + 1
end
--
if(menu.get_key_bind_state("anti_aim.manual_forward_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "anti-aim forward ")
size = size + 1
end
--
if(menu.get_key_bind_state("anti_aim.manual_left_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "anti-aim right")
size = size + 1
end
--
if(menu.get_key_bind_state("anti_aim.manual_right_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "anti-aim left")
size = size + 1
end
--
if(menu.get_key_bind_state("anti_aim.manual_back_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "anti-aim back")
size = size + 1
end
--
if(menu.get_key_bind_state("misc.automatic_peek_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "auto peek")
size = size + 1
end
--
if(menu.get_key_bind_state("misc.edge_jump_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "edge jump")
size = size + 1
end
--
if(menu.get_key_bind_state("anti_aim.fake_duck_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "fake duck")
size = size + 1
end
--
if(menu.get_key_bind_state("misc.slow_walk_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "slow walk")
size = size + 1
end
--
if(menu.get_key_bind_state("rage.force_damage_key")) then
render.draw_text(font, x + 1, y + 7 + 15 * size, color.new(255, 255, 255), "min.dmg")
size = size + 1
end
--
if not dmg and not sw and not fd and not jump and not autopeek and not bac and not right and not left and not fk and not hs and not dt then
render.draw_rect_filled(x, y + 2, 100, 18, color.new(0, 0, 0, 0))
render.draw_rect_filled(x, y, 120, 2, color.new(0, 0, 0, 0))
render.draw_text(font, x + 31, y + 3, color.new(0, 0, 0, 0), " KeyBinds")
else
local r_first = colork:r()
local g_first = colork:g()
local b_first = colork:b()
local a_first = colork:a()
local r_second = colors:r()
local g_second = colors:g()
local b_second = colors:b()
local a_second = colors:a()
local first = {r_first, g_first, b_first, a_first}
local second = {r_second, g_second, b_second, a_second}
render.draw_rect_filled(x, y + 2, 120, 18, color.new(17, 17, 17, 205))
draw_rect_gradient_left(x, y, 120, 2, first, second)
render.draw_text(font, x + 31, y + 3, color.new(255, 255, 255), " KeyBinds")
end
end
function metamod()
count = 0
local y = menu.get_int("Keybindings Y")
local x = menu.get_int("Keybindings X")
if menu.get_int("MetaMod Style") == 0 then
local colork = menu.get_color("Keybindings Color")
local colors = menu.get_color("Keybindings Color 2")
render.draw_rect_filled(x, y - 3, 150, 22, color.new(0,0,0,100))
render.draw_text(font, x + 50, y + 2, color.new(255, 255, 255), "keybinds")
render.draw_rect_filled(x, y - 3, 150, 2, colork)
add_bind("Hide shots", "rage.hide_shots_key", x + 3, y + 1)
add_bind("Edge jump", "misc.edge_jump_key", x + 3, y + 1)
add_bind("Double tap", "rage.double_tap_key", x + 3, y + 1)
add_bind("Slow walk", "misc.slow_walk_key", x + 3, y + 1)
add_bind("Force damage", "rage.force_damage_key", x + 3, y + 1)
add_bind("Invert desync", "anti_aim.invert_desync_key", x + 3, y + 1)
add_bind("Fake duck", "anti_aim.fake_duck_key", x + 3, y + 1)
add_bind("Automatic peek", "misc.automatic_peek_key", x + 3, y + 1)
add_bind("Third person", "misc.third_person_key", x + 3, y + 1)
elseif menu.get_int("MetaMod Style") == 1 then
local colork = menu.get_color("Keybindings Color")
local colors = menu.get_color("Keybindings Color 2")
local r_first = colork:r()
local g_first = colork:g()
local b_first = colork:b()
local a_first = colork:a()
local r_second = colors:r()
local g_second = colors:g()
local b_second = colors:b()
local a_second = colors:a()
local first = {r_first, g_first, b_first, a_first}
local second = {r_second, g_second, b_second, a_second}
render.draw_rect_filled(x, y - 3, 150, 22, color.new(0,0,0,100))
render.draw_text(font, x + 50, y + 2, color.new(255, 255, 255), "keybinds")
draw_rect_gradient_left(x, y - 3, 150, 2, first, second)
add_bind("Hide shots", "rage.hide_shots_key", x + 3, y + 1)
add_bind("Edge jump", "misc.edge_jump_key", x + 3, y + 1)
add_bind("Double tap", "rage.double_tap_key", x + 3, y + 1)
add_bind("Slow walk", "misc.slow_walk_key", x + 3, y + 1)
add_bind("Force damage", "rage.force_damage_key", x + 3, y + 1)
add_bind("Invert desync", "anti_aim.invert_desync_key", x + 3, y + 1)
add_bind("Fake duck", "anti_aim.fake_duck_key", x + 3, y + 1)
add_bind("Automatic peek", "misc.automatic_peek_key", x + 3, y + 1)
add_bind("Third person", "misc.third_person_key", x + 3, y + 1)
end
end
-------------------------------------------------------------------------------------------------Keybindings
-------------------------------------------------------------------------------------------------ClanTag
--"|\\|",
--"N",
--"NE",
--"NE|>",
--"NEP",
--"NEP|-|",
--"NEPH",
--"NEPHE",
--"NEPHER",
--"NEPHER1",
--"NEPHERI",
--"NEPHERIU",
--"NEPHERIU|\\/|",
--"NEPHERIUM",
--"NEPHERIUM.",
--"NEPHERIUM.T",
--"NEPHERIUM.TE",
--"NEPHERIUM.TE<",
--"NEPHERIUM.TEC",
--"NEPHERIUM.TEC|-|",
--"NEPHERIUM.TECH",
--"NEPHERIUM.TECH"
-------------------------------------------------------------------------------------------------ClanTag
-------------------------------------------------------------------------------------------------Anti-Aim
menu.add_combo_box("Anti-Aim Types:",{"None","Def-Static","LowDelta","Preset-1","Preset-2","Legit","Preset-3","Kotana priset"})
client.add_callback("on_paint", function()
if menu.get_int("Anti-Aim Types:")==1 then
menu.set_int("anti_aim.pitch",1)
menu.set_int("anti_aim.target_yaw",1)
menu.set_bool("anti_aim.enable_fake_lag",false)
menu.set_int("anti_aim.desync_type",1)
menu.set_int("anti_aim.desync_range_inverted",60)
menu.set_int("anti_aim.desync_range",60)
elseif menu.get_int("Anti-Aim Types:")==2 then
menu.set_int("anti_aim.pitch",1)
menu.set_int("anti_aim.target_yaw",1)
menu.set_bool("anti_aim.enable_fake_lag",true)
menu.set_int("anti_aim.desync_type",1)
menu.set_int("anti_aim.desync_range_inverted",math.random(15,17))
menu.set_int("anti_aim.desync_range",math.random(15,17))
elseif menu.get_int("Anti-Aim Types:")==3 then
menu.set_int("anti_aim.pitch",1)
menu.set_int("anti_aim.target_yaw",1)
menu.set_bool("anti_aim.enable_fake_lag",true)
menu.set_int("anti_aim.desync_type",2)
menu.set_int("anti_aim.desync_range_inverted",math.random(15,20))
menu.set_int("anti_aim.desync_range",math.random(15,20))
menu.set_int("anti_aim.fake_lag_limit",math.random(8,15))
elseif menu.get_int("Anti-Aim Types:")==4 then
menu.set_bool("anti_aim.enable_fake_lag",true)
menu.set_int("anti_aim.fake_lag_limit",math.random(8,15))
elseif menu.get_int("Anti-Aim Types:")==5 then
menu.set_int("anti_aim.pitch",0)
menu.set_int("anti_aim.yaw_offset",180)
menu.set_int("anti_aim.target_yaw",1)
menu.set_bool("anti_aim.enable_fake_lag",true)
menu.set_int("anti_aim.desync_type",1)
elseif menu.get_int("Anti-Aim Types:")==6 then
menu.set_int("anti_aim.pitch",1)
menu.set_int("anti_aim.target_yaw",1)
menu.set_int("anti_aim.desync_type",1)
menu.set_bool("anti_aim.enable_fake_lag",true)
menu.set_int("anti_aim.fake_lag_type",2)
menu.set_int("anti_aim.fake_lag_limit",math.random(8,16))
menu.set_int("anti_aim.desync_range_inverted",math.random(0,40))
menu.set_int("anti_aim.desync_range",math.random(0,40))
elseif menu.get_int("Anti-Aim Types:")==7 then
menu.set_bool("anti_aim.enable_fake_lag",true)
menu.set_int("anti_aim.pitch",1)
menu.set_int("anti_aim.target_yaw",0)
menu.set_int("anti_aim.fake_lag_type",math.random(0,3))
menu.set_int("anti_aim.desync_type",1)
menu.set_int("anti_aim.fake_lag_limit",math.random(6,16))
menu.set_int("anti_aim.desync_range_inverted",math.random(0,60))
menu.set_int("anti_aim.desync_range",math.random(0,60))
menu.set_int("anti_aim.yaw_offset",0)
end
end)
-------------------------------------------------------------------------------------------------Anti-Aim
-------------------------------------------------------------------------------------------------Indicators
menu.add_check_box("Indicators")
client.add_callback("on_paint", function()
if menu.get_bool("Indicators") then
skeetindicators()
end
end)
function skeetindicators()
local game = engine.is_in_game()
local color0 = color.new(248, 244, 255)
local color1 = color.new(214, 214, 214)
local color2 = color.new(132, 196, 16)
local x, y = engine.get_screen_width() / 115 , engine.get_screen_height() / 1.60
local dt = menu.get_key_bind_state( "rage.double_tap_key" )
local fd = menu.get_key_bind_state( "anti_aim.fake_duck_key" )
local hs = menu.get_key_bind_state( "rage.hide_shots_key" )
local ap = menu.get_key_bind_state( "misc.automatic_peek_key" )
local dmg = menu.get_key_bind_state("rage.force_damage_key")
local fl = menu.get_int("anti_aim.fake_lag_limit")
local fl1 = menu.get_bool("anti_aim.enable_fake_lag")
if game then
local lp = entitylist.get_local_player()
local lp_health = lp:get_health()
if lp_health > 0 then
if dt then
s1 = 25
render.draw_text( font2, x, y, color0, "DT" )
else
s1 = 0
end
if hs then
s2 = 25
render.draw_text( font2, x, y + s1, color.new(132, 196, 16), "ONSHOT" )
else
s2 = 0
end
if dmg then
s3 = 25
render.draw_text( font2, x, y + s1 + s2, color1, "DMG")
else
s3 = 0
end
if fd then
s4 = 25
render.draw_text( font2, x, y + s1 + s2 + s3, color0, "DUCK" )
else
s4 = 0
end
if ap then
s5 = 25
render.draw_text( font2, x, y + s1 + s2 + s3 + s4, color0, "QUICK PEEK" )
else
s5 = 0
end
if fl1 then
s6 = 25
render.draw_text( font2, x, y + s1 + s2 + s3 + s4 + s5, color.new(138, 200, 255), "FL:" ..fl)
else
s6 = 0
end
end
end
end
-------------------------------------------------------------------------------------------------scope
menu.add_check_box("Skeet Scope")
menu.next_line()
menu.add_color_picker("Scope Color first")
menu.add_color_picker("Scope Color second")
menu.add_slider_int("Line width", 1, 1250)
menu.add_slider_int("Line length", 25, 255)
menu.add_check_box("Viewmodel on scope")
client.add_callback("on_paint", function()
if engine.is_connected() then
if menu.get_bool("Skeet Scope") then
skeet_crosshair()
end
end
end)
function skeet_crosshair()
local b6=entitylist.get_local_player()
local is_scoped=b6:is_scoped()
local b7=menu.get_bool("Viewmodel on scope")
if b7 and is_scoped then
console.set_int("fov_cs_debug",90)
else
console.set_int("fov_cs_debug",0)
end
if is_scoped then
console.set_int("cl_drawhud",1)
local ba=engine.get_screen_width()
local bb=engine.get_screen_height()
local aH=menu.get_color("Scope Color first")
local aI=aH:r()
local aJ=aH:g()
local aK=aH:b()
local aL=aH:a()
local aM=menu.get_color("Scope Color second")
local aN=aM:r()
local aO=aM:g()
local aP=aM:b()
local aQ=aM:a()
local R=menu.get_int("Line width")
local bc=menu.get_int("Line length")
local aW={aI,aJ,aK,aL}
local aX={aN,aO,aP,aQ}
draw_rect_gradient_left(ba/2+R,bb/2-1,bc,2,aW,aX)
draw_rect_gradient_left(ba/2-R-bc,bb/2-1,bc,2,aX,aW)
draw_rect_gradient_up(ba/2-1,bb/2-R-bc,2,bc,aX,aW)
draw_rect_gradient_up(ba/2-1,bb/2+R,2,bc,aW,aX)
else
console.set_int("cl_drawhud",1)
end
end
-------------------------------------------------------------------------------------------------scope
-------------------------------------------------------------------------------------------------trail
menu.add_check_box("Trail")
menu.add_slider_int('Trail Length', 1, 10 )
menu.add_slider_int('Trail Size', 1, 50 )
local function trail()
local lp = entitylist.get_local_player()
--if lp ~= nil then
local origin = lp:get_origin()
local r = math.floor(math.sin(globals.get_realtime() * 2) * 127 + 128)
local g = math.floor(math.sin(globals.get_realtime() * 2 + 2) * 127 + 128)
local b = math.floor(math.sin(globals.get_realtime() * 2 + 4) * 127 + 128)
previoustrails[#previoustrails+1] = { x = origin.x, y = origin.y, z = origin.z, tick = tonumber(globals.get_tickcount()) + 50, draw = true, r = r, g = g, b = b}
local pt = #previoustrails
for i = 1, pt do
if i > 2 then
local trail = previoustrails[i]
local trailtwo = previoustrails[i - 1]
local beam_info = new("struct beam_info_t")
beam_info.m_type = 0x00
beam_info.m_model_index = -1
beam_info.m_halo_scale = 0
beam_info.m_life = menu.get_int( 'Trail Length' )
beam_info.m_fade_length = 1
beam_info.m_width = menu.get_int( 'Trail Size' ) * .1
beam_info.m_end_width = menu.get_int( 'Trail Size' ) * .1
beam_info.m_model_name = "sprites/purplelaser1.vmt"
beam_info.m_amplitude = 2.3
beam_info.m_speed = 0.2
beam_info.m_start_frame = 0
beam_info.m_frame_rate = 0
beam_info.m_red = trail.r
beam_info.m_green = trail.g
beam_info.m_blue = trail.b
beam_info.m_brightness = 255
beam_info.m_num_segments = 2
beam_info.m_renderable = true
beam_info.m_flags = bor(0x00000100 + 0x00000200 + 0x00008000)
beam_info.m_start = {trail.x,trail.y,trail.z}
beam_info.m_end = {trailtwo.x,trailtwo.y,trailtwo.z}
local beam = create_beam_points(render_beams_class, beam_info)
if beam ~= nil then
draw_beams(render_beams, beam)
end
if i > 3 then
table.remove(previoustrails, i - 2)
end
end
end
--end
end
client.add_callback( 'create_move', function()
if menu.get_bool("Trail") then
trail()
end
end)
-------------------------------------------------------------------------------------------------trail
-------------------------------------------------------------------------------------------------hit/miss log
local gpinf = engine.get_player_info
local function hitlog(shot_info)
local results = shot_info.result
local target = shot_info.target_index
local targetname = gpinf(target).name
local serverdamage = shot_info.server_damage
local clientdamage = shot_info.client_damage
local serverhitbox = shot_info.server_hitbox
local clienthitbox = shot_info.client_hitbox
local hitchance = shot_info.hitchance
local backtrack = shot_info.backtrack_ticks
local safe = tostring(shot_info.safe)
if results == "Hit" then
client.log("[Nepherium] Hit " .. targetname .. " for " .. serverdamage .. " in " .. serverhitbox .. " | hc: " .. hitchance .. " | clientdmg: " .. clientdamage .. " | clienthb: " .. clienthitbox .. " | backtrack: " .. backtrack .. " | safe: " .. safe)
end
if results == "Spread" then
client.log("[Nepherium] Missed " .. targetname .. " due to spread | hc: " .. hitchance .. " | clientdmg: " .. clientdamage .. " | serverdmg: " .. serverdamage .. " | clienthb: " .. clienthitbox .. " | serverhb: " .. serverhitbox .. " | backtrack: " .. backtrack .. " | safe: " .. safe)
end
if results == "Resolver" then
client.log("[Nepherium] Missed " .. targetname .. " due to resolver | hc: " .. hitchance .. " | clientdmg: " .. clientdamage .. " | serverdmg: " .. serverdamage .. " | clienthb: " .. clienthitbox .. " | serverhb: " .. serverhitbox .. " | backtrack: " .. backtrack .. " | safe: " .. safe)
end
end
client.add_callback("on_shot", hitlog)
-------------------------------------------------------------------------------------------------hit/miss log
-------------------------------------------------------------------------------------------------GH
local ffi = require("ffi")
require "grenade_helper_locations"
ffi.cdef[[
int MessageBoxA(void *w, const char *txt, const char *cap, int type);
bool CreateDirectoryA(const char* lpPathName, void* lpSecurityAttributes);
int exit(int arg);
void* __stdcall URLDownloadToFileA(void* LPUNKNOWN, const char* LPCSTR, const char* LPCSTR2, int a, int LPBINDSTATUSCALLBACK);
void* __stdcall ShellExecuteA(void* hwnd, const char* op, const char* file, const char* params, const char* dir, int show_cmd);
int AddFontResourceA(const char* unnamedParam1);
bool DeleteUrlCacheEntryA(const char* lpszUrlName);
]]
local w = 0
local urlmon = ffi.load 'UrlMon'
local wininet = ffi.load 'WinInet'
local gdi = ffi.load 'Gdi32'
local text_alpha = 0
function download(from, to)
wininet.DeleteUrlCacheEntryA(from)
urlmon.URLDownloadToFileA(nil, from, to, 0,0)
end;
ffi.C.CreateDirectoryA("C:\\grenadeh", NULL)
ffi.C.CreateDirectoryA("C:\\grenadeh\\font", NULL)
download("https://github.com/katanahvh1337/ok/blob/main/undefeated.ttf?raw=true", "C:\\grenadeh\\font\\undefeated.ttf")
gdi.AddFontResourceA( "C:\\grenadeh\\font\\undefeated.ttf")
menu.add_check_box("Enable grenade helper")
menu.next_line()
menu.add_slider_int( "Distance" , 500, 2500 )
menu.add_key_bind("Auto-throw key")
menu.add_slider_int( "Advanced thirdpreson distance", 100, 1000 )
local font_undefeated = render.create_font( "undefeated", 35, 300, true, false, true )
function DistTo(a, vOther)
local delta = vector.new(0,0,0);
delta.x = a.x - vOther.x;
delta.y = a.y - vOther.y;
return delta:length();
end
OR, AND = 1, 4
function bitoper(a, b, oper)
local r, m, s = 0, 2^31
repeat
s,a,b = a+b+m, a%m, b%m
r,m = r + m*oper%(s-a-b), m/2
until m < 1
return r
end
function GetTableLng(tbl)
local getN = 0
for n in pairs(tbl) do
getN = getN + 1
end
return getN
end
local old_tpd = menu.get_int( "misc.third_person_distance")
local movepos = vector.new(0,0,0);
local throw_angles = vector.new(0,0,0);
local locations_count = GetTableLng(grenade_helper_locations)
local segoe = render.create_font("Segoe UI", 14, 400, true, true, false)
local delay_time = 0
local throw_time = 0
local attack2_time = -1
function angle_to_vec(pitch, yaw)
if pitch ~= nil then
local p = pitch * math.pi / 180;
local y = yaw * math.pi / 180;
local sin_p = math.sin(p);
local cos_p = math.cos(p);
local sin_y = math.sin(y);
local cos_y = math.cos(y);
return vector.new(cos_p * cos_y, cos_p * sin_y, -sin_p);
end
return vector.new(0, 0, 0)
end
local movetype
local returned_to_start_pos = false
local prev_autostrafe
--[[ TASER: "h"
HEGRENADE: "j"
MOLOTOV: "l"
]]
function on_paint()
local local_player = entitylist.get_local_player()
local rdist = menu.get_int("Distance")
if local_player and local_player:get_health() > 0 then
local origin = local_player:get_origin()
if menu.get_bool("Enable grenade helper") and movepos.x == 0 and movepos.y == 0 and movepos.z == 0 then
returned_to_start_pos = false
for i=1, locations_count, 1 do
local this_location = grenade_helper_locations[i];
local this_weapon = entitylist.get_weapon_by_player(local_player)
if this_weapon then
definition_index = this_weapon:get_prop_int('CBaseCombatWeapon', 'm_iItemDefinitionIndex');
end
local is_he = definition_index == 44
local is_molotov = (definition_index == 48) or (definition_index == 46)
if(this_location[1] == engine.get_level_name_short() and (is_he and this_location[3] or is_molotov and this_location[4])) then
local world_pos = vector.new(this_location[6][1], this_location[6][2], this_location[6][3])
local apos = angle_to_vec(this_location[7][1], this_location[7][2])
apos = vector.new(apos.x * 400 + this_location[6][1], apos.y * 400 + this_location[6][2], apos.z * 400 + this_location[6][3] + 64)
local distance_to_pos = DistTo(origin,world_pos)
if (distance_to_pos < rdist) then
local pos = render.world_to_screen(world_pos)
local aim_pos = render.world_to_screen(apos);
if pos.x ~= 0 and pos.y ~= 0 then
local white_color
text_alpha = math.max(0,math.floor(math.min((rdist-distance_to_pos)*2-2,150)))
--print(tostring(text_alpha))
text_alpha1 = math.max(0,math.floor(math.min((rdist-distance_to_pos)*2-2,255)))
local icon = 'l'
if is_he then
icon = 'j'
end
local namec = color.new(110,110,255,text_alpha1)
local descc = color.new(180,180,255,text_alpha1)
local iconc = color.new(150,150,255,text_alpha)
local rectc = color.new(8,8,15,text_alpha)
render.draw_rect_filled( pos.x-w, pos.y-30, w, 35, rectc )
render.draw_rect( pos.x-w, pos.y-30, w, 35, rectc )
render.draw_text(segoe , pos.x+30-w , pos.y-30 , namec, this_location[5])
render.draw_text(segoe , pos.x+30-w , pos.y-15 , descc, this_location[2])
render.draw_text(font_undefeated , pos.x-w , pos.y-30 , iconc, icon)
w = render.get_text_width( font_undefeated, icon)
if ( distance_to_pos < 50 ) and aim_pos.x ~= 0 and aim_pos.y ~= 0 then
render.draw_circle_filled(aim_pos.x,aim_pos.y,60, 7, color.new(255, 255, 255, 200))
end
if ( distance_to_pos < 50 ) then
if menu.get_key_bind_state("Auto-throw key") then
movepos = world_pos
movetype = this_location[2]
throw_time = 0
prev_autostrafe = menu.get_int('misc.automatic_strafe')
delay_time = this_location[8]
throw_angles = vector.new(this_location[7][1], this_location[7][2], this_location[7][3])
end
end
end
end
end
end
end
menu.set_int( "misc.third_person_distance", menu.get_int("Advanced thirdpreson distance") )
end
end
IN_ATTACK = 1
IN_JUMP = 2
IN_DUCK = 4
IN_FORWARD = 8
IN_LEFT = 128
IN_RIGHT = 256
IN_ATTACK2 = 2048
local backup_st
local next_aim_angle = vector.new(0,0,0)
local ticks = 0
local run_dir_time = -1
function on_createmove(cmd)
local local_player = entitylist.get_local_player()
local current_pos = local_player:get_origin()
if movepos.x ~= 0 and movepos.y ~= 0 and movepos.z ~= 0 then
cmd.buttons = 17
if not returned_to_start_pos then
local vec_forward = {
x = current_pos.x - movepos.x,
y = current_pos.y - movepos.y,
z = current_pos.z - movepos.z
}
local yaw = engine.get_view_angles().y
local t_velocity = {
x = vec_forward.x * math.cos(yaw / 180 * math.pi) + vec_forward.y * math.sin(yaw / 180 * math.pi),
y = vec_forward.y * math.cos(yaw / 180 * math.pi) - vec_forward.x * math.sin(yaw / 180 * math.pi),
z = vec_forward.z
}
cmd.forwardmove = -t_velocity.x * 20
cmd.sidemove = t_velocity.y * 20
if (DistTo(movepos, current_pos) < 0.1) then
returned_to_start_pos = true
end
else
if (throw_time == 0) then
throw_time = globals.get_tickcount() + delay_time
end
cmd.viewangles.x = throw_angles.x
cmd.viewangles.y = throw_angles.y
if movetype == 'Runthrow' then
run_dir_time = run_dir_time + 1
cmd.buttons = bitoper(IN_FORWARD, cmd.buttons, OR)
cmd.forwardmove = 450
end
if movetype == 'RunJumpthrow' then
run_dir_time = run_dir_time + 1
cmd.buttons = bitoper(IN_FORWARD, cmd.buttons, OR)
cmd.forwardmove = 450
menu.set_int('misc.automatic_strafe', 0)
cmd.buttons = IN_JUMP
end
if movetype == 'Runleft' then
run_dir_time = run_dir_time + 1
cmd.buttons = bitoper(IN_LEFT, cmd.buttons, OR)
cmd.sidemove = -450
end
if movetype == 'Runright' then
run_dir_time = run_dir_time + 1
cmd.buttons = bitoper(IN_RIGHT, cmd.buttons, OR)
cmd.sidemove = 450
end
if movetype == 'Halfthrow' then
cmd.buttons = IN_ATTACK2
attack2_time = attack2_time + 1
end
if movetype == 'Jumpthrow' then
menu.set_int('misc.automatic_strafe', 0)
cmd.buttons = IN_JUMP
cmd.forwardmove = 0
cmd.sidemove = 0
else
menu.set_int('misc.automatic_strafe', 2)
end
if ((movetype == 'Jumpthrow' and local_player:get_velocity().z < 2) or (movetype ~= 'Jumpthrow')) and throw_time < globals.get_tickcount() and ((attack2_time > 30) or (attack2_time == -1)) and ((run_dir_time == -1) or (run_dir_time > 28)) then
next_aim_angle = throw_angles
cmd.buttons = bitoper(IN_ATTACK, cmd.buttons, OR)
movepos = vector.new(0,0,0)
attack2_time = -1
run_dir_time = -1
end
end
end
if next_aim_angle.x ~= 0 and next_aim_angle.y ~= 0 then
cmd.viewangles.x = next_aim_angle.x
cmd.viewangles.y = next_aim_angle.y
ticks = ticks + 1
if (ticks > 24) then
next_aim_angle = vector.new(0,0,0)
if movetype == 'Jumpthrow' then
menu.set_int('misc.automatic_strafe', prev_autostrafe)
end
ticks = 0
movetype = ''
end
end
end;
client.add_callback("on_paint", on_paint)
client.add_callback("create_move", on_createmove)
client.add_callback("unload", function()
menu.set_int( "misc.third_person_distance", old_tpd )
end)
-------------------------------------------------------------------------------------------------GH
-------------------------------------------------------------------------------------------------ideal-yaw
local screenx, screeny = engine.get_screen_width(), engine.get_screen_height()
menu.add_check_box( 'ideal-yaw indicators')
variables = {
count = 0,
alpha = 0,
font = render.create_font("Arial", 13, 100, true, false, false),
pos_x = engine.get_screen_width()/2, -- default x value
pos_y = engine.get_screen_height()/2, -- default y value
backup = false,
diff_x = 0,
diff_y = 0
}
local types = {"always", "holding", "toggled"}
local get_state, get_mode = menu.get_key_bind_state, menu.get_key_bind_mode
local draw_stuff = {
r = math.floor(math.sin(globals.get_realtime() * 2) * 127 + 128),
g = math.floor(math.sin(globals.get_realtime() * 2 + 2) * 127 + 128),
b = math.floor(math.sin(globals.get_realtime() * 2 + 4) * 127 + 128),
r1 = math.floor(math.sin(globals.get_realtime() * 2 + 2) * 127 + 128),
g1 = math.floor(math.sin(globals.get_realtime() * 2 + 4) * 127 + 128),
b1 = math.floor(math.sin(globals.get_realtime() * 2 + 6) * 127 + 128),
w = 150,
h = 20,
cond = engine.is_in_game() and entitylist.get_local_player() and entitylist.entity_to_player(entitylist.get_local_player()):get_health() > 0,
}
local add_bind = function(arr, x, y, cond, rtfade)
if get_state(arr[2]) and cond then
if arr[1] == 'DT' then
if get_state('anti_aim.fake_duck_key') then
render.draw_text(variables.font, x + 2, y + 25 + (10 * variables.count), color.new(255,0,0, rtfade), 'DT(FD)')
else
render.draw_text(variables.font, x + 2, y + 25 + (10 * variables.count), arr[3], arr[1])
end
else
render.draw_text(variables.font, x + 2, y + 25 + (10 * variables.count), arr[3], arr[1])
end
variables.count = variables.count + 1
end
end
client.add_callback("on_paint", function()
if menu.get_bool( 'ideal-yaw indicators' ) then
local realtime_fade = math.floor(math.sin(globals.get_realtime() * 2) * 127 + 128)
local names = {
{"HIDE", "rage.hide_shots_key", color.new(93, 146, 252, realtime_fade)},
{"DT", "rage.double_tap_key", color.new(59, 255, 75, realtime_fade)},
{"DMG", "rage.force_damage_key", color.new(59, 255, 75, realtime_fade) },
{"DUCK", "anti_aim.fake_duck_key", color.new(255,0,0, realtime_fade) },
{"RIGHT", "anti_aim.manual_right_key", color.new(255,0,0, realtime_fade) },
{"LEFT", "anti_aim.manual_left_key", color.new(255,0,0, realtime_fade) },
}
render.draw_text(variables.font, engine.get_screen_width()/2+2, engine.get_screen_height()/2 +5,color.new(250, 137, 50),"NEPHERIUM")
render.draw_text(variables.font, engine.get_screen_width()/2+2, engine.get_screen_height()/2 +15,color.new(166, 130, 250),"DYNAMIC")
variables.count = 0
for _, v in pairs(names) do
add_bind(v, variables.pos_x, variables.pos_y, draw_stuff.cond, realtime_fade)
end
end
end)
-------------------------------------------------------------------------------------------------ideal-yaw
-------------------------------------------------------------------------------------------------Crosshair-Indicator
local ffi = require('ffi')
ffi.cdef([[
typedef uintptr_t (__thiscall* GetClientEntity_4242425_t)(void*, int);
typedef struct
{
float x;
float y;
float z;
} Vector_t;
typedef struct
{
char pad0[0x60]; // 0x00
void* pEntity; // 0x60
void* pActiveWeapon; // 0x64
void* pLastActiveWeapon; // 0x68
float flLastUpdateTime; // 0x6C
int iLastUpdateFrame; // 0x70
float flLastUpdateIncrement; // 0x74
float flEyeYaw; // 0x78
float flEyePitch; // 0x7C
float flGoalFeetYaw; // 0x80
float flLastFeetYaw; // 0x84
float flMoveYaw; // 0x88
float flLastMoveYaw; // 0x8C // changes when moving/jumping/hitting ground
float flLeanAmount; // 0x90
char pad1[0x4]; // 0x94
float flFeetCycle; // 0x98 0 to 1
float flMoveWeight; // 0x9C 0 to 1
float flMoveWeightSmoothed; // 0xA0
float flDuckAmount; // 0xA4
float flHitGroundCycle; // 0xA8
float flRecrouchWeight; // 0xAC
Vector_t vecOrigin; // 0xB0
Vector_t vecLastOrigin;// 0xBC
Vector_t vecVelocity; // 0xC8
Vector_t vecVelocityNormalized; // 0xD4
Vector_t vecVelocityNormalizedNonZero; // 0xE0
float flVelocityLenght2D; // 0xEC
float flJumpFallVelocity; // 0xF0
float flSpeedNormalized; // 0xF4 // clamped velocity from 0 to 1
float flRunningSpeed; // 0xF8
float flDuckingSpeed; // 0xFC
float flDurationMoving; // 0x100
float flDurationStill; // 0x104
bool bOnGround; // 0x108
bool bHitGroundAnimation; // 0x109
char pad2[0x2]; // 0x10A
float flNextLowerBodyYawUpdateTime; // 0x10C
float flDurationInAir; // 0x110
float flLeftGroundHeight; // 0x114
float flHitGroundWeight; // 0x118 // from 0 to 1, is 1 when standing
float flWalkToRunTransition; // 0x11C // from 0 to 1, doesnt change when walking or crouching, only running
char pad3[0x4]; // 0x120
float flAffectedFraction; // 0x124 // affected while jumping and running, or when just jumping, 0 to 1
char pad4[0x208]; // 0x128
float flMinBodyYaw; // 0x330
float flMaxBodyYaw; // 0x334
float flMinPitch; //0x338
float flMaxPitch; // 0x33C
int iAnimsetVersion; // 0x340
} CCSGOPlayerAnimationState_534535_t;
typedef int BOOL;
typedef long LONG;
typedef struct{
LONG x, y;
}POINT, *LPPOINT;
BOOL GetCursorPos(LPPOINT);
short GetAsyncKeyState(int);
]])
local screenx, screeny = engine.get_screen_width(), engine.get_screen_height()
menu.add_check_box( 'Crosshair Indicators')
menu.add_check_box( 'Enable Desync Line' )
menu.add_color_picker( 'Desync Line Color' )
menu.add_check_box( 'Enable LagSync' )
variables = {
count = 0,
alpha = 0,
font = render.create_font("Segoe UI", 17, 400, true, true, false),
pos_x = engine.get_screen_width()/2, -- default x value
pos_y = engine.get_screen_height()/2, -- default y value
backup = false,
diff_x = 0,
diff_y = 0
}
local types = {"always", "holding", "toggled"}
local get_state, get_mode = menu.get_key_bind_state, menu.get_key_bind_mode
local lscheck = 0
function lagsync(cmd)
if menu.get_bool( 'Enable LagSync' ) then
if not menu.get_key_bind_state( "rage.double_tap_key" ) and not menu.get_key_bind_state( "rage.hide_shots_key" ) then
local curtime = globals.get_curtime()
local tickcount = cmd.tickcount
--print(tostring(tickcount))
if lscheck < tickcount then
if menu.get_bool( "anti_aim.invert_desync_key" ) then
menu.set_bool("anti_aim.invert_desync_key", false)
else
menu.set_bool("anti_aim.invert_desync_key", true)
end
lscheck = tickcount + ( menu.get_int( 'anti_aim.fake_lag_limit' ) / 2 )
end
end
end
end
local names = {
{"LagSync", "Enable LagSync", color.new(255, 205, 205), 0, -10 },
{"HideShots", "rage.hide_shots_key", color.new(133, 186, 252), 0, -10},
{"DoubleTap", "rage.double_tap_key", color.new(59, 255, 75), 0, -10},
{"FakeDuck", "anti_aim.fake_duck_key", color.new(240, 25, 25), 0, -10 },
{"MinDamage", "rage.force_damage_key", color.new(255, 255, 255), 0, -10 },
{"SlowWalk", "misc.slow_walk_key", color.new(205, 205, 255), 0, -10 },
}
local draw_stuff = {
r = math.floor(math.sin(globals.get_realtime() * 2) * 127 + 128),
g = math.floor(math.sin(globals.get_realtime() * 2 + 2) * 127 + 128),
b = math.floor(math.sin(globals.get_realtime() * 2 + 4) * 127 + 128),
r1 = math.floor(math.sin(globals.get_realtime() * 2 + 2) * 127 + 128),
g1 = math.floor(math.sin(globals.get_realtime() * 2 + 4) * 127 + 128),
b1 = math.floor(math.sin(globals.get_realtime() * 2 + 6) * 127 + 128),
w = 150,
h = 20,
cond = engine.is_in_game() and entitylist.get_local_player() and entitylist.entity_to_player(entitylist.get_local_player()):get_health() > 0,
}
local add_bind = function(arr, x, y, cond)
if not arr[1] == "LagSync" then
if get_state(arr[2]) and cond then
arr[4] = math.min(255, arr[4] + 4)
arr[5] = math.min( 0, arr[5] + 0.6 )
else
arr[4] = math.max(arr[4] - 12, 0)
end
else
if menu.get_bool( arr[2] ) and cond then
arr[4] = math.min(255, arr[4] + 4)
arr[5] = math.min( 0, arr[5] + 0.6 )
else
arr[4] = math.max(arr[4] - 12, 0)
end
end
if arr[4] > 0 then
local clr = arr[3]
local r = clr:r()
local g = clr:g()
local b = clr:b()
local addy = arr[5]
local addy2
if menu.get_bool( 'Enable Desync Line' ) then
addy2 = 20
else
addy2 = 0
end
if arr[2] == 'rage.double_tap_key' then
if get_state('anti_aim.fake_duck_key') then
render.draw_text_centered( variables.font, x + 2, y + 10 + addy + addy2 + (14 * variables.count), color.new(200, 55, 55, arr[4]), true, false, 'DoubleTap(FD)' )
else
render.draw_text_centered( variables.font, x + 2, y + 10 + addy + addy2 + (14 * variables.count), color.new(r,g,b, arr[4]), true, false, arr[1])
end
else
render.draw_text_centered( variables.font, x + 2, y + 10 + addy + addy2 + (14 * variables.count), color.new(r,g,b, arr[4]), true, false, arr[1])
end
variables.count = variables.count + math.min((arr[4]/40), 1)
else
arr[5] = -10
end
end
local entity_list_ptr = ffi.cast("void***", utils.create_interface("client.dll", "VClientEntityList003"))
local get_client_entity_fn = ffi.cast("GetClientEntity_4242425_t", entity_list_ptr[0][3])
local ffi_helpers = {
get_entity_address = function(ent_index)
local addr = get_client_entity_fn(entity_list_ptr, ent_index)
return addr
end
}
--client.add_callback( 'create_move', createmove )
function getdesync()
if not entitylist.get_local_player() then
return
end
local lp = entitylist.get_local_player()
desync = (ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(lp:get_index()) + 14612)[0].flWalkToRunTransition * -0.30000001 - 0.19999999) * math.max(0, math.min(ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(lp:get_index()) + 14612)[0].flRunningSpeed, 1)) + 1 + ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(lp:get_index()) + 14612)[0].flDuckAmount * math.max(0, math.min(1, ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(lp:get_index()) + 14612)[0].flDuckingSpeed)) * (0.5 - ((ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(lp:get_index()) + 14612)[0].flWalkToRunTransition * -0.30000001 - 0.19999999) * math.max(0, math.min(ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(lp:get_index()) + 14612)[0].flRunningSpeed, 1)) + 1))
return math.floor(ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(lp:get_index()) + 14612)[0].flMaxBodyYaw * desync)
end
local g_VGuiSurface = ffi.cast(ffi.typeof("void***"), utils.create_interface("vguimatsurface.dll", "VGUI_Surface031"))
local native_Surface_DrawSetColor = ffi.cast(ffi.typeof("void(__thiscall*)(void*, int, int, int, int)"), g_VGuiSurface[0][15])
local native_Surface_DrawFilledRectFade = ffi.cast(ffi.typeof("void(__thiscall*)(void*, int, int, int, int, unsigned int, unsigned int, bool)"), g_VGuiSurface[0][123])
GradientRect = function(x, y, w, h, color, color2, horizontal)
local r0, g0, b0, a0 = color:r(), color:g(), color:b(), color:a()
local r1, g1, b1, a1 = color2:r(), color2:g(), color2:b(), color2:a()
native_Surface_DrawSetColor(g_VGuiSurface,r0, g0, b0, a0)
native_Surface_DrawFilledRectFade(g_VGuiSurface,x, y, x + w, y + h, 255, 0, horizontal)
native_Surface_DrawSetColor(g_VGuiSurface,r1, g1, b1, a1)
return native_Surface_DrawFilledRectFade(g_VGuiSurface,x, y, x + w, y + h, 0, 255, horizontal)
end
local screencenter = {x = screenx / 2, y = screeny / 2}
local checktime = 0
function desyncline()
if not entitylist.get_local_player() then
return
end
if menu.get_bool( 'Enable Desync Line' ) then
local desynccolor = menu.get_color( 'Desync Line Color' )
desynckey = menu.get_key_bind_state("anti_aim.invert_desync_key")
local curtime = globals.get_curtime()
if menu.get_int( 'anti_aim.desync_type' ) ~= 2 then
side = desynckey
else
if checktime < curtime then
if side then
side = false
else
side = true
end
checktime = curtime + 0.05
end
end
if side then
desync = math.min(menu.get_int("anti_aim.desync_range_inverted"), getdesync())
else
desync = math.min(menu.get_int("anti_aim.desync_range"), getdesync())
end
--print(tostring(desync))
render.draw_text_centered( variables.font, screencenter.x + 3, screencenter.y + 15, color.new(255,255,255), true, true, tostring(desync).."°" )
GradientRect(screencenter.x - (desync / 2), screencenter.y + 25, desync / 2, 2, color.new(255,255,255,0), desynccolor, true)
GradientRect(screencenter.x, screencenter.y + 25, desync / 2, 2, desynccolor, color.new(255,255,255,0), true)
end
end
client.add_callback( 'create_move', lagsync )
client.add_callback( 'on_paint', desyncline )
client.add_callback("on_paint", function()
if menu.get_bool( 'Crosshair Indicators' ) then
variables.count = 0
for _, v in pairs(names) do
add_bind(v, variables.pos_x, variables.pos_y, draw_stuff.cond)
end
end
end)
-------------------------------------------------------------------------------------------Crosshair-Indicator
-------------------------------------------------------------------------------------------------Custom Chams
----------made by Al3gz----------
-- Discord : dziut#8822
-- Yt : https://www.youtube.com/c/Al3gz/videos
local wireframe1 = [[
{
"$wireframe" "1"
"$envmapfresnelminmaxexp" "[0 2 4]"
"$envmaptint" "255, 255, 255"
"$alpha" "1"
}
]]
local glow = [[
{
"$additive" "1"
"$envmap" "models/effects/cube_white"
"$envmaptint" "[1 1 1]"
"$envmapfresnel" "1"
"$envmapfresnelminmaxexp" "[0 1 2]"
"$alpha" "1"
}
]]
local metalicz = [[
{
"$basetexture" "detail/dt_metal1"
"$additive" "1"
"$envmap" "editor/cube_vertigo"
"$color" "[.05 .05 .05]"
"$additive" "0"
]]
local discoball = [[
{
"$basetexture" "vgui/white_additive"
"$bumpmap" "models/weapons/customization/materials/origamil_camo"
"$nocull" "1"
"$nofog" "1"
"$model" "1"
"$nocull" "0"
"$phong" "1"
"$phongboost" "0"
"$basemapalphaphongmask" "1"
"$pearlescent" "2"
}
]]
local Intellect = [[
{
"$basetexture" "nature/urban_puddle01a_ssbump"
"$flat" "1"
"$additive" "1"
"$selfillum" "1"
"$nocull" "1"
"$alpha" "0.5"
"Proxies"
{
"TextureScroll"
{
"texturescrollvar" "$BasetextureTransform"
"texturescrollrate" "1"
"texturescrollangle" "100"
}
}
}
]]
material.create("Intellect", Intellect, false)
material.create("Glow", glow, false)
material.create("Metalic",metalicz, false)
material.create("Wireframe", wireframe1, false)
material.find("Blinking","models/inventory_items/dogtags/dogtags_outline")
material.find("Wood","models/props/de_dust/hr_dust/foliage/palm_bark_01")
material.create("Origami", discoball, false)
-------------------------------------------------------------------------------------------------Custom Chams
-------------------------------------------------------------------------------------------------BuyBot
menu.add_check_box("Enable BuyBot")
menu.next_line()
menu.add_combo_box("Rifle", {"None", "Scout", "AWP", "Auto"})
menu.add_combo_box("Pistol", {"None", "Elite", "Heavy"})
menu.add_combo_box("Other", {"None", "Nades and Gear"})
events.register_event("round_start", function()
if menu.get_bool("Enable BuyBot") then
if menu.get_int("Rifle") == 1 then
console.execute("buy ssg08")
elseif menu.get_int("Rifle") == 2 then
console.execute("buy awp")
elseif menu.get_int("Rifle") == 3 then
console.execute("buy scar20")
end
if menu.get_int("Pistol") == 1 then
console.execute("buy elite")
elseif menu.get_int("Pistol") == 2 then
console.execute("buy deagle")
end
if menu.get_int("Other") == 1 then
console.execute("buy vest")
console.execute("buy vesthelm")
console.execute("buy smokegrenade")
console.execute("buy hegrenade")
console.execute("buy molotov")
console.execute("buy defuser")
console.execute("buy taser")
end
end
end)
-------------------------------------------------------------------------------------------------BuyBot
-------------------------------------------------------------------------------------------------LowDelta
menu.add_check_box("Low Delta on Slow Walk")
--function
local font = render.create_font("arial", 13.5, 0, true, false, true)
function ld()
local screen_x = engine.get_screen_width()
local screen_y = engine.get_screen_height()
if menu.get_bool("Low Delta on Slow Walk") then
if menu.get_key_bind_state("misc.slow_walk_key") then
menu.set_int("anti_aim.yaw_offset", 0)
menu.set_int("anti_aim.desync_range", 45)
menu.set_int("anti_aim.desync_range_inverted", 17)
else
menu.set_int("anti_aim.yaw_offset", 0)
menu.set_int("anti_aim.desync_range", 26)
menu.set_int("anti_aim.desync_range_inverted", 26)
end
end
end
--callback
client.add_callback("on_paint", ld)
-------------------------------------------------------------------------------------------------LowDelta
-------------------------------------------------------------------------------------------------force
menu.add_key_bind("FSF-on-Key")
client.add_callback("on_paint", function()
if not engine.is_in_game() then return end
for nomer = 0, 64 do
if menu.get_key_bind_state( "FSF-on-Key" ) == true then
menu.set_bool( "player_list.player_settings[" .. nomer .. "].force_safe_points", true )
else
menu.set_bool( "player_list.player_settings[" .. nomer .. "].force_safe_points", false )
end
end
end)
-------------------------------------------------------------------------------------------------force
-------------------------------------------------------------------------------------------------Hitsound
-- ffi.
local ffi = require("ffi")
-- vgui surface.
local g_VGuiSurface = ffi.cast(ffi.typeof("void***"), utils.create_interface("vguimatsurface.dll", "VGUI_Surface031"))
-- play sound when hit.
local play_sound = ffi.cast(ffi.typeof('void(__thiscall*)(void*, const char*)'), g_VGuiSurface[0][82])
-- custom hitsound.
local function custom_hitsound(event)
local attacker = event:get_int("attacker")
local attacker_idx = engine.get_player_for_user_id(attacker)
if attacker_idx ~= engine.get_local_player_index() then
return
end
play_sound(g_VGuiSurface, "nepherium.wav")
end
-- register event.
events.register_event("player_hurt", custom_hitsound)
-------------------------------------------------------------------------------------------------Hitsound
-------------------------------------------------------------------------------------------------static legs
menu.add_check_box( 'static legs in air' )
local ffi = require ("ffi")
ffi.cdef[[
typedef uintptr_t (__thiscall* GetClientEntity_4242425_t)(void*, int);
typedef struct
{
float x;
float y;
float z;
} Vector_t;
typedef struct
{
char pad0[0x60]; // 0x00
void* pEntity; // 0x60
void* pActiveWeapon; // 0x64
void* pLastActiveWeapon; // 0x68
float flLastUpdateTime; // 0x6C
int iLastUpdateFrame; // 0x70
float flLastUpdateIncrement; // 0x74
float flEyeYaw; // 0x78
float flEyePitch; // 0x7C
float flGoalFeetYaw; // 0x80
float flLastFeetYaw; // 0x84
float flMoveYaw; // 0x88
float flLastMoveYaw; // 0x8C // changes when moving/jumping/hitting ground
float flLeanAmount; // 0x90
char pad1[0x4]; // 0x94
float flFeetCycle; // 0x98 0 to 1
float flMoveWeight; // 0x9C 0 to 1
float flMoveWeightSmoothed; // 0xA0
float flDuckAmount; // 0xA4
float flHitGroundCycle; // 0xA8
float flRecrouchWeight; // 0xAC
Vector_t vecOrigin; // 0xB0
Vector_t vecLastOrigin;// 0xBC
Vector_t vecVelocity; // 0xC8
Vector_t vecVelocityNormalized; // 0xD4
Vector_t vecVelocityNormalizedNonZero; // 0xE0
float flVelocityLenght2D; // 0xEC
float flJumpFallVelocity; // 0xF0
float flSpeedNormalized; // 0xF4 // clamped velocity from 0 to 1
float flRunningSpeed; // 0xF8
float flDuckingSpeed; // 0xFC
float flDurationMoving; // 0x100
float flDurationStill; // 0x104
bool bOnGround; // 0x108
bool bHitGroundAnimation; // 0x109
char pad2[0x2]; // 0x10A
float flNextLowerBodyYawUpdateTime; // 0x10C
float flDurationInAir; // 0x110
float flLeftGroundHeight; // 0x114
float flHitGroundWeight; // 0x118 // from 0 to 1, is 1 when standing
float flWalkToRunTransition; // 0x11C // from 0 to 1, doesnt change when walking or crouching, only running
char pad3[0x4]; // 0x120
float flAffectedFraction; // 0x124 // affected while jumping and running, or when just jumping, 0 to 1
char pad4[0x208]; // 0x128
float flMinBodyYaw; // 0x330
float flMaxBodyYaw; // 0x334
float flMinPitch; //0x338
float flMaxPitch; // 0x33C
int iAnimsetVersion; // 0x340
} CCSGOPlayerAnimationState_534535_t;
]]
local entity_list_ptr = ffi.cast("void***", utils.create_interface("client.dll", "VClientEntityList003"))
local get_client_entity_fn = ffi.cast("GetClientEntity_4242425_t", entity_list_ptr[0][3])
local ffi_helpers = {
get_entity_address = function(ent_index)
local addr = get_client_entity_fn(entity_list_ptr, ent_index)
return addr
end
}
local shared_onground
client.add_callback("on_paint", function()
local localplayer = entitylist.get_local_player()
if not localplayer then return end
local bOnGround = bit.band(math.floor(localplayer:get_prop_float("CBasePlayer", "m_fFlags")), bit.lshift(1,0)) ~= 0
if menu.get_bool( 'static legs in air' ) and not bOnGround then
ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(localplayer:get_index()) + 14612)[0].flDurationInAir = 99 -- 99 to enable / 1 to disable
ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(localplayer:get_index()) + 14612)[0].flHitGroundCycle = 0
ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(localplayer:get_index()) + 14612)[0].bHitGroundAnimation = false
end
if not menu.get_bool( 'static legs in air' ) then
ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(localplayer:get_index()) + 14612)[0].flDurationInAir = 1 -- 99 to enable / 1 to disable
ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(localplayer:get_index()) + 14612)[0].flHitGroundCycle = 0
ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(localplayer:get_index()) + 14612)[0].bHitGroundAnimation = false
end
end)
client.add_callback("on_paint", function()
local localplayer = entitylist.get_local_player()
if not localplayer then return end
local bOnGround = bit.band(math.floor(localplayer:get_prop_float("CBasePlayer", "m_fFlags")), bit.lshift(1,0)) ~= 0
if bOnGround and not shared_onground then ffi.cast("CCSGOPlayerAnimationState_534535_t**", ffi_helpers.get_entity_address(localplayer:get_index()) + 14612)[0].flDurationInAir = 0.5 end -- ACT_CSGO_LAND_LIGHT
end)
-------------------------------------------------------------------------------------------------static legs