OP 10k Every 1 Min 20 Secs UNDETECTED OPEN SOURCE V4
Key Required

OP 10k Every 1 Min 20 Secs UNDETECTED OPEN SOURCE V4

WestboundScripterCoderScripterCoder 10K views 307 executesUpdated Feb 21, 2025
5.0/ 5(7 votes)
70100% Positive
Lua Script•295 lines (10083 chars)
local Players = game:GetService("Players")
local Workspace = game:GetService("Workspace")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")
local UserInputService = game:GetService("UserInputService")
local VirtualUser = game:GetService("VirtualUser")

local localPlayer = Players.LocalPlayer
local character = localPlayer.Character or localPlayer.CharacterAdded:Wait()
local humanoid = character:FindFirstChildWhichIsA("Humanoid")
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")

local bag = localPlayer:WaitForChild("States"):WaitForChild("Bag")
local bagSizeLevel = localPlayer:WaitForChild("Stats"):WaitForChild("BagSizeLevel"):WaitForChild("CurrentAmount")
local robEvent = ReplicatedStorage:WaitForChild("GeneralEvents"):WaitForChild("Rob")
local targetPosition = CFrame.new(1636.62537, 104.349976, -1736.184)

if humanoid then
    local clonedHumanoid = humanoid:Clone()
    clonedHumanoid.Parent = character
    localPlayer.Character = nil
    clonedHumanoid:SetStateEnabled(Enum.HumanoidStateType.Dead, false)
    clonedHumanoid:SetStateEnabled(Enum.HumanoidStateType.FallingDown, false)
    clonedHumanoid:SetStateEnabled(Enum.HumanoidStateType.Physics, false)
    humanoid:Destroy()
    localPlayer.Character = character
    local camera = Workspace.CurrentCamera
    camera.CameraSubject = clonedHumanoid
    camera.CFrame = camera.CFrame
    clonedHumanoid.DisplayDistanceType = Enum.HumanoidDisplayDistanceType.None
    local animate = character:FindFirstChild("Animate")
    if animate then
        animate.Disabled = true
        task.wait()
        animate.Disabled = false
    end
    clonedHumanoid.Health = clonedHumanoid.MaxHealth
    humanoid = clonedHumanoid
    humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
end

localPlayer.Idled:Connect(function()
    VirtualUser:CaptureController()
    VirtualUser:ClickButton2(Vector2.new())
end)

if getgenv().AntiAfkExecuted and game.CoreGui:FindFirstChild("AutoFarmUI") then
    getgenv().AntiAfkExecuted = false
    getgenv().zamanbaslaticisi = false
    game.CoreGui.AutoFarmUI:Destroy()
end
getgenv().AntiAfkExecuted = true

local AutoFarmUI = Instance.new("ScreenGui")
AutoFarmUI.Name = "AutoFarmUI"
AutoFarmUI.Parent = game.CoreGui
AutoFarmUI.ZIndexBehavior = Enum.ZIndexBehavior.Sibling

local MainFrame = Instance.new("Frame")
MainFrame.Parent = AutoFarmUI
MainFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
MainFrame.BackgroundTransparency = 0.2
MainFrame.Position = UDim2.new(0.5, -125, 0.5, -75)
MainFrame.Size = UDim2.new(0, 250, 0, 150)
MainFrame.AnchorPoint = Vector2.new(0.5, 0.5)
MainFrame.Visible = false

local UICorner = Instance.new("UICorner")
UICorner.CornerRadius = UDim.new(0, 10)
UICorner.Parent = MainFrame

local UIStroke = Instance.new("UIStroke")
UIStroke.Thickness = 2
UIStroke.Color = Color3.fromRGB(60, 60, 60)
UIStroke.Parent = MainFrame

local Title = Instance.new("TextLabel")
Title.Parent = MainFrame
Title.Text = "Auto Farm V4"
Title.TextColor3 = Color3.fromRGB(255, 255, 255)
Title.Font = Enum.Font.GothamBold
Title.TextSize = 16
Title.Size = UDim2.new(1, 0, 0, 30)
Title.BackgroundTransparency = 1

