Baconcoder

Untitled

Feb 10th, 2026 (edited)
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 16.95 KB | None | 0 0
  1. --// SERVICES
  2. local Lighting = game:GetService("Lighting")
  3. local Players = game:GetService("Players")
  4. local RunService = game:GetService("RunService")
  5. local LocalPlayer = Players.LocalPlayer
  6. local Character
  7. local Humanoid
  8. local hrp
  9.  
  10. local function UpdateCharacter(char)
  11. Character = char
  12. Humanoid = char:WaitForChild("Humanoid")
  13. hrp = char:WaitForChild("HumanoidRootPart")
  14. end
  15.  
  16. -- First character
  17. UpdateCharacter(LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait())
  18.  
  19. -- On every respawn
  20. LocalPlayer.CharacterAdded:Connect(function(char)
  21. UpdateCharacter(char)
  22. end)
  23.  
  24. local Mouse = LocalPlayer:GetMouse()
  25.  
  26. --// GUI ROOT
  27. local GUI = Instance.new("ScreenGui", LocalPlayer.PlayerGui)
  28. GUI.ResetOnSpawn = false
  29.  
  30. --------------------------------------------------------
  31. -- =============== FRAME CREATION ======================
  32. --------------------------------------------------------
  33.  
  34. -- Title
  35. local Title = Instance.new("TextLabel", GUI)
  36. Title.Size = UDim2.fromScale(.2, .12)
  37. Title.Position = UDim2.fromScale(.06, .065)
  38. Title.BackgroundColor3 = Color3.fromRGB(91,92,113)
  39. Title.Text = "Admin GUI"
  40. Title.Font = Enum.Font.FredokaOne
  41. Title.TextScaled = true
  42. Title.ZIndex = 5
  43.  
  44. -- Built-in Drag Detector
  45. local drag = Instance.new("UIDragDetector")
  46. drag.Parent = Title
  47.  
  48. local TitleCorner = Instance.new("UICorner", Title)
  49. TitleCorner.CornerRadius = UDim.new(.1,8)
  50.  
  51. -- MAIN MENU FRAME
  52. local MainFrame = Instance.new("Frame", Title)
  53. MainFrame.Size = UDim2.fromScale(1,6)
  54. MainFrame.Position = UDim2.fromScale(0,1)
  55. MainFrame.BackgroundColor3 = Color3.fromRGB(91,92,113)
  56.  
  57. local MenuCorner = Instance.new("UICorner", MainFrame)
  58.  
  59. -- SUBPAGES
  60. local PlayerPage = Instance.new("Frame", GUI)
  61. local OtherPlayerPage = Instance.new("Frame", GUI)
  62. local VisualsPage = Instance.new("Frame", GUI)
  63. local GamePage = Instance.new("Frame", GUI)
  64.  
  65. local Pages = {PlayerPage, VisualsPage, GamePage, OtherPlayerPage}
  66. for _,page in pairs(Pages) do
  67. page.Visible = false
  68. page.Size = UDim2.fromScale(.2, .7)
  69. page.Position = UDim2.fromScale(.06, .2)
  70. page.BackgroundColor3 = Color3.fromRGB(91,92,113)
  71.  
  72. Instance.new("UICorner", page)
  73.  
  74. local stroke = Instance.new("UIStroke", page)
  75. stroke.Thickness = 2
  76. stroke.Color = Color3.fromRGB(0, 0, 0)
  77. stroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
  78. end
  79.  
  80. -- BACK BUTTON
  81. local BackButton = Instance.new("TextButton", GUI)
  82. BackButton.Size = UDim2.fromScale(.15, .07)
  83. BackButton.Position = UDim2.fromScale(.07, .92)
  84. BackButton.Text = "Back"
  85. BackButton.BackgroundColor3 = Color3.fromRGB(30,20,175)
  86. BackButton.TextColor3 = Color3.new(1,1,1)
  87. BackButton.Visible = false
  88. Instance.new("UICorner", BackButton)
  89.  
  90. --------------------------------------------------------
  91. -- ============ BUTTONS TO OPEN PAGES ==================
  92. --------------------------------------------------------
  93.  
  94. local function CreateMenuButton(name, y)
  95. local b = Instance.new("TextButton", MainFrame)
  96. b.Size = UDim2.fromScale(1, .2)
  97. b.Position = UDim2.fromScale(0, y)
  98. b.BackgroundColor3 = Color3.fromRGB(30,20,175)
  99. b.TextColor3 = Color3.new(1,1,1)
  100. b.Text = name
  101. b.TextScaled = true
  102. b.Font = Enum.Font.FredokaOne
  103. b.TextSize = 30
  104. Instance.new("UICorner", b)
  105. return b
  106. end
  107.  
  108. local PlayerButton = CreateMenuButton("Local Player", 0)
  109. local OtherPlayerButton = CreateMenuButton("Other Player", .25)
  110. local VisualsButton = CreateMenuButton("Visuals", .5)
  111. local GameButton = CreateMenuButton("Game", .75)
  112.  
  113. --------------------------------------------------------
  114. -- ================= PAGE HELPER =======================
  115. --------------------------------------------------------
  116.  
  117. local function OpenPage(frame)
  118. MainFrame.Visible = false
  119. for _,p in pairs(Pages) do p.Visible = false end
  120. frame.Visible = true
  121. BackButton.Visible = true
  122. end
  123.  
  124. BackButton.MouseButton1Click:Connect(function()
  125. for _,p in pairs(Pages) do p.Visible = false end
  126. MainFrame.Visible = true
  127. BackButton.Visible = false
  128. end)
  129.  
  130. PlayerButton.MouseButton1Click:Connect(function() OpenPage(PlayerPage) end)
  131. OtherPlayerButton.MouseButton1Click:Connect(function() OpenPage(OtherPlayerPage) end)
  132. VisualsButton.MouseButton1Click:Connect(function() OpenPage(VisualsPage) end)
  133. GameButton.MouseButton1Click:Connect(function() OpenPage(GamePage) end)
  134.  
  135. --------------------------------------------------------
  136. -- =============== TEXTBOX CREATOR =====================
  137. --------------------------------------------------------
  138.  
  139. local function AddStroke(instance, thickness, color)
  140. local stroke = Instance.new("UIStroke")
  141. stroke.Thickness = thickness or 1
  142. stroke.Color = color or Color3.fromRGB(0, 0, 0)
  143. stroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
  144. stroke.Parent = instance
  145. return stroke
  146. end
  147.  
  148.  
  149. local function CreateTextBox(parent, text, y)
  150. local label = Instance.new("TextLabel", parent)
  151. label.Size = UDim2.fromScale(.9, .15)
  152. label.Position = UDim2.fromScale(.05, y)
  153. label.BackgroundTransparency = 1
  154. label.Text = text
  155. label.Font = Enum.Font.FredokaOne
  156. label.TextSize = 24
  157.  
  158. local box = Instance.new("TextBox", parent)
  159. box.Size = UDim2.fromScale(.9, .12)
  160. box.Position = UDim2.fromScale(.05, y + .12)
  161. box.BackgroundColor3 = Color3.fromRGB(30,20,175)
  162. box.TextColor3 = Color3.new(1,1,1)
  163. box.Font = Enum.Font.FredokaOne
  164. box.TextSize = 20
  165. Instance.new("UICorner", box)
  166.  
  167. return box
  168. end
  169.  
  170. local function CreateToggle(parent, text, y)
  171. local b = Instance.new("TextButton", parent)
  172. b.Size = UDim2.fromScale(.9, .12)
  173. b.Position = UDim2.fromScale(.05, y)
  174. b.BackgroundColor3 = Color3.fromRGB(30,20,175)
  175. b.Text = text.." OFF"
  176. b.TextColor3 = Color3.new(1,1,1)
  177. b.Font = Enum.Font.FredokaOne
  178. b.TextScaled = true
  179. Instance.new("UICorner", b)
  180. return b
  181. end
  182.  
  183. --------------------------------------------------------
  184. -- =============== PLAYER PAGE =========================
  185. --------------------------------------------------------
  186.  
  187. local WalkBox = CreateTextBox(PlayerPage, "WalkSpeed", 0)
  188. local JumpBox = CreateTextBox(PlayerPage, "JumpPower", .2)
  189. local GravBox = CreateTextBox(PlayerPage, "Gravity", .43)
  190. local NoclipToggle = CreateToggle(PlayerPage, "Noclip", .75)
  191.  
  192. --------------------------------------------------------
  193. -- =============== OTHER PLAYER PAGE =========================
  194. --------------------------------------------------------
  195.  
  196. local SpinBox = CreateTextBox(OtherPlayerPage, "Spinbot", 0)
  197. local KillbrickToggle = CreateToggle(OtherPlayerPage, "KillBricks", .3)
  198.  
  199.  
  200.  
  201. --------------------------------------------------------
  202. -- =============== VISUALS PAGE ========================
  203. --------------------------------------------------------
  204.  
  205. local FOVBox = CreateTextBox(VisualsPage, "Field of View", 0)
  206. local ESPToggle = CreateToggle(VisualsPage, "ESP", .3)
  207. local BrightToggle = CreateToggle(VisualsPage, "Full Bright", .5)
  208. local PotatoToggle = CreateToggle(VisualsPage, "Potato Mode", .7)
  209.  
  210. --------------------------------------------------------
  211. -- =============== GAME PAGE ===========================
  212. --------------------------------------------------------
  213.  
  214. local TPBox = CreateTextBox(GamePage, "user, display, random friend, random nonfriend, .random, all", 0)
  215. local LoopTPToggle = CreateToggle(GamePage, "Loop TP", .27)
  216. local UI_Toggle = CreateToggle(GamePage, "Ultra Instinct", .5)
  217.  
  218. -- Main Frame Stroke
  219. AddStroke(MainFrame, 4)
  220. AddStroke(Title, 4)
  221.  
  222. -- Main Menu Buttons
  223. AddStroke(PlayerButton, 3)
  224. AddStroke(OtherPlayerButton, 3)
  225. AddStroke(VisualsButton, 3)
  226. AddStroke(GameButton, 3)
  227.  
  228. -- PLAYER PAGE
  229. AddStroke(PlayerPage, 3)
  230. AddStroke(WalkBox, 3)
  231. AddStroke(JumpBox, 3)
  232. AddStroke(GravBox, 3)
  233. AddStroke(NoclipToggle, 3)
  234. AddStroke(BackButton, 3)
  235.  
  236. -- VISUALS PAGE
  237. AddStroke(VisualsPage, 3)
  238. AddStroke(ESPToggle, 3)
  239. AddStroke(BrightToggle, 3)
  240. AddStroke(PotatoToggle, 3)
  241. AddStroke(FOVBox, 3)
  242.  
  243. -- GAME PAGE
  244. AddStroke(GamePage, 3)
  245. AddStroke(LoopTPToggle, 3)
  246. AddStroke(UI_Toggle, 3)
  247.  
  248. -- OTHER PLAYER PAGE
  249. AddStroke(OtherPlayerPage, 3)
  250. AddStroke(SpinBox, 3)
  251. AddStroke(KillbrickToggle, 3)
  252.  
  253. --------------------------------------------------------
  254. -- ================ FUNCTIONALITY ======================
  255. --------------------------------------------------------
  256.  
  257. ---------------------- Noclip -------------------------
  258. local noclip = false
  259. NoclipToggle.MouseButton1Click:Connect(function()
  260. noclip = not noclip
  261. NoclipToggle.Text = "Noclip "..(noclip and "ON" or "OFF")
  262. end)
  263.  
  264. local KillBricks = false
  265. KillbrickToggle.MouseButton1Click:Connect(function()
  266. KillBricks = not KillBricks
  267. KillbrickToggle.Text = "Killbrick "..(KillBricks and "ON" or "OFF")
  268. end)
  269.  
  270. ------------------------ ESP --------------------------
  271. local espOn = false
  272. local highlights = {}
  273.  
  274. local function createESP(plr)
  275. if plr == LocalPlayer then return end
  276. if highlights[plr] then return end
  277. if not plr.Character then return end
  278. if not plr.Character:FindFirstChild("Head") then return end
  279.  
  280. -- Highlight object
  281. local hl = Instance.new("Highlight")
  282. hl.FillTransparency = 0.7
  283. hl.OutlineColor = Color3.fromRGB(255,25,25)
  284. hl.Adornee = plr.Character
  285. hl.Parent = GUI
  286.  
  287. -- Billboard name
  288. local head = plr.Character.Head
  289. local bill = Instance.new("BillboardGui")
  290. bill.Size = UDim2.new(0,100,0,25)
  291. bill.StudsOffset = Vector3.new(0,2.5,0)
  292. bill.AlwaysOnTop = true
  293. bill.Parent = GUI
  294. bill.Adornee = head
  295.  
  296. local label = Instance.new("TextLabel")
  297. label.Parent = bill
  298. label.Size = UDim2.fromScale(1,1)
  299. label.BackgroundTransparency = 1
  300. label.Text = plr.Name
  301. label.TextColor3 = Color3.fromRGB(255,255,255)
  302. label.TextStrokeTransparency = 0.2
  303. label.Font = Enum.Font.FredokaOne
  304. label.TextSize = 19
  305.  
  306. -- Store ESP
  307. highlights[plr] = {
  308. highlight = hl,
  309. billboard = bill,
  310. }
  311. end
  312.  
  313. local function removeESP(plr)
  314. if highlights[plr] then
  315. if highlights[plr].highlight then highlights[plr].highlight:Destroy() end
  316. if highlights[plr].billboard then highlights[plr].billboard:Destroy() end
  317. highlights[plr] = nil
  318. end
  319. end
  320.  
  321. local function updateAllESP()
  322. for _,plr in pairs(Players:GetPlayers()) do
  323. if espOn then
  324. if plr ~= LocalPlayer and plr.Character then
  325. createESP(plr)
  326. end
  327. else
  328. removeESP(plr)
  329. end
  330. end
  331. end
  332.  
  333.  
  334. ESPToggle.MouseButton1Click:Connect(function()
  335. espOn = not espOn
  336. ESPToggle.Text = "ESP "..(espOn and "ON" or "OFF")
  337.  
  338. if not espOn then
  339. for plr,_ in pairs(highlights) do
  340. removeESP(plr)
  341. end
  342. end
  343. end)
  344.  
  345. ---------------------- Full Bright ---------------------
  346. local brightOn = false
  347. BrightToggle.MouseButton1Click:Connect(function()
  348. brightOn = not brightOn
  349. BrightToggle.Text = "Full Bright "..(brightOn and "ON" or "OFF")
  350. end)
  351.  
  352. --------------------- Potato Mode ----------------------
  353. local potato = false
  354. PotatoToggle.MouseButton1Click:Connect(function()
  355. potato = not potato
  356. PotatoToggle.Text = "Potato Mode "..(potato and "ON" or "OFF")
  357. end)
  358.  
  359.  
  360. --------------------- LOOP TP ---------------------------
  361. local looptp = false
  362. LoopTPToggle.MouseButton1Click:Connect(function()
  363. looptp = not looptp
  364. LoopTPToggle.Text = "Loop TP "..(looptp and "ON" or "OFF")
  365. end)
  366.  
  367. --TELEPORT HELPERS
  368. -------------------------------------------------------------------
  369.  
  370. local function tpToPlayer(plr)
  371. if plr and plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") then
  372. Character:SetPrimaryPartCFrame(
  373. plr.Character.HumanoidRootPart.CFrame * CFrame.new(0,3,0)
  374. )
  375. end
  376. end
  377.  
  378. local function findPlayerByName(name)
  379. name = name:lower()
  380. for _,plr in pairs(Players:GetPlayers()) do
  381. if plr.Name:lower() == name or plr.DisplayName:lower() == name then
  382. return plr
  383. end
  384. end
  385. return nil
  386. end
  387.  
  388. local function getRandomPlayer()
  389. local list = {}
  390. for _,plr in pairs(Players:GetPlayers()) do
  391. if plr ~= LocalPlayer then table.insert(list, plr) end
  392. end
  393. if #list == 0 then return nil end
  394. return list[math.random(#list)]
  395. end
  396.  
  397. local function getRandomFriendInGame()
  398. local friends = Players:GetFriendsAsync(LocalPlayer.UserId)
  399. local list = {}
  400. for _,v in pairs(friends) do
  401. local p = Players:FindFirstChild(v.Username)
  402. if p then table.insert(list, p) end
  403. end
  404. if #list == 0 then return nil end
  405. return list[math.random(#list)]
  406. end
  407.  
  408. local function getRandomNonFriend()
  409. local friends = Players:GetFriendsAsync(LocalPlayer.UserId)
  410. local friendMap = {}
  411.  
  412. for _,f in pairs(friends) do
  413. friendMap[f.Username] = true
  414. end
  415.  
  416. local list = {}
  417. for _,plr in pairs(Players:GetPlayers()) do
  418. if plr ~= LocalPlayer and not friendMap[plr.Name] then
  419. table.insert(list, plr)
  420. end
  421. end
  422.  
  423. if #list == 0 then return nil end
  424. return list[math.random(#list)]
  425. end
  426.  
  427. local function tpAllPlayers()
  428. for _,plr in pairs(Players:GetPlayers()) do
  429. if plr ~= LocalPlayer then
  430. tpToPlayer(plr)
  431. task.wait(0.25)
  432. end
  433. end
  434. end
  435.  
  436.  
  437. -------------------------------------------------------------------
  438. -- TEXTBOX COMMAND HANDLER (SpinBox)
  439. -------------------------------------------------------------------
  440.  
  441. TPBox:GetPropertyChangedSignal("Text"):Connect(function()
  442. local input = TPBox.Text:lower()
  443.  
  444. if input == ".random" then
  445. tpToPlayer(getRandomPlayer())
  446.  
  447. elseif input == ".randomfriend" then
  448. tpToPlayer(getRandomFriendInGame())
  449.  
  450. elseif input == ".randomnfriend" then
  451. tpToPlayer(getRandomNonFriend())
  452.  
  453. elseif input == ".all" then
  454. task.spawn(tpAllPlayers)
  455.  
  456. elseif input == ".looptp" then
  457. looptp = not looptp
  458. if looptp then
  459. print("Loop TP enabled")
  460. else
  461. print("Loop TP disabled")
  462. end
  463.  
  464. else
  465. -- username or displayname
  466. local plr = findPlayerByName(input)
  467. if plr then
  468. tpToPlayer(plr)
  469. end
  470. end
  471. end)
  472.  
  473. ------------------- Ultra Instinct ---------------------
  474. --[[
  475. local uiOn = false
  476. UI_Toggle.MouseButton1Click:Connect(function()
  477. uiOn = not uiOn
  478. UI_Toggle.Text = "Ultra Instinct "..(uiOn and "ON" or "OFF")
  479. end)
  480.  
  481. RunService.Heartbeat:Connect(function()
  482. if not uiOn then return end
  483.  
  484. for _,plr in pairs(Players:GetPlayers()) do
  485. if plr ~= LocalPlayer and plr.Character and plr.Character.PrimaryPart then
  486. local dist = (plr.Character.PrimaryPart.Position - Character.PrimaryPart.Position).Magnitude
  487.  
  488. if dist < 10 then
  489. local forward = Character.PrimaryPart.CFrame.LookVector
  490. Character:SetPrimaryPartCFrame(Character.PrimaryPart.CFrame + forward * 6)
  491. end
  492. end
  493. end
  494. end)]]
  495.  
  496.  
  497. -------------------------------------------
  498. -----------------MAIN LOOP-----------------
  499. -------------------------------------------
  500.  
  501. RunService.Heartbeat:Connect(function(dt)
  502. if tonumber(WalkBox.Text) ~= nil then Humanoid.WalkSpeed = tonumber(WalkBox.Text) end
  503. if tonumber(JumpBox.Text) ~= nil then Humanoid.JumpPower = tonumber(JumpBox.Text) end
  504. if tonumber(GravBox.Text) ~= nil then workspace.Gravity = tonumber(GravBox.Text) end
  505. if tonumber(FOVBox.Text) ~= nil then workspace.CurrentCamera.FieldOfView = tonumber(FOVBox.Text) end
  506. local val = tonumber(SpinBox.Text)
  507. if val and val>=0 and val<=2000 then
  508. hrp.CFrame = hrp.CFrame * CFrame.Angles(0, math.rad(val * 35), 0)
  509.  
  510. end
  511.  
  512. if noclip then
  513. for _,v in pairs(Character:GetDescendants()) do
  514. if v:IsA("BasePart") then v.CanCollide = false end
  515. end
  516. elseif not noclip then
  517. for _,v in pairs(Character:GetDescendants()) do
  518. if v:IsA("BasePart") then v.CanCollide = true end
  519. end
  520. end
  521.  
  522. if KillBricks then
  523. local parts = workspace:GetPartBoundsInRadius(hrp.Position, 100)
  524. for _, part in ipairs(parts) do
  525. part.CanTouch = false
  526. end
  527. for i, v in pairs(Character:GetChildren()) do
  528. if v:IsA("BasePart") then
  529. v.CanTouch = false
  530. v.CanQuery = false
  531. end
  532. end
  533. else
  534. local parts = workspace:GetPartBoundsInRadius(hrp.Position, 100)
  535. for _, part in ipairs(parts) do
  536. part.CanTouch = true
  537. end
  538. for i, v in pairs(Character:GetChildren()) do
  539. if v:IsA("BasePart") then
  540. v.CanTouch = true
  541. v.CanQuery = true
  542. end
  543. end
  544. end
  545.  
  546. if espOn then
  547. for i, player in pairs(Players:GetPlayers()) do
  548. if player ~= LocalPlayer then
  549. removeESP(player)
  550. end
  551. updateAllESP()
  552. end
  553.  
  554. --[[Player joins
  555. Players.PlayerAdded:Connect(function(plr)
  556. plr.CharacterAdded:Connect(function()
  557. task.wait(0.1)
  558. if espOn then createESP(plr) end
  559. end)
  560. end)
  561.  
  562. -- Player leaves
  563. Players.PlayerRemoving:Connect(function(plr)
  564. removeESP(plr)
  565. end)]]
  566.  
  567. if brightOn then
  568. Lighting.Ambient= Color3.new(1,1,1)
  569. Lighting.OutdoorAmbient = Color3.new(1,1,1)
  570. Lighting.Brightness = 6
  571. else
  572. Lighting.Ambient = Color3.new(.5,.5,.5)
  573. Lighting.OutdoorAmbient = Color3.new(.5,.5,.5)
  574. Lighting.Brightness = 4
  575. end
  576.  
  577. if potato then
  578. for _,v in pairs(workspace:GetDescendants()) do
  579. if v:IsA("Decal") or v:IsA("Texture") then
  580. v.Transparency = 1
  581. end
  582. if v:IsA("ParticleEmitter") then
  583. v.Enabled = false
  584. end
  585. end
  586. else
  587. for _,v in pairs(workspace:GetDescendants()) do
  588. if v:IsA("Decal") or v:IsA("Texture") then
  589. v.Transparency = 0
  590. end
  591. if v:IsA("ParticleEmitter") then
  592. v.Enabled = true
  593. end
  594. end
  595. end
  596.  
  597. --loop tp
  598. local lastTarget = nil
  599. if looptp then
  600. local target
  601. repeat target = getRandomPlayer() until target ~= lastTarget
  602. lastTarget = target
  603. tpToPlayer(target)
  604. end
  605. end
  606. end)
Advertisement
Add Comment
Please, Sign In to add comment