AntiCheat Removal

    0

    0

    kkkk

    The string "okkkkkkkkk" is a valid input for the console.

    
    
    
    --------------------------------------------------------Anticheat removals--------------------
    
    ---------------------------------------
    local PATH = game:GetService("Players").LocalPlayer.PlayerScripts
    local METHOD = "Destroy" -- METHOD, could be Clone, Destroy....
    local _Check = "LocalPlayer" -- check the instance that gets fired with the METHOD
    local HowDoesThisRemoteGetFired = "RemoteEvent" -- Name of the RemoteEvent here, METHOD must be set to FireServer,
    -- HowDoesThisRemoteGetFired needs remoteReader set to true
    local CheckForIfWalkSpeed = false -- really slow, METHOD must be set to FireServer
    local slowkickdetection = false -- slow, decompiles every localscript to find kicks with variables, METHOD must be set to "Kick"
    local RemoteReader = false
    local PrintOutKicks = false -- prints out how the kick are fired
    local ANTIDECOMPILERBYPASS = true -- only for Kick method, fast if other variables are toggled
    ------------------------------------
    local constants = {}
    local functions = {}
    local wanted = {}
    local wanted2 = {}
    local newconstants = {}
    local WANTEDSCRIPT = {}
    for i,v2 in pairs(PATH:GetDescendants()) do
    if v2:IsA("LocalScript") then
    local LOCALSCRIPTD = v2
    local script = getprotos(getscriptclosure(v2))
    for index,v in pairs(script) do
    for i,b in pairs(getconstants(v)) do
      table.insert(constants, b)
      if b == METHOD then
        table.insert(functions, v)
        table.insert(newconstants, b)
        table.insert(wanted, i)
        table.insert(wanted2, index)
        print(b .. " found at:" .. v2.Name)
        table.insert(WANTEDSCRIPT, LOCALSCRIPTD)
        end
    end
    end
    end
    end
    
    local function Contains_Number(string)
    if table.concat(string:split("1")) ~= string then
      return true
    elseif table.concat(string:split("2")) ~= string then
    return true
    elseif table.concat(string:split("3")) ~= string then
      return true
    elseif table.concat(string:split("4")) ~= string then
      return true
      elseif table.concat(string:split("5")) ~= string then
      return true
      elseif table.concat(string:split("6")) ~= string then
      return true
      elseif table.concat(string:split("7")) ~= string then
      return true
      elseif table.concat(string:split("8")) ~= string then
      return true
      elseif table.concat(string:split("9")) ~= string then
      return true
      elseif table.concat(string:split("0")) ~= string then
      return true
    else
      return false
    end
    end
    
    local newwanted = {}
    for i,v in pairs(constants) do
    if v == METHOD  then
      table.insert(newwanted, i)
    end
    end
    
    function is_player_Children(string)
    for i,v in pairs(game:GetService("Players").LocalPlayer.Character:GetDescendants()) do
    if v.Name == string then
    return true
    else
        return false
    end
    end
    end
    
    
    local scripttohook = {}
    for i,v in pairs(newwanted) do
      --print(constants[newwanted[i] - 1])
      -- Team change remote event checker
      if METHOD == "FireServer" and BrickColor.new(constants[newwanted[i] - 1]) ~= BrickColor.new("Medium stone grey")  then
          warn(" Possible Team RemoteEvent found at script:", WANTEDSCRIPT[i])
      end
    
    
    if METHOD == "FireServer" and RemoteReader == true  then
      local script = decompile(getscriptclosure(WANTEDSCRIPT[i]))
    local table1 = script:split("\n")
    for i,c in pairs(table1) do
      if table.concat(c:split(HowDoesThisRemoteGetFired)) ~= c then
          warn(HowDoesThisRemoteGetFired .." gets fired as: \n\n" .. c .. "\n")
          print("Loading..." .. i.."/"..#WANTEDSCRIPT)
    end
    end
    end
    
    
    
    if METHOD == "FireServer" and CheckForIfWalkSpeed == true then
    local script = decompile(getscriptclosure(WANTEDSCRIPT[i]))
    local table1 = script:split("\n")
    for i,v in pairs(table1) do
          if table.concat(table.concat(v:split("if")):split("WalkSpeed")) ~= v then
              if WANTEDSCRIPT[i] ~= nil then
                      warn("Found if statement with walkspeed at", WANTEDSCRIPT[i], "With a remote event fired")
                      table.insert(scripttohook, WANTEDSCRIPT[i])
    end
    end
    end
    end
    
    
    if  ANTIDECOMPILERBYPASS == true then
        local warranty = constants[newwanted[i] - 1]
        local warranty2 = constants[newwanted[i] - 2]
        local warranty3 = constants[newwanted[i] - 3]
          if type(warranty) ~= "userdata" then
              warn("on the script :", WANTEDSCRIPT[i], " there is a ", METHOD, "on ",  warranty)
                if type(warranty2) ~= "userdata"  then
                    warn("on the script :", WANTEDSCRIPT[i], " there is a ", METHOD, "on ",  warranty2)
                    if type(warranty2)  ~= "userdata" and type(warranty)  ~= "userdata" then
                        warn("on the script :", WANTEDSCRIPT[i], " there is a ", METHOD, "on ", warranty .. "."..warranty2)
                    end
                    if type(warranty) ~= "userdata" and type(warranty2) ~= "userdata" and  type(warranty3) ~= "userdata" then
                        warn("on the script :", WANTEDSCRIPT[i], " there is a ", METHOD, "on ", warranty .."."..  warranty2.. ".".. warranty3)
                        end
              end
          end    
    end
    
    
    -- Destroy checker
    if  WANTEDSCRIPT[i].Parent.Name == game:GetService("Players").LocalPlayer.Name and METHOD == "Destroy" then
    if  constants[newwanted[i] - 1] == "Parent" or constants[newwanted[i] - 2] == "Parent" or is_player_Children(constants[newwanted[i] - 2]) == true or is_player_Children(constants[newwanted[i] - 1]) == true  then
        warn(METHOD," method applied on localplayer by;",  WANTEDSCRIPT[i])
        table.insert(scripttohook, WANTEDSCRIPT[i])
    end
    end
    
    
    ---- kick variable finder
    if METHOD == "Kick" and slowkickdetection == true then
    local script = decompile(getscriptclosure(WANTEDSCRIPT[i]))
    local table1 = script:split("\n")
      if table.concat(script:split(" ")) == "" then
        warn("              ANTI DECOMPILER DETECTED" .. " on" , WANTEDSCRIPT[i], " with KICK method")
    else
        print()
    end
    for i,v in pairs(table1) do
      if table.concat(v:split("Kick")) ~= v then
          if table.concat(v:split("LocalPlayer")) ~= v then
              if WANTEDSCRIPT[i] ~= nil then
              warn("Kick variable fired on LocalPlayer found at:", WANTEDSCRIPT[i])
              print("Loading..." .. i.."/"..#WANTEDSCRIPT)
              table.insert(scripttohook, WANTEDSCRIPT[i])
              end
              end
      end
    end
    end
    
    
    if METHOD == "Kick" and PrintOutKicks == true then
        local script = decompile(getscriptclosure(WANTEDSCRIPT[i]))
        if table.concat(script:split(" ")) == "" then
        warn("                 ANTI DECOMPILER DETECTED" .. " on" , WANTEDSCRIPT[i], " with KICK method")
    else
        print()
    end
    local table1 = script:split("\n")
    for i2,v in pairs(table1) do
        if table.concat(v:split("Kick"))  ~= v or table.concat(v:split("kick")) then
                warn("? ".."PrintOutKicks Debugger here: " ..v .. "  at localscript", WANTEDSCRIPT[i], "?")
              
        
    end
    end
    end
    
    -- Kick checker
    if  WANTEDSCRIPT[i].Parent.Name == game:GetService("Players").LocalPlayer.Name and METHOD == "Kick" then
    if  constants[newwanted[i] - 1] == "Parent" or constants[newwanted[i] - 2] == "Parent" or is_player_Children(constants[newwanted[i] - 2]) == true or is_player_Children(constants[newwanted[i] - 1]) == true or Contains_Number(constants[newwanted[i] - 1]) == true  then
        warn(METHOD," method applied on localplayer by;",  WANTEDSCRIPT[i])
        table.insert(scripttohook, WANTEDSCRIPT[i])
    end
    end
    
    print(WANTEDSCRIPT[i],METHOD .." at function",getinfo(functions[i]).name, functions[i])
    -- NOTE: makes part of the loop
    if constants[newwanted[i] - 2] == _Check or constants[newwanted[i] - 1] == _Check then
      warn(METHOD, "on " .. _Check .. " found!", "script name:" ,WANTEDSCRIPT[i])
              table.insert(scripttohook, WANTEDSCRIPT[i])
    end
    
    end
    
    
    print("\n\n".. #newwanted.. " " .. METHOD .. " constants " .. "Found!" .. " On a total of: " .. #constants .. " constants" .. "\n")
    
    for i,v in pairs(scripttohook) do
    local X;
    X = hookmetamethod(v, "__namecall",function(self,...)
    local args = {...};
    local method = getnamecallmethod()
    if method == METHOD  then
      return
    end
    return X(self,...)
    end)
    end
    
    
    Codiga Logo
    Codiga Hub
    • Rulesets
    • Playground
    • Snippets
    • Cookbooks
    soc-2 icon

    We are SOC-2 Compliance Certified

    G2 high performer medal

    Codiga – All rights reserved 2022.