KEYLESS Custom Amount Giver Gui
Key Required

KEYLESS Custom Amount Giver Gui

[W4] Ride a Box Obby 📦Yosef_1220Yosef_1220 4.9K views 128 executesUpdated Apr 6, 2026
4.3/ 5(7 votes)
6186% Positive
Lua Script•219 lines (9502 chars)
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local UserInputService = game:GetService("UserInputService")

local player = Players.LocalPlayer

local clickSound = Instance.new("Sound")
clickSound.SoundId = "rbxassetid://6895079853"
clickSound.Volume = 0.5
clickSound.Parent = game:GetService("SoundService")

local bgMusic = Instance.new("Sound")
bgMusic.Looped = true
bgMusic.Parent = game:GetService("SoundService")

local function playClick() clickSound:Play() end

local screenGui = Instance.new("ScreenGui")
screenGui.Name = "UltimateMasterGUI_Fixed"
screenGui.ResetOnSpawn = false
screenGui.Parent = player:WaitForChild("PlayerGui")

local options = {
	{Name = "Coins", Folder = "leaderstats", Color = Color3.fromRGB(0, 190, 0)},
	{Name = "Wins",  Folder = "leaderstats", Color = Color3.fromRGB(0, 140, 255)},
	{Name = "Stage", Folder = "leaderstats", Color = Color3.fromRGB(255, 200, 0)},
	{Name = "Spins", Folder = "otherValues", Color = Color3.fromRGB(180, 0, 255)},
	{Name = "Skips", Folder = "otherValues", Color = Color3.fromRGB(255, 150, 0)}
}
local selectedData = options[1]

local frame = Instance.new("Frame")
frame.Name = "MainFrame"
frame.Size = UDim2.new(0, 320, 0, 380)
frame.Position = UDim2.new(0.5, -160, 0.5, -190)
frame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
frame.BorderSizePixel = 3
frame.Active = true
frame.Draggable = true
frame.Parent = screenGui

local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 40)
title.BackgroundColor3 = Color3.fromRGB(55, 55, 55)
title.Text = "REWARD GIVER"
title.TextColor3 = Color3.new(1, 1, 1)
title.Font = Enum.Font.SourceSansBold
title.TextSize = 22
title.Parent = frame

local welcome = Instance.new("TextLabel")
welcome.Size = UDim2.new(1, 0, 0, 25)
welcome.Position = UDim2.new(0, 0, 0, 45)
welcome.BackgroundTransparency = 1
welcome.Text = "Hello, " .. player.Name
welcome.TextColor3 = Color3.new(0.8, 0.8, 0.8)
welcome.TextSize = 16
welcome.Parent = frame

local settingsBtn = Instance.new("TextButton")
settingsBtn.Size = UDim2.new(0, 35, 0, 35)
settingsBtn.Position = UDim2.new(0, 2, 0, 2)
settingsBtn.BackgroundTransparency = 1
settingsBtn.Text = "⚙️"
settingsBtn.TextSize = 22
settingsBtn.TextColor3 = Color3.new(1, 1, 1)
settingsBtn.ZIndex = 10
settingsBtn.Parent = frame

local dropdownBtn = Instance.new("TextButton")
dropdownBtn.Size = UDim2.new(0, 280, 0, 45)
dropdownBtn.Position = UDim2.new(0.5, -140, 0.25, 0)
dropdownBtn.Text = "Selected: " .. selectedData.Name
dropdownBtn.BackgroundColor3 = selectedData.Color
dropdownBtn.TextColor3 = Color3.new(1, 1, 1)
dropdownBtn.Font = Enum.Font.SourceSansBold
dropdownBtn.TextSize = 20
dropdownBtn.Parent = frame

