Alien Lua
Alien Lua
local font = {
verdana = render.load_font("Verdana", 11)
}
local function gradient_text(r1, g1, b1, a1, r2, g2, b2, a2, text)
local output = ''
local len = #text-1
local rinc = (r2 - r1) / len
local ginc = (g2 - g1) / len
local binc = (b2 - b1) / len
local ainc = (a2 - a1) / len
for i=1, len+1 do
output = output .. ('\a%02x%02x%02x%02x%s'):format(r1, g1, b1, a1,
text:sub(i, i))
r1 = r1 + rinc
g1 = g1 + ginc
b1 = b1 + binc
a1 = a1 + ainc
end
return output
end
local refs = {
yaw = ui.find("Aimbot", "Anti Aim", "Angles", "Yaw"),
yaw_modifier = ui.find("Aimbot", "Anti Aim", "Angles", "Yaw Modifier"),
yaw_add = ui.find("Aimbot", "Anti Aim", "Angles", "Yaw", "Offset"),
modifier_degree = ui.find("Aimbot", "Anti Aim", "Angles", "Yaw Modifier",
"Offset"),
left_limit = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "Left Limit"),
right_limit = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "Right
Limit"),
fake_options = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "Options"),
lby_mode = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "LBY Mode"),
slow_walk = ui.find("Aimbot", "Anti Aim", "Misc", "Slow Walk"),
HS = ui.find("Aimbot", "Ragebot", "Main", "Hide Shots"),
DT = ui.find("Aimbot", "Ragebot", "Main", "Double Tap"),
BodyAim = ui.find("Aimbot", "Ragebot", "Safety", "Body Aim"),
SafePoints = ui.find("Aimbot", "Ragebot", "Safety", "Safe Points"),
AutoPeek = ui.find("Aimbot", "Ragebot", "Main", "Peek Assist"),
limit = ui.find("Aimbot", "Anti Aim", "Fake Lag", "Limit"),
enable = ui.find("Aimbot", "Anti Aim", "Fake Lag", "Enabled"),
freestanding = ui.find("Aimbot", "Anti Aim", "Angles", "Freestanding"),
fakeduck = ui.find("Aimbot", "Anti Aim", "Misc", "Fake Duck"),
spike = ui.find("Miscellaneous", "Main", "Other", "Fake Latency"),
da = ui.find("Aimbot", "Ragebot", "Main", "Enabled", "Dormant Aimbot"),
pitch = ui.find("Aimbot", "Anti Aim", "Angles", "Pitch"),
bodyyaw = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw"),
options = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "Options")
}
local tabs = {
antiaim = ui.create("Anti-Aim", "[\aE1DEFD99AA\aFFFFFFFF] Main"),
visuals = ui.create("Visuals", "[\aE1DEFD99Visuals\aFFFFFFFF] Main"),
misc = ui.create("Misc", "[\aE1DEFD99Misc\aFFFFFFFF]"),
}
local menu = {
presets = tabs.antiaim:combo("[\aE1DEFD99AA\aFFFFFFFF] Anti-aim modes",
"Default", "Tank AA", "Builder", "Exploit", "Anti Exploit"),
playerstate_combo = tabs.antiaim:combo("[\aE1DEFD99AA\aFFFFFFFF] Player state",
"Slow motion", "Crouch", "Jump", "Duckjump", "Stand", "Move"),
antibruteforce = tabs.antiaim:switch("[\aE1DEFD99WIP\aFFFFFFFF] Anti-
Bruteforce", false),
indicators = tabs.visuals:switch("[\aE1DEFD99Visuals\aFFFFFFFF] Crosshair
indicators", false),
notifications = tabs.visuals:color_picker("[\aE1DEFD99Visuals\aFFFFFFFF]
Notifications"),
feature_indicators = tabs.visuals:selectable("[\aE1DEFD99Visuals\aFFFFFFFF]
$500 Indicators", "DT", "SAFE", "BODY", "DA", "PING", "FS", "DMG", "DUCK"),
aimbotlogs = tabs.misc:switch("[\aE1DEFD99Misc\aFFFFFFFF] Aimbot logging")
--import = tabs.antiaim:button("Import config"),
--export = tabs.antiaim:button("Export config")
}
deeznigga = menu.indicators:create()
local clr1 = deeznigga:color_picker("Main color")
local clr2 = deeznigga:color_picker("Second color")
anti_aim = {}
yomomma = {}
local numtotext = {
[0] = 'Slow motion',
[1] = 'Crouch',
[2] = 'Jump',
[3] = 'Duckjump',
[4] = 'Stand',
[5] = 'Move',
}
for i = 0, 5 do
yomomma[i] = {
ui.create("Anti-Aim", "[\aE1DEFD99"..numtotext[i].."\aFFFFFFFF]
".."Builder")
}
end
for i = 0, 5 do
anti_aim[i] = {
yaw_add_left = yomomma[i][1]:slider("yaw add left", -60, 60, 0),
yaw_add_right = yomomma[i][1]:slider("yaw add right", -60, 60, 0),
yaw_modifier = yomomma[i][1]:combo("yaw modifier", "Disabled", "Center",
"Offset", "Random", "Spin"),
left_jitter_value = yomomma[i][1]:slider("jitter degree", -90, 90, 0),
lby_mode = yomomma[i][1]:combo("desync mode", "Disabled", "Opposite",
"Sway"),
fake_options = yomomma[i][1]:selectable("fake options", "Avoid Overlap",
"Jitter", "Randomize Jitter", "Anti-Bruteforce"),
left_limit = yomomma[i][1]:slider("fake yaw left", 0, 60, 0),
right_limit = yomomma[i][1]:slider("fake yaw right", 0, 60, 0),
}
end
if player_duck_peek_assist then
return 'fakeduck'
elseif player_slow_motion then
return 'slowmotion'
elseif player_crouching and player_standing then
return 'crouch'
elseif player_jumping and not player_crouching then
return 'jump'
elseif player_jumping and player_crouching then
return "duckjump"
elseif player_standing then
return 'stand'
elseif not player_standing and not player_crouching then
return 'move'
end
end
refs.yaw_modifier:set("Center")
refs.yaw_add:set((bodyyaw > 10 and -18 or 4))
refs.modifier_degree:set(72)
refs.left_limit:set(59)
refs.right_limit:set(59)
end
if player_state() == "duckjump" then
refs.yaw_modifier:set("Center")
refs.yaw_add:set((bodyyaw > 10 and -20 or 12))
refs.modifier_degree:set(-54)
refs.left_limit:set(60)
refs.right_limit:set(60)
end
if player_state() == "move" then
refs.yaw_add:set((bodyyaw > 10 and -5 or 10))
refs.yaw_modifier:set("Center")
refs.modifier_degree:set(-68)
refs.left_limit:set(60)
refs.right_limit:set(60)
end
if player_state() == "crouch" then
refs.yaw_add:set((bodyyaw > 10 and -12 or 17))
refs.yaw_modifier:set("Center")
refs.modifier_degree:set(43)
refs.left_limit:set(60)
refs.right_limit:set(60)
end
if player_state() == "slowmotion" then
end
elseif menu.presets:get() == "Anti Exploit" then
if globals.tickcount % 11 == math.random(0,1) then
refs.pitch:set("Fake Down")
else
refs.pitch:set("Down")
end
refs.yaw_add:set(8)
refs.yaw_modifier:set("Center")
refs.modifier_degree:set(63)
refs.lby_mode:set("Disabled")
refs.fake_options:set("Jitter")
end
end
--Indicators
local value = 0
local once1 = false
local once2 = false
local dt_a = 0
local dt_y = 45
local dt_x = 0
local dt_w = 0
local os_a = 0
local os_y = 45
local os_x = 0
local os_w = 0
local fs_a = 0
local fs_y = 45
local fs_x = 0
local fs_w = 0
local n_x = 0
local n2_x = 0
local n3_x = 0
local n4_x = 0
local hitler = {}
hexArg = hexArg:gsub('#','')
if(string.len(hexArg) == 3) then
return tonumber('0x'..hexArg:sub(1,1)) * 17,
tonumber('0x'..hexArg:sub(2,2)) * 17, tonumber('0x'..hexArg:sub(3,3)) * 17
elseif(string.len(hexArg) == 8) then
return tonumber('0x'..hexArg:sub(1,2)),
tonumber('0x'..hexArg:sub(3,4)), tonumber('0x'..hexArg:sub(5,6)),
tonumber('0x'..hexArg:sub(7,8))
else
return 0 , 0 , 0
end
end
local testx = 0
local aaa = 0
local lele = 0
local fnt = render.load_font("Smallest Pixel-7", 10, "o")
local keybinds = {
["DT"] = ui.find("Aimbot", "Ragebot", "Main", "Double Tap"),
["AP"] = ui.find("Aimbot", "Ragebot", "Main", "Peek Assist"),
["FD"] = ui.find("Aimbot","Anti Aim","Misc","Fake Duck"),
["HS"] = ui.find("Aimbot", "Ragebot", "Main", "Hide Shots"),
}
local mein
local move = 0;
local scnd
function get_bodyaw()
local player = entity.get_local_player()
if player == nil then return end
local pose = player.m_flPoseParameter[11]
render.rect_outline(vector(scrsz.x/2-txtsz.x/2+txtsz.x/2*move+1+1+5*move-
1,scrsz.y/2+txtsz.y/2-1+11), vector(scrsz.x/2+txtsz.x/2+txtsz.x/2*move-4+1-
move+5*move,scrsz.y/2+txtsz.y/2+2+1+11), color(0,0,0,255))
render.rect(vector(scrsz.x/2-txtsz.x/2+txtsz.x/2*move+move*2+2-2*move+1+5*move-
1,scrsz.y/2+txtsz.y/2+11), vector(scrsz.x/2+txtsz.x/2*move-move+txtsz.x/2-4*move-
4+4*move+5*move,scrsz.y/2+txtsz.y/2+2+11), color(30,30,30,150))
render.rect(vector(scrsz.x/2-txtsz.x/2+txtsz.x/2*move+move*2+2-2*move+1+5*move-
1,scrsz.y/2+txtsz.y/2+11), vector(scrsz.x/2+txtsz.x/2*move-move+txtsz.x/2-4*move-
4+4*move+5*move,scrsz.y/2+txtsz.y/2+2+11), color(30,30,30,150))
render.gradient(vector(scrsz.x/2-txtsz.x/2+txtsz.x/2*move+move*2+2-
2*move+1+5*move-1,scrsz.y/2+txtsz.y/2+11), vector(scrsz.x/2+txtsz.x/2*move-
move+txtsz.x/2-4*move-4+4*move+5*move-(txtsz.x-12)+(txtsz.x-12)*prsnt,scrsz.y/
2+txtsz.y/2+2+11),
clr1:get(),color(clr1:get().r,clr1:get().g,clr1:get().b,30),clr1:get(),color(clr1:g
et().r,clr1:get().g,clr1:get().b,30))
render.gradient(vector(scrsz.x/2-txtsz.x/2+txtsz.x/2*move+move*2+2-
2*move+1+5*move-1+(txtsz.x-5)*prsnt,scrsz.y/2+txtsz.y/2+11),
vector(scrsz.x/2+txtsz.x/2*move-move+txtsz.x/2-4*move-4+4*move+5*move,scrsz.y/
2+txtsz.y/2+2+11), color(0,0,0,200),color(0,0,0),color(0,0,0,200),color(0,0,0))
render.text(fnt,
vector(scrsz.x/2-txtsz4.x/2+move*txtsz4.x/2+1+5*move,scrsz.y/2-txtsz2.y/2+txtsz.y/
1.5+5+11), clr1:get(), "с", txtstt)
render.text(fnt, vector(scrsz.x/2-txtsz.x/2+txtsz.x/2*move+1+5*move,scrsz.y/2-
txtsz2.y/2+11), clr1:get(),"", "ALIEN")
render.text(fnt,
vector(scrsz.x/2-txtsz.x/2+txtsz.x/2*move+txtsz2.x+1+5*move,scrsz.y/2-txtsz3.y/
2+11), color(clr2:get().r, clr2:get().g, clr2:get().b,alpha),"", deeztext)
end
events.createmove_run:set(function()
--callbacks below
builder()
if menu.antibruteforce:get() then
refs.bodyyaw:override(true)
refs.options:override("Anti Bruteforce")
end
end)
local hitgroup_str = {
[0] = 'generic',
'head', 'chest', 'stomach',
'left arm', 'right arm',
'left leg', 'right leg',
'neck', 'generic', 'gear'
}
local totalshots = 0
local missedshots = 0
local hitshots = 0
local sp = ""
local reason = ""
events.aim_ack:set(function(shot)
local lc = 0
if refs.DT:get() then
lc = math.random(0, 1)
else
lc = math.random(2, 21)
end
local tc = math.random(0, 21)
local flagstest = math.random(1, 5)
local flags = {
flagstest == 1 and 'T' or '',
flagstest == 2 and 'I' or '',
flagstest == 3 and 'E' or '',
flagstest == 4 and 'B' or '',
flagstest == 5 and 'H' or ''
}
enemy = shot.target
player_name = enemy:get_name()
health = enemy.m_iHealth
damage = shot.damage
hitchance = shot.hitchance
hitgroup = hitgroup_str[shot.hitgroup]
backtrack = shot.backtrack
wanted_damage = shot.wanted_damage
wanted_hitgroup = hitgroup_str[shot.wanted_hitgroup]
state = shot.state
reason = state
totalshots = totalshots + 1
if shot.state == "spread" then
reason = "spread"
elseif shot.state == "prediction error" then
reason = "prediction error"
elseif shot.state == "unregistered shot" then
reason = "unregistered shot"
elseif shot.state == "death" then
reason = "death"
elseif shot.state == "player death" then
reason = "death"
else
reason = "?"
end
if refs.SafePoints:get() == "Prefer" or "Force" then
sp = "true"
else
sp = "false"
end
if not (state == nil) then
missedshots = missedshots + 1
print_raw(string.format("\a96C83C[alien.lua] \aFFFFFF[%i] [%i/%i] Missed
%s's %s due to %s (%i remaining) sp=%s (%s) LC=%d TC=%d", totalshots, hitshots,
missedshots, player_name, wanted_hitgroup, reason, health,sp, flags[flagstest], lc,
tc))
print_dev(string.format("[%i] [%i/%i] Missed %s's %s due to %s (%i
remaining) sp=%s (%s) LC=%d TC=%d", totalshots, hitshots, missedshots, player_name,
wanted_hitgroup, reason, health, sp, flags[flagstest], lc, tc))
else
hitshots = hitshots + 1
print_raw(string.format("\a96C83C[alien.lua] \aFFFFFF[%i] [%i/%i] Hit %s's
%s for %i(%i) (%i remaining) aimed=%s(%i%%) sp=%s (%s) LC=%d TC=%d", totalshots,
hitshots, missedshots, player_name, hitgroup, damage, wanted_damage, health,
wanted_hitgroup, hitchance, sp, flags[flagstest], lc, tc))
print_dev(string.format("[%i] [%i/%i] Hit %s's %s for %i(%i) (%i remaining)
aimed=%s(%i%%) sp=%s (%s) LC=%d TC=%d", totalshots, hitshots, missedshots,
player_name, hitgroup, damage, wanted_damage, health, wanted_hitgroup, hitchance,
sp, flags[flagstest], lc, tc))
end
end)
math.lerp = function(name, value, speed)
return name + (value - name) * globals.frametime * speed
end
events.render:set(function()
--callbacks below
buildervisibles()
indicators()
indicators500()
local offset, x, y = 0, screen_size.x / 2, screen_size.y / 1.4
events.round_start:set(function(e)
if menu.antibruteforce:get() then
indicator:push(4, "Reset anti-bruteforce cache")
end
end)
events.player_death:set(function(e)
local localplayer = entity.get_local_player()
local victim = entity.get(e.userid, true)
local attacker = entity.get(e.attacker, true)
if menu.antibruteforce:get() then
indicator:push(4, "Reset anti-bruteforce cache")
end
end)
playerb = nil
playerb = entity.get_local_player()
antibrute_time_last = globals.realtime
antibrute_time = globals.realtime
antibrute_stages = 1
events.bullet_impact:set(function(e)
local lp = entity.get_local_player()
if lp == nil then return end
local player = entity.get(e.userid, true)
if not player:is_enemy() then return end
local s_pos = vector(e.x, e.y, e.z)
local enemy_angles = (s_pos - player:get_hitbox_position(0)):angles()
local angles = ((playerb:get_hitbox_position(3) -
player:get_hitbox_position(0)):angles() - enemy_angles)
angles.y = math.clamp(angles.y, -180, 180)
local fov = math.sqrt(angles.y*angles.y + angles.x*angles.x)
if fov < 5 and antibrute_time_last + 0.1 < globals.realtime then
if menu.antibruteforce:get() then
indicator:push(4, " Anti-bruteforce triggered, switched angle ")
end
end
end)
local cfg_data = {
bools = {
},
ints = {
anti_aim[0].yaw_add_left,
anti_aim[0].yaw_add_right,
anti_aim[0].left_jitter_value,
anti_aim[0].left_limit,
anti_aim[0].right_limit,
anti_aim[1].yaw_add_left,
anti_aim[1].yaw_add_right,
anti_aim[1].left_jitter_value,
anti_aim[1].left_limit,
anti_aim[1].right_limit,
anti_aim[2].yaw_add_left,
anti_aim[2].yaw_add_right,
anti_aim[2].left_jitter_value,
anti_aim[2].left_limit,
anti_aim[2].right_limit,
anti_aim[3].yaw_add_left,
anti_aim[3].yaw_add_right,
anti_aim[3].left_jitter_value,
anti_aim[3].left_limit,
anti_aim[3].right_limit,
anti_aim[5].yaw_add_left,
anti_aim[5].yaw_add_right,
anti_aim[4].left_jitter_value,
anti_aim[4].left_limit,
anti_aim[4].right_limit,
anti_aim[5].yaw_add_left,
anti_aim[5].yaw_add_right,
anti_aim[5].left_jitter_value,
anti_aim[5].left_limit,
anti_aim[5].right_limit,
},
floats = {
},
strings = {
anti_aim[0].yaw_modifier,
anti_aim[0].lby_mode,
anti_aim[0].fake_options,
anti_aim[1].yaw_modifier,
anti_aim[1].lby_mode,
anti_aim[1].fake_options,
anti_aim[2].yaw_modifier,
anti_aim[2].lby_mode,
anti_aim[2].fake_options,
anti_aim[3].yaw_modifier,
anti_aim[3].lby_mode,
anti_aim[3].fake_options,
anti_aim[4].yaw_modifier,
anti_aim[4].lby_mode,
anti_aim[4].fake_options,
anti_aim[5].yaw_modifier,
anti_aim[5].lby_mode,
anti_aim[5].fake_options,
}
}
clipboard.set(JSON.stringify(Code))
if (k == "ints") then
cfg_data[k][k2]:set(v2)
end
if (k == "floats") then
cfg_data[k][k2]:set(v2)
end
if (k == "strings") then
cfg_data[k][k2]:set(v2)
end
end
end
end)