F3x skybox maker gui
Key RequiredUniversal

F3x skybox maker gui

Universal ScriptElliotTheScripterElliotTheScripter 1.4K views 2.7K executesUpdated Oct 5, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•114 lines (3723 chars)
local player = game.Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")

local screen = Instance.new("ScreenGui")
screen.ResetOnSpawn = false
screen.Parent = playerGui

local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 175, 0, 90)
frame.Position = UDim2.new(0.45, 0, 0.3, 0)
frame.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
frame.BorderColor3 = Color3.fromRGB(255, 0, 4)
frame.BorderSizePixel = 1
frame.Active = true
frame.Draggable = true
frame.Parent = screen

local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 16)
title.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
title.BorderColor3 = Color3.fromRGB(255, 0, 4)
title.BorderSizePixel = 1
title.Text = "F3x skybox"
title.TextColor3 = Color3.fromRGB(255, 255, 255)
title.TextScaled = true
title.Font = Enum.Font.TitilliumWeb
title.Parent = frame

local idBox = Instance.new("TextBox")
idBox.Size = UDim2.new(1, -8, 0, 24)
idBox.Position = UDim2.new(0, 4, 0, 22)
idBox.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
idBox.BorderColor3 = Color3.fromRGB(255, 0, 4)
idBox.BorderSizePixel = 1
idBox.Text = ""
idBox.PlaceholderText = "paste ur texture id here"
idBox.PlaceholderColor3 = Color3.fromRGB(150, 150, 150)
idBox.TextColor3 = Color3.fromRGB(0, 0, 0)
idBox.TextScaled = true
idBox.Font = Enum.Font.TitilliumWeb
idBox.ClearTextOnFocus = false
idBox.Parent = frame

local setBtn = Instance.new("TextButton")
setBtn.Size = UDim2.new(1, -8, 0, 28)
setBtn.Position = UDim2.new(0, 4, 0, 52)
setBtn.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
setBtn.BorderColor3 = Color3.fromRGB(255, 0, 4)
setBtn.BorderSizePixel = 1
setBtn.Text = "Set"
setBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
setBtn.TextScaled = true
setBtn.Font = Enum.Font.TitilliumWeb
setBtn.Parent = frame

setBtn.MouseEnter:Connect(function()
    setBtn.BackgroundColor3 = Color3.fromRGB(40, 0, 0)
end)

setBtn.MouseLeave:Connect(function()
    setBtn.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
end)

local function findSyncAPI()
    for _, obj in ipairs(player:GetDescendants()) do
        if obj.Name == "SyncAPI" then
            return obj
        end
    end
    for _, obj in ipairs(game.ReplicatedStorage:GetDescendants()) do
        if obj.Name == "SyncAPI" then
            return obj
        end
    end
    return nil
end

setBtn.MouseButton1Click:Connect(function()
    local sync = findSyncAPI()
    if not sync then
        warn("No F3X tool equipped.")
        return
    end

    local endpoint = sync.ServerEndpoint
    local texture = idBox.Text
    if texture == "" then
        warn("Put a texture id first.")
        return
    end

    local char = player.Character
    if not char then return end
    local root = char:FindFirstChild("HumanoidRootPart")
    if not root then return end

    local spawnCF = root.CFrame + Vector3.new(0, 6, 0)

    endpoint:InvokeServer("CreatePart", "Normal", spawnCF, workspace)
    task.wait(0.2)

    for _, part in ipairs(workspace:GetChildren()) do
        if part:IsA("BasePart") and (part.Position - spawnCF.Position).Magnitude < 1 then
            endpoint:InvokeServer("SetName", {part}, "Sky")
            endpoint:InvokeServer("CreateMeshes", {{["Part"] = part}})
            endpoint:InvokeServer("SyncMesh", {{["Part"] = part, ["MeshId"] = "rbxassetid://111891702759441"}})
            endpoint:InvokeServer("SyncMesh", {{["Part"] = part, ["TextureId"] = "rbxassetid://" .. texture}})
            endpoint:InvokeServer("SyncMesh", {{["Part"] = part, ["Scale"] = Vector3.new(1000, 1000, 1000)}})
            endpoint:InvokeServer("SetLocked", {part}, true)
            endpoint:InvokeServer("SyncAnchor", {{["Part"] = part, ["Anchored"] = true}})
            break
        end
    end
end)

Features & Information

Paste your texture(!!! NOT ASSET ID!!!) in the box and click "set" Button
#Script

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts