best simple script works on xeno keyless!
Key Required

best simple script works on xeno keyless!

counterfeit tycoonzalkzalk 2.1K views 426 executesUpdated Mar 9, 2026
2.5/ 5(2 votes)
1150% Positive
Lua Script•193 lines (6669 chars)
local player = game:GetService("Players").LocalPlayer
local coreGui = game:GetService("CoreGui")
local workspace = game:GetService("Workspace")
local userInputService = game:GetService("UserInputService")

local screenGui = Instance.new("ScreenGui")
screenGui.Name = "bringAndSellGui"
screenGui.Parent = coreGui

local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 200, 0, 180)
frame.Position = UDim2.new(0.5, -100, 0.8, 0)
frame.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
frame.Active = true
frame.Draggable = true
frame.Parent = screenGui

local infoLabel = Instance.new("TextLabel")
infoLabel.Size = UDim2.new(1, 0, 0, 20)
infoLabel.Position = UDim2.new(0, 0, 0, 5)
infoLabel.BackgroundTransparency = 1
infoLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
infoLabel.Text = "press k to toggle"
infoLabel.TextScaled = true
infoLabel.Parent = frame

local bringButton = Instance.new("TextButton")
bringButton.Size = UDim2.new(1, -20, 0, 40)
bringButton.Position = UDim2.new(0, 10, 0, 30)
bringButton.BackgroundColor3 = Color3.fromRGB(55, 55, 55)
bringButton.TextColor3 = Color3.fromRGB(255, 255, 255)
bringButton.Text = "bring to player"
bringButton.TextScaled = true
bringButton.Parent = frame

local sellButton = Instance.new("TextButton")
sellButton.Size = UDim2.new(1, -20, 0, 40)
sellButton.Position = UDim2.new(0, 10, 0, 80)
sellButton.BackgroundColor3 = Color3.fromRGB(55, 55, 55)
sellButton.TextColor3 = Color3.fromRGB(255, 255, 255)
sellButton.Text = "sell boxes"
sellButton.TextScaled = true
sellButton.Parent = frame

local robButton = Instance.new("TextButton")
robButton.Size = UDim2.new(1, -20, 0, 40)
robButton.Position = UDim2.new(0, 10, 0, 130)
robButton.BackgroundColor3 = Color3.fromRGB(55, 55, 55)
robButton.TextColor3 = Color3.fromRGB(255, 255, 255)
robButton.Text = "auto rob vaults"
robButton.TextScaled = true
robButton.Parent = frame

local function getMyTycoon(rootPart)
    local tycoonsFolder = workspace:FindFirstChild("Tycoons")
    if not tycoonsFolder then return nil end

    for _, tycoon in ipairs(tycoonsFolder:GetChildren()) do
        local ownerValue = tycoon:FindFirstChild("Owner")
        if ownerValue and (ownerValue.Value == player.Name or ownerValue.Value == player) then
            return tycoon
        end
    end

    local closestTycoon = nil
    local shortestDistance = math.huge

    for _, tycoon in ipairs(tycoonsFolder:GetChildren()) do
        local partToMeasure = tycoon:FindFirstChildWhichIsA("BasePart", true)
        if partToMeasure then
            local distance = (partToMeasure.Position - rootPart.Position).Magnitude
            if distance < shortestDistance then
                shortestDistance = distance
                closestTycoon = tycoon
            end
        end
    end

    return closestTycoon
end

local function getNearestPayPart(rootPart)
    local dropoffs = workspace:FindFirstChild("BoxDropoffs")
    if not dropoffs then return nil end

    local closestPay = nil
    local shortestDistance = math.huge

    for _, dropoff in ipairs(dropoffs:GetChildren()) do
        local payPart = dropoff:FindFirstChild("PayPart")
        if payPart and payPart:IsA("BasePart") then
            local distance = (payPart.Position - rootPart.Position).Magnitude
            if distance < shortestDistance then
                shortestDistance = distance
                closestPay = payPart
            end
        end
    end
    return closestPay
end

local function moveBoxes(baseCFrame, scatter)
    local character = player.Character
    if not character then return end
    
    local rootPart = character:FindFirstChild("HumanoidRootPart")
    if not rootPart then return end

    local myTycoon = getMyTycoon(rootPart)
    if not myTycoon then return end

    local fullBoxes = myTycoon:FindFirstChild("Boxes")
        and myTycoon.Boxes:FindFirstChild("FullBoxes")

    if fullBoxes then
        for _, boxFolder in ipairs(fullBoxes:GetChildren()) do
            for _, item in ipairs(boxFolder:GetChildren()) do
                local finalCFrame = baseCFrame
                
                if scatter then
                    local offsetX = math.random(-30, 30) / 10
                    local offsetZ = math.random(-30, 30) / 10
                    finalCFrame = baseCFrame * CFrame.new(offsetX, 0, offsetZ)
                end

                if item:IsA("Model") then
                    item:PivotTo(finalCFrame)
                elseif item:IsA("BasePart") then
                    item.CFrame = finalCFrame
                end
            end
        end
    end
end

bringButton.MouseButton1Click:Connect(function()
    local character = player.Character
    if character and character:FindFirstChild("HumanoidRootPart") then
        moveBoxes(character.HumanoidRootPart.CFrame, true)
    end
end)

sellButton.MouseButton1Click:Connect(function()
    local character = player.Character
    if not character then return end
    local rootPart = character:FindFirstChild("HumanoidRootPart")
    if not rootPart then return end

    local nearestPay = getNearestPayPart(rootPart)
    if nearestPay then
        local dropCFrame = nearestPay.CFrame * CFrame.new(0, 3, 0)
        moveBoxes(dropCFrame, true)
    end
end)

robButton.MouseButton1Click:Connect(function()
    local character = player.Character
    if not character then return end
    local rootPart = character:FindFirstChild("HumanoidRootPart")
    if not rootPart then return end

    local tycoons = workspace:FindFirstChild("Tycoons")
    if not tycoons then return end

    local myTycoon = getMyTycoon(rootPart)
    local originalCFrame = rootPart.CFrame

    for _, tycoon in ipairs(tycoons:GetChildren()) do
        if tycoon ~= myTycoon then
            local vault = tycoon:FindFirstChild("Vault")
            if vault then
                local prompt = vault:FindFirstChildWhichIsA("ProximityPrompt", true)
                if prompt and prompt.Parent and prompt.Parent:IsA("BasePart") then
                    -- teleports you to the vault
                    rootPart.CFrame = prompt.Parent.CFrame * CFrame.new(0, 3, 0)
                    task.wait(0.5) -- waits for the server to update your position
                    
                    fireproximityprompt(prompt)
                    task.wait(0.5) -- waits before moving to the next base
                end
            end
        end
    end
    
    -- teleports you back to where you started
    rootPart.CFrame = originalCFrame
end)

userInputService.InputBegan:Connect(function(input, gameProcessed)
    if not gameProcessed and input.KeyCode == Enum.KeyCode.K then
        frame.Visible = not frame.Visible
    end
end)

Features & Information

keyless quick simple lightweight fast
#keyless quick simple lightweight fast#keyless#quick#simple#lightweight

Community Comments (3)

Cj984Cj984Mar 24, 2026

Inf money?

4dclo4dcloMar 31, 2026

anti cheat lwk cooked this

DreamFRDreamFRApr 10, 2026

only the rob banks dont work, the other works

More Scripts for counterfeit tycoon