
Key Required
Bring Giftboxs
Lua Script•220 lines (6920 chars)
local TARGET_GAME_ID = 114031157005341
local CIRCLE_RADIUS = 5
local Players = game:GetService("Players")
local Workspace = game:GetService("Workspace")
local CoreGui = game:GetService("CoreGui")
local StarterGui = game:GetService("StarterGui")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local TeleportService = game:GetService("TeleportService")
local currentPlaceId = game.PlaceId
local player = Players.LocalPlayer
if TARGET_GAME_ID ~= 0 and currentPlaceId ~= TARGET_GAME_ID then
StarterGui:SetCore("SendNotification", {
Title = "Teleporting",
Text = "Joining correct game...",
Duration = 5
})
TeleportService:Teleport(TARGET_GAME_ID, player)
return
end
if CoreGui:FindFirstChild("GiftBoxGui") then
CoreGui.GiftBoxGui:Destroy()
end
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "GiftBoxGui"
screenGui.ResetOnSpawn = false
screenGui.Parent = CoreGui
local mainFrame = Instance.new("Frame")
mainFrame.Name = "MainFrame"
mainFrame.Size = UDim2.new(0, 220, 0, 130)
mainFrame.Position = UDim2.new(0.5, -110, 0.5, -65)
mainFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 25)
mainFrame.BorderSizePixel = 0
mainFrame.Parent = screenGui
local frameCorner = Instance.new("UICorner")
frameCorner.CornerRadius = UDim.new(0, 8)
frameCorner.Parent = mainFrame
local frameStroke = Instance.new("UIStroke")
frameStroke.Color = Color3.fromRGB(45, 45, 55)
frameStroke.Thickness = 1
frameStroke.Parent = mainFrame
local titleBar = Instance.new("Frame")
titleBar.Name = "TitleBar"
titleBar.Size = UDim2.new(1, 0, 0, 30)
titleBar.BackgroundTransparency = 1
titleBar.Parent = mainFrame
local titleLabel = Instance.new("TextLabel")
titleLabel.Name = "Title"
titleLabel.Size = UDim2.new(1, -20, 1, 0)
titleLabel.Position = UDim2.new(0, 10, 0, 0)
titleLabel.BackgroundTransparency = 1
titleLabel.Text = "GiftBox Collector"
titleLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
titleLabel.TextXAlignment = Enum.TextXAlignment.Left
titleLabel.Font = Enum.Font.GothamMedium
titleLabel.TextSize = 13
titleLabel.Parent = titleBar
local divider = Instance.new("Frame")
divider.Name = "Divider"
divider.Size = UDim2.new(1, 0, 0, 1)
divider.Position = UDim2.new(0, 0, 1, 0)
divider.BackgroundColor3 = Color3.fromRGB(45, 45, 55)
divider.BorderSizePixel = 0
divider.Parent = titleBar
local statusLabel = Instance.new("TextLabel")
statusLabel.Name = "Status"
statusLabel.Size = UDim2.new(1, -20, 0, 20)
statusLabel.Position = UDim2.new(0, 10, 0, 45)
statusLabel.BackgroundTransparency = 1
statusLabel.Text = "Status: Idle"
statusLabel.TextColor3 = Color3.fromRGB(150, 150, 150)
statusLabel.TextXAlignment = Enum.TextXAlignment.Left
statusLabel.Font = Enum.Font.Gotham
statusLabel.TextSize = 12
statusLabel.Parent = mainFrame
local collectButton = Instance.new("TextButton")
collectButton.Name = "ExecuteButton"
collectButton.Size = UDim2.new(1, -20, 0, 34)
collectButton.Position = UDim2.new(0, 10, 0, 78)
collectButton.BackgroundColor3 = Color3.fromRGB(75, 110, 220)
collectButton.AutoButtonColor = false
collectButton.BorderSizePixel = 0
collectButton.Text = "Collect"
collectButton.TextColor3 = Color3.fromRGB(255, 255, 255)
collectButton.Font = Enum.Font.GothamMedium
collectButton.TextSize = 13
collectButton.Parent = mainFrame
local buttonCorner = Instance.new("UICorner")
buttonCorner.CornerRadius = UDim.new(0, 6)
buttonCorner.Parent = collectButton
local dragging = false
local dragStart
local startPos
titleBar.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = true
dragStart = input.Position
startPos = mainFrame.Position
end
end)
titleBar.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = false
end
end)
UserInputService.InputChanged:Connect(function(input)
if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then
local delta = input.Position - dragStart
mainFrame.Position = UDim2.new(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
end
end)
local function tweenColor(obj, color)
TweenService:Create(obj, TweenInfo.new(0.2), {BackgroundColor3 = color}):Play()
end
local function updateStatus(text, color)
statusLabel.Text = "Status: " .. text
statusLabel.TextColor3 = color or Color3.fromRGB(150, 150, 150)
end
local function collectGiftBoxes()
collectButton.Text = "Working..."
tweenColor(collectButton, Color3.fromRGB(45, 45, 55))
updateStatus("Setting prompts...", Color3.fromRGB(220, 180, 80))
for _, thing in ipairs(Workspace:GetDescendants()) do
if thing.ClassName == "ProximityPrompt" then
thing.HoldDuration = 0
end
end
task.wait(0.5)
local character = player.Character or player.CharacterAdded:Wait()
local root = character:WaitForChild("HumanoidRootPart")
local playerPos = root.Position
updateStatus("Finding boxes...", Color3.fromRGB(80, 180, 220))
local giftBoxes = {}
for _, obj in ipairs(Workspace:GetDescendants()) do
if obj:IsA("Model") and obj.Name == "GiftBox" then
table.insert(giftBoxes, obj)
end
end
if #giftBoxes == 0 then
updateStatus("No boxes found", Color3.fromRGB(220, 80, 80))
collectButton.Text = "Collect"
tweenColor(collectButton, Color3.fromRGB(75, 110, 220))
return
end
updateStatus("Moving " .. #giftBoxes .. " boxes...", Color3.fromRGB(80, 220, 80))
for i, box in ipairs(giftBoxes) do
local angle = (i - 1) * (2 * math.pi / #giftBoxes)
local offset = Vector3.new(
math.cos(angle) * CIRCLE_RADIUS,
0,
math.sin(angle) * CIRCLE_RADIUS
)
local targetCFrame = CFrame.new(playerPos + offset)
if box.PrimaryPart then
box:SetPrimaryPartCFrame(targetCFrame)
else
for _, part in ipairs(box:GetChildren()) do
if part:IsA("BasePart") then
part.CFrame = targetCFrame
break
end
end
end
end
updateStatus("Done (" .. #giftBoxes .. " boxes)", Color3.fromRGB(80, 220, 80))
collectButton.Text = "Collect"
tweenColor(collectButton, Color3.fromRGB(75, 110, 220))
end
collectButton.MouseButton1Click:Connect(collectGiftBoxes)
collectButton.MouseEnter:Connect(function()
if collectButton.Text ~= "Working..." then
tweenColor(collectButton, Color3.fromRGB(85, 125, 240))
end
end)
collectButton.MouseLeave:Connect(function()
if collectButton.Text ~= "Working..." then
tweenColor(collectButton, Color3.fromRGB(75, 110, 220))
end
end)Features & Information
Still Works: 6/25/26
Kind of an Improved Version of BinaryZero's Script
Original: DELETED

Good script and it works well, but it would be even better if it had a simple GUI and a map ID check to avoid running in the wrong place
@SCRIPTER_67676900 Alr
Not working dude,It says "Wrong game dude,little fish
@Bukashhh Did you go into Fnaf SOTM?
The ui changed its not on left side screen its on middle now