Select Game
Escape Tsunami
ETFB
PartTime Worker
ETFB
Tracker
Plaza
Scripts
Refresh
Global Items
22.17.57
Hidden:
Basic Bat
SignTool
Anububu
Wildfire Anububu
Block
Wildfire Magmew
Wildfire Polizini Cerbero
Burrascano Spettro Marinaro
Mirella
846
Daftar Akun
Online
0
Offline
25
Total
25
AlphabZStormyzZThorn
323.51DDe
anvil5uk
397.36DDe
BeastSaberHer01998
38.35DDe
ChillsmFir3K1999
92.32DDe
Fazryy58
323.53DDe
Nebulaa1Sonicr1Ultra
44.49DDe
NeonZRHeros200022
57.35DDe
NinjaqUNightfall4199
22.84DDe
Nova1sDragonF199621
201.26DDe
Rift86Omegav199230
51.52DDe
Rift9bSparklyi199136
245.87DDe
saumagodin12
427.39DDe
saumagodin13
619.9DDe
saumagodin3
95.32DDe
saumagodin6
912.21DDe
swoos5ix
396.42DDe
vinztow05
252.12DDe
vinztow08
125.01DDe
waveluckyblock001
297.34DDe
Xz_BlocktcFall3nQcPi
130.94DDe
Xz_EchoRjMirag3jjEch
149.83DDe
XZ_SilvermJCelestial
98.85DDe
XzAlpha8hBlazeIhFr0s
58.1DDe
XzOrbitN2PhoenixQzX1
167.56DDe
XzWarpxFB3armzX22
55.88DDe
Detail Akun
Pilih akun
—
✕
Popup Logs
Semua Log
Hanya DUPED
Selain Duped
Clear
Belum ada log.
Daftar Akun
Online
0
Offline
25
Total
25
AlphabZStormyzZThorn
323.51DDe
anvil5uk
397.36DDe
BeastSaberHer01998
38.35DDe
ChillsmFir3K1999
92.32DDe
Fazryy58
323.53DDe
Nebulaa1Sonicr1Ultra
44.49DDe
NeonZRHeros200022
57.35DDe
NinjaqUNightfall4199
22.84DDe
Nova1sDragonF199621
201.26DDe
Rift86Omegav199230
51.52DDe
Rift9bSparklyi199136
245.87DDe
saumagodin12
427.39DDe
saumagodin13
619.9DDe
saumagodin3
95.32DDe
saumagodin6
912.21DDe
swoos5ix
396.42DDe
vinztow05
252.12DDe
vinztow08
125.01DDe
waveluckyblock001
297.34DDe
Xz_BlocktcFall3nQcPi
130.94DDe
Xz_EchoRjMirag3jjEch
149.83DDe
XZ_SilvermJCelestial
98.85DDe
XzAlpha8hBlazeIhFr0s
58.1DDe
XzOrbitN2PhoenixQzX1
167.56DDe
XzWarpxFB3armzX22
55.88DDe
Detail Akun
Pilih akun dulu
—
✕
Global Items
—
Hidden:
Basic Bat
SignTool
Anububu
Wildfire Anububu
Block
Wildfire Magmew
Wildfire Polizini Cerbero
Burrascano Spettro Marinaro
Mirella
846
Popup Logs
Semua Log
Hanya DUPED
Selain Duped
Clear
Belum ada log.
Total Trade Tokens
0
—
CarrotNgawi1
○ Offline
Trade Tokens
3.478
Set Price
Update All
SignTool
1x
Basic Bat
1x
💾 Simpan Harga
gudangarya
● Online
Trade Tokens
188
Set Price
Update All
SignTool
1x
Basic Bat
1x
💾 Simpan Harga
riftplaza2
○ Offline
Trade Tokens
146
Set Price
Update All
SignTool
1x
Basic Bat
1x
💾 Simpan Harga
MaxBUScythek
○ Offline
Trade Tokens
564
Set Price
Update All
Basic Bat
1x
Mirella
13x
SignTool
1x
💾 Simpan Harga
riftplaza
○ Offline
Trade Tokens
3.290
Set Price
Update All
SignTool
1x
Basic Bat
1x
💾 Simpan Harga
alarliannn
○ Offline
Trade Tokens
282
Set Price
Update All
Basic Bat
1x
Mirella
1x
SignTool
1x
💾 Simpan Harga
NajeeeJi
● Online
Trade Tokens
1.128
Set Price
Update All
SignTool
1x
Basic Bat
1x
💾 Simpan Harga
alzsk01
○ Offline
Trade Tokens
188
Set Price
Update All
SignTool
1x
Basic Bat
1x
💾 Simpan Harga
saumagodin6
● Online
Trade Tokens
1.316
Set Price
Update All
Anububu
1x
Wildfire Polizini Cerbero
1x
Wildfire Anububu
2x
Burrascano Spettro Marinaro
1x
Basic Bat
1x
Mirella
75x
SignTool
1x
💾 Simpan Harga
XzTigerNgChaos4zX
○ Offline
Trade Tokens
1.997
Set Price
Update All
Basic Bat
1x
Mirella
38x
SignTool
1x
💾 Simpan Harga
PrismYECrimsonn1992
○ Offline
Trade Tokens
3.682
Set Price
Update All
SignTool
1x
Basic Bat
1x
💾 Simpan Harga
riftplaza1
○ Offline
Trade Tokens
2.256
Set Price
Update All
SignTool
1x
Basic Bat
1x
💾 Simpan Harga
gudangarya2
○ Offline
Trade Tokens
2.068
Set Price
Update All
SignTool
1x
Basic Bat
1x
💾 Simpan Harga
Plaza Live Logs
Clear
Belum ada log.
🗑️ Plaza logs cleared!
Bot Scripts
✕
Akun
Detail
Plaza
Script Tracker (Farming Bot)
Copy Tracker
-- ===================================================================== -- CATHLEEN PRO TRACKER - ETFB (Escape Tsunami Farming Bot) -- ===================================================================== local SUPABASE_URL = "https://kojfzfblyueopjzrzdil.supabase.co" local SUPABASE_KEY = "sb_publishable_mOB4oa0BTuTlnAOoE0iLOA_GMa7sfxX" local HttpService = game:GetService("HttpService") local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local UPDATE_INTERVAL = 60 local Mutations = { "Blood","Crimson","Diamond","Electric","Gold","Emerald","Radioactive", "Admin","UFO","Hacker","Lucky","Money","Gamer","Candy","Doom","Fire", "Ice","Phantom","Shamrock","Showtime","Eggsplosion","Tidal","Miner" } local request_func = (syn and syn.request) or (http and http.request) or http_request or (Fluxus and Fluxus.request) or (request) local function cleanName(name) for _, mut in ipairs(Mutations) do name = name:gsub("^" .. mut .. "%s+", ""):gsub("%s+" .. mut .. "$" , "") end return name:match("^%s*(.-)%s*$") end local function getInventory() local bp = LocalPlayer:FindFirstChild("Backpack") if not bp then return "Kosong" end local counts = {} for _, item in ipairs(bp:GetChildren()) do if item:IsA("Tool") or item:IsA("Model") then local rawName = item:GetAttribute("DisplayName") or item.Name local name = cleanName(rawName) if name:find("Lucky Block") then name = "Lucky Block" end counts[name] = (counts[name] or 0) + 1 end end local list = {} for n, c in pairs(counts) do table.insert(list, n .. " (" .. c .. ")") end table.sort(list) return #list > 0 and table.concat(list, "\n") or "Kosong" end local function sendTrackerLog(message) if not request_func then return end pcall(function() request_func({ Url = SUPABASE_URL .. "/rest/v1/tracker_logs", Method = "POST", Headers = { ["apikey"] = SUPABASE_KEY, ["Authorization"] = "Bearer " .. SUPABASE_KEY, ["Content-Type"] = "application/json", ["Prefer"] = "return=minimal" }, Body = HttpService:JSONEncode({ username = LocalPlayer.Name, message = tostring(message) }) }) end) end local function anyToString(val) if val == nil then return "nil" end local t = type(val) if t == "string" then return val end if t == "number" or t == "boolean" then return tostring(val) end if t == "table" then local msg = val.message or val.Message or val.text or val.Text or val.msg or val.Msg or val.content or val.Content if msg then return tostring(msg) end local parts = {} for k, v in pairs(val) do table.insert(parts, tostring(k) .. "=" .. tostring(v)) end return "{" .. table.concat(parts, ", ") .. "}" end return tostring(val) end local function hookDisplayPopup() local ok, remote = pcall(function() return game:GetService("ReplicatedStorage") :WaitForChild("Shared", 10) :WaitForChild("Remotes", 10) :WaitForChild("Networking", 10) :WaitForChild("RE/Misc/DisplayPopup", 10) end) if not ok or not remote then warn("[CathleenTracker] RE/Misc/DisplayPopup not found!"); return end print("[CathleenTracker] Hooked DisplayPopup ✅") remote.OnClientEvent:Connect(function(...) local args = {...} local parts = {} for i, v in ipairs(args) do table.insert(parts, anyToString(v)) end local fullMsg = table.concat(parts, " | ") if fullMsg == "" then return end if not fullMsg:match("^Info") then return end sendTrackerLog(fullMsg) print("[CathleenTracker] Popup: " .. fullMsg) end) end local function sendData() local money = LocalPlayer:FindFirstChild("leaderstats") and ( LocalPlayer.leaderstats:FindFirstChild("MoneyBags") or LocalPlayer.leaderstats:FindFirstChild("Money") or LocalPlayer.leaderstats:FindFirstChild("Cash") ) local moneyVal = money and tostring(money.Value) or "0" local slot = "N/A" for _, v in ipairs(LocalPlayer.PlayerGui:GetDescendants()) do if v:IsA("TextLabel") and v.Text:match("%d+/%d+") then local _, max = v.Text:match("(%d+)/(%d+)") if max and tonumber(max) >= 80 then slot = v.Text; break end end end local inv = getInventory() if request_func then request_func({ Url = SUPABASE_URL .. "/rest/v1/player_stats", Method = "POST", Headers = { ["apikey"] = SUPABASE_KEY, ["Authorization"] = "Bearer " .. SUPABASE_KEY, ["Content-Type"] = "application/json", ["Prefer"] = "resolution=merge-duplicates" }, Body = HttpService:JSONEncode({ username = LocalPlayer.Name, money = moneyVal, slot_tas = slot, isi_tas = inv, last_update = os.date("!%Y-%m-%dT%H:%M:%SZ") }) }) end end task.spawn(function() print("✅ Cathleen ETFB Tracker Active!") pcall(hookDisplayPopup) while true do pcall(sendData) task.wait(UPDATE_INTERVAL) end end)
Script Plaza (Auto Restock - UPDATED)
Copy Plaza
-- // CONFIG MASTER PLAZA \\ -- local SUPABASE_URL = "https://kojfzfblyueopjzrzdil.supabase.co/rest/v1" local SUPABASE_KEY = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImtvamZ6ZmJseXVlb3BqenJ6ZGlsIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc3NjczMzQyNywiZXhwIjoyMDkyMzA5NDI3fQ.w21A6H88GOAzDVxIYuPl_RjU6bTMYQYUusJO9aX9LgI" local Player = game:GetService("Players").LocalPlayer local HttpService = game:GetService("HttpService") local TokenPath = Player:WaitForChild("leaderstats"):WaitForChild("Trade Tokens") local RemoteRestock = game:GetService("ReplicatedStorage"):WaitForChild("Shared"):WaitForChild("Remotes"):WaitForChild("Networking")["RF/ListBoothOffering"] -- Menggunakan Proxy Vercel Custom local DISCORD_WEBHOOK = "https://webhook-cathy.vercel.app/api/webhooks/1496693380493869108/d_Asq17-cDNSzPyH6k3IIpiSfWpSpWBKXOyn5aY4GMmwnfIhQPvNHF2AV_yaOjHrJ03l" local isSyncing = false local lastTokenValue = tonumber((string.gsub(tostring(TokenPath.Value), "[^%d.-]", ""))) or 0 -- // KIRIM NOTIF KE DISCORD \\ -- local function pushDiscord(title, desc, color) task.spawn(function() local request = (syn and syn.request) or (http and http.request) or http_request or request local success, res = pcall(function() return request({ Url = DISCORD_WEBHOOK, Method = "POST", Headers = { ["Content-Type"] = "application/json" }, Body = HttpService:JSONEncode({ embeds = {{ title = title, description = desc, color = color or 1752220, footer = { text = "Cathleen Plaza • " .. os.date("%H:%M:%S") } }} }) }) end) if not success then warn("Discord Script Error: " .. tostring(res)) elseif res and res.StatusCode ~= 200 and res.StatusCode ~= 204 then warn("Discord Webhook Ditolak (" .. tostring(res.StatusCode) .. "): " .. tostring(res.Body)) end end) end -- // PEMBERSIH NAMA ITEM \\ -- local function getPureName(item) local n = item:GetAttribute("DisplayName") or item:GetAttribute("ItemName") or item.Name local mutations = { "Blood", "Crimson", "Diamond", "Electric", "Gold", "Emerald", "Radioactive", "Admin", "UFO", "Hacker", "Lucky", "Money", "Gamer", "Candy", "Doom", "Fire", "Ice", "Phantom", "Shamrock", "Showtime", "Eggsplosion", "Tidal", "Miner" } for _, m in pairs(mutations) do n = n:gsub(m .. "%s*", "") end return n:gsub("Lv%.%d+", ""):gsub("^%s+", ""):gsub("%s+$", "") end -- // FUNGSI REQUEST SUPABASE \\ -- local function doRequest(method, endpoint, body, extraHeaders) local request = (syn and syn.request) or (http and http.request) or http_request or request local headers = { ["apikey"] = SUPABASE_KEY, ["Authorization"] = "Bearer " .. SUPABASE_KEY, ["Content-Type"] = "application/json", ["Prefer"] = "return=representation" } if extraHeaders then for k, v in pairs(extraHeaders) do headers[k] = v end end local success, res = pcall(function() return request({ Url = SUPABASE_URL .. endpoint, Method = method, Headers = headers, Body = body and HttpService:JSONEncode(body) or nil }) end) if not success then warn("Supabase Request Error:", res) return false, nil elseif res and res.StatusCode >= 400 then warn("Supabase API Error: " .. tostring(res.Body)) end return success, res end -- // KIRIM LOG KE plaza_logs \\ -- local function pushLog(msg) task.spawn(function() doRequest("POST", "/plaza_logs", { ["bot_name"] = Player.Name, ["message"] = msg }) end) end -- // KIRIM DATA PLAZA \\ -- local function pushPlazaData() if isSyncing then return end isSyncing = true task.spawn(function() local currentTokens = tostring(TokenPath.Value) local counts = {} for _, v in pairs(Player.Backpack:GetChildren()) do local name = getPureName(v) if #name > 2 then counts[name] = (counts[name] or 0) + 1 end end local inv = "" for n, c in pairs(counts) do inv = inv .. n .. " (" .. c .. ")\n" end if inv == "" then inv = "Empty Bag" end local body = { ["username"] = Player.Name, ["tokens"] = currentTokens, ["isi_tas"] = inv, ["last_update"] = "now()" } local ok, res = doRequest("GET", "/plaza_stats?username=eq." .. Player.Name .. "&select=username", nil) if ok and res then pcall(function() local data = HttpService:JSONDecode(res.Body) if data and #data > 0 then doRequest("PATCH", "/plaza_stats?username=eq." .. Player.Name, body) else doRequest("POST", "/plaza_stats", body) end end) end isSyncing = false print("Plaza Synced! Tokens: " .. currentTokens) end) end -- // AMBIL HARGA \\ -- local LIVE_PRICE = nil local ITEM_PRICES = {} task.spawn(function() while true do local ok, res = doRequest("GET", "/plaza_stats?username=eq." .. Player.Name .. "&select=target_price,item_prices", nil) if ok and res and res.StatusCode == 200 then pcall(function() local data = HttpService:JSONDecode(res.Body) if data[1] then if data[1].target_price then LIVE_PRICE = tonumber(data[1].target_price) end if data[1].item_prices then local ip = data[1].item_prices if type(ip) == "string" then local s, parsed = pcall(function() return HttpService:JSONDecode(ip) end); if s then ip = parsed end end if type(ip) == "table" then ITEM_PRICES = ip end else ITEM_PRICES = {} end end end) end task.wait(10) end end) -- // AUTO RESTOCK \\ -- task.spawn(function() while true do if LIVE_PRICE then local bp = Player:FindFirstChild("Backpack") if bp then for _, item in pairs(bp:GetChildren()) do local id = item:GetAttribute("UUID") or item.Name local name = getPureName(item) local finalPrice = LIVE_PRICE if ITEM_PRICES and ITEM_PRICES[name] then finalPrice = tonumber(ITEM_PRICES[name]) or LIVE_PRICE end pcall(function() RemoteRestock:InvokeServer(id, finalPrice) end) task.wait(0.5) end end end task.wait(5) end end) -- // EVENT: TOKEN BERUBAH \\ -- TokenPath:GetPropertyChangedSignal("Value"):Connect(function() local rawNewVal = TokenPath.Value local newValNum = tonumber((string.gsub(tostring(rawNewVal), "[^%d.-]", ""))) or 0 local diff = newValNum - lastTokenValue lastTokenValue = newValNum if diff == 0 then return end local arah = diff > 0 and "+" or "" local msg = "Token " .. arah .. tostring(diff) .. " | Total: " .. tostring(newValNum) pushLog(msg) if diff > 0 then pushDiscord("ADA YANG BELI! — " .. Player.Name, "**+" .. tostring(diff) .. " tokens**\nTotal: **" .. tostring(newValNum) .. "**", 1752220) end task.spawn(function() task.wait(0.5) pushPlazaData() end) print("Token changed! " .. arah .. tostring(diff)) end) -- // FALLBACK SYNC \\ -- task.spawn(function() while true do pushPlazaData() task.wait(30) end end) -- // INITIAL SYNC \\ -- task.wait(2) pushPlazaData() pushLog("Bot online: " .. Player.Name) print("Plaza Hub v17 (Vercel Proxy) Loaded!")