local CloseButton = Instance.new("TextButton")
CloseButton.Parent = MainFrame
CloseButton.Text = "X"
CloseButton.Font = Enum.Font.GothamBold
CloseButton.TextSize = 16
CloseButton.TextColor3 = Color3.fromRGB(255, 0, 0)
CloseButton.BackgroundTransparency = 1
CloseButton.Size = UDim2.new(0, 25, 0, 25)
CloseButton.Position = UDim2.new(0.9, 0, 0, 5)

local StatsFrame = Instance.new("Frame")
StatsFrame.Parent = MainFrame
StatsFrame.BackgroundTransparency = 1
StatsFrame.Position = UDim2.new(0, 10, 0, 40)
StatsFrame.Size = UDim2.new(1, -20, 1, -50)

local UIListLayout = Instance.new("UIListLayout")
UIListLayout.Parent = StatsFrame
UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
UIListLayout.Padding = UDim.new(0, 5)

local function createLabel(text, parent)
    local Label = Instance.new("TextLabel")
    Label.Parent = parent
    Label.Text = text
    Label.TextColor3 = Color3.fromRGB(255, 255, 255)
    Label.Font = Enum.Font.Gotham
    Label.TextSize = 14
    Label.Size = UDim2.new(1, 0, 0, 20)
    Label.BackgroundTransparency = 1
    Label.TextXAlignment = Enum.TextXAlignment.Left
    return Label
end

local PingLabel = createLabel("Ping: Calculating...", StatsFrame)
local CashLabel = createLabel("Earnings: $0", StatsFrame)
local FPSLabel = createLabel("FPS: Calculating...", StatsFrame)
local TimerLabel = createLabel("Time: 00:00:00", StatsFrame)

local function openUI()
    MainFrame.Visible = true
    MainFrame.Size = UDim2.new(0, 200, 0, 120)
    local fadeIn = TweenService:Create(MainFrame, TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
        Size = UDim2.new(0, 250, 0, 150),
        BackgroundTransparency = 0.2
    })
    fadeIn:Play()
end

local function closeUI()
    local fadeOut = TweenService:Create(MainFrame, TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.In), {
        Size = UDim2.new(0, 200, 0, 120),
        BackgroundTransparency = 1
    })
    fadeOut:Play()
    fadeOut.Completed:Connect(function()
        AutoFarmUI:Destroy()
    end)
end

CloseButton.MouseButton1Click:Connect(closeUI)
openUI()

local dragging, dragStart, startPos
local currentTween
local function updateDrag(input)
    local delta = input.Position - dragStart
    local targetPos = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
    if currentTween then currentTween:Cancel() end
    currentTween = TweenService:Create(MainFrame, TweenInfo.new(0.1, Enum.EasingStyle.Sine, Enum.EasingDirection.Out), {Position = targetPos})
    currentTween:Play()
end

MainFrame.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
        dragging = true
        dragStart = input.Position
        startPos = MainFrame.Position
        input.Changed:Connect(function()
            if input.UserInputState == Enum.UserInputState.End then
                dragging = false
            end
        end)
    end
end)

MainFrame.InputChanged:Connect(function(input)
    if (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) and dragging then
        updateDrag(input)
    end
end)

UserInputService.InputChanged:Connect(function(input)
    if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then
        updateDrag(input)
    end
end)

task.spawn(function()
    while task.wait(0.5) do
        FPSLabel.Text = "FPS: " .. tostring(math.floor(1 / RunService.RenderStepped:Wait()))
    end
end)

task.spawn(function()
    while task.wait(0.01) do
        local perfStats = game:GetService("Stats"):FindFirstChild("PerformanceStats")
        if perfStats and perfStats:FindFirstChild("Ping") then
            PingLabel.Text = "Ping: " .. tostring(math.floor(perfStats.Ping:GetValue())) .. "ms"
        end
    end
end)

