Mytools Beta - Lua
Mytools Beta - Lua
-- KOSTIAS#7780
local render_world_to_screen, rage_exploit, ui_get_binds, ui_get_alpha,
entity_get_players, entity_get, entity_get_entities, entity_get_game_rules,
common_set_clan_tag, common_is_button_down, common_get_username, common_get_date,
ffi_cast, ffi_typeof, render_gradient, render_text, render_texture,
render_rect_outline, render_rect, entity_get_local_player, ui_create, ui_get_style,
math_floor, math_abs, math_max, math_ceil, math_min, math_random,
utils_trace_bullet, render_screen_size, render_load_font,
render_load_image_from_file, render_measure_text, render_poly, render_poly_blur,
common_add_notify, common_add_event, utils_console_exec, utils_execute_after,
utils_create_interface, utils_trace_line, ui_find, entity_get_threat,
string_format, hooked_function, entity_get_player_resource, common_get_unixtime,
table_insert = render.world_to_screen, rage.exploit, ui.get_binds, ui.get_alpha,
entity.get_players, entity.get, entity.get_entities, entity.get_game_rules,
common.set_clan_tag, common.is_button_down, common.get_username, common.get_date,
ffi.cast, ffi.typeof, render.gradient, render.text, render.texture,
render.rect_outline, render.rect, entity.get_local_player, ui.create, ui.get_style,
math.floor, math.abs, math.max, math.ceil, math.min, math.random,
utils.trace_bullet, render.screen_size, render.load_font,
render.load_image_from_file, render.measure_text, render.poly, render.poly_blur,
common.add_notify, common.add_event, utils.console_exec, utils.execute_after,
utils.create_interface, utils.trace_line, ui.find, entity.get_threat,
string.format, nil, entity.get_player_resource, common.get_unixtime, table.insert
local clipboard = require 'neverlose/clipboard'
local base64 = require 'neverlose/base64'
local drag_system = require 'neverlose/drag_system'
local smoothy = require 'neverlose/smoothy'
local get_defensive = require 'neverlose/get_defensive'
local md5 = require 'neverlose/md5'
local inspect = require 'neverlose/inspect'
local events = require 'neverlose/events'
local table_clear = require 'table.clear'
local function on_load() cvar.clear:call() print_raw('\a'..ui_get_style('Link
Active'):to_hex()..'mytools \aDEFAULTRenewed\nLast update: 31.08') end;on_load()
_DEBUG = true
ffi.cdef[[
typedef void*(__thiscall* get_client_entity_t)(void*, int);
typedef struct {
char pad_0000[20];
int m_nOrder; //0x0014
int m_nSequence; //0x0018
float m_flPrevCycle; //0x001C
float m_flWeight; //0x0020
float m_flWeightDeltaRate; //0x0024
float m_flPlaybackRate; //0x0028
float m_flCycle; //0x002C
void *m_pOwner; //0x0030
char pad_0038[4]; //0x0034
} c_animlayers;
]]
files.create_folder("nl/scripts/mytools")
local entity_list_003 = ffi.cast(ffi.typeof("uintptr_t**"),
utils.create_interface("client.dll", "VClientEntityList003"))
local get_entity_address = this_call(ffi.cast("get_client_entity_t",
entity_list_003[0][3]), entity_list_003)
local engine_client = ffi.cast(ffi.typeof('void***'),
utils.create_interface('engine.dll', 'VEngineClient014'))
local console_is_visible = ffi.cast(ffi.typeof('bool(__thiscall*)(void*)'),
engine_client[0][11])
local font, verdana = render.load_font('Calibri Bold', vector(25, 22, -1), 'a, d'),
render.load_font("Verdana", 20, 'a')
ui.find("Miscellaneous", "Main", "Other", "Weapon Actions"):set('Quick Switch',
'Auto Pistols')
local current = ui.find("Miscellaneous", "Main", "Other", "Weapon Actions"):get()
local active_color, color_link = ui_get_style('Link Active'):to_hex(),
ui_get_style('Link'):to_hex()
local anim_tbl, easing_table = {}, smoothy.new(anim_tbl)
local hitlog, modify = {}, {}
local disabled_windows, windows_table = {}, {}
check_windows = function() windows_table = {} for i = 1, 4 do if
(ui.find("Miscellaneous", "Main", "Other", "Windows"):get()[i] ~= nil) and not
contains(disabled_windows, ui.find("Miscellaneous", "Main", "Other",
"Windows"):get()[i]) then table.insert(windows_table, ui.find("Miscellaneous",
"Main", "Other", "Windows"):get()[i]) end end ui.find("Miscellaneous", "Main",
"Other", "Windows"):set(windows_table) end
return type(value)
end
:struct 'impt' {
play_sound = function(name , volume)
local IEngineSoundClient = ffi_cast("void***" ,
utils_create_interface("engine.dll", "IEngineSoundClient003")) or error("Failed to
find IEngineSoundClient003!")
local play_sound_fn = ffi_cast("void(__thiscall*)(void*, const char*,
float, int, int, float)",IEngineSoundClient[0][12])
:struct 'menu' {
var_update = {
active_color = nil,
link = nil,
},
init = function(self)
events.pre_render:set(function()
local current_colors = {
active_color = ui_get_style()["Link Active"],
link = ui_get_style()["Link"]
}
if current_colors.link ~= self.var_update.link or
current_colors.active_color ~= self.var_update.active_color then
events.on_style_change:call()
end
self.var_update = current_colors
end)
local global do
global = {}
config_data = name_list
end
--global_config
--global.fnay_label = configs_group:label("")
global.load_defauls = local_configs:button("✅ \aFFFFFFFFDefault
Config", function()
self.config_system:import('[mytools]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
VJWkN/
VBZJWlFFRRYMFENBRRoaBxoGHAxMF05WXkUVDgJ4VUZFXFQWRgwVREFUQRoUVE5DXUFfWFNoWlVeWFIEUhU
ZAkFSUhUOEBkDXRpCAlgFTVISGhRSAGFUWRcWDBRBQVUaGhVVWBVJVlxNRGxCQl1MU1ZSFBUCQAVSFQoQGF
NdGk4CWVVNUxcaFX5BXFEWE0lQXVQXEwIbFlRWUQIMG0FYEElWWU1FPEJDXExTUVIUGQJBWVIVDgNZDgdID
EwRTlZZRRUJAnlfRkUBVBdiABZBDBRBQVUWGhRUTkNRQV5ZRT5CQlxMU1ZSFRgCQVJSFAMQGFRdG0sCWAJN
UxcaFXJBXVAAWEhUXltYEgAXFwwVR0FVFhoVUk5CUEFfCVNoUlVfD0RTRwIbFlZXRwINYwJ9XUIVRUUXfUo
fWxVaQVpWAgwbZFMIQU4QVF8AS0UVABUYAkJUQhUCAlZaQghBXlhTaFFVXlhEUkECGhtWVxYCDQcOBh4MTR
dOVllFFA8Cf1FEU1FYQQAVGQJDUkIVDgJWXVRfWElbF39VRUlaB0VEFwwVQkFEFxpRWUxEUUtNWxVbQVpWA
g0WbVhXRRYZAhpGVFZSAgxBQVhBSVZdTUVqQkJRTFNRREMMFUNBRREaFWdUVkdJVRtdGh8CWVFNU0EaFGxB
QBRtWVFJUVFFRRQWQwwVQUFVERoVVU5DWkFfVFNpBlVeXERTEQIaF1ZWRgIMF2NSVlRSRhQcDEwXTlZeRRU
OAnZdVF8UQV8JAF5eVlMRVFNHABcWDBRBQVUaGhVVWBVJVlxNRGxCQl1MU1ZSFBUCQAVSFQpGVw9TU0gMTB
ZOV1hFFQICdVVFBAAXFwwVR0FVFhoVUk5CUEFfCVNoUlVfD0RTRwIbFlZXRwINGmFDFGIAUlBQVBVODEwWT
lZeRRQDAmUBVENZTlEQABYXDBVAQVQXGhVZTkNdVwhNRGpCQlpMU1FSFR8CQFhSFF4Cc1VGVxZMQhddG08C
WFRNUhoaFXtQB1NSQQAUAgAXFgwVR0FUGxoUBU5DWUFfDlNpV1VeWERTRwIbGlZWRhRbDQ8FDgdODEwWTlZ
eRRQDAnMKQVVcRRYgT1hRSUNdT1gVABUUAkNVVEMaFVROQ1pBXllTaFFVX1VEUxYCGxJWVxECDEFSQlFdGk
4CWVlNUhYMQ3BeQUNfEwAVGAJDUkIUAwJXClReUUlbEH9UQElbUEVEFwwVTkFFFgxDZFhCThVODEwWTlZeR
RQDAnAWRVJDVFcNRBZxcxcUAhoXVFZaAg0WVw9UXlRJWkB/
VUFJW1dFRBsMFBJBRRIaFCxGUBddG08CWFRNUhoaFW1XFgAXFwwVR0FVFhoVUk5CUEFfCVNoUlVfD0RTRwI
bFlZXRwINGmJWV10WQUVRAkofWxVaQVpWAgwbZlcPRRdcRVAXABYXDBVAQVQXGhVZTkNdVwhNRGpCQlpMU1
FSFR8CQFhSFF4VDx4QS09bFFtBWlECDBcTF29BThQWQwwVQUFVERoVVU5DWkFfVFNpBlVeXERTEQIaF1ZWR
gIMBQ4HRQxMFlgATVIXGhVxT1NNAG5SVxYZAhpGVFZSAgxBQVhBSVZdTUVqQkJRTFNRREMMFUNBRREaQ0ZV
Uk4MTRtOVwlFFQoCAkN3V0wAFxYMFEFBVRoaFVVYFUlWXE1EbEJCXUxTVlIUFQJABVIVChAYU10aTgJZVU1
TFxoVDQBgVU9BABUZAkNSQhUOAlZdVF9YSVsXf1VFSVoHRUQXDBVCQUQXGgcWEEoYTUNOVlhFFQkCblVXF3
5PUlw
AFkYMFURBVEEaFFROQ11BX1hTaFpVXlhSBFIVGQJBUlIVDgJzVkZXTExCRl0bSwJYAk1TFxoVBgBhVFkXGA
IbFkIAQhUPAlZdVF5VSVpAf1RMSVoARUUSDBQVQUQXGgcaEEsZWxVWQVpRFFsCZEJBRxNDWFlQVkdJVFVFF
hNJQ1gAXw1WU0dUUkYAFhcMFUxBVRYMQ0FZQUlWWk1Ea0JCWkxSXFIUSAJBUVIUWUZXWVNSSQxNF05WVUUV
DhQuRlFGRUMTAwUUABUfAkJYQhReAlZeVF8CSVtGf1VBSVpRRUUaDBVCVxMCDQUOB04MTBZOVl5FFAMCeQJ
GRFVUFkMCGhdUVlYCDBdBWUxJVl1bEn9VQElbV0VFFgwVRUFEGxoGShBKHFsUDUFbUAINFhEWYkFOGAAVGB
QVQVUXGhVSTkNdQV5eU2lbVV8IRFJCAhpBVldHAg0EDgZIDEwaTlZZU0MaFXNBXFYARV1HX0cAFhkCGkZUV
lICDEFBWEFJVl1NRWpCQlFMU1FEQwwVQ0FFERoCDA4HTgxNG05XCUUVCgJ5BUZFUFQXZgAWFQIbGlRWVhRb
AlZbVF5SSVpHf1VGSVpdRURGDBVGQURBGgYbEEoYWxRbQVpdAg0WcABLUhVPR0dJWFpTFxMAFBUCQgVCFQo
CVw1UX1RJWkd/
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
W0Z/
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
kCV1tUXlVJW0Z/
VU1JW1BTEwIbF1ZWQQINBA4HTgxNG05XCUUVCgJwAktTFU9HQElZW1MXGAAXFBZDDBVBQVURGhVVTkNaQV9
UU2kGVV5cRFMRAhoXVlZGAgxufUoUWxVaVwxFFQ8Cc1ZMVk0AQ1pDXUoAFkQAFxACGkFUV1cCDRZBWEFJVl
FNRGtUFElbUUVFEQwVQkFFERoBFxBLSFsVXkFbBgIMF2heUERTWwAXGAAXFBRNAkNUQhUJAlZaVF5SSVtKf
1QRSVtURURBDBRDQUUWGlBUTERdXRtPFA9BWlACDRFtWFBFFxMAFhkAFEgCQ1FCFFkCV1tUXlVJW0Z/
VU1JW1BTEwIbF1ZWQQINFnNDUlRfWgJLSFsVXkFbBgIMF3lWQwB7WkReXklSRhZBABcVABUfAkNVQhUJAld
XVF8FSVpDf1QWSVpRRUUWDBRDQUUaGhV3Uw9UUkcCSh9bFVpBWlYCDBthWBBJGlFJW0NJWENFRUBFRBUAFx
gAFxYaQ1RWVwINEUFZQElWWk1FZkJDDUxTVVIUTwJAVFIVDkZXWVNSRQxMFlgATVIXGhVxQURRABcTABYZA
hpGVFZSAgxBQVhBSVZdTUVqQkJRTFNRREMMFUNBRREaFXVUF2dBRF5FQkZdG0sCWAJNUxcaFWdFQkFJWV9T
FxQWQQAXFwwVR0FVFhoVUk5CUEFfCVNoUlVfD0RTRwIbFlZXRwINGmRSUlcUTEMXXRtIAllVTVIRGhR2RlA
XRUMQAwdDABYVABcWDBRBQVUaGhVVWBVJVlxNRGxCQl1MU1ZSFBUCQAVSFQoNDlMOBkgMTBZOV1hFFQICcl
pXA0xSFWNYXUReQElYXQAWGQAWRAIbElRXAQIMF0FZQElXXE1EZ0JCXVoFRUUXDBVFQUUWGkNBVVNEDE1GT
lZdRRRZAmZcVFRcABYVABcYAhsWQgBCFQ8CVl1UXlVJWkB/
VExJWgBFRRIMFBVBRBcaFXBPQVsCShRbFVpXDEUVDwJxQUVSR1RWXUQWfXMWRAAXEAAUTwJCVEIVDgJXW1R
eWUlaR2kDVV5ZRFJBAhsWVlZBAgwbb1ACAkocWxQNQVtQAg0WeVdCABcYABcUFE0CQ1RCFQkCVlpUXlJJW0
p/
VBFJW1RFREEMFENBRRYaFHdBVFNXVkZSQ10bTgJZUk1SFhoVdUFdXABaAUZDEAAWQwAWFwwVQEFUFxoVWU5
DXVcITURqQkJaTFNRUhUfAkBYUhReFQ8eEEtPWxRbQVpRAgwXExdvQU4UFkEAFxUCGxFUVlYCDRFBWE1JVw
1NRG9CQwpMUlBSFRgCQFRSFQIQGQRLTVsVW0FaVgINFmJYV1kWYEFBRAAXEAAWQQwUQUFVFhoUVE5DUUFeW
UU+QkJcTFNWUhUYAkFSUhQDVEQRRUocWxQNQVtQAg0WFBZiQU4YABcUFkECGxdUVlECDRZBWUdJV1BNRTtC
QllMUgZSFBkCQVVSFA8QGQhdG08UD0FaUAINERUXY0FOEwAWGQAWRgwVREFUQRoUVE5DXUFfWFNoWlVeWFI
EUhUZAkFSUhUOEBkDXRpCAlgFTVISGhQ6QUEVbVhQRRYVABcYABUYFBVBVRcaFVJOQ11BXl5TaVtVXwhEUk
ICGkFWV0cCDRZkU1NBQlRUFUkaGgJZVE1SERoVBgBgUlkWGQAWRAAVHAJCAkIUDwJWWlRfVElaS39VQV8NR
FJHAhsRVlZGAg0DDgZEDE1GTlZdRRRZAmVCQUcUQ1lYUFZMSVVYU0FXXkFIF1pOQVFSQ1ZSFhkAFkQAFRwC
QgJCFA8CVlpUX1RJWkt/
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
BkDXWo=[/mytools]') end, true)
global.save_preset:tooltip("Save / Create Preset")
global.delete_preset:tooltip("Delete Preset")
global.import_preset:tooltip("Import")
global.export_preset:tooltip("Export")
--llinks
global.discord = info_group:button('Discord channel', function()
panorama.SteamOverlayAPI.OpenExternalBrowserURL("https://discord.gg/yXUNrR8") end,
true)
return md5.sumhexa(signature)
end
clipboard.set(data)
print_dev("\aFFFFFFFFYour verification code is: \
a"..string.sub(ui_get_style('Link Active'):to_hex(), 0, 6).."" .. data .. "\
aFFFFFFFF")
print_raw("\aFFFFFFFFYour verification code is: \
a"..string.sub(ui_get_style('Link Active'):to_hex(), 0, 6).."" .. data .. "\
aFFFFFFFF")
print_dev("\aFFFFFFFFIt was copied to your clipboard!")
print_raw("\aFFFFFFFFIt was copied to your clipboard!")
end)
self.impt.play_sound('physics/wood/wood_plank_impact_hard4.wav', 0.12)
end, true)
global.refresh_colors = function()
local active_color = ui_get_style('Link Active'):to_hex()
local color_link = ui_get_style('Link'):to_hex()
global.save_preset:name(
' \a'..active_color..' '
)
global.delete_preset:name(
' \a'..active_color..' '
)
global.import_preset:name(
' \a'..active_color..' '
)
global.export_preset:name(
' \a'..active_color..' '
)
global.import_preset1:name(
' \a'..active_color..'\a'..color_link..' Import'
)
global.export_preset1:name(
' \a'..active_color..'\a'..color_link..' Export'
)
global.discord:name(
' \a'..active_color..'\a'..color_link..' Discord '
)
global.verify:name(
' \a'..active_color..'\a'..color_link..' Verification
Token '
)
global.neverlose_config:name(
' \a'..active_color..'\a'..color_link..' Neverlose
Config '
)
global.youtube:name(
' \a'..active_color..'\a'..color_link..' Our Youtube '
)
text:name(string_format('\aDEFAULTWelcome, \
a'..active_color..'%s!\n\aDEFAULTCurrent build: %s \n\aDEFAULTSupport in discord
channel only!', gradient_textz(ui_get_style()["Link Active"].r, ui_get_style()
["Link Active"].g, ui_get_style()["Link Active"].b, 255, ui_get_style()["Link"].r,
ui_get_style()["Link"].g, ui_get_style()["Link"].b, 255, self.cheat.username ==
'pikachu' and 'admin' or self.cheat.username), gradient_textz(ui_get_style()["Link
Active"].r, ui_get_style()["Link Active"].g, ui_get_style()["Link Active"].b, 255,
ui_get_style()["Link"].r, ui_get_style()["Link"].g, ui_get_style()["Link"].b, 255,
self.cheat.version)))
end
events.render:set(function()
if ui_get_alpha() < 0.3 then return end
link_color = ui_get_style()["Link Active"]
local elements do
elements = {
antiaims = {},
ragebot = {},
visuals = {},
misc = {},
antiaims_builder = {}
}
local active_color = ui_get_style('Link Active'):to_hex()
elements.misc.scoreboard_icon = info_group:switch("Shared
scoreboard icon")
elements.misc.scoreboard_icon:tooltip("Shows players with a script
on server through icon in scoreboard")
elements.misc.muteunmute = misc_group:switch 'Unmute Silenced
Players'
elements.misc.muteunmute:tooltip('\a'..active_color..'Unmute
Silenced Players.\aDEFAULT\n\nRemoves mute from all players who are muted for
abuse, updating on round start.')
elements.visuals.dmg_indx:visibility(false)
elements.visuals.dmg_indy:visibility(false)
elements.visuals.velocity_color = settings:color_picker("Accent
color", color(145, 178, 239))
elements.visuals.velocity_x = settings:slider("posxvelocity",
0, render_screen_size().x, 900)
elements.visuals.velocity_y = settings:slider("posyvelocity",
0, render_screen_size().y, 250)
elements.visuals.velocity_x:visibility(false)
elements.visuals.velocity_y:visibility(false)
end
elements.visuals.arrows_style = visuals_group:combo('Anti Aim
Arrows', 'Disabled', 'Default') do
local settings = elements.visuals.arrows_style:create()
elements.visuals.arrows_color = settings:color_picker('Arrows
color', color(255, 165, 135, 255))
end
elements.visuals.sindicators = visuals_group:selectable('500$
Indicators', {'Double tap', 'Dormant aimbot', 'Minimum damage', 'Ping spike', 'Fake
duck', 'Freestanding', 'Spectator list', 'Hit Percentage', 'Bomb info', 'Body aim',
'Hide shots', 'Choked commands'}, 0)
end
elements.visuals.pos_x_s:visibility(false)
elements.visuals.pos_y_s:visibility(false)
elements.visuals.pos_x1_s:visibility(false)
elements.visuals.pos_y1_s:visibility(false)
elements.visuals.viewmodel_aspectratio = misc_group:slider('Aspect
Ratio', 0, 200, 0, 0.01, function(self)
if self == 0 then
return 'Off'
end
end)
--miscellneous
elements.misc.killsay = misc_group:switch 'Trash Talk' do
local settings = elements.misc.killsay:create()
elements.misc.killsay_disablers = settings:switch('Disable on
warmup', false)
end
elements.misc.console_color = settings:color_picker("Console
color", color(255, 255, 255, 255))
end
--othergroup
elements.misc.grenade_fix = misc_group:switch 'Nade Throw Fix'
elements.misc.grenade_fix:tooltip("Fix the moment when you try to
throw a grenade and it is not thrown.")
elements.misc.taskbar = misc_group:switch '\aCCCC6FFFFlash Icon On
Round Start'
--anti-aims
elements.antiaims.antiaim_mode = antiaim_group:list('Choose type of
anti-aim', {' Aggressive Jitter', '🤩 Defensive Meta', '⚙️ Builder'})
elements.antiaims.condition = antiaims_builder_tab:combo("Current
condition", {"Global", "Standing", "Moving", "Slow motion", "Air", "Air Crouch",
"Crouch", "Crouch Move"}, 0)
elements.antiaims.tp = antiaims_builder_tab:label("You are using an
automatic preset, you don't need to adjust it. Just press it and go play.")
elements.antiaims.antiaims_tweaks = antiaim_group:selectable("Anti-
aim Additionals", {'Static manuals','Bombsite E Fix', 'Anti-aim on use', 'Disable
FS on manual', 'Static on fakelag', 'Static on knife'})
elements.antiaims.manual_aa = antiaim_group:combo("Manual AA",
{'Disabled', 'Left', 'Right', 'Forward'})
elements.antiaims.lag_conditions =
settings:selectable("Conditions", {'In Air', 'Standing', 'Moving', 'Slow Walking',
'Crouching', 'Crouch Move'})
end
elements.antiaims.defensive_aa = antiaim_group:switch('Defensive
AA', false) do
local settings = elements.antiaims.defensive_aa:create()
elements.antiaims.defensive_type = settings:combo('Type',
{'Presets', 'Custom'})
elements.antiaims.defensive_pitch = settings:combo('Pitch',
{'Disabled', 'Up', 'Down', 'Semi Up', 'Semi Down', 'Random'})
elements.antiaims.defensive_yaw = settings:combo('Yaw',
{'Disabled', 'Sideways', 'Opposite', 'Spin', 'Random', '3-Way', '5-Way'})
elements.antiaims.custom_pitch = settings:slider('Custom
Pitch', -89, 89, 0)
elements.antiaims.custom_yaw = settings:slider('Custom Yaw', -
180, 180, 0)
elements.antiaims.defensive_disablers =
settings:switch("Disable on manual")
elements.antiaims.defensive_disablers1 =
settings:switch("Disable on nades")
end
elements.misc.movement_helpers = antiaim_group:selectable("Movement
Tweaks", {'Fast ladder', 'No fall damage'})
elements.misc.movement_helpers:tooltip('\a'..active_color..'Auto
jumpbug.\aDEFAULT\nWill try to prevent you from getting damage when falling from
high height.\n\n\a'..active_color..'Fast ladder.\aDEFAULT\nYou climb faster on
ladder.')
elements.antiaims.anim_breakers = antiaim_group:selectable(" \
aCCCC6FFFAnim Breakers", {"Legs on ground", 'Legs in air', 'Increase Move Lean'})
do
local settings = elements.antiaims.anim_breakers:create()
elements.antiaims.type_legs_ground = settings:combo('Legs on
ground', {'Sliding', 'Allah', 'Jitter'})
elements.antiaims.type_legs_air = settings:combo('Legs in air',
{'Static', 'Allah'})
end
--ragegroup
elements.misc.rev_help = rage_group:switch 'Revolver Helper'
elements.misc.rev_help:tooltip('\a'..active_color..'Revolver
Helper.\aDEFAULT\nShows "DMG+" indicator next to opponent if you can give 100
damage an opponent with a revolver.\nYou can edit indicator position in esp
settings.')
elements.misc.hc_cond = settings:selectable('Condition',
{'Air', 'No scope'})
elements.misc.hc_air = settings:slider('Air', 0, 100, 55)
elements.misc.hc_ns = settings:slider('No scope', 0, 100, 55)
end
local antiaim_builder do
antiaim_builder = {}
for i=1, 8 do
local spaces = string.rep(' ', i)
elements.antiaims_builder[i] = { }
elements.antiaims_builder[i].enabled =
antiaims_builder_tab:switch("Enable Condition" .. spaces, false)
elements.antiaims_builder[i].pitch =
antiaims_builder_tab:combo("Pitch" .. spaces, {'Disabled', 'Down', 'Fake Down',
'Fake Up'})
elements.antiaims_builder[i].yaw =
antiaims_builder_tab:combo("Yaw" .. spaces, {'Disabled', 'Backward', 'Static'}) do
local settings = elements.antiaims_builder[i].yaw:create()
elements.antiaims_builder[i].base =
settings:combo('Base' .. spaces, {'Local View', 'At Target'})
elements.antiaims_builder[i].type = settings:combo("Yaw
Mode" .. spaces, {'Default', 'Left/Right', 'Delayed swap'})
elements.antiaims_builder[i].delay = settings:switch("Swap
compatible with inverter" .. spaces)
elements.antiaims_builder[i].offset_l =
settings:slider("Offset" .. spaces, -180, 180, 0, nil, '°')
elements.antiaims_builder[i].offset_r =
settings:slider("Offset R" .. spaces, -180, 180, 0, nil, '°')
elements.antiaims_builder[i].per_tick =
settings:slider("Delay ticks" .. spaces, 0, 128, 64)
elements.antiaims_builder[i].hidden =
settings:switch("Hidden" .. spaces, false)
end
elements.antiaims_builder[i].jyaw =
antiaims_builder_tab:combo("Yaw Modifier" .. spaces, {'Disabled', 'Center',
'Offset', 'Random', 'Spin', '3-Way', '5-Way'}) do
local settings = elements.antiaims_builder[i].jyaw:create()
elements.antiaims_builder[i].mode =
settings:combo("Mode" .. spaces, {"Static", "From/To", 'Left/Right'})
elements.antiaims_builder[i].type_mod =
settings:combo("Settings" .. spaces, {"Default", "Custom"})
elements.antiaims_builder[i].offset_one =
settings:slider("Offset #1" .. spaces, -180, 180, 0, nil, '°')
elements.antiaims_builder[i].offset_two =
settings:slider("Offset #2" .. spaces, -180, 180, 0, nil, '°')
elements.antiaims_builder[i].way1 = settings:slider("1 Way"
.. spaces, -180, 180, 0, nil, '°')
elements.antiaims_builder[i].way2 = settings:slider("2 Way"
.. spaces, -180, 180, 0, nil, '°')
elements.antiaims_builder[i].way3 = settings:slider("3 Way"
.. spaces, -180, 180, 0, nil, '°')
elements.antiaims_builder[i].way4 = settings:slider("4 Way"
.. spaces, -180, 180, 0, nil, '°')
elements.antiaims_builder[i].way5 = settings:slider("5 Way"
.. spaces, -180, 180, 0, nil, '°')
end
elements.antiaims_builder[i].body_yaw =
antiaims_builder_tab:switch("Body Yaw" .. spaces, false) do
local settings =
elements.antiaims_builder[i].body_yaw:create()
elements.antiaims_builder[i].fake_slider_main =
settings:slider("Fake left" .. spaces, 0, 60, 60, nil, '°')
elements.antiaims_builder[i].fake_slider_next =
settings:slider("Fake right" .. spaces, 0, 60, 60, nil, '°')
elements.antiaims_builder[i].fake_op =
settings:selectable("Fake options" .. spaces, {"Avoid Overlap", "Jitter",
"Randomize Jitter", "Anti Bruteforce"}, 0)
elements.antiaims_builder[i].freestand =
settings:combo("Freestand DS" .. spaces, {"Off", "Peek Fake", "Peek Real"}, 0)
elements.antiaims_builder[i].inverter =
settings:switch("Anti-aim inverter" .. spaces, false)
end
end
antiaim_builder.hide_all_custom = function()
for i = 1, 8 do
for _, k in pairs(custom_aa[i]) do
if not k:visibility() then goto skip end
k:visibility(false)
::skip::
end
end
end
custom_aa[num].enabled:visibility(true)
end
antiaim_builder.init_handle = function(self)
events.pre_render:set(function()
if ui_get_alpha() ~= 1 then return end
if state == 3 then
antiaim_builder:unhide_cur_custom(antiaim_builder:strange(elements.antiaims.conditi
on:get()) + 1)
antiaim_builder:unhide_cur_enable_state(antiaim_builder:strange(elements.antiaims.c
ondition:get()) + 1)
for i=1, 8 do
if (custom_aa[i].jyaw:get() == '5-Way' or
custom_aa[i].jyaw:get() == '3-Way') then custom_aa[i].mode:visibility(false) end
if (custom_aa[i].jyaw:get() == '3-Way' and
custom_aa[i].type_mod:get() == 'Custom') then
custom_aa[i].offset_one:visibility(false) custom_aa[i].offset_two:visibility(false)
custom_aa[i].way1:visibility(true) custom_aa[i].way2:visibility(true)
custom_aa[i].way3:visibility(true) custom_aa[i].way4:visibility(false)
custom_aa[i].way5:visibility(false) end
if (custom_aa[i].jyaw:get() == '5-Way' and
custom_aa[i].type_mod:get() == 'Custom') then
custom_aa[i].offset_one:visibility(false) custom_aa[i].offset_two:visibility(false)
custom_aa[i].way1:visibility(true) custom_aa[i].way2:visibility(true)
custom_aa[i].way3:visibility(true) custom_aa[i].way4:visibility(true)
custom_aa[i].way5:visibility(true) end
if (custom_aa[i].jyaw:get() == '5-Way' and
custom_aa[i].type_mod:get() == 'Default') then
custom_aa[i].offset_two:visibility(false) custom_aa[i].way1:visibility(false)
custom_aa[i].way2:visibility(false) custom_aa[i].way3:visibility(false)
custom_aa[i].way4:visibility(false) custom_aa[i].way5:visibility(false) end
if (custom_aa[i].jyaw:get() == '3-Way' and
custom_aa[i].type_mod:get() == 'Default') then
custom_aa[i].offset_two:visibility(false) custom_aa[i].way1:visibility(false)
custom_aa[i].way2:visibility(false) custom_aa[i].way3:visibility(false)
custom_aa[i].way4:visibility(false) custom_aa[i].way5:visibility(false) end
if (custom_aa[i].jyaw:get() ~= '5-Way' and
custom_aa[i].jyaw:get() ~= '3-Way') then custom_aa[i].type_mod:visibility(false)
custom_aa[i].way1:visibility(false) custom_aa[i].way2:visibility(false)
custom_aa[i].way3:visibility(false) custom_aa[i].way4:visibility(false)
custom_aa[i].way5:visibility(false) end
if custom_aa[i].type:get() ~= 'Delayed swap' then
custom_aa[i].per_tick:visibility(false) custom_aa[i].delay:visibility(false) end
if custom_aa[i].type:get() == 'Default' then
custom_aa[i].offset_r:visibility(false) end
if custom_aa[i].mode:get() == 'Static' then
custom_aa[i].offset_two:visibility(false) end
end
custom_aa[1].enabled:visibility(false)
custom_aa[1].enabled:set(true)
elements.antiaims.condition:visibility(true)
end
end)
end
end
self.global = global
self.info_group = info_group
self.elements = elements
self.antiaim_builder = antiaim_builder
--set callbacks
antiaim_builder:init_handle()
end
}
:struct 'refs' {
enable_desync = ui_find("Aimbot", "Anti Aim", "Angles", "Body Yaw"),
yaw_base = ui_find("Aimbot", "Anti Aim", "Angles", "Yaw"),
pitch = ui_find("Aimbot", "Anti Aim", "Angles", "Pitch"),
yaw = ui_find("Aimbot", "Anti Aim", "Angles", "Yaw", "Offset"),
fake_op = ui_find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "Options"),
base_yaw = ui_find("Aimbot", "Anti Aim", "Angles", "Yaw", "Base"),
--lby = ui_find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "LBY Mode"),
freestand = ui_find("Aimbot", "Anti Aim", "Angles", "Body Yaw",
"Freestanding"),
--desync_os = ui_find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "On
Shot"),
hidden = ui_find("Aimbot", "Anti Aim", "Angles", "Yaw", "Hidden"),
slowwalk = ui_find("Aimbot", "Anti Aim", "Misc", "Slow Walk"),
jyaw = ui_find("Aimbot", "Anti Aim", "Angles", "Yaw Modifier"),
jyaw_slider = ui_find("Aimbot", "Anti Aim", "Angles", "Yaw Modifier",
"Offset"),
fake_duck = ui_find("Aimbot", "Anti Aim", "Misc", "Fake Duck"),
freestanding_def = ui_find("Aimbot", "Anti Aim", "Angles", "Freestanding"),
left_limit = ui_find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "Left
Limit"),
right_limit = ui_find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "Right
Limit"),
dt = ui_find('Aimbot', 'Ragebot', 'Main', 'Double Tap'),
hs = ui_find('Aimbot', 'Ragebot', 'Main', 'Hide shots'),
body_aim = ui_find('Aimbot', 'Ragebot', 'Safety', 'Body Aim'),
safe_point = ui_find("Aimbot", "Ragebot", "Safety", "Safe Points"),
auto_peek = ui_find('Aimbot', 'Ragebot', 'Main', 'Peek Assist'),
freestanding_yaw = ui_find("Aimbot", "Anti Aim", "Angles", "Freestanding"),
hitchance = ui_find("Aimbot", "Ragebot", "Selection", "Hit Chance"),
min_dmg = ui_find("Aimbot", "Ragebot", "Selection", "Min. Damage"),
base = ui_find("Aimbot", "Anti Aim", "Angles", "Yaw", "Base"),
dormantaim = ui_find("Aimbot", "Ragebot", "Main", "Enabled", "Dormant
Aimbot"),
pingspike = ui_find("Miscellaneous", "Main", "Other", "Fake Latency"),
legmovement = ui_find("Aimbot", "Anti Aim", "Misc", "Leg Movement"),
logs = ui_find("Miscellaneous", "Main", "Other", "Log Events"),
inverter1 = ui_find("Aimbot", "Anti Aim", "Angles", "Body Yaw",
"Inverter"),
disablers = ui_find("Aimbot", "Ragebot", "Safety", "Body Aim", "Disablers")
}
:struct 'config_system' {
init = function(self)
local config_system do
local path = 'nl/scripts/mytools/mytools.config'
config_system = {}
if success then
print_error 'You are not allowed to edit FFI Struct.'
common.unload_script()
return
end
ffi.copy(strbuf, str)
ffi.copy(keybuf, key)
Cipher = {
encode = function(a, b)
return '[mytools]' ..
tostring(base64.encode(Xor(a,Cipher_code))) .. '[/mytools]'
end,
decode = function(a, b)
local prefix = '[mytools]'
local bypassed_prefix = '[/mytools]'
return tostring(Xor(base64.decode(a),Cipher_code))
end
}
if c ~= nil then
success, config_file = pcall(function()
return json.parse(Cipher.decode(c))
end)
end
if m == v.tab then
for ce,net in pairs(j) do
if get_type(net) == 'table' then
for fnay,mishkat in pairs(net) do
if v.name == mishkat:name() then
mishkat:set(v.var)
end
end
::skip::
end
end
self.impt.play_sound('physics/wood/wood_plank_impact_hard4.wav', 0.12)
end
config_system.save = function()
local preset_name = self.menu.global.preset_name:get()
local do_save = 0
config_data[i].code = self.config_system:export()
files.write(path, json.stringify(config_data))
self.menu.global.preset_name:set('')
do_save = -2
break
end
end
if work then
do_save = 3
table.insert(config_data, {code =
self.config_system:export(), name = preset_name})
local name_file = {}
for i=1, #config_data do
table.insert(name_file, config_data[i].name)
end
files.write(path, json.stringify(config_data))
self.menu.global.preset_list:update(name_file)
self.menu.global.preset_name:set('')
do_save = -3
end
end
if do_save == 1 then
self.impt.play_sound('error.wav', 0.12)
common_add_notify('mytools', '\aE0C152FF\xef\x81\xb1
enter valid config name!')
return
end
if do_save ~= 0 then
common_add_notify('mytools', '\a89F2CAFFsuccessfully
saved your config')
self.impt.play_sound('physics/wood/wood_plank_impact_hard4.wav', 0.12)
else
self.impt.play_sound('error.wav', 0.12)
common_add_notify('mytools', '\aE0C152FF\xef\x81\xb1
there was an error while loading your config')
end
end)
end
config_system.delete = function()
local num = self.menu.global.preset_list:get()
table.remove(config_data, num)
files.write(path, json.stringify(config_data))
local name_list = {}
for i=1, #config_data do
table.insert(name_list, config_data[i].name)
end
self.impt.play_sound('physics/wood/wood_plank_impact_hard4.wav', 0.12)
end
end
config_system.export = function()
local tbl = {}
local ignore_list = {}
for itab,tab in pairs(self.menu.elements) do
for k,v in pairs(tab) do
if get_type(v) == 'table' then
for k,v in pairs(v) do
table.insert(tbl, {tab = itab, name = v:name(), var
= get_type(v:get()) == 'imcolor' and v:get():to_hex() or v:get()})
end
goto skip end
table.insert(tbl, {tab = itab, name = v:name(), var =
get_type(v:get()) == 'imcolor' and v:get():to_hex() or v:get()})
::skip::
end
end
clipboard.set(config)
return config
end
config_system.load = function()
local last_config = db.last_config or { }
local name_list = {}
if #name_list == 0 then
self.impt.play_sound('error.wav', 0.12)
common_add_notify('mytools', '\aE0C152FF\xef\x81\xb1 there was
an error while loading your config')
return
end
config_system:import(config_data[num].code, true)
end
self.save = config_system.save
self.delete = config_system.delete
self.import = config_system.import
self.export = config_system.export
self.load = config_system.load
end
}
ctx.menu:init()
ctx.config_system:init()
local Ways = {
Number = 0
}
local antiaim_builder do
antiaim_builder = {}
if bit.band(flags, 4) == 4 then
return true
end
return false
end
player = 0
local get_player = nil
local is_dormant = false
local localplayer = entity_get_local_player()
if false then
cnds = 9
elseif lp_vel < 5 and not cmd.in_jump and not (is_crouching(localplayer) or
ctx.refs.fake_duck:get()) then
cnds = 2
elseif cmd.in_jump and not is_crouching(localplayer) then
cnds = 5
elseif cmd.in_jump and is_crouching(localplayer) then
cnds = 6
elseif lp_vel > 5 and (is_crouching(localplayer) or
ctx.refs.fake_duck:get()) then
cnds = 8
elseif (is_crouching(localplayer) or ctx.refs.fake_duck:get()) then
cnds = 7
else
if ctx.refs.slowwalk:get() then
cnds = 4
else
cnds = 3
end
end
return cnds
end
antiaim_builder.custom_preset = function()
events.createmove:set(function(cmd)
if entity_get_local_player() == nil then return end
local lp = entity_get_local_player()
local lp_vel = antiaim_builder:get_velocity(lp)
local state = antiaim_builder:state(lp_vel, nil, cmd)
if ctx.menu.elements.antiaims.antiaim_mode:get() == 1 or
ctx.menu.elements.antiaims.antiaim_mode:get() == 2 then
if ctx.menu.elements.antiaims.antiaim_mode:get() == 1 then
if b == 1 then
ctx.refs.pitch:override("Down")
ctx.refs.enable_desync:override(true)
elseif b == 2 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
ctx.refs.yaw:override(rage.antiaim:inverter() == true and -
20 or 28)
ctx.refs.jyaw:override("Center")
ctx.refs.jyaw_slider:override(-20)
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(58)
ctx.refs.right_limit:override(58)
ctx.refs.hidden:override(false)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(false)
ctx.refs.enable_desync:override(true)
elseif b == 3 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
ctx.refs.yaw:override(rage.antiaim:inverter() == true and -
6 or 10)
ctx.refs.jyaw:override("Center")
ctx.refs.jyaw_slider:override(-58)
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(36)
ctx.refs.right_limit:override(36)
ctx.refs.hidden:override(false)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(false)
ctx.refs.enable_desync:override(true)
elseif b == 4 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
ctx.refs.yaw:override(rage.antiaim:inverter() == true and -
30 or 42)
ctx.refs.jyaw:override("Spin")
ctx.refs.jyaw_slider:override(-15)
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(45)
ctx.refs.right_limit:override(45)
ctx.refs.hidden:override(false)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(false)
ctx.refs.enable_desync:override(true)
elseif b == 5 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
ctx.refs.yaw:override(35)
ctx.refs.jyaw:override("Offset")
ctx.refs.jyaw_slider:override(-50)
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(60)
ctx.refs.right_limit:override(60)
ctx.refs.hidden:override(false)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(false)
ctx.refs.enable_desync:override(true)
elseif b == 6 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
ctx.refs.yaw:override(rage.antiaim:inverter() == true and 5
or 20)
ctx.refs.jyaw:override("Center")
ctx.refs.jyaw_slider:override(-42)
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(58)
ctx.refs.right_limit:override(58)
ctx.refs.hidden:override(false)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(false)
ctx.refs.enable_desync:override(true)
elseif b == 7 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
ctx.refs.yaw:override(0)
ctx.refs.jyaw:override("Center")
ctx.refs.jyaw_slider:override(-15)
ctx.refs.fake_op:override({""})
ctx.refs.left_limit:override(25)
ctx.refs.right_limit:override(25)
ctx.refs.hidden:override(false)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(true)
ctx.refs.enable_desync:override(true)
end
elseif ctx.menu.elements.antiaims.antiaim_mode:get() == 2 then
if b == 1 then
ctx.refs.pitch:override("Down")
ctx.refs.enable_desync:override(true)
elseif b == 2 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
ctx.refs.yaw:override(rage.antiaim:inverter() == true and -
25 or 28)
ctx.refs.jyaw:override("Disabled")
ctx.refs.jyaw_slider:override(0)
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(58)
ctx.refs.right_limit:override(58)
ctx.refs.hidden:override(false)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(false)
ctx.refs.enable_desync:override(true)
rage.antiaim:override_hidden_pitch(math.random(-89, 89))
ui_find("Aimbot", "Ragebot", "Main", "Double Tap", "Lag
Options"):override()
ui_find("Aimbot", "Ragebot", "Main", "Hide Shots",
"Options"):override()
elseif b == 3 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
ctx.refs.yaw:override(rage.antiaim:inverter() == true and -
25 or 28)
ctx.refs.jyaw:override("Disabled")
ctx.refs.jyaw_slider:override(0)
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(58)
ctx.refs.right_limit:override(58)
ctx.refs.hidden:override(true)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(false)
ctx.refs.enable_desync:override(true)
rage.antiaim:override_hidden_pitch(math.random(-89, 89))
ui_find("Aimbot", "Ragebot", "Main", "Double Tap", "Lag
Options"):override()
ui_find("Aimbot", "Ragebot", "Main", "Hide Shots",
"Options"):override()
elseif b == 4 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
ctx.refs.yaw:override(43)
ctx.refs.jyaw:override("Offset")
ctx.refs.jyaw_slider:override(math.random(-65, -85))
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(30)
ctx.refs.right_limit:override(30)
ctx.refs.hidden:override(false)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(false)
ctx.refs.enable_desync:override(true)
ui_find("Aimbot", "Ragebot", "Main", "Double Tap", "Lag
Options"):override()
ui_find("Aimbot", "Ragebot", "Main", "Hide Shots",
"Options"):override()
elseif b == 5 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
if not ctx.refs.dt:get() and not ctx.refs.hs:get() then
ctx.refs.yaw:override(0)
ctx.refs.jyaw:override("Disabled")
ctx.refs.jyaw_slider:override(0)
ctx.refs.fake_op:override("")
ctx.refs.left_limit:override(25)
ctx.refs.right_limit:override(25)
else
ctx.refs.yaw:override(40)
ctx.refs.jyaw:override("Random")
ctx.refs.jyaw_slider:override(rage.antiaim:inverter()
== true and 0 or -44)
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(60)
ctx.refs.right_limit:override(60)
end
ctx.refs.hidden:override(true)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(false)
ctx.refs.enable_desync:override(true)
ui_find("Aimbot", "Ragebot", "Main", "Double Tap", "Lag
Options"):override("Always On")
ui_find("Aimbot", "Ragebot", "Main", "Hide Shots",
"Options"):override("Break LC")
rage.antiaim:override_hidden_pitch(math.random(-89, 89))
elseif b == 6 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
if not ctx.refs.dt:get() and not ctx.refs.hs:get() then
ctx.refs.yaw:override(0)
ctx.refs.jyaw:override("Disabled")
ctx.refs.jyaw_slider:override(0)
ctx.refs.fake_op:override("")
ctx.refs.left_limit:override(25)
ctx.refs.right_limit:override(25)
else
ctx.refs.yaw:override(rage.antiaim:inverter() == true
and 15 or 37)
ctx.refs.jyaw:override("Offset")
ctx.refs.jyaw_slider:override(rage.antiaim:inverter()
== true and 0 or -89)
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(60)
ctx.refs.right_limit:override(60)
end
ctx.refs.hidden:override(true)
ctx.refs.freestand:override("Off")
ctx.refs.inverter1:override(false)
ctx.refs.enable_desync:override(true)
ui_find("Aimbot", "Ragebot", "Main", "Double Tap", "Lag
Options"):override("Always On")
ui_find("Aimbot", "Ragebot", "Main", "Hide Shots",
"Options"):override("Break LC")
rage.antiaim:override_hidden_pitch(math.random(-89, 89))
elseif b == 7 then
ctx.refs.base_yaw:override("At Target")
ctx.refs.pitch:override("Down")
ctx.refs.yaw_base:override("Backward")
if not ctx.refs.dt:get() and not ctx.refs.hs:get() then
ctx.refs.yaw:override(0)
ctx.refs.jyaw:override("Disabled")
ctx.refs.jyaw_slider:override(0)
ctx.refs.fake_op:override("")
ctx.refs.left_limit:override(25)
ctx.refs.right_limit:override(25)
ctx.refs.inverter1:override(false)
else
ctx.refs.yaw:override(rage.antiaim:inverter() == true
and 0 or -15)
ctx.refs.jyaw:override("3 Way")
ctx.refs.jyaw_slider:override(math.random(-45, -70))
ctx.refs.fake_op:override({"Jitter"})
ctx.refs.left_limit:override(38)
ctx.refs.right_limit:override(29)
ctx.refs.inverter1:override(false)
end
ctx.refs.hidden:override(true)
ctx.refs.freestand:override("Off")
ctx.refs.enable_desync:override(true)
ui_find("Aimbot", "Ragebot", "Main", "Double Tap", "Lag
Options"):override("Always On")
ui_find("Aimbot", "Ragebot", "Main", "Hide Shots",
"Options"):override("Break LC")
rage.antiaim:override_hidden_pitch(math.random(-89, 89))
end
end
if ctx.menu.elements.antiaims.antiaims_tweaks:get('Disable FS on
manual') and ctx.refs.freestanding_yaw:get() and
(ctx.menu.elements.antiaims.manual_aa:get() == "Right" or
ctx.menu.elements.antiaims.manual_aa:get() == "Left" or
ctx.menu.elements.antiaims.manual_aa:get() == "Forward") then
ctx.refs.freestanding_yaw:set(false)
end
if ctx.menu.elements.antiaims.antiaims_tweaks:get('Static on
knife') then
if entity_get_local_player():get_player_weapon() == nil then
return end
knife =
entity_get_local_player():get_player_weapon():get_classname() == "CKnife"
if knife then
ctx.refs.yaw:override(0)
ctx.refs.jyaw:override("Disabled")
ctx.refs.jyaw_slider:override(0)
ctx.refs.fake_op:override("")
ctx.refs.left_limit:override(25)
ctx.refs.right_limit:override(25)
ctx.refs.inverter1:override(true)
end
end
if (ctx.menu.elements.antiaims.manual_aa:get() == "Right" or
ctx.menu.elements.antiaims.manual_aa:get() == "Left" or
ctx.menu.elements.antiaims.manual_aa:get() == "Forward" or
ctx.refs.freestanding_yaw:get()) and
ctx.menu.elements.antiaims.antiaims_tweaks:get("Static manuals") then
ctx.refs.fake_op:override({})
ctx.refs.jyaw:override("Disabled")
end
if ctx.menu.elements.antiaims.antiaims_tweaks:get('Static on
fakelag') then
if cmd.choked_commands > 1 then
ctx.refs.yaw:override(0)
ctx.refs.jyaw:override("Disabled")
ctx.refs.jyaw_slider:override(0)
ctx.refs.fake_op:override("")
ctx.refs.left_limit:override(25)
ctx.refs.right_limit:override(25)
ctx.refs.inverter1:override(true)
end
end
ctx.refs.base_yaw:override(ctx.menu.elements.antiaims.manual_aa:get() ~= 'Disabled'
and 'Local view' or nil)
if ctx.menu.elements.antiaims.manual_aa:get() ~= 'Disabled' then
if ctx.menu.elements.antiaims.antiaim_mode:get() ~= 3 then
return
end
Ways.Number = Ways.Number + 1;
ctx.refs.yaw:override(NewYaw);
Ways.Number = Ways.Number + 1;
ctx.refs.yaw:override(NewYaw);
else
ctx.refs.jyaw:override(custom_aa[d].jyaw:get())
ctx.refs.jyaw_slider:override(custom_aa[d].offset_one:get())
elseif custom_aa[d].mode:get() == 'From/To' then
ctx.refs.jyaw_slider:override(math.random(custom_aa[d].offset_one:get(),
custom_aa[d].offset_two:get()))
elseif custom_aa[d].mode:get() == 'Left/Right' then
ctx.refs.jyaw_slider:override(rage.antiaim:inverter() ==
true and custom_aa[d].offset_one:get() or custom_aa[d].offset_two:get())
end
end
ctx.refs.fake_op:override(custom_aa[d].fake_op:get())
ctx.refs.freestand:override(custom_aa[d].freestand:get())
local f = ctx.menu.elements.antiaims.manual_aa:get()
if ctx.menu.elements.antiaims.antiaims_tweaks:get('Disable FS on
manual') and ctx.refs.freestanding_yaw:get() and (f == "Right" or f == "Left" or f
== "Forward") then
ctx.refs.freestanding_yaw:set(false)
end
if ctx.menu.elements.antiaims.antiaims_tweaks:get('Static on knife')
then
if entity_get_local_player():get_player_weapon() == nil then return
end
knife =
entity_get_local_player():get_player_weapon():get_classname() == "CKnife"
if knife then
ctx.refs.yaw:override(0)
ctx.refs.jyaw:override("Disabled")
ctx.refs.jyaw_slider:override(0)
ctx.refs.fake_op:override("")
ctx.refs.left_limit:override(25)
ctx.refs.right_limit:override(25)
ctx.refs.inverter1:override(true)
end
end
if ctx.menu.elements.antiaims.antiaims_tweaks:get('Static on fakelag')
then
if cmd.choked_commands > 1 then
ctx.refs.yaw:override(0)
ctx.refs.jyaw:override("Disabled")
ctx.refs.jyaw_slider:override(0)
ctx.refs.fake_op:override("")
ctx.refs.left_limit:override(25)
ctx.refs.right_limit:override(25)
ctx.refs.inverter1:override(true)
end
end
--console
function paint_c(fn)
table.foreach(materials.get_materials("vgui/hud/800"), function(clr, console)
console:color_modulate(fn)
console:alpha_modulate(fn.a / 255)
end)
cvar.toggleconsole:set_callback(function()
if not ctx.menu.elements.misc.console_changer:get() then
return
end
paint_c(color())
ctx.menu.elements.misc.console_color:set_callback(function(self)
if not ctx.menu.elements.misc.console_changer:get() then
return
end
paint_c(color())
if console_is_visible(engine_client) then
paint_c(ctx.menu.elements.misc.console_color:get())
end
end)
ctx.menu.elements.misc.console_changer:set_callback(function(self)
if not self:get() then
paint_c(color())
else
paint_c(ctx.menu.elements.misc.console_color:get())
end
end, true)
--console end
local handlers do
local loadTime = common_get_unixtime()
local mt = {
__index = {
events_cache = { },
action = function(self)
local last_tick = 0
local t = self.events_cache
local formatedLog =
base64.encode(string_format('[%s:%s] - %s', targetFunction, n,
output:gsub('FF4040', '')))
local time = common_get_unixtime()-loadTime
local signature = md5.sumhexa(string_format('%s
%s%s%sidealyawenc0192', common.get_username(), time, 'Mytools', formatedLog))
cvar.play:call 'ambient\\weather\\rain_drip1'
last_tick = ctime
end
end
end
end)
end
end
},
__metatable = false
}
handlers:add('createmove', function(cmd)
if ctx.menu.elements.antiaims.defensive_aa:get() then
local def_pitch = ctx.menu.elements.antiaims.defensive_pitch:get()
local def_yaw = ctx.menu.elements.antiaims.defensive_yaw:get()
if stage == 0 then
rage.antiaim:override_hidden_pitch(-89)
elseif stage == 1 then
rage.antiaim:override_hidden_pitch(-89)
elseif stage == 2 then
rage.antiaim:override_hidden_pitch(0)
elseif stage == 3 then
rage.antiaim:override_hidden_pitch(89)
elseif stage == 4 then
rage.antiaim:override_hidden_pitch(89)
end
end
if stage == 0 then
rage.antiaim:override_hidden_yaw_offset(utils.random_int(-100,
-90))
elseif stage == 2 then
rage.antiaim:override_hidden_yaw_offset(utils.random_int(90,
180))
end
elseif def_yaw == "Opposite" then
rage.antiaim:override_hidden_yaw_offset(-180)
elseif def_yaw == "Spin" then
local calcspin = (globals.curtime * 550)
calcspin = math.normalize_yaw(calcspin)
rage.antiaim:override_hidden_yaw_offset(calcspin)
elseif def_yaw == "Random" then
rage.antiaim:override_hidden_yaw_offset(utils.random_int(-180,
180))
elseif def_yaw == "3-Way" then
if stage == 0 then
rage.antiaim:override_hidden_yaw_offset(utils.random_int(-
110, -90))
elseif stage == 1 then
rage.antiaim:override_hidden_yaw_offset(utils.random_int(90, 120))
elseif stage == 2 then
rage.antiaim:override_hidden_yaw_offset(utils.random_int(-
180, -150))
end
rage.antiaim:override_hidden_pitch(ctx.menu.elements.antiaims.custom_pitch:get())
rage.antiaim:override_hidden_yaw_offset(ctx.menu.elements.antiaims.custom_yaw:get()
)
end
local lp = entity_get_local_player()
local lp_vel = antiaim_builder:get_velocity(lp)
local state = antiaim_builder:state(lp_vel, nil, cmd)
local b = state
if (b == 2 and ctx.menu.elements.antiaims.lag_conditions:get("Standing"))
or
(b == 3 and ctx.menu.elements.antiaims.lag_conditions:get("Moving")) or
(b == 4 and ctx.menu.elements.antiaims.lag_conditions:get("Slow
Walking")) or
(b == 7 and ctx.menu.elements.antiaims.lag_conditions:get("Crouching"))
or
(b == 8 and ctx.menu.elements.antiaims.lag_conditions:get("Crouch
Move")) or
((b == 5 or b == 6) and
ctx.menu.elements.antiaims.lag_conditions:get("In Air"))
then
cond_active = true
else
cond_active = false
end
local f = ctx.menu.elements.antiaims.manual_aa:get()
local weapon_index =
entity.get_local_player():get_player_weapon():get_weapon_index()
local is_grenade = weapon_index == 43 or weapon_index == 44 or weapon_index ==
45 or weapon_index == 46 or weapon_index == 47 or weapon_index == 48
if (ctx.menu.elements.antiaims.defensive_aa:get() and
ctx.menu.elements.antiaims.defensive_disablers1:get()) and is_grenade then
ctx.refs.hidden:override(false) end
end, true, 'grenades_defensive')
--tag
local misc = {}
misc._last_clantag = nil
misc._set_clantag = ffi.cast('int(__fastcall*)(const char*, const char*)',
utils.opcode_scan('engine.dll', '53 56 57 8B DA 8B F9 FF 15'))
local set_clantag = function(v)
if v == misc._last_clantag then return end
misc._set_clantag(v, v)
misc._last_clantag = v
end
for i = 1, #tag do
table.insert(ret, tag:sub(1, i))
end
for i = #ret - 1, 1, -1 do
table.insert(ret, ret[i])
end
return ret
end
handlers:add('render', function()
if not ctx.menu.elements.misc.clantag_changer:get() then set_clantag(" ", " ")
return end
if not globals.is_connected then return end
tag = build_tag('mytools ')
local netchann_info = utils.net_channel()
if netchann_info == nil then return end
set_clantag(tag[iter])
end, true, 'clantag')
handlers:add('aim_ack', function(e)
if ctx.menu.elements.visuals.sindicators:get('Hit Percentage') then
if e.state == nil then hit = hit + 1 else misses = misses + 1 end
end
end, true, 'aim_ack_aimbot_stats')
local c4_info = {
planting = false,
on_plant_time = 0,
fill = 0,
planting_site = ""
}
local c4_img =
render.load_image_from_file("materials/panorama/images/icons/ui/bomb_c4.svg",
vector(100, 100))
handlers:add('createmove', function(cmd)
if entity_get_local_player() == nil or entity_get_local_player():is_alive() ==
false then return end
OldChoke = cmd.choked_commands
end, true, 'chokes_commands')
handlers:add('render', function()
local player = entity_get_local_player()
if player == nil then
return
end
dmg = math.ceil(damage)
if c4_info.planting then
c4_info.fill = 3.125 - (3.125 + c4_info.on_plant_time - globals.curtime)
if(c4_info.fill > 3.125) then
c4_info.fill = 3.125
end
end
local adjust_adding = 40
local add_y = 0
local binds = {
{string_format('%i-%i-%i-%i-%i', toDraw4, toDraw3, toDraw2, toDraw1,
toDraw0), ctx.menu.elements.visuals.sindicators:get('Choked commands') and
player:is_alive(), color(200, 199, 197)},
{string_format("%s", math.floor(fnaychance)) .. "%",
ctx.menu.elements.visuals.sindicators:get('Hit Percentage') and player:is_alive(),
color(200, 199, 197)},
{"PING", ctx.menu.elements.visuals.sindicators:get('Ping spike') and
player:is_alive() and ui.find("Miscellaneous", "Main", "Other", "Fake
Latency"):get() > 0 and player:is_alive(), color(163, 194, 43)},
{"BODY", ctx.menu.elements.visuals.sindicators:get('Body Aim') and
player:is_alive() and ctx.refs.body_aim:get() == 'Force', color(200, 199, 197)},
{"DT", ctx.menu.elements.visuals.sindicators:get('Double tap') and
player:is_alive() and ui.find("Aimbot", "Ragebot", "Main", "Double Tap"):get() and
not ui.find("Aimbot", "Anti Aim", "Misc", "Fake Duck"):get(), rage.exploit:get() ==
1 and color(200, 199, 197) or color(255, 0, 50)},
{"DA", ctx.menu.elements.visuals.sindicators:get('Dormant aimbot') and
player:is_alive() and ui.find("Aimbot", "Ragebot", "Main", "Enabled", "Dormant
Aimbot"):get(), fnayf == true and color(200, 199, 197) or color(255, 0, 50)},
{"DUCK", ctx.menu.elements.visuals.sindicators:get('Fake duck') and
player:is_alive() and ui.find("Aimbot", "Anti Aim", "Misc", "Fake Duck"):get(),
color(200, 199, 197)},
{"MD", ctx.menu.elements.visuals.sindicators:get('Minimum damage') and
player:is_alive() and smdmg == true, color(200, 199, 197)},
{"FS", ctx.menu.elements.visuals.sindicators:get('Freestanding') and
player:is_alive() and ui.find("Aimbot", "Anti Aim", "Angles",
"Freestanding"):get(), color(200, 199, 197)},
{" " .. bombsite .." - " .. string_format("%.1f", timer) .. "s",
ctx.menu.elements.visuals.sindicators:get('Bomb info') and timer > 0 and not
defused, color(200, 199, 197), nil, nil, true},
{"FATAL", ctx.menu.elements.visuals.sindicators:get('Bomb info') and
willKill, color(255, 0, 50, 255)},
{"-" .. dmg .. " HP", ctx.menu.elements.visuals.sindicators:get('Bomb
info') and not willKill and damage > 0.5, color(210, 216, 112, 255)},
{" " .. c4_info.planting_site,
ctx.menu.elements.visuals.sindicators:get('Bomb info') and c4_info.planting,
color(210, 216, 112, 255), color(255, 255), c4_info.fill/3.2, true},
{"OSAA", ctx.menu.elements.visuals.sindicators:get('Hide shots') and
player:is_alive() and ui.find("Aimbot", "Ragebot", "Main", "Hide Shots"):get() and
not ui.find("Aimbot", "Ragebot", "Main", "Double Tap"):get() and not
ui.find("Aimbot", "Anti Aim", "Misc", "Fake Duck"):get(), color(200, 199, 197)}
}
for k, v in pairs(binds) do
if v[2] then
render_indicator(v[1], add_y, v[3], v[4], v[5], v[6])
add_y = add_y - adjust_adding
end
end
end, true, 'sindicators')
c4_info.reset = function()
if not ctx.menu.elements.visuals.sindicators:get('Bomb info') then return end
c4_info.planting = false
c4_info.fill = 0
c4_info.on_plant_time = 0
c4_info.planting_site = ""
end
c4_info.bomb_beginplant = function(e)
if not ctx.menu.elements.visuals.sindicators:get('Bomb info') then return end
local player_resource = entity_get_player_resource()
c4_info.on_plant_time = globals.curtime
c4_info.planting = true
handlers:add('render', function()
local x, y = render_screen_size().x, render_screen_size().y
if ctx.menu.elements.visuals.on_screen:get() and
ctx.menu.elements.visuals.select:get() == 'Default' then
if entity_get_local_player() == nil then return end
if entity_get_local_player():is_alive() == false then return end
local velocity = function(ent)
local speed_x = ent["m_vecVelocity[0]"]
local speed_y = ent["m_vecVelocity[1]"]
local speed = math.sqrt(speed_x * speed_x + speed_y * speed_y)
return speed
end
indicator_text = modify.gradient(ctx.menu.elements.visuals.fonts:get() ==
'Small' and (ctx.cheat.version == 'Nightly' and "NIGHTLY" or 'STABLE') or
(ctx.cheat.version == 'Nightly' and "nightly" or 'stable'),
color(ctx.menu.elements.visuals.build_color:get().r,
ctx.menu.elements.visuals.build_color:get().g,
ctx.menu.elements.visuals.build_color:get().b, alpha_cl),
color(ctx.menu.elements.visuals.build_color:get().r,
ctx.menu.elements.visuals.build_color:get().g,
ctx.menu.elements.visuals.build_color:get().b, alpha_cl))
handlers:add('createmove', function(cmd)
local local_player = entity_get_local_player()
if local_player == nil then return end
local m_iTeamNum = local_player.m_iTeamNum
local use = bit.rshift(bit.lshift(cmd.buttons, 26), 31)
if local_player:get_player_weapon() == nil then return end
local anti_aim_on_use_work = true
for i, entities in pairs({entity.get_entities("CPlantedC4"),
entity.get_entities("CHostage")}) do
for i, entity in pairs(entities) do
if local_player:get_origin():dist(entity:get_origin()) < 65 and
local_player:get_origin():dist(entity:get_origin()) > 1 and m_iTeamNum == 3 then
anti_aim_on_use_work = false
end
end
end
if m_iTeamNum == 2 and local_player.m_bInBombZone and
local_player:get_player_weapon():get_weapon_index() == 49 then
anti_aim_on_use_work = false
end
handlers:add('createmove', function(c)
if ctx.menu.elements.antiaims.antiaims_tweaks:get("Bombsite E Fix") then
local plocal = entity_get_local_player()
if entity_get_local_player() == nil then return end
if plocal:get_player_weapon() == nil then return end
local team_num, on_bombsite, defusing = plocal.m_iTeamNum,
plocal.m_bInBombZone, team_num == 3
local trynna_plant = team_num == 2 and has_bomb
local inbomb = on_bombsite ~= false
handlers:add('round_start', function()
if ctx.menu.elements.misc.taskbar:get() then
notify_user()
end
end, true, 'taskbarnotify')
handlers:add('round_start', function()
local state = ctx.menu.elements.misc.muteunmute:get()
if panorama.GameStateAPI.HasCommunicationAbuseMute(player) then
if not panorama.GameStateAPI.IsSelectedPlayerMuted(player) then goto skip
end
panorama.GameStateAPI.ToggleMute(player)
::skip::
end
end)
end, true, 'autounmute')
handlers:add('createmove', function(cmd)
if ctx.menu.elements.antiaims.anim_breakers:get('Legs on ground') and
ctx.menu.elements.antiaims.type_legs_ground:get() == 'Jitter' then
ctx.refs.legmovement:override(cmd.command_number % 3 == 0 and 'Default' or
'Sliding')
end
end, true, 'slider_legs')
handlers:add('post_update_client_side_animation', function()
if entity_get_local_player() == nil then return end
if not entity_get_local_player():is_alive() then return end
get_anim_layer(get_entity_address(entity_get_local_player():get_index()),
6).m_flWeight = 1
end
end
end, true, 'anim_breakers')
handlers:add('createmove', function(cmd)
if not ctx.menu.elements.misc.movement_helpers:get('Fast ladder') then return
end
self = entity_get_local_player()
if self.m_MoveType == 9 then
cmd.view_angles.y = math.floor(cmd.view_angles.y + 0.5)
if cmd.sidemove == 0 then
cmd.view_angles.y = cmd.view_angles.y + 90
end
if cmd.sidemove == 0 then
cmd.view_angles.y = cmd.view_angles.y + 90
end
handlers:add('shutdown', function()
set_clantag(" ", " ")
cvar.viewmodel_fov:int(68)
cvar.viewmodel_offset_x:float(2.5)
cvar.viewmodel_offset_y:float(0)
cvar.viewmodel_offset_z:float(-1.5)
cvar.r_aspectratio:float(0)
ctx.refs.logs:override()
ctx.refs.pitch:override()
ctx.refs.yaw_base:override()
ctx.refs.enable_desync:override()
ctx.refs.left_limit:override()
ctx.refs.right_limit:override()
ctx.refs.jyaw:override()
ctx.refs.jyaw_slider:override()
ctx.refs.fake_op:override()
ctx.refs.freestand:override()
ctx.refs.yaw:override()
ctx.refs.inverter1:override()
ctx.refs.body_aim:override()
ctx.refs.disablers:override()
cvar.sv_maxunlag:float(0.2)
if not entity.get_local_player() == nil then
entity.get_local_player():set_icon() end
ui.find("Visuals", "World", "Main", "Override Zoom", "Scope
Overlay"):override()
ui.find("Aimbot", "Ragebot", "Main", "Double Tap", "Lag Options"):override()
ui.find("Aimbot", "Ragebot", "Selection", "Hit Chance"):override()
ui.find("Aimbot", "Ragebot", "Main", "Hide Shots", "Options"):override()
ui.find("Miscellaneous", "Main", "Other", "Weapon Actions"):set(current)
handlers:action()
--indicators
local example1 = smoothy.new(ctx.refs.min_dmg:get())
local gr_alpha = 0
events.mouse_input:set(function()
if ui_get_alpha() > 0.3 then return false end
end)
events.render:set(function()
new_drag_object:update()
end)
onetap_data = {}
d = d + 25
::m::
end
end
self.callback_registered = true
end
)
end
function b:paint(p, q, userdata)
local r = tonumber(p) + 1
for f = 2, 2, -1 do
self.data[f] = self.data[f - 1]
end
self.data[1] = {time = r, def_time = r, draw = q, shot_pos = userdata}
self:register_callback()
end
return b
end)()
}
:struct 'aim_hit' {
init = function(self)
events.aim_ack:set(function(e)
if ctx.menu.elements.misc.markers:get('OT Damage Marker') then
if e.hitgroup == 1 then clr = color(255, 0, 0):to_hex() else clr =
color(255, 255, 255):to_hex() end
end)
end
}
hitlog.aim_hit:init()
--kibit
kibit_data = {}
events.aim_ack:set(register_marker)
events.render:set(kibit_marker)
events.round_prestart:set(function() kibit_data = {} end)
--logs
local hitgroup_str = {
[0] = 'generic',
'head', 'chest', 'stomach',
'left arm', 'right arm',
'left leg', 'right leg',
'neck', 'generic', 'gear'
}
events.item_purchase:set(function(e)
if ctx.menu.elements.visuals.aimbot_logging:get() and
ctx.menu.elements.visuals.purchases:get() then
end
end)
events.aim_ack:set(function(e)
if ctx.menu.elements.visuals.aimbot_logging:get() and
ctx.menu.elements.visuals.select_log:get("Upper-left") then
local me = entity_get_local_player()
local target = entity.get(e.target)
local state, state1 = e.state, e.state
if not target then return end
if target == nil then return end
local health = target["m_iHealth"]
if entity_get_local_player() == nil then return end
--paste
if state1 == "spread" then
state1 = "\aFEEA7DFFspread"
end
if state1 == "prediction error" then
state1 = "\aFEEA7DFFpred. error"
end
if state1 == "correction" then
state1 = "\aFF5959FFresolver"
end
if state1 == "damage rejection" then
state1 = "\aFF5959FFdamage rejection"
end
if state1 == "misprediction" then
state1 = "\aFEEA7DFFmisprediction"
end
if state1 == "lagcomp failure" then
state1 = "\aFF5959FFlagcomp failure"
end
if state1 == "backtrack failure" then
state1 = "\aFF5959FFbacktrack failure"
end
if state == "correction" then
state = "resolver"
end
--
end
end)
events.player_hurt:set(function(e)
if ctx.menu.elements.visuals.aimbot_logging:get() and
ctx.menu.elements.visuals.select_log:get("Upper-left") then
local me = entity_get_local_player()
local attacker = entity.get(e.attacker, true)
local weapon = e.weapon
local type_hit = 'hit'
if me == attacker then
local user = entity.get(e.userid, true)
print_raw(('\a'..active_color..'mytools » \
aD5D5D5FF'..string.lower(type_hit)..' \a'..active_color..'%s \aDEFAULTfor \
a'..active_color..'%d\aDEFAULT damage (\a'..active_color..'%d \aDEFAULThealth
remaining)'):format(string.lower(user:get_name()), e.dmg_health, e.health))
print_dev((''..type_hit..' \
a'..active_color..''..user:get_name()..' \aDEFAULTfor \a'..active_color..'%d \
aDEFAULTdamage (\a'..active_color..'%d \aDEFAULThealth
remaining)'):format(e.dmg_health, e.health))
end
end
end
end)
local new_drag_object_5 =
drag_system.register({ctx.menu.elements.visuals.velocity_x,
ctx.menu.elements.visuals.velocity_y}, vector(185, 50), "Test1", function(self)
local me = entity.get_local_player()
smoothy_warning(.05, {
vel_mod = not me and .34 or me.m_flVelocityModifier,
alpha = (ctx.menu.elements.visuals.velocity_warning:get() and ((percentage
~= 0 and me) or ui_get_alpha() > 0.3)) and 255 or 0
})
local success, should_render = pcall(function()
return (not me:is_alive() and ui_get_alpha() ~= 1)
end)
local target_color =
color('EA6868FF'):lerp(color(ctx.menu.elements.visuals.velocity_color:get():to_hex(
)), vel_mod)
local text = string.format('⛔ Max velocity reduced by %i%%', percentage)
events.render:set(function()
if ctx.menu.elements.visuals.velocity_warning:get() then
new_drag_object_5:update()
end
end)
events.createmove:set(function()
if ctx.menu.elements.misc.grenade_fix:get() then
if entity.get_local_player() == nil then return end
if entity.get_local_player():get_player_weapon() == nil then return end
local weapon_index =
entity.get_local_player():get_player_weapon():get_weapon_index()
local is_grenade = weapon_index == 43 or weapon_index == 44 or weapon_index
== 45 or weapon_index == 46 or weapon_index == 47 or weapon_index == 48
if is_grenade then
ui.find("Miscellaneous", "Main", "Other", "Weapon Actions"):set({''})
else
ui.find("Miscellaneous", "Main", "Other", "Weapon
Actions"):set(current)
end
end
end)
--
--logs under
local id = 1
events.player_hurt:set(function(e)
if ctx.menu.elements.visuals.aimbot_logging:get() and
ctx.menu.elements.visuals.select_log:get("Under crosshair") then
local me = entity_get_local_player()
local attacker = entity.get(e.attacker, true)
if me == attacker then
local user = entity.get(e.userid, true)
local hitgroup = hitgroup_str[e.hitgroup]
local weapon_name = e.weapon
if weapon_name == 'hegrenade' or weapon_name == 'inferno' or weapon_name ==
'knife' then return end
if ctx.menu.elements.visuals.aimbot_logging:get() and
ctx.menu.elements.visuals.select_log:get("Under crosshair") and not
ctx.menu.elements.visuals.select_log:get("Upper-left") then
print_raw(('\a'..active_color..'mytools » \aD5D5D5FFhit %s in the
'..hitgroup..' for %d damage (%d hp remaining)'):format(user:get_name(),
e.dmg_health, e.health))
end
id = id == 999 and 1 or id + 1
end
end
end)
events.aim_ack:set(function(shot)
if ctx.menu.elements.visuals.aimbot_logging:get() and
ctx.menu.elements.visuals.select_log:get("Under crosshair") then
player_name = shot.target:get_name()
hitgroup = hitgroup_str[shot.hitgroup]
wanted_hitgroup = hitgroup_str[shot.wanted_hitgroup]
id = id == 999 and 1 or id + 1
end
end)
events.render:set(function()
if #hitlog > 0 then
if globals.tickcount >= hitlog[1][2] then
if hitlog[1][3] > 0 then
hitlog[1][3] = hitlog[1][3] - 20
elseif hitlog[1][3] <= 0 then
table.remove(hitlog, 1)
end
end
if #hitlog > 6 then
table.remove(hitlog, 1)
end
if globals.is_connected == false then
table.remove(hitlog, #hitlog)
end
for i = 1, #hitlog do
text_size = render.measure_text(1, nil, hitlog[i][1]).x
if hitlog[i][3] < 255 then
hitlog[i][3] = hitlog[i][3] + 10
end
if ctx.menu.elements.visuals.aimbot_logging:get() and
ctx.menu.elements.visuals.select_log:get("Under crosshair") then
if not ctx.menu.elements.visuals.dis_glow:get() then
render.shadow(vector(render_screen_size().x/2 - text_size/2 +
40, render_screen_size().y/1.29 - (hitlog[i][3]/45) + 15 * i + 10),
vector(render_screen_size().x/2 - text_size/2 + text_size + 25,
render_screen_size().y/1.29 - (hitlog[i][3]/45) + 15 * i + 10),
color(ctx.menu.elements.visuals.accent_color:get().r,
ctx.menu.elements.visuals.accent_color:get().g,
ctx.menu.elements.visuals.accent_color:get().b, 255), 30, 0, 0)
end
render_text(1, vector(render_screen_size().x/2 - text_size/2 + 35,
render_screen_size().y/1.3 - (hitlog[i][3]/45) + 15 * i + 10), color(255, 255, 255,
hitlog[i][3]), nil, hitlog[i][1])
end
end
end
end)
--viewmodel
events.render:set(function()
if ctx.menu.elements.visuals.viewmodel_changer:get() then
cvar.viewmodel_fov:int(ctx.menu.elements.visuals.viewmodel_fov:get(), true)
cvar.viewmodel_offset_x:float(ctx.menu.elements.visuals.viewmodel_x:get()/10,
true)
cvar.viewmodel_offset_y:float(ctx.menu.elements.visuals.viewmodel_y:get()/10,
true)
cvar.viewmodel_offset_z:float(ctx.menu.elements.visuals.viewmodel_z:get()/10,
true)
end
cvar.r_aspectratio:float(ctx.menu.elements.visuals.viewmodel_aspectratio:get()/100)
end)
ctx.menu.elements.visuals.viewmodel_changer:set_callback(function()
if not ctx.menu.elements.visuals.viewmodel_changer:get() then
cvar.viewmodel_fov:int(68)
cvar.viewmodel_offset_x:float(2.5)
cvar.viewmodel_offset_y:float(0)
cvar.viewmodel_offset_z:float(-1.5)
end
end)
ctx.menu.elements.misc.fakelatency:set_callback(function()
if ctx.menu.elements.misc.fakelatency:get() then
cvar.sv_maxunlag:float(0.4)
else
cvar.sv_maxunlag:float(0.2)
end
end, true)
--scope
local scope_line = {}
scope_line.screen = render_screen_size()
scope_line.var = ui_find("Visuals", "World", "Main", "Override Zoom", "Scope
Overlay")
scope_line.anim_num = 0
scope_line.lerp = function(a, b, t)
return a + (b - a) * t
end
scope_line.on_draw = function()
if ctx.menu.elements.visuals.custom_scope:get() then
local_player = entity_get_local_player()
scope_line.var:override("Remove All")
scope_line.offset = ctx.menu.elements.visuals.scope_gap:get() *
scope_line.anim_num
scope_line.length = ctx.menu.elements.visuals.scope_size:get() *
scope_line.anim_num
scope_line.col_1 = ctx.menu.elements.visuals.scope_color:get()
scope_line.width = 1
scope_line.start_x = scope_line.screen.x / 2
scope_line.start_y = scope_line.screen.y / 2
ctx.menu.elements.visuals.custom_scope:set_callback(function()
if not ctx.menu.elements.visuals.custom_scope:get() then
scope_line.var:override()
end
end)
events.createmove:set(function()
local self = entity_get_local_player()
if self == nil then return end
if self:get_player_weapon() == nil then return end
if ctx.refs.hs:get() then return end
--killsay
local misc = new_class()
:struct 'killsay' {
killsay_pharases = {
{'⠀1', 'nice iq'},
{'cgb gblfhfc', 'спи пидорас'},
{'пздц', 'игрок'},
{'1 моча', 'изи'},
{'куда ты', 'сынок ебаный'},
{'найс аа хуесос', 'долго делал?'},
{'ебать что', 'как я убил ахуеть'},
{'mytools over all pidoras'},
{'nice iq', 'churka)'},
{'1 чмо', 'нищий без майтулса'},
{'лол', 'как же я тебя выебал'},
{'че за луашку юзаешь'},
{'чей кфг юзаешь'},
{'найс айкью', 'хуесос'},
{']f]f]f]f]f]f]', 'хахахаха'},
{'jq ,kz', 'ой бля', 'найс кфг уебище'},
{'jq', 'я в афк чит настраивал хаха'},
{'какой же у тебя сочный ник'},
{'хуйсос анимешный', 'думал не убью тебя?)'},
{'моча ебаная', 'кого ты пытаешься убить'},
{'mad cuz bad?', 'hhhhhh retardw'},
{'учись пока я жив долбаеб'},
{'еблан', 'включи монитор'},
{'1', 'опять умер моча'},
{'egc', 'упссс', 'сорри'},
{'хахаха ебать я тебя трахнул'},
{'nice iq', 'u sell'},
{'изи шлюха', 'че в хуй?'},
{'получай тварь ебаная', 'фу нахуй'},
{']f]f]f]f]f]]f]f', 'как же мне похуй долбаеб'},
{'изи моча', 'я ору с тебя какой же ты сочный'},
{'ez owned', 'weak dog + rat'},
{'пиздец ты легкий ботик'},
{'1', 'не отвечаю?', 'мне похуй'},
{'как же мне похуй', 'ботик'},
{'what a terrible game you are', 'fucking bot'},
{'♕ M Y T O O L S > A L L ♕'},
{'market.neverlose.cc/mytools закупись чмо ебаное'}
},
death_say = {
{'пиздец че я за хуйню купил', 'лучше бы майтулс купил бля'},
{'ну фу', 'хуесос'},
{'что ты делаешь', 'моча умалишенная'},
{'бля', 'я стрелял вообще чи шо?'},
{'чит подвел'},
{'БЛЯЯЯЯЯЯЯЯЯЯЯЯТЬ', 'как же ты меня заебал'},
{'ну и зачем', 'дал бы клип', 'пиздец клоун'},
{'ахахахах', 'ну да', 'опять сын шлюхи убил бестолковый'},
{'м', 'пон)', 'найс чит'},
{'да блять', 'какой джиттер поставить сука'},
{'ну фу', 'ублюдок', 'ебаный'},
{'да сука', 'где тимейты блять', 'как же сука они меня бесят'},
{'lf ,kznm', 'да блять', 'опять я мисснул'},
{'да блять', 'ало', 'я вообще стрелять буду нет'},
{'хех', 'ты сам то хоть понял', 'как меня убил'},
{'сука', 'опять по дезу ебаному'},
{'бля', 'клиентнуло', 'лаки'},
{'понятно', 'ик ак ты так играешь', 'еблан бестолковый'},
{'ну блять', 'он просто пошел', 'пиздец'},
{'&', 'и че это', 'откуда ты меня убил?'},
{'тварь', 'ебаная', 'ЧТО ТЫ ДЕЛАЕШЬ'},
{'YE LF', 'ну да', 'хуесос', 'норм играешь'},
{'сочник ебаный', 'как же ты меня заебал уже', 'что ты делаешь'},
{'хуевый без скита', 'как ты меня убиваешь с пастой своей'},
{'подпивас ебаный', 'как же ты меня переиграл'},
{'бля', 'признаю, переиграл'},
{'как ты меня убиваешь', 'ебаный owosh'},
{'дефектус че ты делаешь', 'пиздец'},
{'хуйсосик анимешный', 'как ты убиваешь', 'эт пздц'},
{'бля ну бро', 'посмотри на мою команду', 'это пзиидец'},
{'ммм', 'хуесосы бездарные в команде'},
{'ik.[f', 'шлюха пошла нахуй'},
{'ndfhm t,fyfz', 'тварь ебаная как же ты меня бесишь'},
{'фу нахуй', 'опять в бекшут'},
{'только так и умеешь да?', 'блядь ебаная'},
{'нахуй ты меня трешкаешь', 'шлюха ебаная'},
{'ну повезло тебе', 'дальше то что хуесос'},
{'ебанная ты мразь', 'которая мне все проебала'},
{'ujcgjlb', 'господи', 'мразь убогая'},
{'хахахах', 'ну бля заебись фристенд в чите)'},
{'фу ты заебал конч'},
{')', 'хорош)'},
{'норм трекаешь', 'ублюдина'},
{'а че', 'хайдшоты на фд уже не работают?'}
},
init = function(self)
events.player_death:set(function(e)
local killsay_delay = 0
local deathsay_delay = 0
if entity_get_local_player() == nil then return end
local gamerule = entity.get_game_rules()
local warmup = gamerule["m_bWarmupPeriod"]
delayed_msg(killsay_delay, phase)
end
end
delayed_msg(deathsay_delay, phase)
end
end
end)
end
}
misc.killsay:init()
--r8
local revolverhelper = esp.enemy:new_text("R8 Helper", "\a2FD500FFDMG+",
function(player)
local localplayer = entity_get_local_player()
events.createmove:set(function(cmd)
if ctx.menu.elements.antiaims.antiaim_mode:get() == 2 then return end
local is_crouching = function()
local localplayer = entity_get_local_player()
local flags = localplayer['m_fFlags']
if bit.band(flags, 4) == 4 then
return true
end
return false
end
local lp = entity_get_local_player()
local lp_vel = antiaim_builder:get_velocity(lp)
local state = antiaim_builder:state(lp_vel, nil, cmd)
local b = state
if (b == 2 and ctx.menu.elements.antiaims.lag_conditions:get("Standing"))
or (b == 3 and ctx.menu.elements.antiaims.lag_conditions:get("Moving")) or
(b == 4 and ctx.menu.elements.antiaims.lag_conditions:get("Slow Walking"))
or
(b == 7 and ctx.menu.elements.antiaims.lag_conditions:get("Crouching")) or
(b == 8 and ctx.menu.elements.antiaims.lag_conditions:get("Crouch Move"))
or
((b == 5 or b == 6) and ctx.menu.elements.antiaims.lag_conditions:get("In
Air"))
then
cond_active = true
else
cond_active = false
end
function hitchanceoverride(cmd)
local hc = ui_find("Aimbot", "Ragebot", "Selection", "Hit Chance")
local me = entity_get_local_player()
if not me then
return
end
:struct 'aim_hit' {
init = function(self)
events.aim_ack:set(function(e)
if e.state == "correction" then
e.state = "resolver"
end
if e.state == "lagcomp failure" then
e.state = "lagcomp"
end
events.createmove:set(function(cmd)
if (ctx.menu.elements.antiaims.antiaim_mode:get() == 1 or
ctx.menu.elements.antiaims.antiaim_mode:get() == 2) and ui_get_alpha() > 0.3 then
ctx.refs.pitch:override()
ctx.refs.yaw:override()
ctx.refs.jyaw:override()
ctx.refs.jyaw_slider:override()
ctx.refs.base:override()
ctx.refs.fake_op:override()
ctx.refs.left_limit:override()
ctx.refs.right_limit:override()
ctx.refs.hidden:override()
end
end)
events.render:set(function()
if not ctx.menu.elements.visuals.on_screen:get() or
ctx.menu.elements.visuals.select:get() == 'Disable' then
if ctx.menu.elements.visuals.solus_widgets:get() then
render.rect(vector(x-3, y), vector(x+w+6, y+3+h), color(0, 0, 0, alpha/3),
0)
render.shadow(vector(x-3, y), vector(x+w+6, y+3+h), color(r, g, b,
alpha/1.1), 15, nil, 0)
render_text(1, vector(x+1 + w / 2 + 1 - name_size.x / 2, y + 1 + h / 2 -
name_size.y/2), color(255, 255, 255, alpha), "", name)
end
end
local max_width = 0
local frametime = globals.frametime * 16
local add_y = 0
local total_width = 66
local active_binds = {}
if binds.active then
table.insert(active_binds, binds)
end
end
local me = entity_get_local_player()
if me == nil then return end
end
end)
events.render:set(function()
new_drag_object3:update()
new_drag_object4:update()
end)
--nofall
local function trace(length)
local x, y, z = entity_get_local_player()["m_vecOrigin"].x,
entity_get_local_player()["m_vecOrigin"].y, entity_get_local_player()
["m_vecOrigin"].z
local max_radias = math.pi * 2
local step = max_radias / 8
events.createmove:set(function(cmd)
if not ctx.menu.elements.misc.movement_helpers:get('No fall damage') then
return end
me = entity_get_local_player()
ctx.menu.elements.visuals.damage_indicator:set_callback(function(self)
ctx.menu.elements.visuals.damage_font:visibility(self:get())
ctx.menu.elements.visuals.dis_animation:visibility(self:get())
end, true)
ctx.menu.elements.visuals.select:set_callback(function(self)
ctx.menu.elements.visuals.indicator_color:visibility(self:get() == 'Default')
ctx.menu.elements.visuals.build_color:visibility(self:get() == 'Default')
ctx.menu.elements.visuals.glow_px:visibility(self:get() == 'Default')
ctx.menu.elements.visuals.fonts:visibility(self:get() == 'Default')
end, true)
ctx.menu.elements.antiaims.anim_breakers:set_callback(function(self)
ctx.menu.elements.antiaims.type_legs_ground:visibility(self:get('Legs on
ground'))
ctx.menu.elements.antiaims.type_legs_air:visibility(self:get('Legs in air'))
end, true)
ctx.menu.elements.visuals.arrows_style:set_callback(function(self)
ctx.menu.elements.visuals.arrows_color:visibility(self:get() == 'Default')
end, true)
ctx.menu.elements.misc.hc_cond:set_callback(function(self)
ctx.menu.elements.misc.hc_air:visibility(self:get('Air'))
ctx.menu.elements.misc.hc_ns:visibility(self:get('No scope'))
end, true)
ctx.menu.elements.visuals.select_log:set_callback(function(self)
ctx.menu.elements.visuals.accent_color:visibility(self:get("Under crosshair"))
ctx.menu.elements.visuals.dis_glow:visibility(self:get("Under crosshair"))
end, true)
ctx.menu.elements.antiaims.antiaim_mode:set_callback(function(self)
if self:get() == 1 then
self:update('👑 Aggressive Jitter \a5FFF58FF· Active', '🤩 Defensive Meta',
' Builder')
ctx.menu.elements.antiaims.force_lag:visibility(true)
elseif self:get() == 2 then
self:update('👑 Aggressive Jitter', '🤩 Defensive Meta \a5FFF58FF· Active',
' Builder')
ctx.menu.elements.antiaims.force_lag:visibility(false)
elseif self:get() == 3 then
self:update(' Aggressive Jitter', '🤩 Defensive Meta', '⚙️ Builder \
a5FFF58FF· Active')
ctx.menu.elements.antiaims.force_lag:visibility(true)
end
ctx.menu.elements.antiaims.tp:visibility(self:get() == 1 or self:get() == 2)
if self:get() ~= 2 then ui_find("Aimbot", "Ragebot", "Main", "Double Tap", "Lag
Options"):override() ui_find("Aimbot", "Ragebot", "Main", "Hide Shots",
"Options"):override() end
end, true)
ctx.menu.elements.antiaims.defensive_type:set_callback(function(self)
ctx.menu.elements.antiaims.defensive_pitch:visibility(self:get() == 'Presets')
ctx.menu.elements.antiaims.defensive_yaw:visibility(self:get() == 'Presets')
ctx.menu.elements.antiaims.custom_pitch:visibility(self:get() == 'Custom')
ctx.menu.elements.antiaims.custom_yaw:visibility(self:get() == 'Custom')
end, true)