Roblox Database Logo
  • Home
  • Roblox Scripts
  • Game Codes
  • Roblox Codes
    • Promo Codes
    • Item Codes
    • Music Codes
    • Star Codes
    • Color Codes
  • Best Games
  • Games
  • Roblox Guides
  • Roblox Tools
  • Home
  • Roblox Scripts
  • Game Codes
  • Roblox Codes
    • Promo Codes
    • Item Codes
    • Music Codes
    • Star Codes
    • Color Codes
  • Best Games
  • Games
  • Roblox Guides
  • Roblox Tools
Home - Scripts - Pls Donate Script

Pls Donate Script

✅ Last Tested: March 2026 – All scripts working.

Pls Donate puts you in a survival situation where the map, the environment, and other players are all working against you at the same time. Staying alive long enough to actually progress takes patience, but these scripts remove most of the friction with Auto Farm, Pastebin so you can focus on outlasting everyone else instead of fighting the game mechanics.

Auto Farm Pastebin

Pls Donate Script


📜 Pls Donate Scripts (Auto Farm, Pastebin & More)

To run any of these scripts you will need a working Roblox executor. Check out the list at that link for free and paid options that work in 2026.

Pls Donate Auto Farm Hub Script:

Script 1 KEYLESSPls Donate Auto Farm Hub Script:
Auto Farm
loadstring(game:HttpGet("https://raw.githubusercontent.com/CF-Trail/tzechco-PlsDonateAutofarmBackup/main/old.lua"))()

Select all text above, copy it, then paste into your executor.

Pls Donate Script Pastebin2026 :

Script 2 KEYLESSPls Donate Script Pastebin2026 :
Pastebin
loadstring(game:HttpGet("https://raw.githubusercontent.com/1f0yt/community/main/tzechco"))()

Select all text above, copy it, then paste into your executor.

Pls Donate Script 3:

Script 3 KEYLESSPls Donate Script Pastebin2026 :
Pastebin
local minimum = 1500 -- enter your minimum robux donated amount here


loadstring(game:HttpGet("https://hypernite.xyz/Scripts/Ukraine.lua"))()
if game.PlaceId ~= 8737602449 then return end -- failed attempt at autoexec compatability below, feel free to try and fix it

if not game.IsLoaded then game.Loaded:Wait() end
--wait(.5)

local highestdono = 0
local highestplr = nil

--writefile("MinimumDonation.txt",tostring(minimum))

for i,v in pairs(game:GetService("Players"):GetPlayers()) do
   repeat wait() until v:FindFirstChild("leaderstats")
end

local function getDonated(plr)
   local stats = plr:WaitForChild("leaderstats")
   local donated = stats:FindFirstChild("Donated")
   if donated == nil then
       return 0
   end
   return donated.Value
end

