
Key RequiredUniversal

local getinfo = getinfo or debug.getinfo
local hooked = {}
local detected, kill
setthreadidentity(2)
for i, v in getgc(true) do
if typeof(v) == "table" then
local detect_func = rawget(v, "Detected")
local kill_func = rawget(v, "Kill")
if typeof(detect_func) == "function" and not detected then
detected = detect_func
local old
old = hookfunction(detected, function(action, info, no_crash)
if action ~= "_" then
end
return true
end)
table.insert(hooked, {func = detected, old = old})
end
local vars = rawget(v, "Variables")
if vars and typeof(vars) == "table" and vars.Adonis then
kill = kill_func
end
end
end
for _, v in pairs(getgc(true)) do
if type(v) == "table" and pcall(function() return rawget(v, "indexInstance") end) then
local index_inst = rawget(v, "indexInstance")
if type(index_inst) == "table" and #index_inst >= 2 and type(index_inst[2]) == "function" then
if index_inst[1] == "kick" or index_inst[1]:lower():find("namecall") then
hookfunction(index_inst[2], function(...)
return false
end)
end
end
end
end
local plr = game:GetService("Players").LocalPlayer
local mt = getrawmetatable(game)
local old_namecall = mt.__namecall
local newcclosure = newcclosure or syn_newcclosure
setreadonly(mt, false)
mt.__namecall = newcclosure(function(self, ...)
local method = getnamecallmethod()
local args = {...}
if method == "Kick" and self == plr and not checkcaller() then
return
end
return old_namecall(self, ...)
end)
setreadonly(mt, true)
local old_getinfo = getinfo
hookfunction(getinfo, function(...)
local args = {...}
local level = args[2] or 2
if detected and level == 2 then
return coroutine.yield(coroutine.running())
end
return old_getinfo(...)
end)



doesn't work
@Azusa uh
@Azusa use good exec
@Azusa i made it for slient aim and still works on volcano
not working patched