Aimbot Lua
Aimbot Lua
20"
if UAIM then
UAIM:Destroy()
end
local bodyparts = {
"Head","UpperTorso","LowerTorso","LeftUpperArm","LeftLowerArm","LeftHand","Ri
ghtUpperArm","RightLowerArm","RightHand","LeftUpperLeg","LeftLowerLeg","LeftFoot","
RightUpperLeg","RightLowerLeg","RightFoot",
"Torso","Left Arm","Right Arm","Left Leg","Right Leg",
"Chest","Hips","LeftArm","LeftForearm","RightArm","RightForearm","LeftLeg","L
eftForeleg","RightLeg","RightForeleg"
}
local ads = false
local olddelta = uis.MouseDeltaSensitivity
local triggering = false
local mousedown = false
local Ignore = {camera}
local gids = { -- game ids
['arsenal'] = 111958650,
['pf'] = 113491250,
['pft'] = 115272207, -- pf test place
['pfu'] = 1256867479, -- pf unstable branch
['bb'] = 1168263273,
['rp'] = 2162282815, -- rush point
['mm2'] = 66654135
}
local getEntry, raycast, ts, characters, teams, rp
if (GameId == gids.pf) or (GameId == gids.pft) or (GameId == gids.pfu) then
local require = rawget(getrenv().shared, "require")
if require == nil then
setclipboard('loadstring(game:HttpGet("https://raw.githubusercontent.com/
Spoorloos/scripts/main/pf-actor-bypass.lua"))()')
local a = Instance.new("Message", game.CoreGui)
a.Text = "-- Universal Aimbot Notice --\n\nA script has been copied to
your clipboard.\nPlease put this script in your exploit's autoexec folder and
rejoin the game.\n(this script is required to bypass the new update)\n\nbypass was
created by Spoorloos"
return
end
local _cache = rawget(debug.getupvalue(require, 1), "_cache")
local ReplicationInterface = rawget(rawget(_cache, "ReplicationInterface"),
"module")
getEntry = rawget(ReplicationInterface, "getEntry")
elseif GameId == gids.bb then
for _,v in next, getgc(true) do
if typeof(v) == "table" and rawget(v, "InitProjectile") and rawget(v,
"TS") then
ts = rawget(v, "TS")
characters = ts.Characters
teams = ts.Teams
end
end
elseif GameId == gids.rp then
rp = true
-- CREDIT TO THIS DUDE FOR CRASH FIX https://v3rmillion.net/showthread.php?
pid=8248169#pid8248169
--loadstring(game:HttpGet("https://raw.githubusercontent.com/Github-Account-
39021832/Rush-Point-Fix-Crash/main/src.lua"))()
end
local oldfuncs = {}
function IsAlive(plr)
local char = plr.Character
local humanoid = char and char:FindFirstChild("Humanoid")
if humanoid and humanoid.Health > 0 then
return char
end
return false
end
function GetChar(plr)
return plr.Character
end
function GetTeam(plr)
return plr.Team
end
function IsFFA()
local t = {}
for _,v in next, players:GetPlayers() do
local team = GetTeam(v)
if team == nil then
return true
end
function ClosestPlayer()
mouse = uis:GetMouseLocation()
local plr = nil
local closest = mathhuge
local myteam = GetTeam(player)
for _,v in next, ss.Priority do
v = players:FindFirstChild(v)
if v and IsAlive(v) and InFov(v) then
return v
end
end
for _,v in next, players:GetPlayers() do
if v ~= player then
local char = GetChar(v)
if char ~= nil then
local cf = char:GetPivot()
local vector, inViewport = WorldToViewportPoint(camera,
cf.Position)
if inViewport then
local mag = (Vector2new(mouse.X, mouse.Y) -
Vector2new(vector.X, vector.Y)).Magnitude
local team = GetTeam(v)
if mag < closest and ((team ~= nil and team ~=
myteam) or team == nil or not ss.TeamCheck) then
plr = v
closest = mag
end
end
end
end
end
return plr
end
local fov
function InFov(plr,Fov)
mouse = uis:GetMouseLocation()
if IsAlive(plr) then
local char = GetChar(plr)
if ts and char:FindFirstChild("Body") then
char = char.Body
end
local target = char:FindFirstChild(Aimbot.TargetPart)
if target then
local _, inViewport = WorldToViewportPoint(camera,
target.Position)
if (FovCircle.Enabled or AimAssist.Enabled) and inViewport then
for _,v in next, char:GetChildren() do
if table.find(bodyparts, v.Name) and
v.ClassName:find("Part") then
local vector2, inViewport2 =
WorldToViewportPoint(camera, v.Position)
if inViewport2 and (Vector2new(mouse.X,
mouse.Y) - Vector2new(vector2.X, vector2.Y)).Magnitude <= (Fov or fov.Radius or
FovCircle.Radius) then
return true
end
end
end
elseif not FovCircle.Enabled and IsAlive(plr) then
return true
end
else
return false
end
end
return false
end
do -- compatibility
if getEntry then -- phantom forces
local playercache = {}
local function GetPlayerObject(plr)
local cached = playercache[plr]
if cached then
return cached
end
GetChar = function(plr)
if plr == player then return nil end
local obj = GetPlayerObject(plr)
if obj ~= nil then
local thirdPersonObject = obj._thirdPersonObject
if thirdPersonObject then
return
thirdPersonObject:getCharacterHash().head.Parent
end
end
return nil
end
IsAlive = GetChar
end
oldfuncs.alive = IsAlive
oldfuncs.character = GetChar
oldfuncs.team = GetTeam
oldfuncs.ffa = IsFFA
oldfuncs.closest = ClosestPlayer
oldfuncs.visible = IsVisible
oldfuncs.fov = InFov
function IsWhitelisted(plr)
if table.find(ss.Whitelisted, (plr.Name or plr.UserId)) then
return true
end
return false
end
fov = Drawingnew("Circle")
fov.Visible = true
fov.Transparency = 1
fov.Color = fromRGB(255,255,255)
fov.Thickness = 1
fov.NumSides = 64
fov.Radius = 100
fov.Filled = false
-- crosshair
local t, b, r, l, chdestroyed = Drawingnew("Line"), Drawingnew("Line"),
Drawingnew("Line"), Drawingnew("Line"), false
for _,v in next, {t, b, r, l} do
pcall(function()
v.ZIndex = 100
end)
end
function updatecrosshair(s)
for _,v in next, {t, b, r, l} do
v.Visible = s.Enabled
end
if chdestroyed or not s.Enabled then return end
local center = camera.ViewportSize / 2
center = Vector2new(mathfloor(center.X), mathfloor(center.Y))
local length = s.Length
local offset = s.Offset
mouse = uis:GetMouseLocation()
local min, max, dyn, size = AimAssist.MinFov, AimAssist.MaxFov,
AimAssist.DynamicFov, camera.ViewportSize
local bot, assist = Aimbot.Enabled, AimAssist.Enabled
if ads then
mult /= 1.8
end
if AimAssist.SlowSensitivity then
mult *= factor
end
str *= mult
str /= 1000
mousemoverel((vector.X - mouse.X) * str,
(vector.Y - mouse.Y) * str * 1.2)
end
elseif assist and not inmaxfov then
uis.MouseDeltaSensitivity = olddelta
end
end
elseif assist and not InFov(plr, max) then
uis.MouseDeltaSensitivity = olddelta
end
end
if FovCircle.Enabled then
fov.Position = mouse
fov.NumSides = FovCircle.NumSides
fov.Radius = FovCircle.Radius
fov.Transparency = FovCircle.Transparency
fov.Color = FovCircle.Color
if FovCircle.Dynamic then
fov.Radius = FovCircle.Radius / (camera.FieldOfView / 80)
end
else
fov.Transparency = 0
end
fov2.Position = mouse
fov2.Radius = max
updatecrosshair(ss.Crosshair or defaultcrosshair)
end
--local conn3 = RunService.RenderStepped:Connect(update)
local name = ""
for _ = 1, math.random(16, 24) do
name ..= string.char(math.random(97, 122))
end
RunService:BindToRenderStep(name, 0, update)
local conn4 = players.PlayerAdded:Connect(function(plr)
if ss.WhitelistFriends and player:IsFriendsWith(plr.UserId) then
tableinsert(ss.Whitelisted, plr.UserId)
end
end)
if typeof(ss.Keybind) == "EnumItem" then
ss.Keybind = ss.Keybind.Name
end
if typeof(ss.ToggleKey) == "EnumItem" then
ss.ToggleKey = ss.ToggleKey.Name
end
function ValidType(type)
return type == "Other" or ss[type] ~= nil
end
function ValidOption(type,option)
return (type == "Other" and ss[option] ~= nil) or ss[type][option] ~= nil
end
function aimbot:Toggle(type)
assert(ValidType(type),"Universal Aimbot: bad argument to #1 'Toggle'
(Invalid Type)")
if type == ("Whitelisted" or "Ignore") then
ss[type] = not ss[type]
else
ss[type].Enabled = not ss[type].Enabled
end
end
function aimbot:Get(type,option)
assert(ValidType(type),"Universal Aimbot: bad argument to #1 'Get' (Invalid
Type)")
assert(ValidOption(type,option),"Universal Aimbot: bad argument to #2 'Get'
(Invalid Option)")
if type == "Other" then
return ss[option]
end
return ss[type][option]
end
function aimbot:Set(type,option,value)
assert(ValidType(type),"Universal Aimbot: bad argument to #1 'Set' (Invalid
Type)")
assert(ValidOption(type,option),"Universal Aimbot: bad argument to #2 'Set'
(Invalid Option)")
assert(value ~= nil,"Universal Aimbot: bad argument to #3 'Set'")
if type == "Other" then
ss[option] = value
else
ss[type][option] = value
end
end
function aimbot:SetFunction(a,f)
assert(typeof(a) == "string",("Universal Aimbot: bad argument to #1
'SetFunction' (string expected, got %s)"):format(typeof(a)))
assert(typeof(f) == "function",("Universal Aimbot: bad argument to #2
'SetFunction' (function expected, got %s)"):format(typeof(f)))
a = lower(a)
if a == "alive" then
IsAlive = f
elseif a == "character" then
GetChar = f
elseif a == "team" then
GetTeam = f
elseif a == "ffa" then
IsFFA = f
elseif a == "closest" then
ClosestPlayer = f
elseif a == "visible" then
IsVisible = f
end
end
function aimbot:ResetFunction(a)
assert(typeof(a) == "string",("Universal Aimbot: bad argument to #1
'ResetFunction' (string expected, got %s)"):format(typeof(a)))
a = lower(a)
assert(oldfuncs[a] ~= nil,"Universal Aimbot: bad argument to #1
'ResetFunction' (invalid function)")
local f = oldfuncs[a]
if a == "alive" then
IsAlive = f
elseif a == "character" then
GetChar = f
elseif a == "team" then
GetTeam = f
elseif a == "ffa" then
IsFFA = f
elseif a == "closest" then
ClosestPlayer = f
elseif a == "visible" then
IsVisible = f
end
end
function aimbot:Destroy()
if destroyed then return end
conn1:Disconnect()
conn2:Disconnect()
--conn3:Disconnect()
conn4:Disconnect()
RunService:UnbindFromRenderStep(name)
removefov()
removecrosshair()
uis.MouseDeltaSensitivity = olddelta
destroyed = true
end
getgenv().UAIM = aimbot
return aimbot