Split the Sea Script Keyless
Split The Sea Keyless
Split the Sea Script Keyless
👤 alexriderr 👁 22 views ❤️ 0 likes ⏱ Apr 4, 2026
This is a simple open-source script for loot control in the Split the Sea Roblox game, offering only a few basic functions.
✨ Features
Loot controller Cybertech Plot1
📋 Script Code
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")

local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")

--// SETTINGS
local CURRENT_PLOT = "Plot1"
local CURRENT_ISLAND = "Basic"
local TELEPORT_DELAY = 0.08

local ISLANDS = {"Basic", "VoidReef", "CyberTech", "RainbowReef", "RadioactiveReef"}
local PLOTS = {"Plot1", "Plot2", "Plot3", "Plot4", "Plot5"}

local lootFolder = workspace:WaitForChild("ActiveLoot")
local busy = false

--// GUI
local screenGui = Instance.new("ScreenGui", playerGui)
screenGui.ResetOnSpawn = false

local frame = Instance.new("Frame", screenGui)
frame.Size = UDim2.new(0, 260, 0, 200)
frame.Position = UDim2.new(0.1, 0, 0.2, 0)
frame.BackgroundColor3 = Color3.fromRGB(30,30,30)
frame.Active = true
frame.Draggable = true

local title = Instance.new("TextLabel", frame)
title.Size = UDim2.new(1,0,0,25)
title.Text = "Loot Controller"
title.BackgroundTransparency = 1
title.TextColor3 = Color3.new(1,1,1)

--// DROPDOWN FUNCTION
local function createDropdown(parent, position, options, default, callback)
    local container = Instance.new("Frame", parent)
    container.Position = position
    container.Size = UDim2.new(0, 230, 0, 25)
    container.BackgroundColor3 = Color3.fromRGB(50,50,50)
    container.ZIndex = 2

    local button = Instance.new("TextButton", container)
    button.Size = UDim2.new(1,0,1,0)
    button.Text = default
    button.TextColor3 = Color3.new(1,1,1)
    button.BackgroundTransparency = 1
    button.ZIndex = 3

    local listFrame = Instance.new("Frame", container)
    listFrame.Position = UDim2.new(0,0,1,0)
    listFrame.Size = UDim2.new(1,0,0,#options * 25)
    listFrame.BackgroundColor3 = Color3.fromRGB(40,40,40)
    listFrame.Visible = false
    listFrame.ZIndex = 10 -- 🔥 HIGH so it appears on top

    for i, option in ipairs(options) do
        local opt = Instance.new("TextButton", listFrame)
        opt.Size = UDim2.new(1,0,0,25)
        opt.Position = UDim2.new(0,0,0,(i-1)*25)
        opt.Text = option
        opt.BackgroundTransparency = 1
        opt.TextColor3 = Color3.new(1,1,1)
        opt.ZIndex = 11 -- above dropdown background

        opt.MouseButton1Click:Connect(function()
            button.Text = option
            listFrame.Visible = false
            callback(option)
        end)
    end

    button.MouseButton1Click:Connect(function()
        listFrame.Visible = not listFrame.Visible
    end)

    return button
end

-- Island dropdown
createDropdown(frame, UDim2.new(0,10,0,35), ISLANDS, CURRENT_ISLAND, function(val)
    CURRENT_ISLAND = val
end)

-- Plot dropdown
createDropdown(frame, UDim2.new(0,10,0,70), PLOTS, CURRENT_PLOT, function(val)
    CURRENT_PLOT = val
end)

-- Delay input
local delayBox = Instance.new("TextBox", frame)
delayBox.Position = UDim2.new(0,10,0,105)
delayBox.Size = UDim2.new(0,230,0,25)
delayBox.Text = tostring(TELEPORT_DELAY)

delayBox.FocusLost:Connect(function()
    local val = tonumber(delayBox.Text)
    if val then
        TELEPORT_DELAY = val
    end
end)

-- Buttons
local collectBtn = Instance.new("TextButton", frame)
collectBtn.Position = UDim2.new(0,10,0,140)
collectBtn.Size = UDim2.new(0,110,0,40)
collectBtn.Text = "Collect"

local homeBtn = Instance.new("TextButton", frame)
homeBtn.Position = UDim2.new(0,130,0,140)
homeBtn.Size = UDim2.new(0,110,0,40)
homeBtn.Text = "Home"

--// LOGIC

local function getSafeZone()
    local island = workspace:WaitForChild("Islands"):FindFirstChild(CURRENT_ISLAND)
    if not island then return nil end

    local plot = island:WaitForChild("Plots"):FindFirstChild(CURRENT_PLOT)
    if not plot then return nil end

    return plot:WaitForChild("Important"):FindFirstChild("SafeZone")
end

local function getMatchingLoot()
    local matches = {}

    local character = player.Character or player.CharacterAdded:Wait()
    local hrp = character:WaitForChild("HumanoidRootPart")

    for _, model in ipairs(lootFolder:GetChildren()) do
        if model:IsA("Model") and model:GetAttribute("PlotName") == CURRENT_PLOT then
            local pivot = model:GetPivot()
            local distance = (pivot.Position - hrp.Position).Magnitude

            if distance <= 800 then
                table.insert(matches, model)
            end
        end
    end

    return matches
end

local function teleportOnce()
    if busy then return end
    busy = true

    local character = player.Character or player.CharacterAdded:Wait()
    local hrp = character:WaitForChild("HumanoidRootPart")

    for _, model in ipairs(getMatchingLoot()) do
        if model and model.Parent then
            hrp.CFrame = model:GetPivot() + Vector3.new(0,2,0)
        end
        task.wait(TELEPORT_DELAY)
    end

    busy = false
end

local function teleportHome()
    local safeZone = getSafeZone()
    if not safeZone then return end

    local character = player.Character or player.CharacterAdded:Wait()
    local hrp = character:WaitForChild("HumanoidRootPart")

    hrp.CFrame = safeZone.CFrame + Vector3.new(0,3,0)
end

-- Buttons
collectBtn.MouseButton1Click:Connect(teleportOnce)
homeBtn.MouseButton1Click:Connect(teleportHome)

-- Hotkeys
UserInputService.InputBegan:Connect(function(input, gp)
    if gp then return end

    if input.KeyCode == Enum.KeyCode.G then
        teleportOnce()
    elseif input.KeyCode == Enum.KeyCode.F then
        teleportHome()
    end
end)
🎮 Similar Scripts
💬 Comments (0)
Login to post a comment
No comments yet. Be the first!
Script Info
Game Split The Sea
TypeKeyless
Authoralexriderr
Views22
Likes0
PublishedApr 4, 2026
🎮 Play Game on Roblox
🕐 Recent Scripts
The forge script from ZENITH HUB
The forge script from ZENITH HUB
the forge roblox • 👁 8
Keyless
RichKidz Script for Blox Fruits | Auto Farm Money (ByPass), ServerHop, AntiKick, Keyless
RichKidz Script for Blox Fruits | Auto Farm Money (ByPass), ServerHop, AntiKick, Keyless
Blox Fruits • 👁 9
Keyless
NEW! Blade Ball Argon Hub X Auto Parry (KEYLESS)
NEW! Blade Ball Argon Hub X Auto Parry (KEYLESS)
Blade Ball • 👁 9
Keyless
Blade Ball Auto Play Script Keyless
Blade Ball Auto Play Script Keyless
Blade Ball • 👁 10
Keyless
The best free Ultimate Battlegrounds script Infinite Awakening
The best free Ultimate Battlegrounds script Infinite Awakening
Ultimate Battlegrounds • 👁 14
Keyless