Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Made By Me (For Making The ESP And Finishing The Script)
- --Credit To: Bditt (For Making The Base Of The Aimbot)
- --
- --If you change your camera sensitivity in the Roblox Setting (Press ESC), you are basically changing how smooth the aimbot looks.
- --The lower the sensitivity, the more legit it looks and more work you have to do to aim.
- --THEY NEED TO BE VISIBLE TO LOCK ONTO THEM!
- --
- --T = Toggles aimbot.
- --Right Click = Locks on.
- --M = Toggles teamcheck.
- --O = Toggles visibility check.
- --
- --
- --Hold Right Click to lock on.
- --
- --THIS ONLY WORKS FOR PROTOSMASHER, VISENYA, ELYSIAN, Synapse, AND HEXUS
- --
- --If they are directly behind you, it will make you aim lock in the wrong direction.
- local safe = setmetatable({}, { __index = function(_, k)
- return game:GetService(k)
- end
- })
- local movethemouse = mousemoverel or Input.MoveMouse --Mouse Move Function.
- local leftclickme = nil --Auto Shoot Key Press Thingy.
- local aimbotting = true -- Toggles.
- local autoshoot = false
- local teamcheck = true
- local visiblecheck = true
- _G.xaimoffset = 0 --_G.xaimoffset = -25
- _G.maxdistfromcross = 100
- local cam = safe.Workspace.CurrentCamera -- Current Camera
- local lp = safe.Players.LocalPlayer -- Local Player
- local lpc = safe.Players.LocalPlayer.Character -- Local Player Character
- local wtos = function(v) -- World To Screen
- return cam:WorldToScreenPoint(v)
- end
- local distFromCenter = function(x, y)
- local vps = cam.ViewportSize -- Get ViewPortSize.
- local vpsx = vps.X
- local vpsy = vps.Y
- local screencenterx = vpsx/2
- local screencentery = vpsy/2
- local xdist = (x - screencenterx) -- X Distance From Mid Screen.
- local ydist = (y - screencentery) -- Y Distance From Mid Screen.
- local Hypotenuse = math.sqrt(math.pow(xdist, 2) + math.pow(ydist, 2))
- return Hypotenuse
- end
- local function inlos(p, ...) -- In line of site?
- return #cam:GetPartsObscuringTarget({p}, {cam, lp.Character, ...}) == 0
- end
- local getclosestPlayer = function() -- Checks the closest player based on Hypotenuse.
- local plrs, v = safe.Players:GetPlayers()
- local maxdist = 75
- local dist = math.huge
- local plr = "none"
- for i = 1, #plrs do
- v = plrs[i]
- if v ~= safe.Players.LocalPlayer then
- if v.Character then
- if v.TeamColor ~= safe.Players.LocalPlayer.TeamColor and teamcheck then
- local hpos = wtos(v.Character.Head.Position)
- local idist = distFromCenter(hpos.X, hpos.Y)
- if idist < dist and idist < _G.maxdistfromcross then
- dist = idist
- plr = v
- end
- elseif not teamcheck then
- local hpos = wtos(v.Character.Head.Position)
- local idist = distFromCenter(hpos.X, hpos.Y)
- if idist < dist and idist < _G.maxdistfromcross then
- dist = idist
- plr = v
- end
- end
- end
- end
- end
- return plr, dist
- end
- local AimAt = function(x, y)
- local vps = cam.ViewportSize
- local vpsx = vps.X
- local vpsy = vps.Y
- local screencenterx = vpsx/2
- local screencentery = vpsy/2
- local aimspeed = 5
- local aimatx
- local aimaty
- if x ~= 0 then
- if x > screencenterx then
- aimatx = -(screencenterx - x)
- aimatx = aimatx/aimspeed
- if aimatx + screencenterx > screencenterx * 2 then
- aimatx = 0
- end
- end
- if x < screencenterx then
- aimatx = x - screencenterx
- aimatx = aimatx/aimspeed
- if aimatx + screencenterx < 0 then
- aimatx = 0
- end
- end
- end
- if y ~= 0 then
- if y > screencentery then
- aimaty = -(screencentery - y)
- aimaty = aimaty/aimspeed
- if aimaty + screencentery > screencentery * 2 then
- aimaty = 0
- end
- end
- if y < screencentery then
- aimaty = y - screencentery
- aimaty = aimaty/aimspeed
- if aimaty + screencentery < 0 then
- aimaty = 0
- end
- end
- end
- return aimatx, aimaty
- end
- local MouseTests = function()
- local player = safe.Players.LocalPlayer
- local mouse = player:GetMouse()
- local screensizex = mouse.ViewSizeX
- local screensizey = mouse.ViewSizeY
- local midx = screensizex/2
- local midy = screensizey/2
- local mousex = mouse.X
- local mousey = mouse.Y
- local moveamountx = midx - mousex
- local moveamounty = midy - mousey
- movethemouse(moveamountx, moveamounty)
- local camera = safe.Workspace.Camera
- local newmousex = safe.Players.LocalPlayer:GetMouse().X
- local newmousey = safe.Players.LocalPlayer:GetMouse().Y
- local closestplayer = getclosestPlayer()
- if player.Character.Humanoid.Health > 0 then
- if closestplayer ~= "none" then
- if inlos(closestplayer.Character.Head.Position, closestplayer.Character) and visiblecheck then
- local closesthead = closestplayer.Character.Head
- local p = camera:WorldToScreenPoint(closesthead.Position)
- local xdistancetohead, ydistancetohead = AimAt(p.X + _G.xaimoffset, p.Y + 32)
- movethemouse(xdistancetohead, ydistancetohead)
- if autoshoot then
- movethemouse(xdistancetohead, ydistancetohead)
- wait(1)
- Input.LeftClick(MOUSE_DOWN)
- wait()
- end
- elseif not visiblecheck then
- local closesthead = closestplayer.Character.Head
- local p = camera:WorldToScreenPoint(closesthead.Position)
- local xdistancetohead, ydistancetohead = AimAt(p.X + _G.xaimoffset, p.Y + 32)
- movethemouse(xdistancetohead, ydistancetohead)
- end
- end
- end
- end
- game:GetService('RunService').Stepped:connect(function()
- if aimbotting then
- --MouseTests()
- end
- end)
- local plr = safe.Players.LocalPlayer
- local mouse = plr:GetMouse()
- mouse.KeyDown:connect(function(key)
- if key == "t" then
- aimbotting = not aimbotting
- print("Aimbotting: " .. tostring(aimbotting))
- MouseTests()
- end
- if key == "o" then
- visiblecheck = not visiblecheck
- print("Visible Check: " .. tostring(visiblecheck))
- end
- if key == "m" then
- teamcheck = not teamcheck
- print("Team Check: " .. tostring(teamcheck))
- end
- end)
- print("Pixel Aimbot Loaded!")
- MB2Held = false
- function onKeyPress(inputObject,gameProcessed)
- if inputObject.UserInputType == Enum.UserInputType.MouseButton2 then
- MB2Held = true
- while MB2Held do
- if aimbotting then
- MouseTests()
- end
- wait()
- end
- end
- end
- function onKeyRelease(inputObject,gameProcessed)
- if inputObject.UserInputType == Enum.UserInputType.MouseButton2 then
- MB2Held = false
- end
- end
- game:GetService("UserInputService").InputBegan:connect(onKeyPress)
- game:GetService("UserInputService").InputEnded:connect(onKeyRelease)
- trans = 0.5
- --team1 = BackgroundColor3.new("Institutional white")
- --team2 = BackgroundColor3.new("Really red")
- while true do
- for i,l in pairs(game:GetService("Players"):GetChildren()) do
- print (game:GetService("Players").LocalPlayer.Team)
- if l ~= game:GetService("Players").LocalPlayer then
- for i,v in pairs(l.Character:GetChildren()) do
- if v.ClassName == "MeshPart" or "Part" and v.Name ~= "HumanoidRootPart" then
- --
- xd = Instance.new("SurfaceGui")
- xd.Face = Enum.NormalId.Back
- xd.Parent = v
- xd.AlwaysOnTop = true
- Frame = Instance.new("Frame")
- Frame.Parent = xd
- Frame.BackgroundColor3 = Color3.new(1, 1, 1)
- Frame.Size = UDim2.new(1, 0, 1, 0)
- Frame.BackgroundTransparency = trans
- if l.Team ~= game:GetService("Players").LocalPlayer.Team then
- Frame.BackgroundColor3 = Color3.new(17,17 ,17)
- else Frame.BackgroundColor3 = Color3.new(0, 255, 255)
- end
- --
- xd = Instance.new("SurfaceGui")
- xd.Face = Enum.NormalId.Bottom
- xd.Parent = v
- xd.AlwaysOnTop = true
- Frame = Instance.new("Frame")
- Frame.Parent = xd
- Frame.BackgroundColor3 = Color3.new(1, 1, 1)
- Frame.Size = UDim2.new(1, 0, 1, 0)
- Frame.BackgroundTransparency = trans
- if l.Team ~= game:GetService("Players").LocalPlayer.Team then
- Frame.BackgroundColor3 = Color3.new(17,17 ,17)
- else Frame.BackgroundColor3 = Color3.new(0, 255, 255)
- end
- --
- xd = Instance.new("SurfaceGui")
- xd.Face = Enum.NormalId.Front
- xd.Parent = v
- xd.AlwaysOnTop = true
- Frame = Instance.new("Frame")
- Frame.Parent = xd
- Frame.BackgroundColor3 = Color3.new(1, 1, 1)
- Frame.Size = UDim2.new(1, 0, 1, 0)
- Frame.BackgroundTransparency = trans
- if l.Team ~= game:GetService("Players").LocalPlayer.Team then
- Frame.BackgroundColor3 = Color3.new(17,17 ,17)
- else Frame.BackgroundColor3 = Color3.new(0, 255, 255)
- end
- --
- xd = Instance.new("SurfaceGui")
- xd.Face = Enum.NormalId.Left
- xd.Parent = v
- xd.AlwaysOnTop = true
- Frame = Instance.new("Frame")
- Frame.Parent = xd
- Frame.BackgroundColor3 = Color3.new(1, 1, 1)
- Frame.Size = UDim2.new(1, 0, 1, 0)
- Frame.BackgroundTransparency = trans
- if l.Team ~= game:GetService("Players").LocalPlayer.Team then
- Frame.BackgroundColor3 = Color3.new(17,17 ,17)
- else Frame.BackgroundColor3 = Color3.new(0, 255, 255)
- end
- --
- xd = Instance.new("SurfaceGui")
- xd.Face = Enum.NormalId.Right
- xd.Parent = v
- xd.AlwaysOnTop = true
- Frame = Instance.new("Frame")
- Frame.Parent = xd
- Frame.BackgroundColor3 = Color3.new(1, 1, 1)
- Frame.Size = UDim2.new(1, 0, 1, 0)
- Frame.BackgroundTransparency = trans
- if l.Team ~= game:GetService("Players").LocalPlayer.Team then
- Frame.BackgroundColor3 = Color3.new(17,17 ,17)
- else Frame.BackgroundColor3 = Color3.new(0, 255, 255)
- end
- --
- xd = Instance.new("SurfaceGui")
- xd.Face = Enum.NormalId.Top
- xd.Parent = v
- xd.AlwaysOnTop = true
- Frame = Instance.new("Frame")
- Frame.Parent = xd
- Frame.BackgroundColor3 = Color3.new(1, 1, 1)
- Frame.Size = UDim2.new(1, 0, 1, 0)
- Frame.BackgroundTransparency = trans
- if l.Team ~= game:GetService("Players").LocalPlayer.Team then
- Frame.BackgroundColor3 = Color3.new(17,17 ,17)
- else Frame.BackgroundColor3 = Color3.new(0, 255, 255)
- end
- print (v.Name)
- end
- end
- end
- end
- wait (5)
- for i,v in pairs (game:GetService("Players"):GetChildren()) do
- for i,k in pairs(v.Character:GetChildren()) do
- for i,l in pairs(k:GetChildren()) do
- if l.ClassName == "SurfaceGui" then
- l:Remove()
- end
- end
- end
- end
- end
Add Comment
Please, Sign In to add comment