Professional Documents
Culture Documents
Sigma Thanks
Sigma Thanks
print_raw([[
____ ______ _ _ __________ _ _ _
| _ \| ____| \ | |___ / __ \| | | | | | /\
| |_) | |__ | \| | / / | | | | | | | | / \
| _ <| __| | . ` | / /| | | | | | | | |/ /\ \
| |_) | |____| |\ |/ /_| |__| | |___| |__| / ____ \
|____/|______|_| \_/_____\____/|______\____/_/ \_\
]])
print_raw("")
client.error_logged = false
client.webhooks_error = false
client.error_db = false
client.log_error = function(message)
local error_message = message:gsub("\a.{6}", "")
if not client.error_logged then
client.error_logged = true
print_raw(error_message)
print_dev(error_message)
end
end
client.discord_error = function(message)
local error_message = message:gsub("\a.{6}", "")
data:set_username(defines.script_name)
data:set_content(error_message)
client.webhooks_error = true
end
end
client.error_db = true
end
end
if not s then
local retmessage = "Failed to initialize [" .. name .. "] -> " .. ret
local discord_message = "[" .. name:gsub("\a.{6}", "") .. "] reason:
" .. ret:gsub("\a.{6}", "")
if report then
client.log_error(retmessage)
client.discord_error(discord_message)
client.db_error()
end
return false, retmessage
else
return ret, s
end
end
end
ffi.cdef[[
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;
]]
ui_handler.configs = {}
neverlose_refs._vars = {}
for k, v in pairs(neverlose_refs) do
if k ~= "_vars" then
neverlose_refs._vars[k] = {
tick = -1,
var = v
}
end
end
neverlose_refs.deoverride_unused = function(unoverride_all)
local ticks = globals.tickcount
for k, v in pairs(neverlose_refs._vars) do
if unoverride_all or math.difference(v.tick, ticks) > 16 then
v.var:override()
end
end
end
var.var:override(value)
var.tick = globals.tickcount
return var.var
end
cl [k] = n
return cl
end
defines.username = common.get_username()
defines.build = "nightly"
defines.discord_build = "debug"
defines.script_name = "benzo.gg"
defines.screen_size = render.screen_size()
defines.colored_text = safecall("defines.colored_text", true, function(...)
local data = {...}
local str = ""
for k, v in pairs(data) do
local text = v[1]
local clr = ""
if text:find("icon_") then
text = ui.get_icon(text:gsub("icon_", ""))
end
text = text or "nil"
return str
end)
defines.get_bind = safecall("defines.colored_text", true, function(name)
local state = false
local value = 0
local binds = ui.get_binds()
for i = 1, #binds do
if binds[i].name == name and binds[i].active then
state = true
value = binds[i].value
end
end
return {state, value}
end)
defines.time_to_ticks = function(t)
return math.floor(0.5 + (t / globals.tickinterval))
end
defines.visual_state = 1
ui_handler.elements = {}
ui_handler.refs = {}
for k, v in pairs(ui_handler.refs) do
for name, table_reference in pairs(v) do
if table_reference ~= nil and table_reference.condition then
table_reference.update_value(table_reference.ref)
table_reference.ref:visibility(table_reference.condition() or
false)
end
end
end
end)
events.render:set(function()
if ui.get_style()["Link Active"] ~= colors.link_active then
colors.link_active = ui.get_style()["Link Active"]
end
end)
ui_handler.reverse_tbl = function(tbl)
local value_list = tbl
local value_list_num = #value_list
local tmp = {}
for k, v in pairs(value_list) do
if k ~= "_len" then
tmp[v] = true
end
end
return tmp
end
ui_handler.refs[tab][name] = {
ref = cheat_var,
condition = condition,
config = include_in_config
}
ui_handler.elements[tab][name] = tmp
ui_handler.elements[tab][name]._len = value_list_num -- мне лень
ставить метатаблицу, пишов нахуй
local tmp = {}
for k, v in ipairs(val) do
tmp[list[v]] = k
end
ui_handler.elements[tab][name] = tmp
ui_handler.elements[tab][name]._len = len
else
ui_handler.elements[tab][name] = val
end
end
ui_handler.refs[tab][name].update_value = update_value
cheat_var:set_callback(update_value, true)
cheat_var:set_callback(ui_handler.global_update_callback)
return cheat_var
end
ui_handler.groups = {}
menu = {
__index = function(self, index, args)
return (function(group, ...)
local item_group
if group.__name ~= "sol.Lua::LuaGroup" then
local group_hash = f("%s%s", group[2] == nil and "unk" or group[2],
group[1])
item_group = ui_handler.groups[group_hash]
if item_group == nil then
if group[2] ~= nil then
ui_handler.groups[group_hash] = ui.create(group[1],
group[2])
else
ui_handler.groups[group_hash] = ui.create(group[1]) -- тут
беды с таблицами, поэтому нуль туда запустить не выйдет
end
item_group = ui_handler.groups[group_hash]
end
else
item_group = group
end
return item
end
end)
end)
end
}
ui_handler.configs.parse = function(tab)
local ftbl = {}
if tab then
local tbl = {}
for k, v in pairs(ui_handler.refs[tab]) do
if getmetatable(ui_handler.elements[tab][k]) and
ui_handler.elements[tab][k].__name then
is_color = ui_handler.elements[tab][k].__name == "sol.ImColor"
end
::skip::
end
ftbl[tab] = tbl
else
for j, l in pairs(ui_handler.refs) do
local tbl = {}
for k, v in pairs(l) do
if getmetatable(ui_handler.elements[j][k]) and
ui_handler.elements[j][k].__name then
is_color = ui_handler.elements[j][k].__name == "sol.ImColor"
end
::skip::
end
ftbl[j] = tbl
end
end
return clean
end
ui_handler.configs.load = function(data)
for k, v in pairs(data) do
for j, l in pairs(v) do
pcall(protected)
end
end
end
end
ui_handler.global_update_callback()
end
local f = string.format
download_files.urlmon = ffi.load("UrlMon")
download_files.wininet = ffi.load("WinInet")
download_files.gdi = ffi.load("Gdi32")
download_files.download("https://cdn.discordapp.com/attachments/853055526912786432/
1069273341904560138/image.png", "nl\\scripts\\benzo\\logo.jpeg")
end
download_files.download("https://cdn.discordapp.com/attachments/860194926612185109/
1082332387423305900/configs.json", "nl\\scripts\\benzo\\configs.json")
end
ui_handler.tab = {
general = {
information = ui.create(defines.colored_text({"icon_check",
colors.link_active}, {" setup"}), defines.colored_text({"icon_circle-info",
colors.link_active}, {" Info"})),
flower = ui.create(defines.colored_text({"icon_check", colors.link_active},
{" setup"}), defines.colored_text({"icon_leaf", colors.link_active})),
statistics = ui.create(defines.colored_text({"icon_check",
colors.link_active}, {" setup"}), defines.colored_text({"icon_ballot",
colors.link_active}, {" Statistics"})),
settings = ui.create(defines.colored_text({"icon_check",
colors.link_active}, {" setup"}), defines.colored_text({"icon_database",
colors.link_active}, {" Settings"})),
links = ui.create(defines.colored_text({"icon_check", colors.link_active},
{ " setup"}), defines.colored_text({"icon_star", colors.link_active}, {" Check this
too!"})),
synchronization = ui.create(defines.colored_text({"icon_check",
colors.link_active}, { " setup"}), defines.colored_text({"icon_rotate",
colors.link_active}, {" Synchronization"})), --
ui_handler.tab.general.synchronization
},
antiaim = {
general = ui.create(defines.colored_text({"icon_user", colors.link_active},
{ " anti aim"}), defines.colored_text({"icon_wind-turbine", colors.link_active}, {"
General"})),
settings = ui.create(defines.colored_text({"icon_user",
colors.link_active}, {" anti aim"}), defines.colored_text({"icon_bars",
colors.link_active}, {" Preset"})),
presets = ui.create(defines.colored_text({"icon_user", colors.link_active},
{" anti aim"}), defines.colored_text({"icon_gear", colors.link_active}, {" Preset
Manager"})),
builder = ui.create(defines.colored_text({"icon_user", colors.link_active},
{" anti aim"}), defines.colored_text({"icon_gears", colors.link_active}, {" Setting
up: "})),
automatic = ui.create(defines.colored_text({"icon_user",
colors.link_active}, {" anti aim"}), defines.colored_text({"icon_gears",
colors.link_active}, {" Automatic Mode"}))
},
features = {
interface = ui.create(defines.colored_text({"icon_gears",
colors.link_active}, {" settings"}), defines.colored_text({"icon_palette",
colors.link_active}, {" Interface"})),
additional = ui.create(defines.colored_text({"icon_gears",
colors.link_active}, {" settings"}), defines.colored_text({"icon_users-gear",
colors.link_active}, {" Misc"})),
},
}
menu.texture(ui_handler.tab.general.flower, render.load_image_from_file("nl\\
scripts\\benzo\\logo.jpeg", vector(300, 250)))("home", "settings_image", false)
db["times_loaded"] = loads;
ui_handler.refs["statistic"]
["kills"].ref:name(tostring(defines.colored_text({""}, {" Eliminated enemies: "},
{tostring(kills), colors.link_active})))
db["kills"] = kills;
end
end
end))
ui_handler.refs["statistic"]
["misses"].ref:name(tostring(defines.colored_text({""}, {" Missed shots: "},
{tostring(misses), colors.link_active})))
db["misses"] = misses;
elseif e.state == nil then
hits = hits + 1;
ui_handler.refs["statistic"]
["hits"].ref:name(tostring(defines.colored_text({""}, {" Hits to enemies: "},
{tostring(hits), colors.link_active})))
db["hits"] = hits;
end
end
end))
table.insert(aimbot_logger.data, {
text = {
"Config succesfully ",
"succesfully ",
"exported!",
"",
"",
"",
"",
"",
""
},
time = globals.realtime+3,
color = color(5, 133, 182, 255)
})
utils.console_exec("play ui\\beepclear")
end)
table.insert(aimbot_logger.data, {
text = {
"Config ",
"succesfully ",
"imported!",
"",
"",
"",
"",
"",
""
},
time = globals.realtime+1,
color = color(5, 133, 182, 255)
})
utils.console_exec("play ui\\beepclear")
end)
table.insert(aimbot_logger.data, {
text = {
"Default config ",
"succesfully ",
"imported!",
"",
"",
"",
"",
"",
""
},
time = globals.realtime+1,
color = color(5, 133, 182, 255)
})
utils.console_exec("play ui\\beepclear")
end)
presets.currently_using = db.benzo_preset
presets.db = db.benzo_manager or {}
presets.tbl = {}
presets.path = "nl\\scripts\\benzo\\configs.json"
presets.save = function()
local ps = ui_handler.refs["general"]["preset_list"].ref
local preset_name = ui_handler.refs["general"]["preset_name"].ref
local do_save = 0
for i=1,#config_data do
local config_name = config_data[i].name
presets.db[preset_name:get()] = ui_handler.configs.parse("aa")
end
end
end
for i=1, #config_data do
local config_name = config_data[i].name
presets.db[preset_name:get()] = ui_handler.configs.parse("aa")
preset_name:set('')
do_save = -2
break
end
end
if work then
do_save = 3
presets.db[preset_name:get()] = ui_handler.configs.parse("aa")
preset_name:set('')
do_save = -3
end
end
cvar.play:call("ambient\\tones\\elev1")
end
presets.delete = function()
local ps = ui_handler.refs["general"]["preset_list"].ref
local preset_name = ui_handler.refs["general"]["preset_name"].ref
presets.db[ps:list()[ps:get()]] = nil
cvar.play:call("ambient\\tones\\elev1")
end
presets.export_preset = function()
local ps = ui_handler.refs["general"]["preset_list"].ref
local preset_name = ui_handler.refs["general"]["preset_name"].ref
table.insert(aimbot_logger.data, {
text = { "Preset was", " copied ", "into your clipboard.", "", "", "",
"", "", "" },
time = globals.realtime+1,
color = color(5, 133, 182, 255)
})
end
cvar.play:call("ambient\\tones\\elev1")
end
presets.import_preset = function()
local ps = ui_handler.refs["general"]["preset_list"].ref
local preset_name = ui_handler.refs["general"]["preset_name"].ref
if preset_name:get():len() == 0 then
return table.insert(aimbot_logger.data, {
text = { "Enter", " valid ", "preset ", "name.", "", "", "", "", "" },
time = globals.realtime+1,
color = color(5, 133, 182, 255)
})
end
presets.currently_using = preset_name:get()
presets.db[presets.currently_using] = clipboard.get()
utils.execute_after(0.5, function()
ui_handler.configs.load(presets.db[presets.currently_using])
end)
table.insert(aimbot_logger.data, {
text = { "Preset was", " imported ", "from your clipboard.", "", "", "",
"", "", "" },
time = globals.realtime+1,
color = color(5, 133, 182, 255)
})
cvar.play:call("ambient\\tones\\elev1")
end
presets.load = function()
local num = ui_handler.refs["general"]["preset_list"].ref
presets.currently_using = num:list()[num:get()]
ui_handler.configs.load(presets.db[presets.currently_using])
table.insert(aimbot_logger.data, {
text = { "Preset was", " loaded ", "from your clipboard.", "", "", "", "",
"", "" },
time = globals.realtime+1,
color = color(5, 133, 182, 255)
})
end
menu.button(ui_handler.tab.antiaim.presets, defines.colored_text({"icon_floppy-
disk"}, {" Save"}), function()
presets.save()
end, true)("general", "save_preset", false, function() return
ui_handler.elements["general"]["show_presets"] and ui_handler.elements["aa"]
["show_antiaims"] end)
menu.button(ui_handler.tab.antiaim.presets, defines.colored_text({"icon_loader"},
{" Load"}), function()
presets.load()
end, true)("general", "load_preset", false, function() return
ui_handler.elements["general"]["show_presets"] and ui_handler.elements["aa"]
["show_antiaims"] end)
menu.button(ui_handler.tab.antiaim.presets, defines.colored_text({"icon_loader"},
{" Export"}), function()
presets.export_preset()
end, true)("general", "export_preset", false, function() return
ui_handler.elements["general"]["show_presets"] and ui_handler.elements["aa"]
["show_antiaims"] end)
menu.button(ui_handler.tab.antiaim.presets, defines.colored_text({"icon_loader"},
{" Import"}), function()
presets.import_preset()
end, true)("general", "import_preset", false, function() return
ui_handler.elements["general"]["show_presets"] and ui_handler.elements["aa"]
["show_antiaims"] end)
local mt = { }
local mt_data = {
dragging = false,
mouse_pos = vector(0, 0),
mouse_pos_diff = vector(0, 0),
intersected = nil,
mi_intersection = nil,
reference = (function()
local dragging_vector = {
ui_group:slider(("%s:dragging_x"):format(name), -16384,
16384, initial_pos.x),
ui_group:slider(("%s:dragging_y"):format(name), -16384,
16384, initial_pos.y)
}
dragging_vector[1]:set_callback(visibility)
dragging_vector[1]:set_callback(visibility, true)
return dragging_vector
end)()
-- ctx.common.new_dragging.reference()
}
function mt.get_position(self)
return vector(
self.reference[1]:get(),
self.reference[2]:get()
),
self.reference[1], self.reference[2]
end
function mt.is_dragging(self)
return self.dragging
end
self.mouse_pos_diff = -(self.mouse_pos-new_mouse_pos)
if self.dragging then
local screen = defines.screen_size
local limit, new_pos = size * .5, vector(
self.reference[1]:get() + self.mouse_pos_diff.x,
self.reference[2]:get() + self.mouse_pos_diff.y
)
self.reference[1]:set(math.max(-limit.x, math.min(screen.x-
limit.x, new_pos.x)))
self.reference[2]:set(math.max(-limit.y, math.min(screen.y-
limit.y, new_pos.y)))
end
self.mouse_pos = new_mouse_pos
self.mi_intersection = intersection_check or self.dragging
events.mouse_input:set(function()
if dragging.mi_intersection then
return false
end
end)
return dragging
end
}
conditional_antiaims.states = {
unknown = -1,
standing = 1,
moving = 2,
slowwalk = 3,
crouching_t = 4,
crouching_ct = 5,
air = 6,
air_crouch = 7,
fakeduck = 8
}
conditional_antiaims.states_names = {}
for k, v in pairs(conditional_antiaims.states) do
conditional_antiaims.states_names[v] = k:sub(1,1):upper() .. k:sub(2, #k)
end
conditional_antiaims.player_state = 1
conditional_antiaims.update_player_state = function(cmd)
--[[
conditional_antiaims.create_condition("Fakeduck", function()
return conditional_antiaims.player_state ==
conditional_antiaims.states.fakeduck
end)
if is_slowwalk then
conditional_antiaims.player_state = conditional_antiaims.states.slowwalk
return
end
if is_fakeduck then
conditional_antiaims.player_state = conditional_antiaims.states.fakeduck
return
end
conditional_antiaims.player_state = conditional_antiaims.states.unknown
end
conditional_antiaims.manual_yaws = {
["Left"] = -90,
["Right"] = 90,
["Forward"] = 180,
["Backward"] = 0
}
conditional_antiaims.disablers = function(parameter)
local rules = entity.get_game_rules()
new_config.freestanding = true
elseif manual_yaw ~= "Freestanding" then
if is_manuals then
if not is_predefined then
new_config.yaw_offset = 0
else
new_config.yaw_offset = is_predefined
new_config.yaw_modifier = "Disabled"
new_config.body_yaw_options = ""
end
end
if manual_yaw == "At target" then
new_config.yaw_base = "At Target"
else
new_config.yaw_base = "Local View"
end
end
new_config.yaw_backstab = true
end
conditional_antiaims.conditions = {}
conditional_antiaims.condition_names = {}
ui_handler.tab.antiaim.builder = ui.create(defines.colored_text({"icon_user",
colors.link_active}, {" anti aim"}), defines.colored_text({"icon_gears",
colors.link_active}, {" Setting up: "}, {name, colors.link_active}))
return current_condition
end
defines.menu_combo_sanitizer = function(tbl)
local tmp = {}
for k, v in pairs(tbl) do
table.insert(tmp, k)
end
return tmp
end
conditional_antiaims.set_ui = safecall("set_ui", true, function(new_config)
for k, v in pairs(new_config) do
local new_val = v
if type(v) == "table" then
new_val = defines.menu_combo_sanitizer(new_val)
end
--neverlose_refs.k:get() ~= "Skitter" then
neverlose_refs.override(k, new_val)
--end
end
end)
conditional_antiaims.get_cond_values = function(idx)
local new_config = {}
for k, v in pairs(cond_tbl.ui) do
local tbl_name = "conditions_" .. cond_tbl.name .. "_"
new_config[k] = ui_handler.elements["aa"][tbl_name .. k]
end
return new_config
end
conditional_antiaims.get_active_idx = function()
for k, v in ipairs(conditional_antiaims.conditions) do
if k ~= 1 and v.condition() --[[пихуй]] then
return k
end
end
return 1
end
if globals.choked_commands ~= 0 then
return
end
conditional_antiaims.skitter_aa = 0
conditional_antiaims.skitter = safecall("skitter", true, function(cmd, new_config)
if cmd.choked_commands == 0 then
conditional_antiaims.skitter_aa = conditional_antiaims.skitter_aa + 1;
if val == 1 then
new_config.yaw_offset = new_config.yaw_modifier_offset
elseif val == 2 then
new_config.yaw_offset = -new_config.left_limit
elseif val == 3 then
new_config.yaw_offset = 0
elseif val == 4 then
new_config.yaw_offset = -new_config.yaw_modifier_offset
elseif val == 5 then
new_config.yaw_offset = new_config.right_limit
end
new_config.yaw_modifier = "Disabled"
end
end)
conditional_antiaims.handle = function(cmd)
if ui_handler.elements["aa"]["active_preset"] ~= "Conditional" then
return
end
conditional_antiaims.set_yaw(new_config)
conditional_antiaims.set_yaw_base(new_config)
conditional_antiaims.skitter(cmd, new_config)
conditional_antiaims.defensive_helpers()
local pitch_tbl = {
["Disabled"] = 0,
["Up"] = -89,
["Down"] = 89,
["Random"] = math.random(0, 2) == 1 and -89 or 89,
["Custom"] = new_config.defensive_custom_pitch
}
if new_config.defensive_yaw then
new_config.hidden = true
rage.antiaim:override_hidden_pitch(pitch_tbl[new_config.defensive_pitch])
end
conditional_antiaims.set_ui(new_config)
end
conditional_antiaims.conditions[cond_idx].ui =
conditional_antiaims.create_ui(name, cond_idx)
table.insert(conditional_antiaims.condition_names, name)
ui_handler.refs["aa"]
["current_state"].ref:update(conditional_antiaims.condition_names)
end
conditional_antiaims.create_condition("Standing", function()
return conditional_antiaims.player_state ==
conditional_antiaims.states.standing
end)
conditional_antiaims.create_condition("Moving", function()
return conditional_antiaims.player_state == conditional_antiaims.states.moving
end)
conditional_antiaims.create_condition("Walking", function()
return conditional_antiaims.player_state ==
conditional_antiaims.states.slowwalk
end)
conditional_antiaims.create_condition("Air", function()
return conditional_antiaims.player_state == conditional_antiaims.states.air
end)
conditional_antiaims.create_condition("Air-C", function()
return conditional_antiaims.player_state ==
conditional_antiaims.states.air_crouch
end)
conditional_antiaims.create_condition("Fakeduck", function()
return conditional_antiaims.player_state ==
conditional_antiaims.states.fakeduck
end)
fast_ladder.handle = function(cmd)
if not ui_handler.elements["aa"]["helpers"]["Fast Ladder Move"] then
return
end
if cmd.in_forward then
if cmd.sidemove > 0 then
cmd.view_angles.y = cmd.view_angles.y - 1
end
cmd.in_moveleft = 0
cmd.in_moveright = 1
end
if cmd.in_back then
if cmd.sidemove < 0 then
cmd.view_angles.y = cmd.view_angles.y - 1
end
cmd.in_moveleft = 1
cmd.in_moveright = 0
end
end
end
model_breaker.last_tick = 0
model_breaker.update = safecall("model_breaker.update", true, function(thisptr,
edx)
hooked_function(thisptr, edx)
if ui_handler.elements["aa"]["pitch_land"] then
if not in_air and ffi.cast("CCSGOPlayerAnimationState_534535_t**",
ffi.cast("uintptr_t", thisptr) + 0x9960)[0].bHitGroundAnimation then
player.m_flPoseParameter[12] = 0.5
end
end
if ui_handler.elements["aa"]["walk_animation"] and
neverlose_refs.slow_walk:get() then
player.m_flPoseParameter[9] = 0
end
if ui_handler.elements["aa"]["crouch_animation"] and
(conditional_antiaims.player_state == conditional_antiaims.states.crouching_ct or
conditional_antiaims.player_state == conditional_antiaims.states.crouching_t) then
player.m_flPoseParameter[8] = 0
end
end)
model_breaker.handle = function()
local player = entity.get_local_player()
watermark.style = 0
watermark.handle = function()
local x, y = defines.screen_size.x, defines.screen_size.y
local clr = ui_handler.elements["features"]["logo_color"]
render.text(
1,
vector((watermark.style == 2 and defines.screen_size.x-text_size.x-10 or
defines.screen_size.x/2-text_size.x/2), (watermark.style == 2 and 10 - 5 or
defines.screen_size.y-25)),
clr:override("a", 255),
nil,
text
)
animated_text:animate()
end
menu.label(ui_handler.tab.general.synchronization,
defines.colored_text({"icon_droplet", colors.link_active}, {" [Logo] Customize --
>"}))("features", "logo")(function(group)
menu.combo(group, "Style", "Right Upper", "Bottom Center")("features",
"logo_style", true)
menu.color_picker(group, defines.colored_text({"icon_droplet",
colors.link_active}, {" [LOGO] Color"}))("features", "logo_color")
end)
indicators.activity = 0
indicators.antiaim_states = {
"STANDING",
"MOVING",
"WALKING",
"CROUCHING CT",
"CROUCHING T",
"AIR",
"AIR+C",
"FD"
}
indicators.get_defensive = function()
local net_channel, simtime = utils.net_channel(),
entity.get_local_player():get_simulation_time()
local difference = simtime.current - simtime.old
if difference < 0 then
indicators.activity = globals.tickcount + math.abs(difference) -
defines.time_to_ticks(net_channel.latency[0])
end
indicators.vars = {
charge = smoothy.new(0),
menu = smoothy.new(0),
pulse = smoothy.new(0),
}
for i = 1, 15 do
indicators.vars[i] = {
alpha_modulate = smoothy.new(0),
scope_adder = smoothy.new(0),
width = smoothy.new(0)
}
end
indicators.handle = function()
local player = entity.get_local_player()
if player == nil or not player:is_alive() then
return
end
local a = 255;
local pct;
--[[
["Left"] = -90,
["Right"] = 90,
["Forward"] = 180,
["Backward"] = 0
]]
local list = {
{defines.colored_text({"benzo", color(255)}, {" tech",
ind_color:override("a", 255)}), true, color(255)},
{defines.build:lower(), true, ind_color:override("a", 1*255)},
{"rapid", neverlose_refs.doubletap:get(), color(255, 0,
0):lerp(color(255), rage.exploit:get())},
{"os-aa", neverlose_refs.hideshots:get(), color(255)},
{"direction", is_predefined, color(255)},
{"dmg", defines.get_bind("Min. Damage")[1], color(255)},
}
for idx, val in pairs(list) do
velocity_warning.dragging = ctx.common:new_dragging("velocity_warning",
vector(defines.screen_size.x/2-100, 200))
velocity_warning.in_bounds = function(x, y, x2, y2)
return (ui.get_mouse_position().x > x) and (ui.get_mouse_position().y > y) and
(ui.get_mouse_position().x < x2) and (ui.get_mouse_position().y < y2)
end
velocity_warning.alpha = smoothy.new(0)
velocity_warning.alpha_menu = smoothy.new(0)
velocity_warning.handle = function()
local anim = {}
local player = entity.get_local_player()
reference:set(lerped_x)
reference2:set(lerped_y)
end
velocity_warning.dragging:update(vector(205, 60))
end
manual_arrows.left = smoothy.new(0)
manual_arrows.right = smoothy.new(0)
manual_arrows.main = smoothy.new(0)
manual_arrows.handle = function()
local player = entity.get_local_player()
render.poly(
(antiaim_manuals == "Left" and manual_arrows_accent_color or
colors.black):override("a", left_alpha*alpha*255),
pos - vector(manual_arrows_adding, 0) - vector(0, 5),
pos - vector(manual_arrows_adding, 0) - vector(9, 0),
pos - vector(manual_arrows_adding, 0) + vector(0, 5)
)
render.poly(
(antiaim_manuals == "Right" and manual_arrows_accent_color or
colors.black):override("a", right_alpha*alpha*255),
pos + vector(manual_arrows_adding, 0) - vector(0, 5),
pos + vector(manual_arrows_adding, 0) + vector(9, 0),
pos + vector(manual_arrows_adding, 0) + vector(0, 5)
)
end
scope_overlay.alpha = smoothy.new(0)
scope_overlay.handle = function()
local me = entity.get_local_player()
local FT = speed
local alpha = scope_overlay.alpha(.05+FT*0.01, scoped and
ui_handler.refs["features"]["scope_overlay"].ref:get())
end)
aimbot_logger.vars = {}
for i = 1, 6 do
aimbot_logger.vars[i] = {
alpha = smoothy.new(0)
}
end
aimbot_logger.render = function()
local center = defines.screen_size/2
center.y = defines.screen_size.y/1.5
local add_y = 0
for k, v in ipairs(aimbot_logger.data) do
local text = v.text
end
if elements["In Console"] then
print(f("Registered %s shot in %s\"s %s for %s damage [angle: %.2f°
| hitchance: %s%% | history(Δ): %s | flags: %s%s%s | dmg: %s | wanted_hitgroup:
%s]",
table.insert(aimbot_logger.data, {
text = {
"Missed ",
e.target:get_name(),
" in the ",
aimbot_logger.hitboxes[e.wanted_hitgroup+1],
" due to ",
e.state,
"",
"",
""
},
time = globals.realtime+3,
color = ui_handler.elements["features"]["miss_color"]
})
end
if elements["On Screen"] then
print_dev(f(
"Missed %s shot at %s\"s %s(%s%%) due to %s [dmg: %s | safety:
%s | history(Δ): %s | flags: %s%s%s]",
aimbot_logger.num_format((e.id % 15) + 1), e.target:get_name(),
aimbot_logger.hitboxes[e.wanted_hitgroup+1], e.hitchance, e.state, e.wanted_damage,
(neverlose_refs.prefer_safety:get() == "Prefer" and 1 or 0), e.backtrack,
(neverlose_refs.doubletap:get() and 1 or 0),
(neverlose_refs.prefer_safety:get() == "Force" and 1 or 0), (e.spread <= 0.1 and 1
or 0)
))
end
if elements["In Console"] then
print(f(
"Missed %s shot at %s\"s %s(%s%%) due to %s [dmg: %s | safety:
%s | history(Δ): %s | flags: %s%s%s]",
aimbot_logger.num_format((e.id % 15) + 1), e.target:get_name(),
aimbot_logger.hitboxes[e.wanted_hitgroup+1], e.hitchance, e.state, e.wanted_damage,
(neverlose_refs.prefer_safety:get() == "Prefer" and 1 or 0), e.backtrack,
(neverlose_refs.doubletap:get() and 1 or 0),
(neverlose_refs.prefer_safety:get() == "Force" and 1 or 0), (e.spread <= 0.1 and 1
or 0)
))
end
end
end
end
skeet_indication.c4_info = {
planting = false,
on_plant_time = 0,
fill = 0,
planting_site = "",
bomb_image =
render.load_image_from_file("materials/panorama/images/icons/ui/bomb_c4.svg",
vector(30, 30))
}
skeet_indication.font = render.load_font("Calibri", 23, "bda")
skeet_indication.bomb_image =
render.load_image_from_file("materials/panorama/images/icons/ui/bomb_c4.svg",
vector(30, 30))
skeet_indication.handle = function()
if not ui_handler.elements["features"]["skeet_indications"] then
return
end
damage = a * math.exp(-d * d)
dmg = math.ceil(damage)
if skeet_indication.c4_info.planting then
skeet_indication.c4_info.fill = 3.125 - (3.125 +
skeet_indication.c4_info.on_plant_time - globals.curtime)
if(skeet_indication.c4_info.fill > 3.125) then
skeet_indication.c4_info.fill = 3.125
end
end
local binds = {
{"PING", additional:get("Fake Latency") and
neverlose_refs.fake_latency:get() > 0 and player:is_alive(), ping_color},
{"DT", additional:get("Double Tap") and
neverlose_refs.doubletap:get(), rage.exploit:get() == 1 and color(255, 200) or
color(255, 0, 0, 255)},
{"OSAA", additional:get("Hide Shots") and
neverlose_refs.hideshots:get(), color(255, 200)},
{"DUCK", additional:get("Fake Duck") and
neverlose_refs.fake_duck:get(), color(255, 200)},
{"DA", additional:get("Dormant Aimbot") and
neverlose_refs.dormant:get(), dormant_work and color(255, 200) or color(255, 0, 0,
255)},
{"SAFE", additional:get("Safe Points") and
neverlose_refs.prefer_safety:get() == "Force", color(255, 200)},
{"BODY", additional:get("Body Aim") and
neverlose_refs.prefer_body:get() == "Force", color(255, 200)},
{"MD", additional:get("Min. Damage") and
defines.get_bind("Min. Damage")[1], color(255, 200)},
{"FS", additional:get("Freestanding") and
ui_handler.elements["aa"]["freestanding"], color(255, 200)},
{"-" .. dmg .. " HP", additional:get("Bomb Information") and
player:is_alive() and not willKill and damage > 0.5, color(210, 216, 112, 255)},
{"FATAL", additional:get("Bomb Information") and
player:is_alive() and willKill, color(255, 0, 0, 255)},
{"bombsite2", additional:get("Bomb Information") and
skeet_indication.c4_info.planting, color(210, 216, 112, 255), color(255, 255),
skeet_indication.c4_info.fill/3.3},
{"bombsite1", additional:get("Bomb Information") and timer > 0 and
not defused, color(255, 200)},
{"HITBOX OVR", additional:get("Hitboxes Override") and
defines.get_bind("Hitboxes")[1], color(255, 200)},
{"HITCHANCE OVR", additional:get("Hit Chance Override") and
defines.get_bind("Hit Chance")[1], color(255, 200)}
}
if is_bomsite then
render.texture(skeet_indication.bomb_image, vector(x, y + add_y),
vector(30, 30), v[3])
end
if v[2] then
render.indicator(text, is_bomsite and 35 or 0, add_y, v[3], v[4], v[5])
add_y = add_y - 37
end
end
end
skeet_indication.c4_info_reset = function()
skeet_indication.c4_info.planting = false
skeet_indication.c4_info.fill = 0
skeet_indication.c4_info.on_plant_time = 0
skeet_indication.c4_info.planting_site = ""
end
skeet_indication.c4_info_bomb_beginplant = function(e)
local player_resource = entity.get_player_resource()
skeet_indication.c4_info.on_plant_time = globals.curtime
skeet_indication.c4_info.planting = true
console_color.material = {
"vgui_white",
"vgui/hud/800corner1",
"vgui/hud/800corner2",
"vgui/hud/800corner3",
"vgui/hud/800corner4"
}
console_color.handle = function()
air_modifications.handle = function(cmd)
local player = entity.get_local_player()
if player == nil or not player:is_alive() then
return
end
if not ui_handler.elements["features"]["force_defensive"] then
return
end
local in_air = conditional_antiaims.player_state ==
conditional_antiaims.states.air or conditional_antiaims.player_state ==
conditional_antiaims.states.air_crouch
discharge_dt.work = false
discharge_dt.teleported = false
discharge_dt.handle = function()
if not ui_handler.elements["features"]["discharge_dt"] then
return
end
return false
end
if allow_teleport then
for k, enemy in pairs(players) do
if enemy == local_player then
return
end
if can_hit(enemy) then
teleport_ready = true
else
discharge_dt.teleported = false
end
end
end
discharge_dt.work = false
unmute_silenced.toggle_mute = panorama.FriendsListAPI.ToggleMute
unmute_silenced.is_muted = panorama.FriendsListAPI.IsSelectedPlayerMuted
unmute_silenced.handle = function()
if not ui_handler.elements["features"]["mute_everyone"] then
return
end
if is_muted then
unmute_silenced.toggle_mute(steamid64)
end
end)
end
taskbar_notify.get_csgo_hwnd = function()
return ffi_handler.hwnd_ptr[0]
end
taskbar_notify.get_foreground_hwnd = function()
return ffi_handler.insn_jmp_ecx(ffi_handler.GetForegroundWindow)
end
taskbar_notify.notify_user = function()
local csgo_hwnd = taskbar_notify.get_csgo_hwnd()
if ui_handler.elements["features"]["icon_notification"] and
taskbar_notify.get_foreground_hwnd() ~= csgo_hwnd then
ffi_handler.flash_window(csgo_hwnd, 1)
end
end
events.round_start:set(function()
taskbar_notify.notify_user()
end)
if trace == 1 then
return defines.colored_text({"DMG", color(255, 0, 0)})
else
return defines.colored_text({"DMG+", color(50, 205, 50)})
end
end))
local smoke = {}
local molotov = {}
smoke[k].position = v:get_origin()
smoke[k].alpha = v:get_bbox().alpha*255
local cells = {}
local highest_distance = 100
for i = 1, 64 do
if v.m_bFireIsBurning[i] then
table.insert(cells, {v.m_fireXDelta[i], v.m_fireYDelta[i],
v.m_fireZDelta[i]})
end
end
for i = 1, #cells do
local cell = cells[i]
local x_delta, y_delta, z_delta = unpack(cell)
for i2 = 1, #cells do
local cell2 = cells[i2]
local distance = vector(x_delta, y_delta):dist(vector(cell2[1],
cell2[2]))
if distance > highest_distance then
highest_distance = distance
end
end
end
for i = 1, 15 do
grenade_radius[i] = {
molotov_radius = smoothy.new(0),
smoke_radius = smoothy.new(0)
}
end
grenade_radius.handle = function()
if not ui_handler.elements["features"]["grenade_radius"] or
ui_handler.elements["features"]["grenade_radius_elements"]._len == 0 then
return
end
for i = 1, #grenade.molotov do
local v = grenade.molotov[i]
anim.molotov_radius = grenade_radius[i].molotov_radius(.05, v.draw)
end
end
for i = 1, #grenade.smoke do
local v = grenade.smoke[i]
molotov_wireframe.materials = {
"particle/particle_flares/particle_flare_gray",
"particle/smoke1/smoke1_nearcull2",
"particle/vistasmokev1/vistasmokev1_nearcull",
"particle/smoke1/smoke1_nearcull",
"particle/vistasmokev1/vistasmokev1_nearcull_nodepth",
"particle/vistasmokev1/vistasmokev1_nearcull_fog",
"particle/vistasmokev1/vistasmokev4_nearcull",
"particle/smoke1/smoke1_nearcull3",
"particle/fire_burning_character/fire_env_fire_depthblend_oriented",
"particle/fire_burning_character/fire_burning_character",
"particle/fire_explosion_1/fire_explosion_1_oriented",
"particle/fire_explosion_1/fire_explosion_1_bright",
"particle/fire_burning_character/fire_burning_character_depthblend",
"particle/fire_burning_character/fire_env_fire_depthblend"
}
molotov_wireframe.handle = function()
for _, v in pairs(molotov_wireframe.materials) do
local material = materials.get(v)
fall_damage.trace = function(length)
local player = entity.get_local_player()
if fraction~=1 then
return true
end
end
return false
end
fall_damage.handle = function(cmd)
if not ui_handler.elements["features"]["fall_damage"] then
return
end
aspect_ratio_changer.set_aspect_ratio = function(aspect_ratio_multiplier)
local screen_width, screen_height = defines.screen_size.x,
defines.screen_size.y
local aspectratio_value =
(screen_width*aspect_ratio_multiplier)/screen_height
if aspect_ratio_multiplier == 1 then
aspectratio_value = 0
end
cvar.r_aspectratio:float(tonumber(aspectratio_value))
end
aspect_ratio_changer.screen_width = 0
aspect_ratio_changer.screen_height = 0
aspect_ratio_changer.multiplier = 0.01
aspect_ratio_changer.steps = 200
aspect_ratio_changer.on_change = function()
local aspect_ratio = ui_handler.elements["features"]["aspect_ratio"]*0.01
aspect_ratio = 2 - aspect_ratio
aspect_ratio_changer.set_aspect_ratio(aspect_ratio)
end
aspect_ratio_changer.gcd = function(m, n)
while m ~= 0 do
m, n = math.fmod(n, m), m
end
return n
end
aspect_ratio_changer.table = {}
aspect_ratio_changer.tooltip = aspect_ratio_changer.table == nil and "%" or
function(val) if aspect_ratio_changer.table[val] ~= nil then return
aspect_ratio_changer.table[val] else return val.."%" end end
aspect_ratio_changer.setup = function(screen_width_temp, screen_height_temp)
aspect_ratio_changer.screen_width, aspect_ratio_changer.screen_height =
screen_width_temp, screen_height_temp
reference:set_callback(aspect_ratio_changer.on_change)
end
aspect_ratio_changer.on_paint = function(ctx)
local screen_width_temp, screen_height_temp = defines.screen_size.x,
defines.screen_size.y
if screen_width_temp ~= aspect_ratio_changer.screen_width or
screen_height_temp ~= aspect_ratio_changer.screen_height then
aspect_ratio_changer.setup(screen_width_temp, screen_height_temp)
end
end
viewmodel_changer.handle = function()
if ui_handler.elements["features"]["viewmodel"] then
local fov = ui_handler.elements["features"]["viewmodel_fov"]
local x = ui_handler.elements["features"]["viewmodel_x"]
local y = ui_handler.elements["features"]["viewmodel_y"]
local z = ui_handler.elements["features"]["viewmodel_z"]
cvar.viewmodel_fov:int(fov, true)
cvar.viewmodel_offset_x:int(x, true)
cvar.viewmodel_offset_y:int(y, true)
cvar.viewmodel_offset_z:int(z, true)
end
end
callbacks.register("createmove", "conditional_antiaims.update_player_state",
conditional_antiaims.update_player_state)
callbacks.register("createmove", "conditional_antiaims.handle",
conditional_antiaims.handle)
callbacks.register("createmove", "conditional_antiaims.dynamic_mode",
conditional_antiaims.dynamic_mode)
neverlose_refs.last_update = tick
neverlose_refs.deoverride_unused()
end)
presets.new_db = db.init or { }
callbacks.register("render", "config_system.init_db", function()
local ps = ui_handler.refs["general"]["preset_list"].ref
local tbl = {}
local db = presets.db
uv1 = tbl
if #tbl == 0 then
ps:update({
" B0B0B0FFNothing there. Create preset or import it."
})
else
tbl = {}
for k, v in pairs(db) do
tbl[k] = k
end
ps:update(tbl)
end
end)
callbacks.register("render", "indicators.handle", indicators.handle)
callbacks.register("render", "scope_overlay.handle", scope_overlay.handle)
callbacks.register("render", "skeet_indication.handle", skeet_indication.handle)
callbacks.register("render", "velocity_warning.handle", velocity_warning.handle)
callbacks.register("render", "grenade_radius.handle", grenade_radius.handle)
callbacks.register("render", "manual_arrows.handle", manual_arrows.handle)
callbacks.register("render", "molotov_wireframe.handle", molotov_wireframe.handle)
callbacks.register("render", "aimbot_logger.render", aimbot_logger.render)
callbacks.register("render", "console_color.handle", console_color.handle)
callbacks.register("render", "aspect_ratio_changer.on_paint",
aspect_ratio_changer.on_paint)
callbacks.register("render", "viewmodel_changer.handle", viewmodel_changer.handle)
db["times_loaded"] = loads;
db["kills"] = kills;
db["hits"] = hits;
db["misses"] = misses;
db["error_time"] = errors
db.benzo_preset = presets.currently_using
db.benzo_manager = presets.db
db.init = presets.new_db
end)
sidebar.handle = function()
sidebar_text:animate()
end
ui_handler.global_update_callback()