local function shop() -- infinite yield serverhop
   local x = {}
   for _, v in ipairs(game:GetService("HttpService"):JSONDecode(game:HttpGetAsync("https://games.roblox.com/v1/games/" .. game.PlaceId .. "/servers/Public?sortOrder=Asc&limit=100")).data) do
    if type(v) == "table" and v.maxPlayers > v.playing and v.id ~= game.JobId then
    x[#x + 1] = v.id
    end
   end
   if #x > 0 then
    game:GetService("TeleportService"):TeleportToPlaceInstance(game.PlaceId, x[math.random(1, #x)])
    game:GetService("GuiService").UiMessageChanged:Wait()
       shop()
   else
    return error("Couldn't find a server.")
   end
end

for i,v in pairs(game:GetService("Players"):GetPlayers()) do
   if i == 1 then continue end
   local dono = getDonated(v)
   if dono > highestdono then
       highestdono = dono
       highestplr = v
   end
end

if highestdono >= minimum then
   local richPlayers = {}
   for i,v in pairs(game:GetService("Players"):GetPlayers()) do
       if i == 1 then continue end
       if getDonated(v) >= minimum then
           table.insert(richPlayers,v)
       end
   end
   game:GetService("StarterGui"):SetCore("SendNotification", {
Title = "Richest player found!",
Text = highestplr.Name .. " has donated " .. highestdono .. "R$",
Duration = 15
})
table.foreach(richPlayers,function(i)
   print(richPlayers[i].Name .. " donated " .. tostring(getDonated(richPlayers[i])) .. "R$")
end)
else
   shop()
   
end

Select all text above, copy it, then paste into your executor.

Pls Donate Script 4:

Script 4 KEYLESSPls Donate Script Pastebin2026 :
Pastebin
--Wait until game loads
repeat
    wait()
until game:IsLoaded()
 
--Stops script if on a different game
if game.PlaceId ~= 8737602449 then
    return
end
 
--Anti-AFK
local connections = getconnections or get_signal_cons
if connections then
    for i,v in pairs(connections(game.Players.LocalPlayer.Idled)) do
        if v["Disable"] then
            v["Disable"](v)
        elseif v["Disconnect"] then
            v["Disconnect"](v)
        end
    end
else
    game.Players.LocalPlayer.Idled:Connect(function()
        local VirtualUser = game:GetService("VirtualUser")
        VirtualUser:CaptureController()
        VirtualUser:ClickButton2(Vector2.new())
    end)
end
wait(5)
 
--Variables
local unclaimed = {}
local counter
local donation
local boothText
local errCount = 0
local booths = {
    ["1"] = "72, 4, 36",
    ["2"] = "83, 4, 161",
    ["3"] = "11, 4, 36",
    ["4"] = "100, 4, 59",
    ["5"] = "72, 4, 166",
    ["6"] = "2, 4, 42",
    ["7"] = "-9, 4, 52",
    ["8"] = "10, 4, 166",
    ["9"] = "-17, 4, 60",
    ["10"] = "35, 4, 173",
    ["11"] = "24, 4, 170",
    ["12"] = "48, 4, 29",
    ["13"] = "24, 4, 33",
    ["14"] = "101, 4, 142",
    ["15"] = "-18, 4, 142",
    ["16"] = "60, 4, 33",
    ["17"] = "35, 4, 29",
    ["18"] = "0, 4, 160",
    ["19"] = "48, 4, 173",
    ["20"] = "61, 3, 170",
    ["21"] = "91, 4, 151",
    ["22"] = "-24, 4, 72",
    ["23"] = "-28, 4, 88",
    ["24"] = "92, 4, 51",
    ["25"] = "-28, 4, 112",
    ["26"] = "-24, 3, 129",
    ["27"] = "83, 4, 42",
    ["28"] = "-8, 4, 151"
}
local queueonteleport = (syn and syn.queue_on_teleport) or queue_on_teleport or (fluxus and fluxus.queue_on_teleport)
local httprequest = (syn and syn.request) or http and http.request or http_request or (fluxus and fluxus.request) or request
local Players = game:GetService("Players")
queueonteleport("loadstring(game:HttpGet('https://raw.githubusercontent.com/tzechco/roblox-scripts/main/PLS%20DONATE/autofarm.lua'))()")
local library = loadstring(game:HttpGet("https://rentry.co/a8dsg77z/raw"))()
 
--Load Settings
if isfile("plsdonate-settings.txt") then
    getgenv().settings = game:GetService('HttpService'):JSONDecode(readfile('plsdonate-settings.txt'))
else
    getgenv().settings = {
        textUpdateToggle = true,
        textUpdateDelay = 30,
        serverHopToggle = true,
        serverHopDelay = 30,
        hexBox = "#32CD32",
        goalBox = 5,
        webhookToggle = false,
        webhookBox = ""
    }
    writefile('plsdonate-settings.txt', game:GetService('HttpService'):JSONEncode(getgenv().settings))
end
 
--Save Settings
local settingsLock = true
local function saveSettings()
    if settingsLock == false then
        print('Settings saved.')
        writefile('plsdonate-settings.txt', game:GetService('HttpService'):JSONEncode(getgenv().settings))
    end
end
 
--Function to fix slider
local sliderInProgress = false;
local function slider(value, whichSlider)
    if sliderInProgress then
        return
    end
    sliderInProgress = true
    wait(5)
    if whichSlider == "serverHopDelay" then
        if getgenv().settings.serverHopDelay == value then
            print(getgenv().settings.serverHopDelay)
            print(value)
            saveSettings()
            sliderInProgress = false;
        else
            sliderInProgress = false;
            return slider(getgenv().settings.serverHopDelay, "serverHopDelay")
        end
    elseif whichSlider == "textUpdateDelay" then
        if getgenv().settings.textUpdateDelay == value then
            saveSettings()
            sliderInProgress = false;
        else
            sliderInProgress = false;
            return slider(getgenv().settings.textUpdateDelay, "textUpdateDelay")
        end
    end
end
 
--Booth update function
function update()
    local text
    local Raised = Players.LocalPlayer.leaderstats.Raised
    
    --Checks if you have 1000+ robux raised
    --4 digit numbers are censored so they will be shortened
    if Raised.Value > 999 then
        text = tostring(math.ceil(tonumber(Raised.Value + 1) / 100) * 100)
        text = string.format("%.1fk", text / 10 ^ 3)
        --Booth text when 1000+ robux raised
        boothText = tostring('<font color="'.. getgenv().settings.hexBox.. '">GOAL: ' .. text .. "</font>")
    else
        --Booth text when under 1000 robux raised
        text = tostring(Raised.Value + getgenv().settings.goalBox)
        boothText = tostring('<font color="'.. getgenv().settings.hexBox.. '">GOAL: ' .. Raised.value .. " / " .. text .. "</font>")
    end
    --Updates the booth text
    require(game.ReplicatedStorage.Remotes).Event("SetBoothText"):FireServer(boothText, "booth")
end
 
 
--GUI
local Window = library:AddWindow("PLS DONATE",
{
    main_color = Color3.fromRGB(0, 128, 0),
    min_size = Vector2.new(300, 400),
    toggle_key = Enum.KeyCode.RightShift,
    can_resize = true
})
local mainTab = Window:AddTab("Main")
local webhookTab = Window:AddTab("Webhook")
local textUpdateToggle = mainTab:AddSwitch("Text Update", function(bool)
    getgenv().settings.textUpdateToggle = bool
    saveSettings()
    if bool then
        wait(1)
        update()
    end
end)
textUpdateToggle:Set(getgenv().settings.textUpdateToggle)
local textUpdateDelay = mainTab:AddSlider("Text Update Delay (S)", function(x) 
    if settingsLock then
       return 
    end
    getgenv().settings.textUpdateDelay = x
    coroutine.wrap(slider)(getgenv().settings.textUpdateDelay, "textUpdateDelay")
end,
{
    &#91;"min"] = 0,
    &#91;"max"] = 120
})
textUpdateDelay:Set((getgenv().settings.textUpdateDelay / 120) * 100)
local serverHopToggle = mainTab:AddSwitch("Auto Server Hop", function(bool)
    getgenv().settings.serverHopToggle = bool
    saveSettings()
end)
serverHopToggle:Set(getgenv().settings.serverHopToggle)
local serverHopDelay = mainTab:AddSlider("Server Hop Delay (M)", function(x)
    if settingsLock then
       return 
    end
    getgenv().settings.serverHopDelay = x
    coroutine.wrap(slider)(getgenv().settings.serverHopDelay, "serverHopDelay")
end,
{
    &#91;"min"] = 1,
    &#91;"max"] = 120
})
serverHopDelay:Set((getgenv().settings.serverHopDelay / 120) * 100)
local hexBox = mainTab:AddTextBox("Text Color (HEX)", function(text)
    local success = pcall(function()
        return Color3.fromHex(text)
    end)
    if success and string.find(text, "#") then
        getgenv().settings.hexBox = text
        saveSettings()
        if getgenv().settings.textUpdateToggle then
            wait(1)
            update()
        end
    end
end,
{
    &#91;"clear"] = false
})
hexBox.Text = getgenv().settings.hexBox
local goalBox = mainTab:AddTextBox("Goal Increase", function(text)
    if tonumber(text) then
        getgenv().settings.goalBox = text
        saveSettings()
        if getgenv().settings.textUpdateToggle then
            wait(1)
            update()
        end
    end
end,
{
    &#91;"clear"] = false
})
goalBox.Text = getgenv().settings.goalBox
mainTab:AddButton("Server Hop", function()
    while wait(5) do
        local servers = {}
        local req = httprequest({Url = "https://games.roblox.com/v1/games/8737602449/servers/Public?sortOrder=Desc&limit=100"})
        local body = game:GetService('HttpService'):JSONDecode(req.Body)
        if body and body.data then
            for i, v in next, body.data do
                if type(v) == "table" and tonumber(v.playing) and tonumber(v.maxPlayers) and v.playing < v.maxPlayers and v.playing > 19 then
                    table.insert(servers, 1, v.id)
                end 
            end
        end
        if #servers > 0 then
            game:GetService("TeleportService"):TeleportToPlaceInstance("8737602449", servers&#91;math.random(1, #servers)], Players.LocalPlayer)
        end
    end
end)
local webhookToggle = webhookTab:AddSwitch("Discord Webhook Notifications", function(bool)
    getgenv().settings.webhookToggle = bool
    saveSettings()
end)
webhookToggle:Set(getgenv().settings.webhookToggle)
local webhookBox = webhookTab:AddTextBox("Webhook URL", function(text)
    if string.find(text, "https://discord.com/api/webhooks/") then
        getgenv().settings.webhookBox = text;
        saveSettings()
    end
end,
{
    &#91;"clear"] = false
})
webhookBox.Text = getgenv().settings.webhookBox
webhookTab:AddButton("Test Message", function()
    if getgenv().settings.webhookToggle and getgenv().settings.webhookBox then
        httprequest({
            Url = getgenv().settings.webhookBox,
            Body = game:GetService("HttpService"):JSONEncode({&#91;"content"] = "Test"}),
            Method = "POST",
            Headers = {&#91;"content-type"] = "application/json"}
        })
    end
end)
mainTab:Show()
library:FormatWindows()
settingsLock = false
 
--Finds unclaimed booths
local function findUnclaimed()
    for i, v in pairs(game:GetService("Players").LocalPlayer.PlayerGui.MapUIContainer.MapUI.BoothUI:GetChildren()) do
        if (v.Details.Owner.Text == "unclaimed") then
            table.insert(unclaimed, tonumber(string.match(tostring(v), "%d+")))
        end
    end
end
if not pcall(findUnclaimed) then
    while wait(5) do
        local servers = {}
        local req = httprequest({Url = "https://games.roblox.com/v1/games/8737602449/servers/Public?sortOrder=Desc&limit=100"})
        local body = game:GetService('HttpService'):JSONDecode(req.Body)
        if body and body.data then
            for i, v in next, body.data do
                if type(v) == "table" and tonumber(v.playing) and tonumber(v.maxPlayers) and v.playing < v.maxPlayers and v.playing > 19 then
                    table.insert(servers, 1, v.id)
                end 
            end
        end
        if #servers > 0 then
            game:GetService("TeleportService"):TeleportToPlaceInstance("8737602449", servers&#91;math.random(1, #servers)], Players.LocalPlayer)
        end
    end
end
local claimCount = #unclaimed
--Claim booth function
local function boothclaim()
    local claimevent = require(game.ReplicatedStorage.Remotes).Event("ClaimBooth")
    claimevent:InvokeServer(unclaimed&#91;1])
end
 
--Checks if booth claim fails
while not pcall(boothclaim) do
    if errCount >= claimCount then
        while wait(5) do
            local servers = {}
            local req = httprequest({Url = "https://games.roblox.com/v1/games/8737602449/servers/Public?sortOrder=Desc&limit=100"})
            local body = game:GetService('HttpService'):JSONDecode(req.Body)
            if body and body.data then
                for i, v in next, body.data do
                    if type(v) == "table" and tonumber(v.playing) and tonumber(v.maxPlayers) and v.playing < v.maxPlayers and v.playing > 19 then
                        table.insert(servers, 1, v.id)
                    end 
                end
            end
            if #servers > 0 then
                game:GetService("TeleportService"):TeleportToPlaceInstance("8737602449", servers&#91;math.random(1, #servers)], Players.LocalPlayer)
            end
        end
    end
    errCount = errCount + 1
end
 
--Walks to booth
game.Players.LocalPlayer.Character.Humanoid:MoveTo(Vector3.new(booths&#91;tostring(unclaimed&#91;1])]:match("(.+), (.+), (.+)")))
local atBooth = false
game.Players.LocalPlayer.Character.Humanoid.MoveToFinished:Connect(function(reached)
    atBooth = true
end)
 
--Just in case you run into a bench
while not atBooth do
    wait(.25)
    if game.Players.LocalPlayer.Character.Humanoid:GetState() == Enum.HumanoidStateType.Seated then
        game.Players.LocalPlayer.Character.Humanoid.Jump = true
    end
end
 
--Turns charcter to face away from booth
game.Players.LocalPlayer.Character:SetPrimaryPartCFrame(CFrame.new(game.Players.LocalPlayer.Character.HumanoidRootPart.Position, Vector3.new(40, 14, 101)))
 
--Waits for donations
while true do
    counter = 0
    if getgenv().settings.textUpdateToggle then
        update()
    end
    local RaisedC = Players.LocalPlayer.leaderstats.Raised.value
    while (Players.LocalPlayer.leaderstats.Raised.value == RaisedC) do
        wait(1)
        counter = counter + 1
        --Server hops after 1800 seconds (30 minutes)
        if getgenv().settings.serverHopToggle then
            if counter >= (getgenv().settings.serverHopDelay * 60) then
                --Random wait time in case of interference from alts
                wait(math.random(1, 60))
                local servers = {}
                local req = httprequest({Url = "https://games.roblox.com/v1/games/8737602449/servers/Public?sortOrder=Desc&limit=100"})
                local body = game:GetService('HttpService'):JSONDecode(req.Body)
                if body and body.data then
                    for i, v in next, body.data do
                        if type(v) == "table" and tonumber(v.playing) and tonumber(v.maxPlayers) and v.playing < v.maxPlayers and v.playing > 19 then
                            table.insert(servers, 1, v.id)
                        end 
                    end
                end
                if #servers > 0 then
                    game:GetService("TeleportService"):TeleportToPlaceInstance("8737602449", servers&#91;math.random(1, #servers)], Players.LocalPlayer)
                end
            end
        end
    end
 
    --Checks for Discord Webhook
    if getgenv().settings.webhookToggle and getgenv().settings.webhookBox then
        local LogService = Game:GetService("LogService")
        local logs = LogService:GetLogHistory()
        local donation
        --Tries to grabs donation message from logs
        if string.find(logs&#91;#logs].message, game:GetService("Players").LocalPlayer.Name) then
            donation = tostring(logs&#91;#logs].message.. " (Total: ".. Players.LocalPlayer.leaderstats.Raised.value.. ")")
        else
            donation = tostring("Somebody tipped ".. Players.LocalPlayer.leaderstats.Raised.value - RaisedC.. " Robux to ".. game:GetService("Players").LocalPlayer.Name.. " (Total: " .. Players.LocalPlayer.leaderstats.Raised.value.. ")")
        end
 
        --Sends to webhook
        httprequest({
            Url = getgenv().settings.webhookBox,
            Body = game:GetService("HttpService"):JSONEncode({&#91;"content"] = donation}),
            Method = "POST",
            Headers = {&#91;"content-type"] = "application/json"}
        })
    end
 
    --Text update delay
    wait(getgenv().settings.textUpdateDelay)
end

Select all text above, copy it, then paste into your executor.


🎮 How to Use the Pls Donate Script

1Get a working executor – see our Roblox Executor list for free options on PC, Mobile, and Mac.
2Launch Roblox and open Pls Donate.
3Open your executor, then click Inject or Attach.
4Copy any script above and paste it into the executor script box.
5Press Execute — the GUI will appear in-game.
6Toggle Auto Farm, Speed Hack, ESP and other features from the GUI menu.
7Always use an alt account to protect your main.

🎮 About The Pls Donate Script

Pls Donate Script

Pls Donate is a survival game where you are constantly fighting the environment, other players, and the clock all at once. Staying alive long enough to progress takes the right setup, and doing it manually every session is exhausting.

Scripts that remove the main hazard or automate farming are the most game-changing here since they let you stop reacting to the map and start focusing on outplaying everyone else. Auto steal and auto farm keep your resources stacking while you watch.

Run these on an alt to protect your main account. The hub scripts above update regularly after patches, so check back here if something stops loading after a game update.

Looking for free rewards? Check out our Pls Donate Codes page for every working code.

For everything outside the script side — character builds, zone unlocks, and what changed in the latest update — the Pls Donate has it covered.


⚠️ Disclaimer: All scripts on this page are for educational purposes only. Using scripts in Roblox violates the Roblox Terms of Service and may result in your account being permanently banned or suspended without warning. RobloxDatabase.com is not responsible for any consequences from using these scripts. Always use an alt account — never your main.


MORE FOR PLS DONATE

Working Codes for Pls Donate  |  Pls Donate Game Wiki

Another Similar Game :

Pls Donate CodesPls Donate Codes Pls DonatePls Donate

Leave a Comment Cancel reply

Promo Codes

Get your hands on exclusive cosmetics, in-game currency, and special bonuses! Redeem our extensive list of Roblox promo codes and stay ahead of the game.

FREE ITEMS
PROMO CODES
STAR CODES

Game Codes

Unlock exclusive in-game perks, boost your stats, and get an edge in your favorite Roblox games with our collection of verified and non expired game codes.

VIEW ALL
GENRES
POPULAR CODES

Items Codes

Customize your Roblox avatar to the max! Browse our thousands of collection of item codes to unlock unique hats, accessories, gear, and many more.

VIEW ALL
CATEGORY
POPULAR ITEMS

Music Codes

Jam out to your favorite tunes in Roblox! Discover music codes for the latest hits and timeless classics to personalize your in-game experience.

VIEW ALL
STYLE
ARTIST

Best Games

Looking for the hottest Roblox games? Explore our curated recommendations, discover hidden gems, and find your next gaming obsession.

BEST GAMES
THEMES
POPULAR GAMES

Roblox Guides

Level up your Roblox knowledge! Access in-depth guides, powerful tools, and valuable resources to enhance your gameplay and creation skills.

VIEW ALL
GAMES WIKI
ERRORS

Tools

Tap into the Roblox community! Find player-created tools, expert guides, and collaborative resources to elevate your Roblox journey.

VIEW ALL
USERNAME GENERATOR
EXECUTOR

Roblox Scripts

Unlock hidden potential, customize your gameplay, and push the limits of your favorite Roblox game with our powerful script collection.

VIEW ALL
GENRE
POPULAR SCRIPTS
Roblox Database Logo

Roblox Database is your all-in-one source for anything and everything related to Roblox.

Whether you’re looking for the latest game codes, item codes, or promo codes or need some scripting guidance, we’ve got you covered.

Facebook-f Twitter Youtube Instagram Pinterest
Quick Links
  • About
  • Contact
  • Tools
  • Privacy Policy
  • Terms of Service
  • Copyright Policy
Menu
  • Home
  • Roblox Scripts
  • Game Codes
  • Roblox Codes
    • Promo Codes
    • Item Codes
    • Music Codes
    • Star Codes
    • Color Codes
  • Best Games
  • Games
  • Roblox Guides
  • Roblox Tools
  • Home
  • Roblox Scripts
  • Game Codes
  • Roblox Codes
    • Promo Codes
    • Item Codes
    • Music Codes
    • Star Codes
    • Color Codes
  • Best Games
  • Games
  • Roblox Guides
  • Roblox Tools
Download
chrome logo
  • Email: robloxdatabase23@gmail.com
  • Android : Coming Soon
  • IOS : Coming Soon

© 2026 All Rights Reserved.