local seconds, minutes, hours = 0, 0, 0
task.spawn(function()
    while task.wait(1) do
        seconds = seconds + 1
        if seconds >= 60 then
            seconds = 0
            minutes = minutes + 1
        end
        if minutes >= 60 then
            minutes = 0
            hours = hours + 1
        end
        TimerLabel.Text = string.format("Time: %02d:%02d:%02d", hours, minutes, seconds)
    end
end)

local function formatNumber(n)
    local formatted = tostring(n)
    local k
    while true do
        formatted, k = string.gsub(formatted, "^(-?%d+)(%d%d%d)", '%1,%2')
        if k == 0 then break end
    end
    return formatted
end

local function moveToTarget()
    if humanoidRootPart then
        humanoidRootPart.CFrame = targetPosition
    end
end

local function checkCashRegister()
    for _, item in ipairs(Workspace:GetChildren()) do
        if bag.Value >= bagSizeLevel.Value then
            moveToTarget()
            break
        elseif item:IsA("Model") and item.Name == "CashRegister" then
            local openPart = item:FindFirstChild("Open")
            if openPart then
                humanoidRootPart.CFrame = openPart.CFrame
                robEvent:FireServer("Register", {
                    Part = item:FindFirstChild("Union"),
                    OpenPart = openPart,
                    ActiveValue = item:FindFirstChild("Active"),
                    Active = true
                })
                return true
            end
        end
    end
    return false
end

local function checkSafe()
    for _, item in ipairs(Workspace:GetChildren()) do
        if bag.Value >= bagSizeLevel.Value then
            moveToTarget()
            break
        elseif item:IsA("Model") and item.Name == "Safe" and item:FindFirstChild("Amount") and item.Amount.Value > 0 then
            local safePart = item:FindFirstChild("Safe")
            if safePart then
                humanoidRootPart.CFrame = safePart.CFrame
                local openFlag = item:FindFirstChild("Open")
                if openFlag and openFlag.Value then
                    robEvent:FireServer("Safe", item)
                else
                    local openSafe = item:FindFirstChild("OpenSafe")
                    if openSafe then
                        openSafe:FireServer("Completed")
                    end
                    robEvent:FireServer("Safe", item)
                end
                return true
            end
        end
    end
    return false
end

RunService.RenderStepped:Connect(function()
    if not checkCashRegister() then
        checkSafe()
    end
end)

local leaderstats = localPlayer:WaitForChild("leaderstats")
local cashStat = leaderstats:WaitForChild("$$")
local initialCash = cashStat.Value

task.spawn(function()
    while task.wait(1) do
        local earned = cashStat.Value - initialCash
        CashLabel.Text = "Earnings: $" .. formatNumber(earned)
    end
end)

Features & Information

"REPORT ANYTHING THAT'S BROKEN IN COMMENTS" Open Source (YOU GET MORE IF YOU UPGRADE EVERYTHING TO MAX :D) Get 10k $$ Every 10 Minutes with this op script. (WARNING: BEST TO USE THIS IN A PRIVATE SERVER) 100 Every 89 miliseconds 1K Every 12 seconds 10k Every 1 Minute 20 Seconds JOIN THE DISCORD FOR MORE WESTBOUND SCRIPTS: https://discord.gg/suh4QUFpbv Update 1 (Added Anti Afk | Ping Shower | Fps Shower | Ingame Timer Shower) Update 2 (Made it 4X More Faster = More money Faster) Update 3 (Reduced waiting speed for script to work from 30 seconds too 5 seconds) Update 4 (Fixed Lag After Executing) Update 5 (Thanks for carl for making a Earnings Status| Earnings Shows how much money you have made) Update 6 (Made new ui thanks too @CarlTheBoss for impletnting all the functions into the new ui ♥)

Community Comments (3)

m3ngom3ngoFeb 21, 2025(edited)

Works in luna

cauacauaFeb 21, 2025(edited)

W autofarm bro wow

yugiyugiFeb 21, 2025(edited)

working great thanks !!

More Scripts for Westbound