Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[
- -================================-
- Sethhacks v4 - A Garry's Mod aimbot
- -================================-
- -- ]]
- /************************************
- Name: Localizing
- Purpose: Make the cheat run faster
- ************************************/
- local Sethhacks = {} -- Nothing!
- Sethhacks.settings = {} -- Not started yet.
- Sethhacks.hooks = {} -- Store hooks in a table
- Sethhacks.concommands = {} -- Store concommands in a table
- Sethhacks.convars = {} -- Store the ConVars in a table
- Sethhacks.timers = {} -- Store Timers in a table
- Sethhacks.cones = { normal = {}, hl2 = {}, custom = {}} -- I probably won't even need this, I won't have NoSpread for a long time. Anyways, store cones here.
- Sethhacks.meta = {} -- Store metatables here
- Sethhacks.files = {"Sethhacks.lua","Log.txt"} -- Files to hide and protect
- Sethhacks.version = "4.5" -- Version of the cheat.
- Sethhacks.ents = {"ent_pot","npc_vendor","weapon_perp_glock","ent_item","ent_prop_item","sent_spawnpoint","spawned_weapon","spawned_shipment","weed_plant","gift","spawned_money","base_item","weapon_ak47_dayz","weapon_mp5_dayz","weapon_deagle_dayz","sapphire_money_printer","amethyst_money_printer","topaz_money_printer","emerald_money_printer"} -- Ents to show on the ESP
- Sethhacks.invalidents = {"player","prop_physics","viewmodel",} -- Ents to not show on the ESP
- Sethhacks.weapons = {["weapon_crossbow"] = 3110,}
- Sethhacks.spectators = {} -- Store spectators here.
- Sethhacks.admins = {} -- store admins here
- local colors = {}
- red = Color(255,0,0,255);
- black = Color(0,0,0,255);
- green = Color(0,255,0,255);
- white = Color(255,255,255,255);
- blue = Color(0,0,255,255);
- cyan = Color(0,255,255,255);
- pink = Color(255,0,255,255);
- blue = Color(0,0,255,255);
- grey = Color(100,100,100,255);
- gold = Color(255,228,0,255);
- lblue = Color(155,205,248);
- lgreen = Color(174,255,0);
- iceblue = Color(116,187,251,255);
- /*******************************************
- Start by unlocking metatabes and localizing
- *******************************************/
- local _G = table.Copy(_G)
- local math = _G.math
- local string = _G.string
- local hook = _G.hook
- local table = _G.table
- local timer = _G.timer
- local surface = _G.surface
- local concommand = _G.concommand
- local cvars = _G.cvars
- local ents = _G.ents
- local player = _G.player
- local team = _G.team
- local util = _G.util
- local draw = _G.draw
- local usermessage = _G.usermessage
- local vgui = _G.vgui
- local http = _G.http
- local cam = _G.cam
- local render = _G.render
- local MsgN = _G.MsgN
- local Msg = _G.Msg
- local Vector = _G.Vector
- local Angle = _G.Angle
- local pairs = _G.pairs
- local ipairs = _G.ipairs
- local CreateSound = _G.CreateSound
- local setmetatable = _G.setmetatable
- local Sound = _G.Sound
- local print = _G.print
- local pcall = _G.pcall
- local type = _G.type
- local LocalPlayer = _G.LocalPlayer
- local KeyValuesToTable = _G.KeyValuesToTable
- local TableToKeyValues = _G.TableToKeyValues
- local Color = _G.Color
- local CreateClientConVar = _G.CreateClientConVar
- local ErrorNoHalt = _G.ErrorNoHalt
- local IsValid = _G.IsValid
- local CreateMaterial = _G.CreateMaterial
- local tonumber = _G.tonumber
- local tostring = _G.tostring
- local CurTime = _G.CurTime
- local FrameTime = _G.FrameTime
- local ScrW = _G.ScrW
- local ScrH = _G.ScrH
- local SetClipboardText = _G.SetClipboardText
- local GetHostName = _G.GetHostName
- local unpack = _G.unpack
- local AddConsoleCommand = _G.AddConsoleCommand
- local require = _G.require
- local include = _G.include
- local MOVETYPE_OBSERVER = _G.MOVETYPE_OBSERVER
- local MOVETYPE_NONE = _G.MOVETYPE_NONE
- local TEXT_ALIGN_LEFT = _G.TEXT_ALIGN_LEFT
- local TEXT_ALIGN_TOP = _G.TEXT_ALIGN_TOP
- local TEXT_ALIGN_RIGHT = _G.TEXT_ALIGN_RIGHT
- local TEXT_ALIGN_BOTTOM = _G.TEXT_ALIGN_BOTTOM
- local IN_JUMP = _G.IN_JUMP
- local IN_FORWARD = _G.IN_FORWARD
- local IN_BACK = _G.IN_BACK
- local IN_MOVERIGHT = _G.IN_MOVERIGHT
- local IN_MOVELEFT = _G.IN_MOVELEFT
- local IN_SPEED = _G.IN_SPEED
- local IN_DUCK = _G.IN_DUCK
- local TEAM_SPECTATOR = 1002
- -- old [detour]
- local old_filecdir = file.CreateDir;
- local old_filedel = file.Delete;
- local old_fileexist = file.Exists;
- local old_fileexistex = file.ExistsEx;
- local old_filefind = file.Find;
- local old_filefinddir = file.FindDir;
- local old_filefindil = file.FindInLua;
- local old_fileisdir = file.IsDir;
- local old_fileread = file.Read;
- local old_filerename = file.Rename;
- local old_filesize = file.Size;
- local old_filetfind = file.TFind;
- local old_filetime = file.Time;
- local old_filewrite = file.Write;
- local old_dbginfo = debug.getinfo;
- local old_dbginfo = debug.getupvalue;
- local old_cve = ConVarExists;
- local old_gcv = GetConVar;
- local old_gcvn = GetConVarNumber;
- local old_gcvs = GetConVarString;
- local old_rcc = RunConsoleCommand;
- local old_hookadd = hook.Add;
- local old_hookrem = hook.Remove;
- local old_ccadd = concommand.Add;
- local old_ccrem = concommand.Remove;
- local old_cvaracc = cvars.AddChangeCallback;
- local old_cvargcvc = cvars.GetConVarCallbacks;
- local old_cvarchange = cvars.OnConVarChanged;
- local old_require = require;
- local old_eccommand = engineConsoleCommand;
- --Fonts--
- surface.CreateFont("ESPFont",{font = "ScoreboardText", size = 17, weight = 400, antialias = 0})
- surface.CreateFont("ESPFont_Small",{font = "Default", size = 12, weight = 200, antialias = 0})
- surface.CreateFont("Logo",{font = "akbar", size = 21, weight = 400, antialias = 0})
- surface.CreateFont("Sethhacks_ScoreboardText",{font = "ScoreboardText", size = 15, weight = 700, antialias = 0})
- surface.CreateFont("Sethhacks_coolvetica",{font = "coolvetica", size = 16, weight = 500, antialias = 0})
- surface.CreateFont("Sethhacks_hvh",{font = "ScoreboardTextt", size = 15, weight = 1000, antialias = 1})
- --Materials--
- function Sethhacks:CreateMaterial()
- local BaseInfo = {
- ["$basetexture"] = "models/debug/debugwhite",
- ["$model"] = 1,
- ["$translucent"] = 1,
- ["$alpha"] = 1,
- ["$nocull"] = 1,
- ["$ignorez"] = 1
- }
- local mat
- if GetConVarString("Sethhacks_ESP_Chams_Material") == "Solid" then
- mat = CreateMaterial( "Sethhacks_solid", "VertexLitGeneric", BaseInfo )
- elseif GetConVarString("Sethhacks_ESP_Chams_Material") == "Wireframe" then
- mat = CreateMaterial( "Sethhacks_wire", "Wireframe", BaseInfo )
- end
- return mat // return the var to the function
- end
- /**************************************
- Name: Logger
- Purpose: Logs functions and shit
- **************************************/
- concommand.Add("Sethhacks_StartLog",function() -- file.Exists is being bad, this is an alternative
- file.Write("Sethhacks/log.txt","Log created: ("..os.date()..") \n")
- end)
- function Log(msg)
- file.Append("Sethhacks/log.txt","["..os.date().."]: "..msg.."\n")
- end
- Log("Loading....")
- /*******************************************
- Name: Print/Chat functions
- Purpose: Notify the user of what's going on
- ********************************************/
- function Sethhacks.Print(msg)
- print("[Sethhacks] "..msg)
- end
- function Sethhacks.Notify(dosound,col,msg)
- if col then
- col = col
- end
- chat.AddText(
- iceblue, "[Sethhacks] ",
- col, msg)
- if dosound == sound then
- local beep = Sound( "/buttons/button17.wav" )
- local beepsound = CreateSound( LocalPlayer(), beep )
- beepsound:Play()
- end
- end
- /***********************************************
- Name: Hook functions
- Purpose: Add hooks and protect from anticheats
- ************************************************/
- -- Addhook
- local function AddHook(Type,Function)
- Name = Type.." | "..math.random(1,1000),math.random(1,2000),math.random(1,3000) -- Simple hook names
- Sethhacks.Print("[ADDED] Hook: ["..Type.."] | Name: "..Name.."")
- return old_hookadd(Type,Name,Function)
- end
- -- RemoveHook
- local function RemoveHook(Type,Function)
- Sethhacks.Print("[REMOVED] Hook: ["..Type.."]")
- return old_hookadd(Type,Function)
- end
- /**********************************
- Name: File Shit
- Purpose: Anything relating to file.
- ***********************************/
- -- Write file
- function AddFile(Name,Data)
- Sethhacks.Print("[WROTE] File: "..Name.."")
- return old_filewrite(Name,Data)
- end
- /**************
- Random String
- **************/
- function RandomString( len )
- local ret = ""
- for i = 1 , len do
- ret = ret .. string.char( math.random( 65 , 116 ) )
- end
- return ret
- end
- /**********************
- Name: Timer shit
- Purpose: Anything timer
- ***********************/
- function AddTimer( sec, rep, func )
- local index = RandomString( 10 )
- Sethhacks.timers[ index ] = sec
- timer.Create( index, sec, rep, func )
- end
- /******************************************
- Name: ConCommand Shit
- Purpose: Anything related to concommands
- ********************************************/
- function AddCMD(Name,Function)
- Sethhacks.Print("[ADDED] ConCommand: "..Name.."")
- return old_ccadd(Name,Function)
- end
- function RemoveCMD(Name)
- Sethhacks.Print("[REMOVED] ConCommand: "..Name.."")
- return old_ccrem(Name)
- end
- /*******************************************
- Name: ConVars
- Purpose: Anything with ConVars
- ********************************************/
- -- AddConVar
- function AddConVar(convar,str,save,data)
- return CreateClientConVar("Sethhacks_"..convar,str,true,false), Sethhacks.Print("[ADDED] ConVar: Sethhacks_"..convar.." ["..str.."]")
- end
- /**************************************
- Name: Entity Shit
- Purpose: Anything to do with entities
- ***************************************/
- -- entity finder [addent]
- function AddEnt(entclass)
- if(!table.HasValue(Sethhacks.ents,entclass)) then
- table.insert(Sethhacks.ents,entclass)
- Sethhacks.Print("[ADDED] Ent: "..entclass.." to ESP")
- file.Write("Sethhacks/ents.txt", glon.encode( Sethhacks.ents ))
- end
- end
- -- entity finder [removeent]
- function RemoveEnt(entclass)
- for k, v in pairs(Sethhacks.ents) do
- if(string.Trim(v) == entclass) then
- Sethhacks.ents[k] = nil
- Sethhacks.Print("[REMOVED] Ent: "..entclass.." from the ESP")
- end
- end
- file.Write("Sethhacks/ents.txt", glon.encode( Sethhacks.ents ))
- end
- -- entity finder [clear ents]
- function ClearEnts()
- Sethhacks.ents = {}
- file.Write("Sethhacks/ents.txt", glon.encode( Sethhacks.ents ))
- end
- -- entity finder [IsCustomEnt()]
- function IsCustomEnt( entclass )
- return table.HasValue( Sethhacks.ents, entclass )
- end
- /**************************
- Name: Derma shit
- Purpose: Anything Derma
- ***************************/
- function AddCheckBox( text, cvar, parent, x, y, tt )
- local checkbox = vgui.Create( "DCheckBoxLabel", parent )
- checkbox:SetPos( x, y )
- checkbox:SetText( text )
- checkbox:SetConVar( cvar )
- checkbox:SetTextColor(white)
- checkbox:SetTooltip( tt or "No Tool Tip" )
- checkbox:SizeToContents()
- end
- // AddSlider for the derma
- function AddSlider( text, cvar, parent, min, max, decimals, x, y, wide, tt )
- local slider = vgui.Create( "DNumSlider" )
- slider:SetParent( parent )
- slider:SetPos( x, y )
- slider:SetWide( wide )
- slider:SetText( text )
- --slider:SetTextColor(BLACK)
- slider:SetMin( min )
- slider:SetMax( max )
- slider:SetDecimals( decimals )
- slider:SetConVar( cvar )
- slider:SetTooltip( tt or "No Tool Tip" )
- end
- Gradient = surface.GetTextureID( "gui/gradient" )
- function DrawBox( x, y, wide, tall, dropsize )
- draw.RoundedBoxEx( 4, x, y, wide, dropsize, iceblue, true, true, false, false )
- draw.RoundedBoxEx( 4, x, y + dropsize, wide, tall - dropsize, Color( 0, 0, 0, 100 ), false, false, true, true )
- end
- /*************************
- Name: CreatePos
- Purpose: Create a position
- Credits: BaconBot
- ***************************/
- function CreatePos(v)
- local ply = LocalPlayer()
- local center = v:LocalToWorld( v:OBBCenter() )
- local min, max = v:OBBMins(), v:OBBMaxs()
- local dim = max - min local z = max + min
- local frt = ( v:GetForward() ) * ( dim.y / 2 )
- local rgt = ( v:GetRight() ) * ( dim.x / 2 )
- local top = ( v:GetUp() ) * ( dim.z / 2 )
- local bak = ( v:GetForward() * -1 ) * ( dim.y / 2 )
- local lft = ( v:GetRight() * -1 ) * ( dim.x / 2 )
- local btm = ( v:GetUp() * -1 ) * ( dim.z / 2 )
- local s = 1
- local FRT = center + frt / s + rgt / s + top / s; FRT = FRT:ToScreen()
- local BLB = center + bak / s + lft / s + btm / s; BLB = BLB:ToScreen()
- local FLT = center + frt / s + lft / s + top / s; FLT = FLT:ToScreen()
- local BRT = center + bak / s + rgt / s + top / s; BRT = BRT:ToScreen()
- local BLT = center + bak / s + lft / s + top / s; BLT = BLT:ToScreen()
- local FRB = center + frt / s + rgt / s + btm / s; FRB = FRB:ToScreen()
- local FLB = center + frt / s + lft / s + btm / s; FLB = FLB:ToScreen()
- local BRB = center + bak / s + rgt / s + btm / s; BRB = BRB:ToScreen()
- local z = 100
- if ( v:Health() <= 50 ) then z = 100 end
- local x, y = ( ( v:Health() / 100 ) ), 1
- if ( v:Health() <= 0 ) then x = 1 end
- local FRT3 = center + frt + rgt + top / x; FRT3 = FRT3; FRT3 = FRT3:ToScreen()
- local BLB3 = center + bak + lft + btm / x; BLB3 = BLB3; BLB3 = BLB3:ToScreen()
- local FLT3 = center + frt + lft + top / x; FLT3 = FLT3; FLT3 = FLT3:ToScreen()
- local BRT3 = center + bak + rgt + top / x; BRT3 = BRT3; BRT3 = BRT3:ToScreen()
- local BLT3 = center + bak + lft + top / x; BLT3 = BLT3; BLT3 = BLT3:ToScreen()
- local FRB3 = center + frt + rgt + btm / x; FRB3 = FRB3; FRB3 = FRB3:ToScreen()
- local FLB3 = center + frt + lft + btm / x; FLB3 = FLB3; FLB3 = FLB3:ToScreen()
- local BRB3 = center + bak + rgt + btm / x; BRB3 = BRB3; BRB3 = BRB3:ToScreen()
- local x, y, z = 1.1, 0.9, 1
- local FRT2 = center + frt / y + rgt / z + top / x; FRT2 = FRT2:ToScreen()
- local BLB2 = center + bak / y + lft / z + btm / x; BLB2 = BLB2:ToScreen()
- local FLT2 = center + frt / y + lft / z + top / x; FLT2 = FLT2:ToScreen()
- local BRT2 = center + bak / y + rgt / z + top / x; BRT2 = BRT2:ToScreen()
- local BLT2 = center + bak / y + lft / z + top / x; BLT2 = BLT2:ToScreen()
- local FRB2 = center + frt / y + rgt / z + btm / x; FRB2 = FRB2:ToScreen()
- local FLB2 = center + frt / y + lft / z + btm / x; FLB2 = FLB2:ToScreen()
- local BRB2 = center + bak / y + rgt / z + btm / x; BRB2 = BRB2:ToScreen()
- local maxX = math.max( FRT.x,BLB.x,FLT.x,BRT.x,BLT.x,FRB.x,FLB.x,BRB.x )
- local minX = math.min( FRT.x,BLB.x,FLT.x,BRT.x,BLT.x,FRB.x,FLB.x,BRB.x )
- local maxY = math.max( FRT.y,BLB.y,FLT.y,BRT.y,BLT.y,FRB.y,FLB.y,BRB.y )
- local minY = math.min( FRT.y,BLB.y,FLT.y,BRT.y,BLT.y,FRB.y,FLB.y,BRB.y )
- local minYhp2 = math.min( FRT.y,BLB.y,FLT.y,BRT.y,BLT.y,FRB.y,FLB.y,BRB.y )
- local maxXhp = math.max( FRT3.x,BLB3.x,FLT3.x,BRT3.x,BLT3.x,FRB3.x,FLB3.x,BRB3.x )
- local minXhp = math.min( FRT3.x,BLB3.x,FLT3.x,BRT3.x,BLT3.x,FRB3.x,FLB3.x,BRB3.x )
- local maxYhp = math.max( FRT3.y,BLB3.y,FLT3.y,BRT3.y,BLT3.y,FRB3.y,FLB3.y,BRB3.y )
- local minYhp = math.min( FRT3.y,BLB3.y,FLT3.y,BRT3.y,BLT3.y,FRB3.y,FLB3.y,BRB3.y )
- local maxX2 = math.max( FRT2.x,BLB2.x,FLT2.x,BRT2.x,BLT2.x,FRB2.x,FLB2.x,BRB2.x )
- local minX2 = math.min( FRT2.x,BLB2.x,FLT2.x,BRT2.x,BLT2.x,FRB2.x,FLB2.x,BRB2.x )
- local maxY2 = math.max( FRT2.y,BLB2.y,FLT2.y,BRT2.y,BLT2.y,FRB2.y,FLB2.y,BRB2.y )
- local minY2 = math.min( FRT2.y,BLB2.y,FLT2.y,BRT2.y,BLT2.y,FRB2.y,FLB2.y,BRB2.y )
- return maxX, minX, maxY, minY, maxX2, minX2, maxY2, minY2, minYhp, maxYhp
- end
- /*************************************
- Name: PlayerVisible
- Purpose: Check if a player is visible
- *************************************/
- local function CanSee(ply)
- local trace = {start = LocalPlayer():GetShootPos(),endpos = {}}
- local tr = util.TraceLine(trace)
- if tr.Fraction == 1 then
- return true
- else
- return false
- end
- end
- /**********************************
- Name: GetColors
- Purpose: Make a cool color!
- ***********************************/
- local function GetColorCrosshair()
- if LocalPlayer():GetEyeTrace().Entity:IsPlayer() then
- return 0,255,0,255
- end
- if LocalPlayer():GetEyeTrace().Entity:IsNPC() then
- return 0,0,255,255
- end
- return team.GetColor(LocalPlayer():Team())
- end
- local function GetColorVisible(e)
- if CanSee(e) then
- return 0,255,0,255
- end
- if !CanSee(e) then
- return 255,0,0,255
- end
- end
- /**************************************
- Name: Number shit
- Purpose: Format number, round number, etc
- **************************************/
- function CommaValue(amount)
- local formatted = amount
- while true do
- formatted, k = string.gsub(formatted, "^(-?%d+)(%d%d%d)", '%1,%2')
- if (k==0) then
- break
- end
- end
- return formatted
- end
- function RoundNum(val, decimal)
- if (decimal) then
- return math.floor( (val * 10^decimal) + 0.5) / (10^decimal)
- else
- return math.floor(val+0.5)
- end
- end
- function FormatNum(amount, decimal, prefix, neg_prefix)
- local str_amount, formatted, famount, remain
- decimal = decimal or 2
- neg_prefix = neg_prefix or "-"
- famount = math.abs(RoundNum(amount,decimal))
- famount = math.floor(famount)
- remain = RoundNum(math.abs(amount) - famount, decimal)
- formatted = CommaValue(famount)
- if (decimal > 0) then
- remain = string.sub(tostring(remain),3)
- formatted = formatted .. "." .. remain .. string.rep("0", decimal - string.len(remain))
- end
- formatted = (prefix or "") .. formatted
- if (amount<0) then
- if (neg_prefix=="()") then
- formatted = "("..formatted ..")"
- else
- formatted = neg_prefix .. formatted
- end
- end
- return formatted
- end
- function ConvertTime(sSeconds)
- local nSeconds = tonumber(sSeconds)
- if nSeconds <= 0 then
- return 0;
- else
- local nHours = string.format("%02.f", math.floor(nSeconds/3600));
- local nMins = string.format("%02.f", math.floor(nSeconds/60 - (nHours*60)));
- local nSecs = string.format("%02.f", math.floor(nSeconds - nHours*3600 - nMins *60));
- if tonumber( nHours ) > 0 then
- return nHours..":"..nMins..":"..nSecs
- elseif tonumber( nMins ) > 0 and tonumber( nHours ) == 0 then
- return nMins..":"..nSecs
- elseif tonumber( nSecs ) > 0 and tonumber( nMins ) == 0 then
- return nMins..":"..nSecs
- end
- end
- end
- /**********************
- Name: DrawText
- Purpose: Draws text...
- **********************/
- function Sethhacks.DrawText( text, font, x, y, colour, xalign, yalign )
- if (font == nil) then font = "Default" end
- if (x == nil) then x = 0 end
- if (y == nil) then y = 0 end
- local curX = x
- local curY = y
- local curString = ""
- surface.SetFont(font)
- local sizeX, lineHeight = surface.GetTextSize("\n")
- for i=1, string.len(text) do
- local ch = string.sub(text,i,i)
- if (ch == "\n") then
- if (string.len(curString) > 0) then
- draw.SimpleText(curString, font, curX, curY, colour, xalign, yalign)
- end
- curY = curY + (lineHeight/2)
- curX = x
- curString = ""
- elseif (ch == "\t") then
- if (string.len(curString) > 0) then
- draw.SimpleText(curString, font, curX, curY, colour, xalign, yalign)
- end
- local tmpSizeX,tmpSizeY = surface.GetTextSize(curString)
- curX = math.ceil( (curX + tmpSizeX) / 50 ) * 50
- curString = ""
- else
- curString = curString .. ch
- end
- end
- if (string.len(curString) > 0) then
- draw.SimpleText(curString, font, curX, curY, colour, xalign, yalign)
- end
- end
- local function FillRGBA(x,y,w,h,col)
- surface.SetDrawColor( col.r, col.g, col.b, col.a );
- surface.DrawRect( x, y, w, h );
- end
- local function OutlineRGBA(x,y,w,h,col)
- surface.SetDrawColor( col.r, col.g, col.b, col.a );
- surface.DrawOutlinedRect( x, y, w, h );
- end
- /*********************
- Name: IsVehicle
- Purpose: Find vehicles
- *********************/
- function Sethhacks.IsVehicle( e )
- local ply = LocalPlayer()
- if ( string.find( e:GetClass(), "prop_vehicle_" ) && ply:GetMoveType() ~= 0 ) then
- return true
- end
- return false
- end
- /***************************
- Name: SetColors
- Purpose: Set Colors
- ****************************/
- function SetColors(e)
- local ply, class, model = LocalPlayer(), e:GetClass(), e:GetModel()
- local col
- if ( e:IsPlayer() ) then
- col = Color(0,255,0,255)
- elseif ( e:IsNPC() ) then
- col = Color( 255, 0, 0, 20 )
- elseif IsCustomEnt( e:GetClass() ) then
- col = Color( 0, 200, 255, 50 )
- else
- col = Color( 255, 255, 255, 255 )
- end
- return col
- end
- /******************************
- Name: Get Admin Type
- Purpose: Get Admin Type..
- *******************************/
- local function GetAdminType(e)
- if e:IsAdmin() && !e:IsSuperAdmin() then
- return " [A] "
- elseif( e:IsSuperAdmin() ) then
- return " [SA] "
- end
- return " "
- end
- /*******************************************
- Name: Anti-Cheat bypasses
- Purpose: Bypass shitty LUA anti-cheats
- ********************************************/
- Sethhacks.Print("[Anti-Cheat] Detected by: Cherry's AC (Working on a bypass method)")
- Sethhacks.Print("[Anti-Cheat] Detected by: LIFEPUNCH Anti-Cheat")
- Sethhacks.Print("[Anti-Cheat] Will bypass: SourceMod Anti-Cheat") -- SHOULD bypass by default, haven't got any problems yet.
- /****************************
- Name: Create ConVars
- Purpose: Create ConVars..
- *****************************/
- AddConVar("ESP_Info",0)
- AddConVar("ESP_Box",0)
- AddConVar("ESP_HPBar",0)
- AddConVar("ESP_Skeleton",0)
- AddConVar("ESP_Tracer",0)
- AddConVar("ESP_Crosshair",0)
- AddConVar("ESP_Chams",0)
- AddConVar("ESP_Chams_Material","Solid")
- AddConVar("ESP_Ents",0)
- AddConVar("ESP_Distance",1000)
- AddConVar("ESP_Info_Type","info")
- AddConVar("MISC_Bunnyhop",0)
- AddConVar("MISC_TTT",0)
- AddConVar("MISC_ChatSpam",0)
- AddConVar("MISC_ChatSpam_Msg","visit www.sethhack.seth.im.me.co.cc.net.org.dk.uk.com.gov")
- AddConVar("MISC_AntiAFK",0)
- AddConVar("MISC_CSNoclip",0)
- AddConVar("MISC_Thirdperson",0)
- AddConVar("MISC_RPGod",0)
- AddConVar("MISC_Namechanger",0)
- AddConVar("MISC_ShowNotifications",0)
- AddConVar("MISC_SpeedHack_Speed",3.5)
- AddConVar("MISC_ShowSpec",0)
- AddConVar("MISC_ShowAdmins",0)
- AddConVar("AIM_Friendly",0)
- AddConVar("AIM_Steam",0)
- AddConVar("AIM_Admins",0)
- AddConVar("AIM_Auto",0)
- AddConVar("AIM_NoRecoil",0)
- AddConVar("AIM_Offset",0)
- AddConVar("AIM_AimSpot","Eye")
- AddConVar("AIM_Trigger",0)
- AddConVar("AIM_Silent",0)
- AddConVar("AIM_SH",0)
- AddConVar("AIM_Anti",0)
- /***********************************
- concommands to find entities and shit
- **************************************/
- AddCMD("_ents",function()
- PrintTable(ents.GetAll())
- end)
- AddCMD("_players",function()
- PrintTable(player.GetAll())
- end)
- /**********************
- Set some ConVars to 0
- **********************/
- old_rcc("Sethhacks_MISC_ChatSpam","0")
- old_rcc("Sethhacks_ESP_Tracer","0")
- /*******************
- Start of cheat
- *******************/
- --[[
- CHAMS
- ]]--
- -- distance check
- function IsCloseEnough(ent)
- local dist = ent:GetPos():Distance( LocalPlayer():GetPos() )
- if( dist <= GetConVarNumber("Sethhacks_ESP_Distance") and ent:GetPos() != Vector( 0, 0, 0 ) ) then
- return true
- end
- return false
- end
- function Chams()
- local mat = Sethhacks:CreateMaterial()
- if GetConVarNumber("Sethhacks_ESP_Chams") == 1 then
- for k,v in pairs(player.GetAll()) do
- local TCol = team.GetColor(v:Team())
- if IsValid(v) and v:Health() > 0 and v:Team() != TEAM_SPECTATOR and IsCloseEnough(v) then
- //Players
- cam.Start3D(EyePos(),EyeAngles())
- render.SuppressEngineLighting( true )
- render.SetColorModulation( ( TCol.r * ( 1 / 255 ) ), ( TCol.g * ( 1 / 255 ) ), ( TCol.b * ( 1 / 255 ) ) )
- render.MaterialOverride( mat )
- v:DrawModel()
- render.SuppressEngineLighting( false )
- render.SetColorModulation(1,1,1)
- render.MaterialOverride( )
- v:DrawModel()
- cam.End3D()
- end
- end
- end
- end
- local IsLock = false;
- --[[
- ESP
- ]]--
- function ESP()
- for k, e in pairs( player.GetAll() ) do
- local TeamColor = team.GetColor(e:Team())
- local HPColor = Color(255,255,255,255)
- local Dist = e:GetPos():Distance(LocalPlayer():GetPos());
- local wep = "Unknown"
- local SteamID = e:SteamID()
- local Name = e:Nick()
- local hvhpos = ( e:GetPos() + Vector( 0, 0, 130 ) ):ToScreen();
- if GetConVarNumber("Sethhacks_PERP_RPNames") == 1 then
- Name = e:GetRPName()
- else
- Name = e:Nick()
- end
- local maxX, minX, maxY, minY, maxX2, minX2, maxY2, minY2, minYhp, maxYhp = CreatePos( e )
- -- This is bad
- if e:Health() >= 90 then HPColor = Color(0,255,0,255)
- elseif e:Health() >= 70 then HPColor = Color(255,255,0,255)
- elseif e:Health() >= 50 then HPColor = Color(255,165,0,255)
- elseif e:Health() >= 30 then HPColor = Color(255,140,0,255)
- elseif e:Health() >= 20 then HPCOlor = Color(255,69,0,255)
- elseif e:Health() >= 10 then HPColor = Color(255,0,0,255)
- else HPColor = Color(255,0,0,255)
- end
- draw.SimpleTextOutlined("Sethhacks v4.5","Logo",1285,15,Color(2,0,0,255),4,1,1,red)
- if ( e:IsPlayer() && e:Alive() && e != LocalPlayer() && IsCloseEnough(e) ) then
- if e:GetActiveWeapon() != nil then
- if type(e:GetActiveWeapon()) == "Weapon" then
- if e:GetActiveWeapon() and e:GetActiveWeapon():IsValid() then
- wep = e:GetActiveWeapon():GetPrintName()
- -- ESP INFO
- if (GetConVarNumber("Sethhacks_ESP_Info") == 1 && GetConVarString("Sethhacks_ESP_Info_Type") == "info") then
- draw.SimpleTextOutlined( Name..GetAdminType(e), "Sethhacks_coolvetica", maxX2, minY2, TeamColor,4,1,1,Color(0,0,0))
- draw.SimpleTextOutlined( "H: " .. e:Health(), "ESPFont_Small", maxX2, minY2 + 10, HPColor, 4,1, 1, black )
- draw.SimpleTextOutlined( "D: " .. math.floor(Dist), "ESPFont_Small", maxX2, minY2 + 20, iceblue, 4, 1, 1, black )
- draw.SimpleTextOutlined( "W: " .. wep, "ESPFont_Small", maxX2, minY2 + 30, iceblue, 4, 1, 1, black)
- if e:GetFriendStatus() == "friend" then
- draw.SimpleTextOutlined( "[Friend]", "ESPFont_Small", maxX2, minY2 - 10, iceblue, 4, 1,1,black)
- end
- if e:IsAdmin() then
- draw.SimpleText("[Admin]","ESPFont_Small",maxX2,minY2 -20,cyan,4,1,1,black)
- end
- elseif GetConVarString("Sethhacks_ESP_Info_Type") == "hvh" then
- draw.SimpleTextOutlined(e:Nick().." ["..e:Health().."]","Default",hvhpos.x,hvhpos.y,TeamColor,4,.5,.5,black,TEXT_ALIGN_CENTER)
- end
- -- ESP BOX --
- if GetConVarNumber("Sethhacks_ESP_Box") == 1 then
- surface.SetDrawColor(0,0,255,255)
- surface.DrawLine( maxX, maxY, maxX, minY )
- surface.DrawLine( maxX, minY, minX, minY )
- surface.DrawLine( minX, minY, minX, maxY )
- surface.DrawLine( minX, maxY, maxX, maxY )
- end
- -- ESP SKELETON --
- local bones = {
- { S = "ValveBiped.Bip01_Head1", E = "ValveBiped.Bip01_Neck1" },
- { S = "ValveBiped.Bip01_Neck1", E = "ValveBiped.Bip01_Spine4" },
- { S = "ValveBiped.Bip01_Spine4", E = "ValveBiped.Bip01_Spine2" },
- { S = "ValveBiped.Bip01_Spine2", E = "ValveBiped.Bip01_Spine1" },
- { S = "ValveBiped.Bip01_Spine1", E = "ValveBiped.Bip01_Spine" },
- { S = "ValveBiped.Bip01_Spine", E = "ValveBiped.Bip01_Pelvis" },
- { S = "ValveBiped.Bip01_Spine4", E = "ValveBiped.Bip01_L_UpperArm" },
- { S = "ValveBiped.Bip01_L_UpperArm", E = "ValveBiped.Bip01_L_Forearm" },
- { S = "ValveBiped.Bip01_L_Forearm", E = "ValveBiped.Bip01_L_Hand" },
- { S = "ValveBiped.Bip01_Spine4", E = "ValveBiped.Bip01_R_UpperArm" },
- { S = "ValveBiped.Bip01_R_UpperArm", E = "ValveBiped.Bip01_R_Forearm" },
- { S = "ValveBiped.Bip01_R_Forearm", E = "ValveBiped.Bip01_R_Hand" },
- { S = "ValveBiped.Bip01_Pelvis", E = "ValveBiped.Bip01_L_Thigh" },
- { S = "ValveBiped.Bip01_L_Thigh", E = "ValveBiped.Bip01_L_Calf" },
- { S = "ValveBiped.Bip01_L_Calf", E = "ValveBiped.Bip01_L_Foot" },
- { S = "ValveBiped.Bip01_L_Foot", E = "ValveBiped.Bip01_L_Toe0" },
- { S = "ValveBiped.Bip01_Pelvis", E = "ValveBiped.Bip01_R_Thigh" },
- { S = "ValveBiped.Bip01_R_Thigh", E = "ValveBiped.Bip01_R_Calf" },
- { S = "ValveBiped.Bip01_R_Calf", E = "ValveBiped.Bip01_R_Foot" },
- { S = "ValveBiped.Bip01_R_Foot", E = "ValveBiped.Bip01_R_Toe0" },
- }
- if GetConVarNumber("Sethhacks_ESP_Skeleton") == 1 then
- for k, v in pairs( bones ) do
- local sPos, ePos = e:GetBonePosition( e:LookupBone( v.S ) ):ToScreen(), e:GetBonePosition( e:LookupBone( v.E ) ):ToScreen()
- if e:IsPlayer() and !e:IsNPC() then
- surface.SetDrawColor(team.GetColor(e:Team()))
- end
- surface.DrawLine(sPos.x,sPos.y,ePos.x,ePos.y)
- end
- end
- -- ESP TRACER --
- if GetConVarNumber("Sethhacks_ESP_Tracer") == 1 then
- cam.Start3D( EyePos() , EyeAngles())
- render.SetMaterial( Material( "trails/laser" ) )
- StartPos = LocalPlayer():GetActiveWeapon():GetPos()
- EndPos = e:GetBonePosition(e:LookupBone("ValveBiped.Bip01_Head1"))
- render.DrawBeam(StartPos, EndPos , 3, 0, 0, Color(0,255,0,255))
- cam.End3D()
- end
- -- ESP CROSSHAIR --
- if GetConVarNumber("Sethhacks_ESP_Crosshair") == 1 then
- local x, y = ScrW() / 2, ScrH() / 2
- local Speed = 1
- surface.SetDrawColor(GetColorCrosshair())
- CHPosx = math.Clamp(LocalPlayer():GetEyeTrace().HitPos:ToScreen().x,0,ScrW())
- CHPosy = math.Clamp(LocalPlayer():GetEyeTrace().HitPos:ToScreen().y,0,ScrH())
- mathsin = math.sin(CurTime()*Speed)*4
- mathcos = math.cos(CurTime()*Speed)*4
- mathsin2 = math.sin(CurTime()*Speed+0.1)*4
- mathcos2 = math.cos(CurTime()*Speed+0.1)*4
- mathsin3 = math.sin(CurTime()*Speed-0.1)*4
- mathcos3 = math.cos(CurTime()*Speed-0.1)*4
- surface.DrawLine( CHPosx+mathcos*2,CHPosy+mathsin*2,CHPosx+mathcos*5,CHPosy+mathsin*5 );
- surface.DrawLine( CHPosx-mathcos*2,CHPosy-mathsin*2,CHPosx-mathcos*5,CHPosy-mathsin*5 );
- surface.DrawLine( CHPosx+mathsin*2,CHPosy-mathcos*2,CHPosx+mathsin*5,CHPosy-mathcos*5 );
- surface.DrawLine( CHPosx-mathsin*2,CHPosy+mathcos*2,CHPosx-mathsin*5,CHPosy+mathcos*5 );
- end
- end
- end
- end
- end
- end
- for _, v in ipairs( ents.GetAll() ) do
- if( v:IsValid() and IsCustomEnt( v:GetClass() )) then
- if GetConVarNumber("Sethhacks_ESP_Ents") == 1 then
- local wepn = v:GetClass()
- local wname = string.Replace(wepn,"weapon_","")
- wname = string.Replace(wname,"_"," ")
- wname = string.upper(wname)
- local entpos = v:GetPos():ToScreen()
- draw.SimpleTextOutlined(""..wname.."", "ESPFont_Small", entpos.x + 50, entpos.y - 15, color_red, TEXT_ALIGN_CENTER, TEXT_ALIGN_LEFT, .6, black )
- surface.SetDrawColor(255,0,255,255)
- surface.DrawLine(entpos.x,entpos.y,entpos.x,entpos.y-10)
- surface.DrawLine(entpos.x,entpos.y,entpos.x+10,entpos.y)
- end
- end
- end
- end
- /**************************
- NOTIFICATIONS!
- YES, Bringing them back.
- **************************/
- function Notifications()
- local NotifPos = 5
- if GetConVarNumber("Sethhacks_MISC_ShowNotifications") == 1 then
- draw.RoundedBox( 8, -10, 0, 10000, 30, Color(0,0,0,100))
- if ShouldAim == 1 then
- draw.SimpleText("| Aimbot: ON", "Logo", 0,NotifPos, Color(0,255,0,255))
- else
- draw.SimpleText("| Aimbot: OFF", "Logo", 0, NotifPos, Color(255,0,0,255))
- end
- if GetConVarNumber("Sethhacks_AIM_Auto") == 1 then
- draw.SimpleText("| Autoshoot: ON", "Logo", 100,NotifPos, Color(0,255,0,255))
- else
- draw.SimpleText("| Autoshoot: OFF", "Logo", 100, NotifPos, Color(255,0,0,255))
- end
- if GetConVarNumber("Sethhacks_AIM_Trigger") == 1 then
- draw.SimpleText("| TriggerBot: ON", "Logo", 220,NotifPos, Color(0,255,0,255))
- else
- draw.SimpleText("| TriggerBot: OFF", "Logo", 220, NotifPos, Color(255,0,0,255))
- end
- if GetConVarNumber("Sethhacks_AIM_NoRecoil") == 1 then
- draw.SimpleText("| No Recoil: ON", "Logo", 340,NotifPos, Color(0,255,0,255))
- else
- draw.SimpleText("| No Recoil: OFF", "Logo", 340,NotifPos, Color(255,0,0,255))
- end
- if GetConVarNumber("Sethhacks_AIM_Admins") == 1 then
- draw.SimpleText("| Target Admins: ON", "Logo", 450,NotifPos, Color(0,255,0,255))
- else
- draw.SimpleText("| Target Admins: OFF", "Logo", 450,NotifPos, Color(255,0,0,255))
- end
- if GetConVarNumber("Sethhacks_AIM_Friendly") == 1 then
- draw.SimpleText("| Friendly Fire: ON", "Logo", 590,NotifPos, Color(0,255,0,255))
- else
- draw.SimpleText("| Friendly Fire: OFF", "Logo", 590,NotifPos, Color(255,0,0,255))
- end
- if GetConVarNumber("Sethhacks_AIM_Steam") == 1 then
- draw.SimpleText("| Target Steam Friends: ON", "Logo", 720,NotifPos, Color(0,255,0,255))
- else
- draw.SimpleText("| Target Steam Friends: OFF", "Logo", 720, NotifPos, Color(255,0,0,255))
- end
- if GetConVarNumber("host_timescale") >= 1.1 then
- draw.SimpleText("| SpeedHack: ON", "Logo", 910,NotifPos, Color(0,255,0,255))
- else
- draw.SimpleText("| SpeedHack: OFF", "Logo", 910, NotifPos, Color(255,0,0,255))
- end
- end
- end
- /*****************************************
- Name: Aimbot/Aim functions
- Purpose: Aim for you, because you suck
- Credits: faggot
- *******************************************/
- local Tb = table.Copy( file )
- local Tbs = table.Copy( string )
- local Uw = {}
- local Mw = {}
- local function PlyPos( ply )
- local min = ply:OBBMins()
- local max = ply:OBBMaxs()
- local Spots = {
- Vector( min.x, min.y, min.z ),
- Vector( min.x, min.y, max.z ),
- Vector( min.x, max.y, min.z ),
- Vector( min.x, max.y, max.z ),
- Vector( max.x, min.y, min.z ),
- Vector( max.x, min.y, max.z ),
- Vector( max.x, max.y, min.z ),
- Vector( max.x, max.y, max.z )
- }
- local minX = ScrW() * 2
- local minY = ScrH() * 2
- local maxX = 0
- local maxY = 0
- for k,v in pairs( Spots ) do
- local ToScreen = ply:LocalToWorld( v ):ToScreen()
- minX = math.min( minX, ToScreen.x )
- minY = math.min( minY, ToScreen.y )
- maxX = math.max( maxX, ToScreen.x )
- maxY = math.max( maxY, ToScreen.y )
- end
- return minX, minY, maxX, maxY
- end
- AddCMD("+Sethhacks_Aim",function()
- Aimon = 1
- end)
- AddCMD("-Sethhacks_Aim",function()
- Aimon = 0
- IsLock = false
- end)
- local function AimSpot(targ)
- if GetConVarString("Sethhacks_AIM_AimSpot") == "Eye" then
- local eye = targ:LookupAttachment("eyes")
- if eye then
- local pos = targ:GetAttachment(eye)
- if pos then return pos.Pos end
- end
- end
- if GetConVarString("Sethhacks_AIM_AimSpot") == "Bone" then
- local bone = targ:LookupBone("ValveBiped.Bip01_Head1")
- if bone then
- local pos = targ:GetBonePosition(bone)
- if pos then return pos end
- end
- end
- if GetConVarString("Sethhacks_AIM_AimSpot") == "Center" then
- local center = targ:OBBCenter()
- if center then
- local pos = targ:LocalToWorld(center)
- if pos then return pos end
- end
- end
- return targ:LocalToWorld(targ:OBBCenter())
- end
- local function Exception(ent)
- if (ent == LocalPlayer()) then return false end
- if (ent:Team() == TEAM_SPECTATOR) then return false end
- if (ent:GetMoveType() == MOVETYPE_OBSERVER) then return false end
- if (!ent:Alive() ) then return false end
- if (ent:InVehicle()) then return false end
- if (GetConVarNumber("Sethhacks_AIM_Friendly") == 0 && ent:Team() == LocalPlayer():Team()) then return false end
- if (GetConVarNumber("Sethhacks_AIM_Steam") == 0 && ent:GetFriendStatus() == "friend" ) then return false end
- return true
- end
- local function Visible(ply)
- local tracedata = {}
- tracedata.start = LocalPlayer():GetShootPos()
- tracedata.endpos = AimSpot(ply) - Vector(0,0,GetConVarNumber("Sethhacks_AIM_Offset"))
- tracedata.mask = MASK_SHOT
- tracedata.filter = {ply , LocalPlayer()}
- Trace = util.TraceLine(tracedata)
- if Trace.Hit then return false else return true end
- end
- local function Aimbot(ucmd)
- if Aimon == 1 then
- local ArchAngel = Angle(0,0,0)
- local target;
- local distance = math.huge;
- for _, ply in pairs(player.GetAll()) do
- if (ply != LocalPlayer() and ply:Alive() and Visible(ply) and Exception(ply)) then
- local thedist = ply:GetPos():DistToSqr(LocalPlayer():GetPos());
- if (thedist < distance) then
- distance = thedist;
- target = ply;
- end
- end
- end
- if target != nil then
- local Aimspot = AimSpot(target) - Vector(0,0,GetConVarNumber("Sethhacks_AIM_Offset"))
- Aimspot = Aimspot + target:GetVelocity() / 45 - LocalPlayer():GetVelocity() / 45
- Angel = (Aimspot - LocalPlayer():GetShootPos()):GetNormal():Angle()
- Angel.p = math.NormalizeAngle( Angel.p )
- Angel.y = math.NormalizeAngle( Angel.y )
- ArchAngel = Angle( Angel.p, Angel.y, 0 )
- debug.getregistry()["CUserCmd"].SetViewAngles(ucmd, ArchAngel)
- IsLock = 1
- if GetConVarNumber("Sethhacks_AIM_Auto") == 1 then
- ucmd:SetButtons(bit.bor(ucmd:GetButtons(),IN_ATTACK))
- end
- if GetConVarNumber("Sethhacks_AIM_SH") == 1 then
- ucmd:SetButtons(bit.bor(ucmd:GetButtons(),IN_ATTACK2))
- end
- end
- end
- end
- /******************************
- Name: SILENT AIM
- Purpose: FAKE AIM VIEW
- ******************************/
- -- make me
- /****************************
- Name: Misc
- Purpose: Misc features
- *****************************/
- function NameChanger()
- if GetConVarNumber("Sethhacks_MISC_Namechanger") == 1 then
- AddTimer( 1, 1, function()
- Sethhacks.chat(dosound,white,"nope");
- end )
- end
- end
- function Misc()
- if GetConVarNumber("Sethhacks_MISC_BunnyHop") == 1 then
- if input.IsKeyDown(KEY_SPACE) then
- if LocalPlayer():IsOnGround() then
- old_rcc("+Jump")
- timer.Create("Bhop",0.01, 0 ,function() old_rcc("-Jump") end)
- end
- end
- end
- if GetConVarNumber("Sethhacks_AIM_NoRecoil") == 1 then
- if LocalPlayer():GetActiveWeapon().Primary then
- LocalPlayer():GetActiveWeapon().Primary.Recoil = 0
- end
- end
- if GetConVarNumber("Sethhacks_MISC_ChatSpam") == 1 then
- LocalPlayer():ConCommand("say "..GetConVarString("Sethhacks_MISC_ChatSpam_Msg").."["..math.random(1,999).."]")
- end
- if GetConVarNumber("Sethhacks_MISC_RPGod") == 1 then
- if LocalPlayer():Health() < 100 then
- LocalPlayer():ConCommand("say /buyhealth"); -- spam buyhealth
- end
- end
- end
- function ShowNotifi()
- -- now spectating
- for k, v in pairs(player.GetAll()) do
- if (IsValid(v:GetObserverTarget()) and v:GetObserverTarget():IsPlayer() and v:GetObserverTarget() == LocalPlayer()) then
- if(not table.HasValue(Sethhacks.spectators, v)) then
- table.insert(Sethhacks.spectators, v);
- if GetConVarNumber("Sethhacks_MISC_ShowSpec") == 1 then
- Sethhacks.Notify(true,red,""..v:Nick().." is now spectating you!")
- surface.PlaySound("buttons/blip1.wav")
- end
- end
- end
- end
- -- no longer spectating
- for k, v in pairs(Sethhacks.spectators) do
- if (not IsValid(v) or not IsValid(v:GetObserverTarget()) or not v:GetObserverTarget():IsPlayer() or (v:GetObserverTarget() ~= LocalPlayer())) then
- table.remove(Sethhacks.spectators, k);
- if GetConVarNumber("Sethhacks_MISC_ShowSpec") == 1 then
- Sethhacks.Notify(true,green,""..v:Nick().." is no longer spectating you!")
- end
- end
- end
- -- admin join
- if GetConVarNumber("Sethhacks_MISC_ShowAdmins") == 1 then
- for k, v in pairs(player.GetAll()) do
- if (v:IsAdmin() and not table.HasValue(Sethhacks.admins, v)) then
- table.insert(Sethhacks.admins, v);
- Sethhacks.Notify(true,white,"Admin " .. v:Nick() .. " has joined!")
- surface.PlaySound("buttons/blip1.wav");
- end
- end
- end
- end
- local commands = { "forward" , "back" , "jump" , "moveleft" , "moveright", "duck" }
- function AntiAfk()
- if GetConVarNumber("Sethhacks_MISC_AntiAFK") == 1 then
- local command1 = table.Random( commands )
- local command2 = table.Random( commands )
- AddTimer( 1, 1, function()
- old_rcc( "+"..command1 )
- old_rcc( "+"..command2 )
- end )
- AddTimer( 2, 1, function()
- old_rcc("-"..command1 )
- old_rcc("-"..command2 )
- end )
- end
- end
- AddTimer( 5 , 0 , function() AntiAfk() end )
- // Traitor finder functions
- local Traitors = {};
- local PlayerIsTraitor = false
- timer.Simple( 3, function()
- if ( gmod.GetGamemode().Name ) == "Trouble in Terrorist Town" then
- local TWeapons = { "weapon_ttt_knife", "weapon_ttt_radio", "(Disguise)", "spiderman's_swep", "weapon_ttt_trait_defilibrator", "weapon_ttt_xbow", "weapon_ttt_dhook", "weapon_awp", "weapon_ttt_ak47", "weapon_jihadbomb", "weapon_ttt_c4", "weapon_ttt_decoy", "weapon_ttt_flaregun", "weapon_ttt_phammer", "weapon_ttt_push", "weapon_ttt_sipistol", "weapon_ttt_awp", "weapon_ttt_silencedsniper", "weapon_ttt_turtlenade", "weapon_ttt_death_station", "weapon_ttt_sg552", "weapon_ttt_tripmine", "weapon_zm_m1911", "weapon_zm_tmp", "weapon_zm_rifle_silence", "weapon_ttt_silenced_m4a1", "weapon_ttt_gadaffiboom", "weapon_ttt_siriffle", "weapon_ttt_teleport", "weapon_ttt_silentsnip", "weapon_ttt_siltmp", "weapon_ttt_sisniper", "weapon_ttt_sitmp", "weapon_ttt_switchatron", "weapon_ttt_thook", "weapon_ttt_radiojammer" }
- local UsedWeapons = {}
- local MapWeapons = {}
- function IsATraitor( ply )
- for k, v in pairs( Traitors ) do
- if v == ply then
- return true
- else
- return false
- end
- end
- end
- timer.Create("TTT", 0.8, 0, function()
- if GetConVarNumber("Sethhacks_MISC_TTT") == 1 then
- if !IsATraitor( ply ) then
- for k, v in pairs( ents.FindByClass( "player" ) ) do
- if IsValid( v ) then
- if (!v:IsDetective()) then
- if v:Team() ~= TEAM_SPECTATOR then
- for wepk, wepv in pairs( TWeapons ) do
- for entk, entv in pairs( ents.FindByClass( wepv ) ) do
- if IsValid( entv ) then
- cookie.Set( entv, 100 - wepk )
- if !table.HasValue( UsedWeapons, cookie.GetNumber( entv ) ) then
- if !table.HasValue( MapWeapons, cookie.GetNumber( entv ) ) then
- local EntPos = ( entv:GetPos() - Vector(0,0,35) )
- if entv:GetClass() == wepv then
- if v:GetPos():Distance( EntPos ) <= 1 then
- table.insert( Traitors, v )
- Sethhacks.Notify(sound,red,v:Nick() .. " has traitor weapon: " .. wepv )
- if !table.HasValue( UsedWeapons, cookie.GetNumber( entv ) ) then
- table.insert( UsedWeapons, cookie.GetNumber( entv ) )
- else
- if !table.HasValue( MapWeapons, cookie.GetNumber( entv ) ) then
- table.insert( MapWeapons, cookie.GetNumber( entv ) )
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end )
- AddHook("HUDPaint",function()
- if GetConVarNumber("Sethhacks_MISC_TTT") == 1 then
- for k, e in pairs( Traitors ) do
- local maxX, minX, maxY, minY, maxX2, minX2, maxY2, minY2, minYhp, maxYhp = CreatePos( e )
- if IsValid( e ) then
- if e:Team() ~= TEAM_SPECTATOR then
- if ( !e:IsDetective() ) then
- PlayerIsTraitor = true
- draw.SimpleTextOutlined( "[TRAITOR]", "ESPFont", maxX2, minY2 -20, red, 4, 1, 1, black )
- end
- end
- end
- end
- end
- end )
- AddHook("TTTPrepareRound",function()
- timer.Simple( 2, function()
- for k, v in pairs( Traitors ) do
- table.remove( Traitors, k )
- Traitors = {}
- end
- for k, v in pairs( UsedWeapons ) do
- table.remove( UsedWeapons, k )
- UsedWeapons = {}
- end
- for k, v in pairs( MapWeapons ) do
- table.remove( MapWeapons, k )
- MapWeapons = {}
- end
- end )
- end )
- end
- end )
- /*************************
- MENU FUNCTIONS
- *************************/
- AddCMD("+Sethhacks_Menu", function()
- Menu = vgui.Create("DFrame")
- Menu:SetSize(450,360)
- Menu:SetTitle(" :: Sethhacks :: Version "..Sethhacks.version.." ::") -- Ignore the spacing.
- Menu:Center()
- Menu:MakePopup()
- Menu.Paint = function()
- local mW, mH, x, y = Menu:GetWide(), Menu:GetTall(), ScrW() / 2, ScrH() / 2
- draw.RoundedBox( 0, 0, 0, mW, mH, Color( 175, 0, 0, 0 ) )
- surface.SetDrawColor(black);
- surface.DrawOutlinedRect( 0, 0, mW , mH )
- surface.DrawOutlinedRect( 0, 25, mW, mH )
- end
- local Sheet = vgui.Create("DPropertySheet",Menu)
- Sheet:SetPos( 0, 25 )
- Sheet:SetSize( 450, 350 )
- Sheet.Paint = function()
- draw.RoundedBox( 0, 0, 0, Sheet:GetWide(), Sheet:GetTall(), Color(0,0,0,150) )
- end
- // fuck;
- local Page1 = vgui.Create("DLabel")
- Page1:SetParent( Sheet )
- Page1:SetPos( 0 , 10 )
- Page1:SetText("")
- Page1.Paint = function()
- draw.SimpleTextOutlined("Sethhacks v"..Sethhacks.version.." - Revived by Catheter and Briska ","Logo",30,3,red,TEXT_ALIGN_MIDDLE,TEXT_ALIGN_MIDDLE,2,black)
- end
- local Page2 = vgui.Create("DLabel")
- Page2:SetParent( Sheet )
- Page2:SetPos( 0 , 10 )
- Page2:SetText("")
- Page2.Paint = function()
- end
- local Page3 = vgui.Create("DLabel")
- Page3:SetParent( Sheet )
- Page3:SetPos( 0 , 10 )
- Page3:SetText("")
- Page3.Paint = function()
- end
- local Page4 = vgui.Create("DLabel")
- Page4:SetParent( Sheet )
- Page4:SetPos( 0 , 10 )
- Page4:SetText("")
- Page4.Paint = function()
- end
- local Page5 = vgui.Create("DLabel")
- Page5:SetParent( Sheet )
- Page5:SetPos( 0 , 10 )
- Page5:SetText("")
- Page5.Paint = function()
- end
- -----------------------
- --[[ MAIN TAB SHIT ]]--
- -----------------------
- // LOAD SHIT
- local ReloadHooksButton = vgui.Create("DButton",Page1)
- ReloadHooksButton:SetText("Reload Hooks")
- ReloadHooksButton:SetPos( 80, 30 )
- ReloadHooksButton:SetSize( 200, 25)
- ReloadHooksButton.DoClick = function()
- Sethhacks.hooks:reload()
- Sethhacks.Notify(green,"Reloaded hooks")
- end
- -------------------------
- --[[ AIMBOT TAB SHIT ]]--
- -------------------------
- AddCheckBox("Autoshoot","Sethhacks_AIM_Auto",Page2,10,10,"Autoshoot when locked")
- AddCheckBox("Friendly Fire","Sethhacks_AIM_Friendly",Page2,10,30,"Target your own team")
- AddCheckBox("Target Steam Friends","Sethhacks_AIM_Steam",Page2,10,50,"Target Steam Friends")
- AddCheckBox("Target Admins","Sethhacks_AIM_Admins",Page2,10,70,"Target Admins")
- AddCheckBox("No-Recoil","Sethhacks_AIM_NoRecoil",Page2,10,90,"Remove Recoil")
- AddCheckBox("Triggerbot","Sethhacks_AIM_Trigger",Page2,10,110,"Auto-shoots when looking at a player")
- AddCheckBox("Stronghold mode","Sethhacks_AIM_SH",Page2,10,130,"Aims down sights when locked, to reduce spread.")
- AddSlider("Aimbot Offset","Sethhacks_AIM_Offset",Page2,-25,25,1,10,260,350,"Offsets your aimspot")
- -------------------------------------
- --[[ ESP | WALLHACK | VISUAL TAB ]]--
- -------------------------------------
- AddCheckBox("[ESP] Info","Sethhacks_ESP_Info",Page3,10,10,"Show player's info on the ESP")
- AddCheckBox("[ESP] Chams","Sethhacks_ESP_Chams",Page3,10,30,"Show a player's model through walls")
- AddCheckBox("[ESP] Bounding Box","Sethhacks_ESP_Box",Page3,10,50,"Draw a box around players")
- AddCheckBox("[ESP] Show Skeleton","Sethhacks_ESP_Skeleton",Page3,10,70,"Show player's bones")
- AddCheckBox("[ESP] Entity Finder","Sethhacks_ESP_Ents",Page3,10,90,"Show entities on the ESP")
- AddCheckBox("[VIS] Crosshair","Sethhacks_ESP_Crosshair",Page3,150,10,"Draw a crosshair on your screen")
- AddCheckBox("[VIS] Laser Tracer","Sethhacks_ESP_Tracer",Page3,150,30,"Draw a laser from your feet to player's heads.")
- /*
- local ListESP1 = vgui.Create( "DListView" )
- ListESP1:SetPos( 330, 280 )
- ListESP1:SetParent( Page3 )
- ListESP1:SetSize( 100, 20 )
- ListESP1:SetMultiSelect(false)
- ListESP1:AddColumn( "Wireframe" )
- ListESP1:AddColumn( "Solid" )
- ListESP1:SetConVar( "Sethhacks_ESP_Chams_Material" )
- */
- local ESPLabel1 = vgui.Create("DLabel")
- ESPLabel1:SetParent( Page3 )
- ESPLabel1:SetPos(335,265)
- ESPLabel1:SetText("Chams Material")
- ESPLabel1:SetTextColor(Color(255,255,255,255))
- ESPLabel1:SizeToContents()
- /**********************
- Entity Finder Stuff
- **********************/
- ---------------------------
- --[[ MISC TAB SETTINGS ]]--
- ---------------------------
- AddCheckBox("Traitor Finder","Sethhacks_MISC_TTT",Page4,10,10,"Find traitors in TTT")
- AddCheckBox("Bunnyhop","Sethhacks_MISC_BunnyHop",Page4,10,30,"Bunnyhop by holding 'Space'")
- AddCheckBox("Anti-AFK","Sethhacks_MISC_AntiAFK",Page4,10,70,"Makes you move randomly to avoid AFK kickers")
- AddCheckBox("Name Changer","Sethhacks_MISC_Namechanger",Page4,10,90,"Steal player's names")
- AddCheckBox("Show Notifications","Sethhacks_MISC_ShowNotifications",Page4,10,110,"Draws enabled features on top of the screen")
- AddCheckBox("Show Spectators","Sethhacks_MISC_ShowSpec",Page4,10,150,"Tells you in chat when someone is spectating you.")
- AddCheckBox("Show Admins","Sethhacks_MISC_ShowAdmins",Page4,10,170,"Tells you in chat when an admin joins.")
- --------------------------------
- --[[ PERP HACK TAB SETTINGS]]---
- --------------------------------
- // Add sheets
- Sheet:AddSheet("Main",Page1,false,false,false,"Main cheat settings")
- Sheet:AddSheet("Aimbot",Page2, false, false, false, "Aimbot Settings")
- Sheet:AddSheet("ESP | Wallhack | Visual",Page3,false,false,false,"ESP/Wallhack Settings")
- Sheet:AddSheet("Miscellaneous",Page4,false,false,false,"Miscellaneous Settings")
- end) -- End of +Sethhacks_Menu function
- AddCMD("-Sethhacks_Menu",function()
- Menu:SetVisible(false)
- end)
- AddCMD("Sethhacks_Menu_Toggle",function()
- Menu:SetVisible(true)
- end)
- /*****************************
- Entity finder menu
- *****************************/
- function EntsMenu()
- local EntPanel = vgui.Create( "DFrame" )
- EntPanel:SetPos( ScrW()/2 - 250, ScrH()/2 - 200 )
- EntPanel:SetSize( 500, 400 )
- EntPanel:SetTitle( "Custom Entities" )
- EntPanel:SetVisible( true )
- EntPanel:SetDraggable( false )
- EntPanel:ShowCloseButton( true )
- EntPanel:MakePopup()
- local NonEnts = vgui.Create( "DListView", EntPanel )
- NonEnts:SetPos( 20, 45 )
- NonEnts:SetSize( 150, EntPanel:GetTall() - 70 )
- NonEnts:SetMultiSelect(true)
- --NonEnts:SetMultiple( false )
- local AddEnt = vgui.Create( "DButton", EntPanel )
- AddEnt:SetPos( EntPanel:GetWide()/2 - 50, EntPanel:GetTall()/2 - 65 )
- AddEnt:SetSize( 100, 30 )
- AddEnt:SetText( "Add Ent ->" )
- local Added = vgui.Create( "DComboBox", EntPanel )
- Added:SetPos( EntPanel:GetWide() - 170, 45 )
- Added:SetSize( 150, EntPanel:GetTall() - 70 )
- --Added:SetMultiSelect(true)
- --Added:SetMultiple( false )
- local RemoveEnt = vgui.Create( "DButton", EntPanel )
- RemoveEnt:SetPos( EntPanel:GetWide()/2 - 50, EntPanel:GetTall()/2 + 25 )
- RemoveEnt:SetSize( 100, 30 )
- RemoveEnt:SetText( "<- Remove Ent" )
- local function RefreshCombo()
- NonEnts:Clear()
- Added:Clear()
- local listedn = {}
- for k, v in pairs( ents.GetAll() ) do
- if( IsValid( v ) and !IsCustomEnt( v:GetClass() ) and !table.HasValue( listedn, v:GetClass() ) and !table.HasValue( Sethhacks.invalidents, v:GetClass() ) and string.Left( v:GetClass(), 8 ) != "class C_" and string.Left( v:GetClass(), 5 ) != "func_" and string.Left( v:GetClass(), 4 ) != "env_") then
- local item = DPanelList:AddItem( v:GetClass() )
- itement = v
- table.insert( listedn, v:GetClass() )
- end
- end
- local listeda= {}
- for k, v in pairs( Sethhacks.ents ) do
- local item = DListView:AddLine( v )
- itement = v
- table.insert( listeda, v )
- end
- end
- RefreshCombo()
- local Clear = vgui.Create( "DButton", EntPanel )
- Clear:SetPos( EntPanel:GetWide()/2 - 45, EntPanel:GetTall() - 85 )
- Clear:SetSize( 90, 30 )
- Clear:SetText( "Clear" )
- Clear.DoClick = function()
- ClearEnts()
- RefreshCombo()
- end
- AddEnt.DoClick = function()
- if( #NonEnts:GetSelected() != 0 ) then
- AddEnt( NonEnts:GetSelectedLine().ent:GetClass() )
- RefreshCombo()
- end
- end
- RemoveEnt.DoClick = function()
- if( #Added:GetSelected() != 0 ) then
- RefreshCombo()
- end
- end
- end
- /**********************
- Name: Hooks
- Purpose: Hook shit
- ***********************/
- function hooks_hudpaint()
- ESP()
- Notifications()
- end
- function hooks_postdraw()
- Chams()
- end
- function hooks_think()
- Misc();
- NameChanger();
- ShowNotifi();
- end
- function hooks_renderscreenspaceeffects()
- end
- function hooks_calcview()
- end
- function hooks_createmove(ucmd)
- Aimbot(ucmd)
- end
- function Sethhacks.hooks:load()
- Log("Loaded hooks")
- AddHook("HUDPaint",hooks_hudpaint)
- AddHook("PostDrawEffects",hooks_postdraw)
- AddHook("Think",hooks_think)
- AddHook("CalcView",hooks_calcview)
- AddHook("RenderScreenspaceEffects",hooks_renderscreenspaceeffects)
- AddHook("CreateMove",hooks_createmove)
- end
- Sethhacks.hooks:load(); -- load them
- function Sethhacks.hooks:unload()
- RemoveHook("HUDPaint",hooks_hudpaint)
- RemoveHook("CalcView",hooks_calcview)
- RemoveHook("PostDrawEffects",hooks_postdraw)
- RemoveHook("Think",hooks_think)
- RemoveHook("RenderScreenspaceEffects",hooks_renderscreenspaceeffects)
- RemoveHook("CreateMove",hooks_createmove)
- end
- function Sethhacks.hooks:reload()
- Log("Reloaded hooks")
- Sethhacks.hooks:unload()
- Sethhacks.hooks:load()
- end
- function unload()
- Log("Unloaded.")
- Sethhacks.hooks:unload()
- old_rcc("-Sethhacks_Menu")
- RemoveCMD("+Sethhacks_Menu")
- RemoveCMD("-Sethhacks_Menu")
- RemoveCMD("+Sethhacks_Aim")
- RemoveCMD("-Sethhacks_Aim")
- RemoveCMD("+Sethhacks_Speed")
- RemoveCMD("-Sethhacks_Speed")
- RemoveCMD("Sethhacks_Menu_Toggle")
- timer.Destroy("TTT")
- end
- /*******
- RUN LAST
- ********/
- Sethhacks.Notify(dosound,white,"loaded version "..Sethhacks.version..".")
- Log("Loaded!")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement