-- ARAM_EXPLOITS.lua -- Full standalone LocalScript for Roblox Studio -- Place in StarterPlayer > StarterPlayerScripts -- Features: Blue UI, draggable window, A button, ESP, Speed slider, NoClip, -- Floating AIMBOT [MMB], target lock until 0 HP, ignore Rat & RatCriminal. local Players=game:GetService("Players") local UIS=game:GetService("UserInputService") local RS=game:GetService("RunService") local VIM=game:GetService("VirtualInputManager") local player=Players.LocalPlayer local camera=workspace.CurrentCamera -- ========================= -- ONE-SCRIPT KEY SYSTEM -- ========================= -- Local-only key check. This is convenient for a single-script setup, -- but it is NOT secure against someone inspecting the LocalScript. local VALID_KEY="ARAM-2026" local LINK="https://link-hub.net/4890633/YHGbs3YoPMqL" local keyVerified=false local function createKeySystem(parentGui,onUnlocked) local keyFrame=Instance.new("Frame",parentGui) keyFrame.Name="KeySystem" keyFrame.Size=UDim2.fromOffset(390,280) keyFrame.Position=UDim2.new(.5,-195,.5,-120) keyFrame.BackgroundColor3=Color3.fromRGB(22,22,28) keyFrame.BorderSizePixel=0 Instance.new("UICorner",keyFrame).CornerRadius=UDim.new(0,20) local keyStroke=Instance.new("UIStroke",keyFrame) keyStroke.Color=Color3.fromRGB(70,220,255) keyStroke.Thickness=1.5 local title=Instance.new("TextLabel",keyFrame) title.BackgroundTransparency=1 title.Position=UDim2.fromOffset(20,18) title.Size=UDim2.new(1,-40,0,30) title.Text="ARAM_EXPLOITS" title.Font=Enum.Font.GothamBold title.TextSize=24 title.TextColor3=Color3.fromRGB(120,230,255) local subtitle=Instance.new("TextLabel",keyFrame) subtitle.BackgroundTransparency=1 subtitle.Position=UDim2.fromOffset(20,48) subtitle.Size=UDim2.new(1,-40,0,24) subtitle.Text="KEY SYSTEM" subtitle.Font=Enum.Font.Gotham subtitle.TextSize=13 subtitle.TextColor3=Color3.fromRGB(160,160,170) local box=Instance.new("TextBox",keyFrame) box.Size=UDim2.new(1,-40,0,44) box.Position=UDim2.fromOffset(20,84) box.BackgroundColor3=Color3.fromRGB(35,35,40) box.BorderSizePixel=0 box.ClearTextOnFocus=false box.PlaceholderText="Enter key..." box.Text="" box.Font=Enum.Font.Gotham box.TextSize=16 box.TextColor3=Color3.new(1,1,1) box.PlaceholderColor3=Color3.fromRGB(100,100,110) box.TextXAlignment=Enum.TextXAlignment.Center Instance.new("UICorner",box).CornerRadius=UDim.new(0,12) local getKey=Instance.new("TextButton",keyFrame) getKey.Size=UDim2.new(1,-40,0,42) getKey.Position=UDim2.fromOffset(20,138) getKey.BackgroundColor3=Color3.fromRGB(40,160,255) getKey.BorderSizePixel=0 getKey.Text="GET KEY" getKey.Font=Enum.Font.GothamBold getKey.TextSize=15 getKey.TextColor3=Color3.new(1,1,1) Instance.new("UICorner",getKey).CornerRadius=UDim.new(0,12) local unlock=Instance.new("TextButton",keyFrame) unlock.Size=UDim2.new(1,-40,0,42) unlock.Position=UDim2.fromOffset(20,186) unlock.BackgroundColor3=Color3.fromRGB(40,170,40) unlock.BorderSizePixel=0 unlock.Text="UNLOCK" unlock.Font=Enum.Font.GothamBold unlock.TextSize=15 unlock.TextColor3=Color3.new(1,1,1) Instance.new("UICorner",unlock).CornerRadius=UDim.new(0,12) local status=Instance.new("TextLabel",keyFrame) status.BackgroundTransparency=1 status.Position=UDim2.fromOffset(20,234) status.Size=UDim2.new(1,-40,0,24) status.Text="Enter your key" status.Font=Enum.Font.Gotham status.TextSize=12 status.TextColor3=Color3.fromRGB(190,190,200) local function tryUnlock() if box.Text==VALID_KEY then keyVerified=true status.Text="KEY ACCEPTED" status.TextColor3=Color3.fromRGB(80,210,100) task.wait(0.15) keyFrame.Visible=false if onUnlocked then onUnlocked() end return true else status.Text="INVALID KEY" status.TextColor3=Color3.fromRGB(220,70,70) box.Text="" box:CaptureFocus() return false end end getKey.MouseButton1Click:Connect(function() local opened=false pcall(function() local GuiService=game:GetService("GuiService") if GuiService and typeof(GuiService.OpenBrowserWindow)=="function" then GuiService:OpenBrowserWindow(LINK) opened=true end end) pcall(function() if setclipboard then setclipboard(LINK) end end) if opened then status.Text="Link opened! Complete Linkvertise to get your key." else status.Text=LINK end status.TextColor3=Color3.fromRGB(80,210,255) end) unlock.MouseButton1Click:Connect(tryUnlock) box.FocusLost:Connect(function(enterPressed) if enterPressed then tryUnlock() end end) -- Allow the key window to be moved with a mouse or finger. local dragging=false local dragStart=nil local startPos=nil keyFrame.Active=true keyFrame.InputBegan:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then dragging=true dragStart=i.Position startPos=keyFrame.Position end end) UIS.InputChanged:Connect(function(i) if dragging and (i.UserInputType==Enum.UserInputType.MouseMovement or i.UserInputType==Enum.UserInputType.Touch) then local d=i.Position-dragStart keyFrame.Position=UDim2.new( startPos.X.Scale, startPos.X.Offset+d.X, startPos.Y.Scale, startPos.Y.Offset+d.Y ) end end) UIS.InputEnded:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then dragging=false end end) return keyFrame end local espEnabled=false local noclipEnabled=false local aimbotEnabled=false local speedValue=16 local currentTarget=nil local aimButton=nil local autoBiteEnabled=false local autoBiteButton=nil -- GUI local gui=Instance.new("ScreenGui") gui.Name="ARAM_EXPLOITS" gui.ResetOnSpawn=false gui.IgnoreGuiInset=true gui.Parent=player:WaitForChild("PlayerGui") local A=Instance.new("TextButton",gui) A.Size=UDim2.fromOffset(54,54) A.Position=UDim2.new(.5,-27,0,14) A.Text="A" A.Font=Enum.Font.GothamBlack A.TextScaled=true A.BackgroundColor3=Color3.fromRGB(22,22,28) A.TextColor3=Color3.fromRGB(120,230,255) A.Visible=false Instance.new("UICorner",A).CornerRadius=UDim.new(1,0) local AStroke=Instance.new("UIStroke",A) AStroke.Color=Color3.fromRGB(70,220,255) local frame=Instance.new("Frame",gui) frame.Size=UDim2.fromOffset(720,500) frame.Position=UDim2.new(.5,-175,.5,-210) frame.BackgroundColor3=Color3.fromRGB(22,22,28) frame.Visible=false Instance.new("UICorner",frame).CornerRadius=UDim.new(0,20) local fStroke=Instance.new("UIStroke",frame) fStroke.Color=Color3.fromRGB(70,220,255) local grad=Instance.new("UIGradient",frame) grad.Color=ColorSequence.new{ ColorSequenceKeypoint.new(0,Color3.fromRGB(30,30,36)), ColorSequenceKeypoint.new(1,Color3.fromRGB(15,15,20)) } grad.Rotation=90 local keyFrame=createKeySystem(gui,function() A.Visible=true frame.Visible=false end) local header=Instance.new("Frame",frame) header.Size=UDim2.new(1,0,0,55) header.BackgroundTransparency=1 local title=Instance.new("TextLabel",header) title.BackgroundTransparency=1 title.Position=UDim2.fromOffset(18,8) title.Size=UDim2.new(1,-90,0,22) title.Text="ARAM_EXPLOITS" title.TextXAlignment=Enum.TextXAlignment.Left title.Font=Enum.Font.GothamBold title.TextSize=22 title.TextColor3=Color3.fromRGB(120,230,255) local desc=Instance.new("TextLabel",header) desc.BackgroundTransparency=1 desc.Position=UDim2.fromOffset(18,30) desc.Size=UDim2.new(1,-90,0,16) desc.Text="Premium Utility Hub" desc.TextXAlignment=Enum.TextXAlignment.Left desc.Font=Enum.Font.Gotham desc.TextSize=11 desc.TextColor3=Color3.fromRGB(120,120,130) local mini=Instance.new("TextButton",header) mini.BackgroundTransparency=1 mini.Text="–" mini.Position=UDim2.new(1,-58,0,10) mini.Size=UDim2.fromOffset(22,22) local close=Instance.new("TextButton",header) close.BackgroundTransparency=1 close.Text="✕" close.Position=UDim2.new(1,-30,0,10) close.Size=UDim2.fromOffset(22,22) local line=Instance.new("Frame",frame) line.Position=UDim2.fromOffset(15,58) line.Size=UDim2.new(1,-30,0,1) line.BackgroundColor3=Color3.fromRGB(50,50,60) line.BorderSizePixel=0 local body=Instance.new("Frame",frame) body.Position=UDim2.fromOffset(15,70) body.Size=UDim2.new(1,-30,1,-85) body.BackgroundTransparency=1 -- Two-column layout. -- Left side: ESP / Aimbot / AutoBite / Speed / NoClip -- Right side: Cheese / Keycard / Teleport local leftColumn=Instance.new("Frame",body) leftColumn.Name="LeftColumn" leftColumn.Position=UDim2.new(0,0,0,0) leftColumn.Size=UDim2.new(0.49,-5,1,0) leftColumn.BackgroundTransparency=1 local rightColumn=Instance.new("Frame",body) rightColumn.Name="RightColumn" rightColumn.Position=UDim2.new(0.51,5,0,0) rightColumn.Size=UDim2.new(0.49,-5,1,0) rightColumn.BackgroundTransparency=1 local leftLayout=Instance.new("UIListLayout",leftColumn) leftLayout.Padding=UDim.new(0,10) local rightLayout=Instance.new("UIListLayout",rightColumn) rightLayout.Padding=UDim.new(0,10) local function card(h) local f=Instance.new("Frame",body) f.Size=UDim2.new(1,0,0,h) f.BackgroundColor3=Color3.fromRGB(35,35,40) f.BorderSizePixel=0 Instance.new("UICorner",f).CornerRadius=UDim.new(0,12) return f end local function switchCard(name) local f=card(50) local t=Instance.new("TextLabel",f) t.BackgroundTransparency=1 t.Position=UDim2.fromOffset(15,0) t.Size=UDim2.new(.6,0,1,0) t.Text=name t.TextXAlignment=Enum.TextXAlignment.Left t.Font=Enum.Font.GothamBold t.TextSize=16 t.TextColor3=Color3.new(1,1,1) local b=Instance.new("TextButton",f) b.Size=UDim2.fromOffset(70,30) b.Position=UDim2.new(1,-80,.5,-15) b.Text="OFF" b.BackgroundColor3=Color3.fromRGB(170,40,40) Instance.new("UICorner",b).CornerRadius=UDim.new(1,0) return b end local espBtn=switchCard("ESP") local aimBtn=switchCard("Aimbot") aimBtn.Text="ADD" local autoBiteBtn=switchCard("AutoBite") autoBiteBtn.Text="ADD" local speedCard=card(75) local speedText=Instance.new("TextLabel",speedCard) speedText.BackgroundTransparency=1 speedText.Position=UDim2.fromOffset(15,8) speedText.Size=UDim2.new(1,-30,0,20) speedText.Text="Speed : 16" speedText.TextXAlignment=Enum.TextXAlignment.Left speedText.Font=Enum.Font.GothamBold speedText.TextColor3=Color3.new(1,1,1) local bar=Instance.new("Frame",speedCard) bar.Position=UDim2.fromOffset(15,42) bar.Size=UDim2.new(1,-30,0,10) bar.BackgroundColor3=Color3.fromRGB(55,55,65) Instance.new("UICorner",bar).CornerRadius=UDim.new(1,0) local fill=Instance.new("Frame",bar) fill.Size=UDim2.new(.16,0,1,0) fill.BackgroundColor3=Color3.fromRGB(70,220,255) Instance.new("UICorner",fill).CornerRadius=UDim.new(1,0) local knob=Instance.new("Frame",bar) knob.Size=UDim2.fromOffset(18,18) knob.Position=UDim2.new(.16,-9,.5,-9) knob.BackgroundColor3=Color3.fromRGB(170,245,255) Instance.new("UICorner",knob).CornerRadius=UDim.new(1,0) local noclipBtn=switchCard("NoClip") -- One-click Cheese pickup local cheeseCard=card(50) local cheeseBtn=Instance.new("TextButton",cheeseCard) cheeseBtn.Size=UDim2.new(1,-20,1,-10) cheeseBtn.Position=UDim2.fromOffset(10,5) cheeseBtn.Text="TAKE CHEESE" cheeseBtn.Font=Enum.Font.GothamBold cheeseBtn.TextSize=15 cheeseBtn.TextColor3=Color3.new(1,1,1) cheeseBtn.BackgroundColor3=Color3.fromRGB(170,40,40) Instance.new("UICorner",cheeseBtn).CornerRadius=UDim.new(0,12) -- One-click Keycard pickup local keycardCard=card(50) local keycardBtn=Instance.new("TextButton",keycardCard) keycardBtn.Size=UDim2.new(1,-20,1,-10) keycardBtn.Position=UDim2.fromOffset(10,5) keycardBtn.Text="TAKE KEYCARD" keycardBtn.Font=Enum.Font.GothamBold keycardBtn.TextSize=15 keycardBtn.TextColor3=Color3.new(1,1,1) keycardBtn.BackgroundColor3=Color3.fromRGB(170,40,40) Instance.new("UICorner",keycardBtn).CornerRadius=UDim.new(0,12) -- TELEPORT section local teleportHeader=Instance.new("Frame",body) teleportHeader.Size=UDim2.new(1,0,0,24) teleportHeader.BackgroundTransparency=1 local teleportSection=Instance.new("TextLabel",teleportHeader) teleportSection.Size=UDim2.new(0.38,0,1,0) teleportSection.BackgroundTransparency=1 teleportSection.Text="TELEPORT" teleportSection.TextXAlignment=Enum.TextXAlignment.Left teleportSection.Font=Enum.Font.GothamBold teleportSection.TextSize=18 teleportSection.TextColor3=Color3.fromRGB(120,230,255) local teleportWarning=Instance.new("TextLabel",teleportHeader) teleportWarning.Size=UDim2.new(0.62,0,1,0) teleportWarning.Position=UDim2.new(0.38,0,0,0) teleportWarning.BackgroundTransparency=1 teleportWarning.Text="( Do not use teleport with noclip )" teleportWarning.TextXAlignment=Enum.TextXAlignment.Right teleportWarning.Font=Enum.Font.Gotham teleportWarning.TextSize=11 teleportWarning.TextColor3=Color3.fromRGB(190,190,200) -- One-click teleport to the Escaped Rat base local escapedRatCard=card(50) local escapedRatBtn=Instance.new("TextButton",escapedRatCard) escapedRatBtn.Size=UDim2.new(1,-20,1,-10) escapedRatBtn.Position=UDim2.fromOffset(10,5) escapedRatBtn.Text="TELEPORT TO THE ESCAPEDRAT BASE" escapedRatBtn.Font=Enum.Font.GothamBold escapedRatBtn.TextSize=13 escapedRatBtn.TextColor3=Color3.new(1,1,1) escapedRatBtn.BackgroundColor3=Color3.fromRGB(170,40,40) Instance.new("UICorner",escapedRatBtn).CornerRadius=UDim.new(0,12) -- Teleport to the Scientiest Section local scientistCard=card(50) local scientistBtn=Instance.new("TextButton",scientistCard) scientistBtn.Size=UDim2.new(1,-20,1,-10) scientistBtn.Position=UDim2.fromOffset(10,5) scientistBtn.Text="TELEPORT TO THE SCIENTIEST SECTION" scientistBtn.Font=Enum.Font.GothamBold scientistBtn.TextSize=13 scientistBtn.TextColor3=Color3.new(1,1,1) scientistBtn.BackgroundColor3=Color3.fromRGB(170,40,40) Instance.new("UICorner",scientistBtn).CornerRadius=UDim.new(0,12) -- Put the features into two sides of the UI. espBtn.Parent.Parent=leftColumn aimBtn.Parent.Parent=leftColumn autoBiteBtn.Parent.Parent=leftColumn speedCard.Parent=leftColumn noclipBtn.Parent.Parent=leftColumn cheeseCard.Parent=rightColumn keycardCard.Parent=rightColumn teleportHeader.Parent=rightColumn escapedRatCard.Parent=rightColumn scientistCard.Parent=rightColumn -- Responsive UI sizing local BASE_UI_WIDTH=720 local MIN_UI_SCALE=0.65 local MAX_UI_SCALE=1.35 local function updateResponsiveUI() local scale=math.clamp( frame.AbsoluteSize.X/BASE_UI_WIDTH, MIN_UI_SCALE, MAX_UI_SCALE ) -- Keep the two columns balanced as the menu is resized. leftColumn.Size=UDim2.new(0.49,-5,1,0) rightColumn.Position=UDim2.new(0.51,5,0,0) rightColumn.Size=UDim2.new(0.49,-5,1,0) -- Switch rows. for _,btn in ipairs({espBtn,aimBtn,autoBiteBtn,noclipBtn}) do local cardFrame=btn.Parent if cardFrame then cardFrame.Size=UDim2.new(1,0,0,50*scale) btn.Size=UDim2.fromOffset(70*scale,30*scale) btn.Position=UDim2.new(1,-80*scale,.5,-15*scale) local label=cardFrame:FindFirstChildWhichIsA("TextLabel") if label then label.Position=UDim2.fromOffset(15*scale,0) label.TextSize=16*scale end end end -- Speed row. speedCard.Size=UDim2.new(1,0,0,75*scale) speedText.Position=UDim2.fromOffset(15*scale,8*scale) speedText.Size=UDim2.new(1,-30*scale,0,20*scale) speedText.TextSize=16*scale bar.Position=UDim2.fromOffset(15*scale,42*scale) bar.Size=UDim2.new(1,-30*scale,0,10*scale) fill.Size=UDim2.new(fill.Size.X.Scale,0,1,0) knob.Size=UDim2.fromOffset(18*scale,18*scale) knob.Position=UDim2.new(fill.Size.X.Scale,-9*scale,.5,-9*scale) -- Action rows. for _,cardFrame in ipairs({cheeseCard,keycardCard,escapedRatCard,scientistCard}) do if cardFrame then cardFrame.Size=UDim2.new(1,0,0,50*scale) end end for _,btn in ipairs({cheeseBtn,keycardBtn,escapedRatBtn,scientistBtn}) do btn.Position=UDim2.fromOffset(10*scale,5*scale) btn.Size=UDim2.new(1,-20*scale,1,-10*scale) btn.TextSize=(btn==escapedRatBtn or btn==scientistBtn) and 13*scale or 15*scale end -- TELEPORT heading. teleportHeader.Size=UDim2.new(1,0,0,24*scale) teleportSection.TextSize=18*scale teleportWarning.TextSize=11*scale end -- Drag (PC + Mobile) local dragging=false local dragStart=nil local startPos=nil header.Active=true header.InputBegan:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then dragging=true dragStart=i.Position startPos=frame.Position end end) UIS.InputChanged:Connect(function(i) if dragging and (i.UserInputType==Enum.UserInputType.MouseMovement or i.UserInputType==Enum.UserInputType.Touch) then local d=i.Position-dragStart frame.Position=UDim2.new( startPos.X.Scale, startPos.X.Offset+d.X, startPos.Y.Scale, startPos.Y.Offset+d.Y ) end end) UIS.InputEnded:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then dragging=false end end) -- Mobile/PC resize handle local resizeHandle=Instance.new("TextButton",frame) resizeHandle.Name="ResizeHandle" resizeHandle.Size=UDim2.fromOffset(24,24) resizeHandle.Position=UDim2.new(1,-28,1,-28) resizeHandle.BackgroundColor3=Color3.fromRGB(70,220,255) resizeHandle.BackgroundTransparency=0.15 resizeHandle.Text="↘" resizeHandle.Font=Enum.Font.GothamBold resizeHandle.TextSize=15 resizeHandle.TextColor3=Color3.new(1,1,1) resizeHandle.AutoButtonColor=false resizeHandle.Active=true Instance.new("UICorner",resizeHandle).CornerRadius=UDim.new(0,6) local resizing=false local resizeStart=nil local startSize=nil resizeHandle.InputBegan:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then resizing=true resizeStart=i.Position startSize=frame.AbsoluteSize end end) UIS.InputChanged:Connect(function(i) if resizing and (i.UserInputType==Enum.UserInputType.MouseMovement or i.UserInputType==Enum.UserInputType.Touch) then local d=i.Position-resizeStart local newWidth=math.clamp( startSize.X+d.X, 280, math.max(300,workspace.CurrentCamera.ViewportSize.X-20) ) local newHeight=math.clamp( startSize.Y+d.Y, 300, math.max(350,workspace.CurrentCamera.ViewportSize.Y-20) ) frame.Size=UDim2.fromOffset(newWidth,newHeight) updateResponsiveUI() end end) UIS.InputEnded:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then resizing=false end end) updateResponsiveUI() A.MouseButton1Click:Connect(function() frame.Visible=not frame.Visible end) close.MouseButton1Click:Connect(function() frame.Visible=false end) local minimized=false mini.MouseButton1Click:Connect(function() minimized=not minimized body.Visible=not minimized frame.Size=minimized and UDim2.fromOffset(350,65) or UDim2.fromOffset(720,500) if not minimized then task.defer(updateResponsiveUI) end end) -- Speed slider local sliding=false local speedConnections={} local function disconnectSpeedConnections() for _,connection in ipairs(speedConnections) do if connection then connection:Disconnect() end end table.clear(speedConnections) end local function applySpeed(h) if h and h.Parent then h.WalkSpeed=speedValue end end local function setupHumanoidSpeed(c) disconnectSpeedConnections() local h=c:WaitForChild("Humanoid") -- Apply the saved value immediately after spawning. applySpeed(h) -- Keep the selected value when something in the game changes WalkSpeed. -- This is for the user's own game; the server should still be the authority -- for any intended gameplay limits. table.insert(speedConnections,h:GetPropertyChangedSignal("WalkSpeed"):Connect(function() if h.WalkSpeed~=speedValue then applySpeed(h) end end)) end local function updateSpeedSliderFromX(x) x=math.clamp(x,0,1) speedValue=math.max(1,math.floor(x*100)) fill.Size=UDim2.new(x,0,1,0) knob.Position=UDim2.new(x,-9,.5,-9) speedText.Text="Speed : "..speedValue local c=player.Character local h=c and c:FindFirstChildOfClass("Humanoid") applySpeed(h) end bar.InputBegan:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 then sliding=true local x=(i.Position.X-bar.AbsolutePosition.X)/bar.AbsoluteSize.X updateSpeedSliderFromX(x) end end) knob.InputBegan:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 then sliding=true end end) UIS.InputEnded:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 then sliding=false local c=player.Character local h=c and c:FindFirstChildOfClass("Humanoid") applySpeed(h) end end) UIS.InputChanged:Connect(function(i) if sliding and i.UserInputType==Enum.UserInputType.MouseMovement then local x=(i.Position.X-bar.AbsolutePosition.X)/bar.AbsoluteSize.X updateSpeedSliderFromX(x) end end) player.CharacterAdded:Connect(function(c) setupHumanoidSpeed(c) end) if player.Character then task.spawn(setupHumanoidSpeed,player.Character) end -- ESP local function refreshESP() for _,p in ipairs(Players:GetPlayers()) do if p~=player and p.Character then local h=p.Character:FindFirstChild("ARAM_ESP") if espEnabled then if not h then h=Instance.new("Highlight") h.Name="ARAM_ESP" h.FillColor=Color3.fromRGB(70,220,255) h.OutlineColor=Color3.new(1,1,1) h.DepthMode=Enum.HighlightDepthMode.AlwaysOnTop h.Parent=p.Character end elseif h then h:Destroy() end end end end -- Floating Aimbot button local function updateAimButton() if aimButton then aimButton.BackgroundColor3=aimbotEnabled and Color3.fromRGB(45,175,80) or Color3.fromRGB(180,55,55) end end local function toggleAim() aimbotEnabled=not aimbotEnabled if not aimbotEnabled then currentTarget=nil end updateAimButton() end local function createAimButton() if aimButton then aimButton.Visible=true return end aimButton=Instance.new("TextButton",gui) aimButton.Size=UDim2.fromOffset(170,50) aimButton.Position=UDim2.new(1,-190,.5,-25) aimButton.Text="🔫 AIMBOT [MMB]" aimButton.Font=Enum.Font.GothamBold aimButton.TextSize=16 aimButton.TextColor3=Color3.new(1,1,1) Instance.new("UICorner",aimButton).CornerRadius=UDim.new(0,14) local st=Instance.new("UIStroke",aimButton) st.Color=Color3.fromRGB(120,230,255) updateAimButton() aimButton.MouseButton1Click:Connect(toggleAim) local drag=false local ds=nil local sp=nil aimButton.InputBegan:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then drag=true ds=i.Position sp=aimButton.Position end end) UIS.InputChanged:Connect(function(i) if drag and (i.UserInputType==Enum.UserInputType.MouseMovement or i.UserInputType==Enum.UserInputType.Touch) then local d=i.Position-ds aimButton.Position=UDim2.new( sp.X.Scale, sp.X.Offset+d.X, sp.Y.Scale, sp.Y.Offset+d.Y ) end end) UIS.InputEnded:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then drag=false end end) end local function removeAimButton() aimbotEnabled=false currentTarget=nil if aimButton then aimButton:Destroy() aimButton=nil end aimBtn.Text="ADD" aimBtn.BackgroundColor3=Color3.fromRGB(170,40,40) end UIS.InputBegan:Connect(function(i,gp) if gp then return end if i.UserInputType==Enum.UserInputType.MouseButton3 and aimButton then toggleAim() end end) -- AutoBite floating button local function updateAutoBiteButton() if autoBiteButton then autoBiteButton.BackgroundColor3=autoBiteEnabled and Color3.fromRGB(45,175,80) or Color3.fromRGB(180,55,55) autoBiteButton.Text="🦷 AUTOBITE" end end local function toggleAutoBite() autoBiteEnabled=not autoBiteEnabled if not autoBiteEnabled then updateAutoBiteButton() return end updateAutoBiteButton() task.spawn(function() while autoBiteEnabled and autoBiteButton and autoBiteButton.Parent do pcall(function() VIM:SendKeyEvent(true,Enum.KeyCode.Q,false,game) task.wait(0.06) VIM:SendKeyEvent(false,Enum.KeyCode.Q,false,game) end) task.wait(0.06) end end) end local function createAutoBiteButton() if autoBiteButton then autoBiteButton.Visible=true return end autoBiteButton=Instance.new("TextButton",gui) autoBiteButton.Size=UDim2.fromOffset(170,50) autoBiteButton.Position=UDim2.new(1,-190,.5,35) autoBiteButton.Text="🦷 AUTOBITE" autoBiteButton.Font=Enum.Font.GothamBold autoBiteButton.TextSize=16 autoBiteButton.TextColor3=Color3.new(1,1,1) Instance.new("UICorner",autoBiteButton).CornerRadius=UDim.new(0,14) local st=Instance.new("UIStroke",autoBiteButton) st.Color=Color3.fromRGB(120,230,255) updateAutoBiteButton() autoBiteButton.MouseButton1Click:Connect(toggleAutoBite) local drag=false local ds,sp autoBiteButton.InputBegan:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then drag=true ds=i.Position sp=autoBiteButton.Position end end) UIS.InputChanged:Connect(function(i) if drag and (i.UserInputType==Enum.UserInputType.MouseMovement or i.UserInputType==Enum.UserInputType.Touch) then local d=i.Position-ds autoBiteButton.Position=UDim2.new( sp.X.Scale, sp.X.Offset+d.X, sp.Y.Scale, sp.Y.Offset+d.Y ) end end) UIS.InputEnded:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then drag=false end end) end local function removeAutoBiteButton() autoBiteEnabled=false if autoBiteButton then autoBiteButton:Destroy() autoBiteButton=nil end autoBiteBtn.Text="ADD" autoBiteBtn.BackgroundColor3=Color3.fromRGB(170,40,40) end -- Buttons local function setBtn(btn,on) btn.Text=on and "ON" or "OFF" btn.BackgroundColor3=on and Color3.fromRGB(40,170,40) or Color3.fromRGB(170,40,40) end espBtn.MouseButton1Click:Connect(function() espEnabled=not espEnabled setBtn(espBtn,espEnabled) refreshESP() end) noclipBtn.MouseButton1Click:Connect(function() noclipEnabled=not noclipEnabled setBtn(noclipBtn,noclipEnabled) end) aimBtn.MouseButton1Click:Connect(function() if not aimButton then createAimButton() aimBtn.Text="HIDE" aimBtn.BackgroundColor3=Color3.fromRGB(70,150,220) else removeAimButton() end end) autoBiteBtn.MouseButton1Click:Connect(function() if not autoBiteButton then createAutoBiteButton() autoBiteBtn.Text="HIDE" autoBiteBtn.BackgroundColor3=Color3.fromRGB(70,150,220) else removeAutoBiteButton() end end) -- Cheese pickup local cheeseBusy=false local function normalizedName(name) return string.lower((name or ""):gsub("%s+","")) end local function findCheeseTrays() local trays={} -- Search the whole Workspace instead of only Workspace.Cafeteria. -- Some games put the visible "Cheese Tray" objects in nested folders/models. for _,obj in ipairs(workspace:GetDescendants()) do if normalizedName(obj.Name)=="cheesetray" then local prompt=obj:FindFirstChildWhichIsA("ProximityPrompt",true) -- Also check the object's ancestors in case the prompt is attached -- to a nearby part/model rather than directly inside the tray. if not prompt then local parent=obj.Parent for _=1,4 do if not parent then break end prompt=parent:FindFirstChildWhichIsA("ProximityPrompt",true) if prompt then break end parent=parent.Parent end end local targetCFrame=nil if obj:IsA("BasePart") then targetCFrame=obj.CFrame elseif obj:IsA("Model") then targetCFrame=obj:GetPivot() else local part=obj:FindFirstChildWhichIsA("BasePart",true) if part then targetCFrame=part.CFrame end end if targetCFrame then table.insert(trays,{ object=obj, prompt=prompt, cframe=targetCFrame }) end end end return trays end local function findTakeTrayButton() local playerGui=player:FindFirstChild("PlayerGui") if not playerGui then return nil end for _,guiObject in ipairs(playerGui:GetDescendants()) do if guiObject:IsA("GuiButton") and guiObject.Visible and guiObject.Active then local buttonText="" pcall(function() buttonText=guiObject.Text or "" end) local normalized=string.lower(buttonText):gsub("%s+","") if normalized=="taketray" or normalized:find("taketray",1,true) then return guiObject end end end return nil end local function findTakeKeycardButton() local playerGui=player:FindFirstChild("PlayerGui") if not playerGui then return nil end for _,guiObject in ipairs(playerGui:GetDescendants()) do if guiObject:IsA("GuiButton") and guiObject.Visible and guiObject.Active then local buttonText="" pcall(function() buttonText=guiObject.Text or "" end) local normalized=string.lower(buttonText):gsub("%s+","") if normalized=="takekeycard" or normalized:find("takekeycard",1,true) then return guiObject end end end return nil end local function activateTakeKeycardUI(timeout) local deadline=os.clock()+(timeout or 1.5) while os.clock()0 then local d=(root.Position-hrp.Position).Magnitude if d0 then camera.CFrame=CFrame.new(camera.CFrame.Position,head.Position) return end currentTarget=nil end end currentTarget=closestTarget() if currentTarget and not isIgnoredAimbotTeam(currentTarget) then local character=currentTarget.Character local head=character and character:FindFirstChild("Head") local hum=character and character:FindFirstChildOfClass("Humanoid") if head and hum and hum.Health>0 then camera.CFrame=CFrame.new(camera.CFrame.Position,head.Position) else currentTarget=nil end end end) -- Keep ESP working after players respawn. local function setupESPRespawn(p) if p==player then return end p.CharacterAdded:Connect(function() task.wait(0.15) if espEnabled then refreshESP() end end) end for _,pl in ipairs(Players:GetPlayers()) do setupESPRespawn(pl) end Players.PlayerAdded:Connect(setupESPRespawn) refreshESP()