Advertisement
polleser

Aimbot by Polleser | Beaks

Apr 20th, 2025
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.35 KB | None | 0 0
  1. local Players = game:GetService("Players")
  2. local RunService = game:GetService("RunService")
  3. local UserInputService = game:GetService("UserInputService")
  4. local LocalPlayer = Players.LocalPlayer
  5. local Camera = workspace.CurrentCamera
  6.  
  7. -- Configuration
  8. local aimbotEnabled = false
  9. local silentAimEnabled = false
  10. local currentTarget = nil
  11. local fovRadius = 120
  12. local fovVisible = true
  13. local lockToPivot = true
  14. local smoothness = 0.25 -- Lower values = smoother aim
  15. local maxDistance = 500 -- Max targeting distance
  16.  
  17. -- Create GUI
  18. local gui = Instance.new("ScreenGui", LocalPlayer:WaitForChild("PlayerGui"))
  19. gui.Name = "Aimbot by Polleser"
  20. gui.ResetOnSpawn = false
  21.  
  22. -- Main Frame
  23. local mainFrame = Instance.new("Frame")
  24. mainFrame.Name = "MainFrame"
  25. mainFrame.Size = UDim2.new(0, 220, 0, 250)
  26. mainFrame.Position = UDim2.new(0.02, 0, 0.3, 0)
  27. mainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
  28. mainFrame.BackgroundTransparency = 0.3
  29. mainFrame.Parent = gui
  30.  
  31. local mainCorner = Instance.new("UICorner")
  32. mainCorner.CornerRadius = UDim.new(0, 8)
  33. mainCorner.Parent = mainFrame
  34.  
  35. -- Title and Draggable Area
  36. local title = Instance.new("TextLabel")
  37. title.Name = "Title"
  38. title.Text = "SILENT BIRD AIMBOT (OP)"
  39. title.Size = UDim2.new(1, -40, 0, 30)
  40. title.Position = UDim2.new(0, 10, 0, 5)
  41. title.BackgroundTransparency = 1
  42. title.TextColor3 = Color3.fromRGB(255, 255, 255)
  43. title.Font = Enum.Font.GothamBold
  44. title.TextSize = 18
  45. title.TextXAlignment = Enum.TextXAlignment.Left
  46. title.Parent = mainFrame
  47.  
  48. -- Close Button
  49. local closeButton = Instance.new("TextButton")
  50. closeButton.Name = "CloseButton"
  51. closeButton.Text = "X"
  52. closeButton.Size = UDim2.new(0, 30, 0, 30)
  53. closeButton.Position = UDim2.new(1, -35, 0, 5)
  54. closeButton.BackgroundColor3 = Color3.fromRGB(255, 50, 50)
  55. closeButton.TextColor3 = Color3.fromRGB(255, 255, 255)
  56. closeButton.Font = Enum.Font.GothamBold
  57. closeButton.Parent = mainFrame
  58.  
  59. local closeCorner = Instance.new("UICorner")
  60. closeCorner.CornerRadius = UDim.new(0, 6)
  61. closeCorner.Parent = closeButton
  62.  
  63. -- Toggle Buttons
  64. local function createToggle(name, text, yPos, default)
  65. local toggle = Instance.new("TextButton")
  66. toggle.Name = name
  67. toggle.Text = text
  68. toggle.Size = UDim2.new(0.9, 0, 0, 30)
  69. toggle.Position = UDim2.new(0.05, 0, yPos, 0)
  70. toggle.BackgroundColor3 = default and Color3.fromRGB(50, 255, 50) or Color3.fromRGB(255, 50, 50)
  71. toggle.TextColor3 = Color3.fromRGB(255, 255, 255)
  72. toggle.Font = Enum.Font.Gotham
  73. toggle.TextScaled = true
  74. toggle.Parent = mainFrame
  75.  
  76. local corner = Instance.new("UICorner")
  77. corner.CornerRadius = UDim.new(0, 6)
  78. corner.Parent = toggle
  79.  
  80. return toggle
  81. end
  82.  
  83. local aimbotToggle = createToggle("AimbotToggle", "AIMBOT: OFF", 0.18, false)
  84. local silentToggle = createToggle("SilentToggle", "SILENT AIM: OFF", 0.31, false)
  85. local pivotToggle = createToggle("PivotToggle", "PIVOT LOCK: ON", 0.44, true)
  86. pivotToggle.BackgroundColor3 = Color3.fromRGB(50, 150, 255)
  87. local fovToggle = createToggle("FOVToggle", "SHOW FOV: ON", 0.57, true)
  88. fovToggle.BackgroundColor3 = Color3.fromRGB(50, 255, 150)
  89.  
  90. -- FOV Slider
  91. local fovSlider = Instance.new("TextLabel")
  92. fovSlider.Name = "FOVSliderLabel"
  93. fovSlider.Text = "FOV SIZE: "..fovRadius
  94. fovSlider.Size = UDim2.new(0.9, 0, 0, 20)
  95. fovSlider.Position = UDim2.new(0.05, 0, 0.7, 0)
  96. fovSlider.BackgroundTransparency = 1
  97. fovSlider.TextColor3 = Color3.fromRGB(255, 255, 255)
  98. fovSlider.Font = Enum.Font.Gotham
  99. fovSlider.TextScaled = true
  100. fovSlider.Parent = mainFrame
  101.  
  102. local sliderFrame = Instance.new("Frame")
  103. sliderFrame.Name = "SliderFrame"
  104. sliderFrame.Size = UDim2.new(0.9, 0, 0, 10)
  105. sliderFrame.Position = UDim2.new(0.05, 0, 0.78, 0)
  106. sliderFrame.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
  107. sliderFrame.Parent = mainFrame
  108.  
  109. local sliderCorner = Instance.new("UICorner")
  110. sliderCorner.CornerRadius = UDim.new(0, 4)
  111. sliderCorner.Parent = sliderFrame
  112.  
  113. local sliderFill = Instance.new("Frame")
  114. sliderFill.Name = "SliderFill"
  115. sliderFill.Size = UDim2.new((fovRadius-20)/280, 0, 1, 0)
  116. sliderFill.Position = UDim2.new(0, 0, 0, 0)
  117. sliderFill.BackgroundColor3 = Color3.fromRGB(0, 150, 255)
  118. sliderFill.Parent = sliderFrame
  119.  
  120. local sliderCorner2 = Instance.new("UICorner")
  121. sliderCorner2.CornerRadius = UDim.new(0, 4)
  122. sliderCorner2.Parent = sliderFill
  123.  
  124. local sliderButton = Instance.new("TextButton")
  125. sliderButton.Name = "SliderButton"
  126. sliderButton.Text = ""
  127. sliderButton.Size = UDim2.new(0, 20, 2, 0)
  128. sliderButton.Position = UDim2.new((fovRadius-20)/280, -10, 0.5, 0)
  129. sliderButton.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  130. sliderButton.Parent = sliderFrame
  131.  
  132. local sliderBtnCorner = Instance.new("UICorner")
  133. sliderBtnCorner.CornerRadius = UDim.new(0, 4)
  134. sliderBtnCorner.Parent = sliderButton
  135.  
  136. -- FOV Circle
  137. local fovCircle = Instance.new("Frame")
  138. fovCircle.Name = "FOVCircle"
  139. fovCircle.Size = UDim2.new(0, fovRadius*2, 0, fovRadius*2)
  140. fovCircle.Position = UDim2.new(0.5, -fovRadius, 0.5, -fovRadius)
  141. fovCircle.BackgroundTransparency = 0.9
  142. fovCircle.BackgroundColor3 = Color3.fromRGB(0, 150, 255)
  143. fovCircle.BorderSizePixel = 0
  144. fovCircle.Visible = fovVisible
  145. fovCircle.Parent = gui
  146.  
  147. local circleCorner = Instance.new("UICorner")
  148. circleCorner.CornerRadius = UDim.new(1, 0)
  149. circleCorner.Parent = fovCircle
  150.  
  151. -- GUI Interactions
  152. local dragging = false
  153. local dragStartPos = Vector2.new(0, 0)
  154. local frameStartPos = Vector2.new(0, 0)
  155.  
  156. mainFrame.InputBegan:Connect(function(input)
  157. if input.UserInputType == Enum.UserInputType.MouseButton1 then
  158. dragging = true
  159. dragStartPos = Vector2.new(input.Position.X, input.Position.Y)
  160. frameStartPos = Vector2.new(mainFrame.AbsolutePosition.X, mainFrame.AbsolutePosition.Y)
  161. end
  162. end)
  163.  
  164. mainFrame.InputEnded:Connect(function(input)
  165. if input.UserInputType == Enum.UserInputType.MouseButton1 then
  166. dragging = false
  167. end
  168. end)
  169.  
  170. UserInputService.InputChanged:Connect(function(input)
  171. if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then
  172. local delta = Vector2.new(input.Position.X, input.Position.Y) - dragStartPos
  173. mainFrame.Position = UDim2.new(0, frameStartPos.X + delta.X, 0, frameStartPos.Y + delta.Y)
  174. end
  175. end)
  176.  
  177. -- Slider functionality
  178. sliderButton.MouseButton1Down:Connect(function()
  179. local connection
  180. connection = UserInputService.InputChanged:Connect(function(input)
  181. if input.UserInputType == Enum.UserInputType.MouseMovement then
  182. local xPos = math.clamp(input.Position.X - sliderFrame.AbsolutePosition.X, 0, sliderFrame.AbsoluteSize.X)
  183. local ratio = xPos / sliderFrame.AbsoluteSize.X
  184. fovRadius = math.floor(20 + ratio * 280)
  185. fovSlider.Text = "FOV SIZE: "..fovRadius
  186. sliderFill.Size = UDim2.new(ratio, 0, 1, 0)
  187. sliderButton.Position = UDim2.new(ratio, -10, 0.5, 0)
  188. fovCircle.Size = UDim2.new(0, fovRadius*2, 0, fovRadius*2)
  189. fovCircle.Position = UDim2.new(0.5, -fovRadius, 0.5, -fovRadius)
  190. end
  191. end)
  192.  
  193. UserInputService.InputEnded:Connect(function(input)
  194. if input.UserInputType == Enum.UserInputType.MouseButton1 then
  195. connection:Disconnect()
  196. end
  197. end)
  198. end)
  199.  
  200. -- Toggle buttons
  201. aimbotToggle.MouseButton1Click:Connect(function()
  202. aimbotEnabled = not aimbotEnabled
  203. aimbotToggle.Text = "AIMBOT: "..(aimbotEnabled and "ON" or "OFF")
  204. aimbotToggle.BackgroundColor3 = aimbotEnabled and Color3.fromRGB(50, 255, 50) or Color3.fromRGB(255, 50, 50)
  205. if not aimbotEnabled then currentTarget = nil end
  206. end)
  207.  
  208. silentToggle.MouseButton1Click:Connect(function()
  209. silentAimEnabled = not silentAimEnabled
  210. silentToggle.Text = "SILENT AIM: "..(silentAimEnabled and "ON" or "OFF")
  211. silentToggle.BackgroundColor3 = silentAimEnabled and Color3.fromRGB(50, 255, 50) or Color3.fromRGB(255, 50, 50)
  212. end)
  213.  
  214. pivotToggle.MouseButton1Click:Connect(function()
  215. lockToPivot = not lockToPivot
  216. pivotToggle.Text = "PIVOT LOCK: "..(lockToPivot and "ON" or "OFF")
  217. pivotToggle.BackgroundColor3 = lockToPivot and Color3.fromRGB(50, 150, 255) or Color3.fromRGB(150, 150, 150)
  218. end)
  219.  
  220. fovToggle.MouseButton1Click:Connect(function()
  221. fovVisible = not fovVisible
  222. fovToggle.Text = "SHOW FOV: "..(fovVisible and "ON" or "OFF")
  223. fovToggle.BackgroundColor3 = fovVisible and Color3.fromRGB(50, 255, 150) or Color3.fromRGB(150, 150, 150)
  224. fovCircle.Visible = fovVisible
  225. end)
  226.  
  227. closeButton.MouseButton1Click:Connect(function()
  228. gui:Destroy()
  229. end)
  230.  
  231. -- Get the actual pivot point of a model
  232. local function getModelPivot(model)
  233. if model:IsA("BasePart") then
  234. return model.CFrame
  235. elseif model:IsA("Model") then
  236. local primaryPart = model.PrimaryPart or model:FindFirstChild("HumanoidRootPart") or model:FindFirstChildWhichIsA("BasePart")
  237. if primaryPart then
  238. return primaryPart.CFrame
  239. end
  240. end
  241. return nil
  242. end
  243.  
  244. -- Check if target is valid
  245. local function isValidTarget(target)
  246. if not target or not target:IsDescendantOf(workspace) then return false end
  247.  
  248. -- For silent aim, we can be more lenient with target validation
  249. if silentAimEnabled then
  250. return true
  251. else
  252. local pivot = getModelPivot(target)
  253. if not pivot then return false end
  254.  
  255. -- Check distance
  256. local dist = (Camera.CFrame.Position - pivot.Position).Magnitude
  257. if dist > maxDistance then return false end
  258.  
  259. -- Check if in FOV
  260. local screenPoint, onScreen = Camera:WorldToViewportPoint(pivot.Position)
  261. if onScreen then
  262. local center = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2)
  263. local point = Vector2.new(screenPoint.X, screenPoint.Y)
  264. return (point - center).Magnitude <= fovRadius
  265. end
  266. return false
  267. end
  268. end
  269.  
  270. -- Find the best target
  271. local function findBestTarget()
  272. local closestDist = math.huge
  273. local bestTarget = nil
  274.  
  275. local beakwoods = workspace:FindFirstChild("Regions")
  276. if beakwoods then
  277. beakwoods = beakwoods:FindFirstChild("Beakwoods")
  278. if beakwoods then
  279. local clientBirds = beakwoods:FindFirstChild("ClientBirds")
  280. if clientBirds then
  281. for _, bird in ipairs(clientBirds:GetChildren()) do
  282. if bird:IsA("Model") then
  283. local pivot = getModelPivot(bird)
  284. if pivot then
  285. local dist = (Camera.CFrame.Position - pivot.Position).Magnitude
  286. if dist < maxDistance then
  287. if silentAimEnabled or (Camera:WorldToViewportPoint(pivot.Position)) then
  288. if dist < closestDist then
  289. closestDist = dist
  290. bestTarget = lockToPivot and bird or (bird:FindFirstChild("Head") or bird)
  291. end
  292. end
  293. end
  294. end
  295. end
  296. end
  297. end
  298. end
  299. end
  300.  
  301. return bestTarget
  302. end
  303.  
  304. -- Silent aim hook
  305. local oldNamecall
  306. oldNamecall = hookmetamethod(game, "__namecall", newcclosure(function(self, ...)
  307. local args = {...}
  308. local method = getnamecallmethod()
  309.  
  310. if silentAimEnabled and aimbotEnabled and currentTarget and (method == "FindPartOnRay" or method == "FindPartOnRayWithIgnoreList") then
  311. local pivot = getModelPivot(currentTarget)
  312. if pivot then
  313. -- Modify ray to hit our target
  314. local origin = args[1].Origin
  315. local dir = (pivot.Position - origin).Unit
  316. args[1] = Ray.new(origin, dir * maxDistance)
  317. return oldNamecall(self, unpack(args))
  318. end
  319. end
  320.  
  321. return oldNamecall(self, ...)
  322. end))
  323.  
  324. -- Smooth aim function
  325. local function smoothAim(targetPos)
  326. local currentPos = Camera.CFrame.Position
  327. local targetDir = (targetPos - currentPos).Unit
  328. local currentDir = Camera.CFrame.LookVector
  329.  
  330. local smoothStep = math.min(smoothness * 60 * RunService.RenderStepped:Wait(), 1)
  331. local newDir = currentDir:Lerp(targetDir, smoothStep)
  332.  
  333. return CFrame.new(currentPos, currentPos + newDir)
  334. end
  335.  
  336. -- Main aimbot loop
  337. RunService.RenderStepped:Connect(function()
  338. fovCircle.Visible = fovVisible and aimbotEnabled
  339.  
  340. if not aimbotEnabled then
  341. currentTarget = nil
  342. return
  343. end
  344.  
  345. -- Validate current target
  346. if not isValidTarget(currentTarget) then
  347. currentTarget = findBestTarget()
  348. end
  349.  
  350. -- Silent aim doesn't need camera movement
  351. if silentAimEnabled then return end
  352.  
  353. -- Regular aimbot with smooth aiming
  354. if currentTarget then
  355. local targetPosition
  356. if lockToPivot then
  357. local pivot = getModelPivot(currentTarget)
  358. targetPosition = pivot and pivot.Position or currentTarget.Position
  359. else
  360. targetPosition = currentTarget:IsA("BasePart") and currentTarget.Position or
  361. (currentTarget:FindFirstChild("Head") and currentTarget.Head.Position or currentTarget:GetPivot().Position)
  362. end
  363.  
  364. if targetPosition then
  365. Camera.CFrame = smoothAim(targetPosition)
  366. end
  367. end
  368. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement