
KeylessUniversal

local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local hrp = character:WaitForChild("HumanoidRootPart")
local autoFarm = false
local iceFarmed = 0
-- ================== EDIT THIS ==================
-- 1. Go to the obby
-- 2. Stand on each checkpoint / platform (including the finish platform)
-- 3. Run in console (F9): print(game.Players.LocalPlayer.Character.HumanoidRootPart.Position)
-- 4. Copy the Vector3 and paste it here (add as many as you want)
local waypoints = {
Vector3.new(0, 5, 0), -- ← REPLACE THESE
Vector3.new(50, 10, 20),
Vector3.new(120, 25, 80),
Vector3.new(200, 15, 150),
Vector3.new(280, 40, 220), -- last one should be near the claim prompt
-- Add more lines if your obby has more checkpoints
}
local tweenSpeed = 350 -- higher = faster (300-400 is good)
local claimDelay = 1.2 -- seconds to wait after claim
-- ===============================================
-- Create draggable GUI
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "KnockoutAutoFarm"
screenGui.ResetOnSpawn = false
screenGui.Parent = player:WaitForChild("PlayerGui")
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 260, 0, 180)
frame.Position = UDim2.new(0.5, -130, 0.3, 0)
frame.BackgroundColor3 = Color3.fromRGB(25, 25, 30)
frame.BorderSizePixel = 0
frame.Active = true
frame.Draggable = true
frame.Parent = screenGui
Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 10)
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 40)
title.BackgroundTransparency = 1
title.Text = "🚀 Knockout Auto Ice Farm"
title.TextColor3 = Color3.fromRGB(0, 255, 120)
title.TextSize = 18
title.Font = Enum.Font.GothamBold
title.Parent = frame
local toggleBtn = Instance.new("TextButton")
toggleBtn.Size = UDim2.new(0.9, 0, 0, 45)
toggleBtn.Position = UDim2.new(0.05, 0, 0, 50)
toggleBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 45)
toggleBtn.Text = "START AUTO FARM"
toggleBtn.TextColor3 = Color3.new(1,1,1)
toggleBtn.TextSize = 16
toggleBtn.Font = Enum.Font.GothamSemibold
toggleBtn.Parent = frame
Instance.new("UICorner", toggleBtn).CornerRadius = UDim.new(0, 8)
local status = Instance.new("TextLabel")
status.Size = UDim2.new(0.9, 0, 0, 25)
status.Position = UDim2.new(0.05, 0, 0, 105)
status.BackgroundTransparency = 1
status.Text = "Status: Idle"
status.TextColor3 = Color3.fromRGB(180, 180, 180)
status.TextSize = 14
status.Parent = frame
local counter = Instance.new("TextLabel")
counter.Size = UDim2.new(0.9, 0, 0, 25)
counter.Position = UDim2.new(0.05, 0, 0, 135)
counter.BackgroundTransparency = 1
counter.Text = "Ice farmed: 0"
counter.TextColor3 = Color3.fromRGB(0, 255, 150)
counter.TextSize = 14
counter.Parent = frame
-- Tween helper
local function tweenTo(pos)
local distance = (pos - hrp.Position).Magnitude
local tweenInfo = TweenInfo.new(distance / tweenSpeed, Enum.EasingStyle.Linear)
local tween = TweenService:Create(hrp, tweenInfo, {CFrame = CFrame.new(pos + Vector3.new(0, 4, 0))})
tween:Play()
tween.Completed:Wait()
end
-- Find and trigger any nearby claim prompt
local function claimReward()
for _, obj in ipairs(workspace:GetDescendants()) do
if obj:IsA("ProximityPrompt") then
if (obj.Parent.Position - hrp.Position).Magnitude < 40 then
pcall(function()
local oldHold = obj.HoldDuration
obj.HoldDuration = 0
obj:InputHoldBegin()
task.wait(0.4)
obj:InputHoldEnd()
obj.HoldDuration = oldHold
end)
break
end
end
end
end
-- Main farm loop
local function startFarming()
while autoFarm and character and character:FindFirstChild("HumanoidRootPart") do
status.Text = "Running obby..."
for i, pos in ipairs(waypoints) do
if not autoFarm then break end
status.Text = "Checkpoint " .. i .. "/" .. #waypoints
tweenTo(pos)
task.wait(0.15)
end
if not autoFarm then break end
status.Text = "Claiming 10 Ice..."
claimReward()
task.wait(claimDelay)
iceFarmed += 10
counter.Text = "Ice farmed: " .. iceFarmed
status.Text = "Restarting obby..."
task.wait(0.8)
-- Teleport back to start for next run
if #waypoints > 0 then
hrp.CFrame = CFrame.new(waypoints[1] + Vector3.new(0, 5, 0))
end
end
status.Text = "Status: Stopped"
end
-- Toggle button
toggleBtn.MouseButton1Click:Connect(function()
autoFarm = not autoFarm
if autoFarm then
toggleBtn.Text = "STOP AUTO FARM"
toggleBtn.BackgroundColor3 = Color3.fromRGB(220, 50, 50)
spawn(startFarming)
else
toggleBtn.Text = "START AUTO FARM"
toggleBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 45)
end
end)
-- Reconnect if character respawns
player.CharacterAdded:Connect(function(newChar)
character = newChar
hrp = newChar:WaitForChild("HumanoidRootPart")
end)
print("✅ Knockout Auto Ice Farm loaded!")
print(" → Edit the 'waypoints' table with your checkpoint positions")
print(" → Toggle the GUI to start farming")
Holy AI
trash
lmao ai with the clutch.
@Cold_Shadowsz yessir
Yeah ai