local listFrame = Instance.new("ScrollingFrame")
listFrame.Size = UDim2.new(0, 280, 0, 120)
listFrame.Position = UDim2.new(0.5, -140, 0.4, 0)
listFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
listFrame.Visible = false
listFrame.ZIndex = 20
listFrame.CanvasSize = UDim2.new(0, 0, 0, #options * 40)
listFrame.Parent = frame

for i, opt in ipairs(options) do
	local b = Instance.new("TextButton")
	b.Size = UDim2.new(1, 0, 0, 40)
	b.Position = UDim2.new(0, 0, 0, (i-1)*40)
	b.BackgroundColor3 = opt.Color
	b.Text = opt.Name
	b.TextColor3 = Color3.new(1, 1, 1)
	b.ZIndex = 21
	b.Parent = listFrame
	b.MouseButton1Click:Connect(function()
		playClick()
		selectedData = opt
		dropdownBtn.Text = "Selected: " .. opt.Name
		dropdownBtn.BackgroundColor3 = opt.Color
		listFrame.Visible = false
	end)
end
dropdownBtn.MouseButton1Click:Connect(function() playClick(); listFrame.Visible = not listFrame.Visible end)

local settingsFrame = Instance.new("Frame")
settingsFrame.Size = UDim2.new(0, 320, 0, 260)
settingsFrame.Position = UDim2.new(0, 0, 1, 5)
settingsFrame.BackgroundColor3 = Color3.fromRGB(45, 45, 45)
settingsFrame.BorderSizePixel = 2
settingsFrame.Visible = false
settingsFrame.ZIndex = 30
settingsFrame.Parent = frame

local colorList = {
	Color3.fromRGB(30,30,30), Color3.fromRGB(0,45,90), Color3.fromRGB(90,0,0), Color3.fromRGB(160,130,0),
	Color3.fromRGB(0,100,0), Color3.fromRGB(100,0,100), Color3.fromRGB(255,105,180), Color3.fromRGB(0,255,255),
	Color3.fromRGB(255,69,0), Color3.fromRGB(138,43,226), Color3.fromRGB(34,139,34), Color3.fromRGB(218,112,214),
	Color3.fromRGB(47,79,79), Color3.fromRGB(255,215,0)
}
for i, c in ipairs(colorList) do
	local b = Instance.new("TextButton")
	b.Size = UDim2.new(0, 35, 0, 35)
	b.Position = UDim2.new(0, 10+((i-1)%7)*43, 0, 10+(math.ceil(i/7)-1)*40)
	b.BackgroundColor3 = c; b.Text = ""; b.ZIndex = 31; b.Parent = settingsFrame
	b.MouseButton1Click:Connect(function() playClick(); frame.BackgroundColor3 = c; title.BackgroundColor3 = c:Lerp(Color3.new(1,1,1),0.2) end)
end

local customRGB = Instance.new("TextBox")
customRGB.Size = UDim2.new(0, 180, 0, 30); customRGB.Position = UDim2.new(0, 10, 0, 95)
customRGB.PlaceholderText = "R,G,B (e.g. 255,0,0)"; customRGB.ZIndex = 31; customRGB.Parent = settingsFrame

local applyRGB = Instance.new("TextButton")
applyRGB.Size = UDim2.new(0, 100, 0, 30); applyRGB.Position = UDim2.new(0, 200, 0, 95)
applyRGB.Text = "APPLY"; applyRGB.ZIndex = 31; applyRGB.Parent = settingsFrame
applyRGB.MouseButton1Click:Connect(function()
	playClick()
	local r,g,b = customRGB.Text:match("(%d+),%s*(%d+),%s*(%d+)")
	if r then local c = Color3.fromRGB(r,g,b); frame.BackgroundColor3 = c; title.BackgroundColor3 = c:Lerp(Color3.new(1,1,1),0.2) end
end)

local musicID = Instance.new("TextBox")
musicID.Size = UDim2.new(0, 290, 0, 30); musicID.Position = UDim2.new(0, 10, 0, 135)
musicID.PlaceholderText = "Music ID..."; musicID.ZIndex = 31; musicID.Parent = settingsFrame

local mPitch = Instance.new("TextBox")
mPitch.Size = UDim2.new(0, 140, 0, 30); mPitch.Position = UDim2.new(0, 10, 0, 170)
mPitch.PlaceholderText = "Pitch (1.0)"; mPitch.ZIndex = 31; mPitch.Parent = settingsFrame

local mVol = Instance.new("TextBox")
mVol.Size = UDim2.new(0, 140, 0, 30); mVol.Position = UDim2.new(0, 160, 0, 170)
mVol.PlaceholderText = "Vol (0.5)"; mVol.ZIndex = 31; mVol.Parent = settingsFrame

local mPlay = Instance.new("TextButton")
mPlay.Size = UDim2.new(0, 140, 0, 35); mPlay.Position = UDim2.new(0, 10, 0, 210)
mPlay.Text = "PLAY"; mPlay.BackgroundColor3 = Color3.fromRGB(0,120,0); mPlay.ZIndex = 31; mPlay.Parent = settingsFrame
mPlay.MouseButton1Click:Connect(function()
	playClick(); bgMusic.SoundId = "rbxassetid://"..musicID.Text; bgMusic.Pitch = tonumber(mPitch.Text) or 1; bgMusic.Volume = tonumber(mVol.Text) or 0.5; bgMusic:Play()
end)

local mStop = Instance.new("TextButton")
mStop.Size = UDim2.new(0, 140, 0, 35); mStop.Position = UDim2.new(0, 160, 0, 210)
mStop.Text = "STOP"; mStop.BackgroundColor3 = Color3.fromRGB(120,0,0); mStop.ZIndex = 31; mStop.Parent = settingsFrame
mStop.MouseButton1Click:Connect(function() playClick(); bgMusic:Stop() end)

settingsBtn.MouseButton1Click:Connect(function() playClick(); settingsFrame.Visible = not settingsFrame.Visible end)

local amountInput = Instance.new("TextBox")
amountInput.Size = UDim2.new(0, 280, 0, 45)
amountInput.Position = UDim2.new(0.5, -140, 0.48, 0)
amountInput.PlaceholderText = "Enter Amount..."
amountInput.TextSize = 20; amountInput.Parent = frame

local addBtn = Instance.new("TextButton")
addBtn.Size = UDim2.new(0, 280, 0, 50)
addBtn.Position = UDim2.new(0.5, -140, 0.65, 0)
addBtn.Text = "GIVE REWARD"
addBtn.Font = Enum.Font.SourceSansBold
addBtn.TextSize = 24; addBtn.BackgroundColor3 = Color3.fromRGB(0, 150, 0); addBtn.TextColor3 = Color3.new(1,1,1); addBtn.Parent = frame

local resetBtn = Instance.new("TextButton")
resetBtn.Size = UDim2.new(0, 280, 0, 50)
resetBtn.Position = UDim2.new(0.5, -140, 0.82, 0)
resetBtn.Text = "RESET REWARD"
resetBtn.Font = Enum.Font.SourceSansBold
resetBtn.TextSize = 24; resetBtn.BackgroundColor3 = Color3.fromRGB(180, 0, 0); resetBtn.TextColor3 = Color3.new(1,1,1); resetBtn.Parent = frame

local function fire(v)
	local args = {{Folder = selectedData.Folder, Name = selectedData.Name, Amount = v}}
	ReplicatedStorage:WaitForChild("Remotes"):WaitForChild("PromptReward"):FireServer(unpack(args))
end

addBtn.MouseButton1Click:Connect(function() 
	playClick()
	local n = tonumber(amountInput.Text)
	if n then fire(n) end 
end)

resetBtn.MouseButton1Click:Connect(function()
	playClick()
	local f = player:FindFirstChild(selectedData.Folder)
	local s = f and f:FindFirstChild(selectedData.Name)
	fire(s and -s.Value or -999999)
end)

local openBtn = Instance.new("TextButton")
openBtn.Size = UDim2.new(0, 100, 0, 35); openBtn.Position = UDim2.new(0, 15, 0.5, -17)
openBtn.Text = "OPEN MENU"; openBtn.Visible = false; openBtn.TextSize = 10; openBtn.Font = Enum.Font.SourceSansBold
openBtn.BackgroundColor3 = Color3.fromRGB(45,45,45); openBtn.TextColor3 = Color3.new(1,1,1); openBtn.Parent = screenGui

local closeBtn = Instance.new("TextButton")
closeBtn.Size = UDim2.new(0, 40, 0, 40); closeBtn.Position = UDim2.new(1, -40, 0, 0)
closeBtn.Text = "X"; closeBtn.BackgroundColor3 = Color3.fromRGB(200, 0, 0); closeBtn.TextColor3 = Color3.new(1,1,1); closeBtn.Parent = frame

closeBtn.MouseButton1Click:Connect(function() playClick(); frame.Visible = false; openBtn.Visible = true end)
openBtn.MouseButton1Click:Connect(function() playClick(); frame.Visible = true; openBtn.Visible = false end)
UserInputService.InputBegan:Connect(function(i, g) if not g and i.KeyCode == Enum.KeyCode.L then playClick(); frame.Visible = not frame.Visible; openBtn.Visible = not frame.Visible end end)

Features & Information

[KEYLESS] This script can Give you amount that you will pick like Coins, Wins, Stage, Spins and Skips, also in settings you can change the color of the gui, you can play your favorite music with pitch and volume, just enter an id and If you wanna reset one of your stats just click RESET REWARD.
#KEYLESS#Ride a Box Obby#Obby#Gui

Community Comments (5)

Yosef_1220Yosef_1220Apr 19, 2026

@hidyamoud96 tested or no? because i wanna know if this script work perfectly for others

Replying to @Yosef_1220
nefexnefexApr 19, 2026

@Yosef_1220 yo i think you need obfuscation i can help you

Replying to @nefex
Yosef_1220Yosef_1220Apr 19, 2026

@nefex yeah i really need it and i dont even know how to do that, if you want you can help i will be really happy

Doron597Doron597Apr 19, 2026

Fire scripts u got a follow!

Replying to @Doron597
Yosef_1220Yosef_1220Apr 19, 2026

@Doron597 thank you doron you got a follow too!

More Scripts for [W4] Ride a Box Obby 📦