
KeylessUniversal

-- Script de Informações Completas do Servidor - Roblox
-- Executa em executors como Synapse X, Krnl, etc.
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Stats = game:GetService("Stats")
local Lighting = game:GetService("Lighting")
local Workspace = game:GetService("Workspace")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerStorage = game:GetService("ServerStorage")
local HttpService = game:GetService("HttpService")
local MarketplaceService = game:GetService("MarketplaceService")
local LocalPlayer = Players.LocalPlayer
-- Interface GUI
local ScreenGui = Instance.new("ScreenGui")
local MainFrame = Instance.new("Frame")
local TitleLabel = Instance.new("TextLabel")
local InfoScrollFrame = Instance.new("ScrollingFrame")
local UIListLayout = Instance.new("UIListLayout")
local RefreshButton = Instance.new("TextButton")
local ExportButton = Instance.new("TextButton")
local CloseButton = Instance.new("TextButton")
local TabFrame = Instance.new("Frame")
-- Configuração da GUI
ScreenGui.Name = "ServerInfoGUI"
ScreenGui.Parent = game.CoreGui
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
-- Frame principal
MainFrame.Name = "MainFrame"
MainFrame.Parent = ScreenGui
MainFrame.BackgroundColor3 = Color3.fromRGB(20, 25, 35)
MainFrame.BorderSizePixel = 0
MainFrame.Position = UDim2.new(0.05, 0, 0.05, 0)
MainFrame.Size = UDim2.new(0, 600, 0, 500)
MainFrame.Active = true
MainFrame.Draggable = true
local Corner = Instance.new("UICorner")
Corner.CornerRadius = UDim.new(0, 15)
Corner.Parent = MainFrame
-- Título
TitleLabel.Name = "TitleLabel"
TitleLabel.Parent = MainFrame
TitleLabel.BackgroundTransparency = 1
TitleLabel.Position = UDim2.new(0, 20, 0, 10)
TitleLabel.Size = UDim2.new(1, -140, 0, 40)
TitleLabel.Font = Enum.Font.SourceSansBold
TitleLabel.Text = "🖥️ Informações do Servidor"
TitleLabel.TextColor3 = Color3.fromRGB(100, 200, 255)
TitleLabel.TextSize = 22
TitleLabel.TextXAlignment = Enum.TextXAlignment.Left
-- Botão Refresh
RefreshButton.Name = "RefreshButton"
RefreshButton.Parent = MainFrame
RefreshButton.BackgroundColor3 = Color3.fromRGB(50, 150, 50)
RefreshButton.Position = UDim2.new(1, -120, 0, 10)
RefreshButton.Size = UDim2.new(0, 35, 0, 35)
RefreshButton.Font = Enum.Font.SourceSansBold
RefreshButton.Text = "🔄"
RefreshButton.TextColor3 = Color3.fromRGB(255, 255, 255)
RefreshButton.TextSize = 16
local RefreshCorner = Instance.new("UICorner")
RefreshCorner.CornerRadius = UDim.new(0, 8)
RefreshCorner.Parent = RefreshButton
-- Botão Export
ExportButton.Name = "ExportButton"
ExportButton.Parent = MainFrame
ExportButton.BackgroundColor3 = Color3.fromRGB(150, 100, 50)
ExportButton.Position = UDim2.new(1, -80, 0, 10)
ExportButton.Size = UDim2.new(0, 35, 0, 35)
ExportButton.Font = Enum.Font.SourceSansBold
ExportButton.Text = "📋"
ExportButton.TextColor3 = Color3.fromRGB(255, 255, 255)
ExportButton.TextSize = 16
local ExportCorner = Instance.new("UICorner")
ExportCorner.CornerRadius = UDim.new(0, 8)
ExportCorner.Parent = ExportButton
-- Botão fechar
CloseButton.Name = "CloseButton"
CloseButton.Parent = MainFrame
CloseButton.BackgroundColor3 = Color3.fromRGB(200, 50, 50)
CloseButton.Position = UDim2.new(1, -40, 0, 10)
CloseButton.Size = UDim2.new(0, 35, 0, 35)
CloseButton.Font = Enum.Font.SourceSansBold
CloseButton.Text = "✕"
CloseButton.TextColor3 = Color3.fromRGB(255, 255, 255)
CloseButton.TextSize = 16
local CloseCorner = Instance.new("UICorner")
CloseCorner.CornerRadius = UDim.new(0, 8)
CloseCorner.Parent = CloseButton
-- ScrollFrame para informações
InfoScrollFrame.Name = "InfoScrollFrame"
InfoScrollFrame.Parent = MainFrame
InfoScrollFrame.BackgroundColor3 = Color3.fromRGB(30, 35, 45)
InfoScrollFrame.Position = UDim2.new(0, 20, 0, 60)
InfoScrollFrame.Size = UDim2.new(1, -40, 1, -80)
InfoScrollFrame.ScrollBarThickness = 12
InfoScrollFrame.BorderSizePixel = 0
local ScrollCorner = Instance.new("UICorner")
ScrollCorner.CornerRadius = UDim.new(0, 10)
ScrollCorner.Parent = InfoScrollFrame
-- Layout
UIListLayout.Parent = InfoScrollFrame
UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
UIListLayout.Padding = UDim.new(0, 5)
-- Variáveis para armazenar informações
local serverInfo = {}
-- Função para criar seção de informação
local function createInfoSection(title, items, color)
local SectionFrame = Instance.new("Frame")
SectionFrame.Name = title .. "Section"
SectionFrame.Parent = InfoScrollFrame
SectionFrame.BackgroundColor3 = Color3.fromRGB(40, 45, 55)
SectionFrame.Size = UDim2.new(1, -10, 0, 0)
SectionFrame.AutomaticSize = Enum.AutomaticSize.Y
local SectionCorner = Instance.new("UICorner")
SectionCorner.CornerRadius = UDim.new(0, 8)
SectionCorner.Parent = SectionFrame
local SectionLayout = Instance.new("UIListLayout")
SectionLayout.Parent = SectionFrame
SectionLayout.SortOrder = Enum.SortOrder.LayoutOrder
SectionLayout.Padding = UDim.new(0, 3)
local Padding = Instance.new("UIPadding")
Padding.Parent = SectionFrame
Padding.PaddingTop = UDim.new(0, 10)
Padding.PaddingBottom = UDim.new(0, 10)
Padding.PaddingLeft = UDim.new(0, 15)
Padding.PaddingRight = UDim.new(0, 15)
-- Título da seção
local TitleLabel = Instance.new("TextLabel")
TitleLabel.Name = "SectionTitle"
TitleLabel.Parent = SectionFrame
TitleLabel.BackgroundTransparency = 1
TitleLabel.Size = UDim2.new(1, 0, 0, 25)
TitleLabel.Font = Enum.Font.SourceSansBold
TitleLabel.Text = title
TitleLabel.TextColor3 = color or Color3.fromRGB(255, 200, 100)
TitleLabel.TextSize = 16
TitleLabel.TextXAlignment = Enum.TextXAlignment.Left
TitleLabel.LayoutOrder = 1
-- Itens da seção
local itemOrder = 2
for key, value in pairs(items) do
local ItemLabel = Instance.new("TextLabel")
ItemLabel.Name = key .. "Item"
ItemLabel.Parent = SectionFrame
ItemLabel.BackgroundTransparency = 1
ItemLabel.Size = UDim2.new(1, 0, 0, 20)
ItemLabel.Font = Enum.Font.SourceSans
ItemLabel.Text = "• " .. key .. ": " .. tostring(value)
ItemLabel.TextColor3 = Color3.fromRGB(220, 220, 220)
ItemLabel.TextSize = 13
ItemLabel.TextXAlignment = Enum.TextXAlignment.Left
ItemLabel.TextWrapped = true
ItemLabel.LayoutOrder = itemOrder
ItemOrder = itemOrder + 1
end
end
-- Função para obter informações do jogo
local function getGameInfo()
local gameInfo = {}
pcall(function()
gameInfo["Nome do Jogo"] = MarketplaceService:GetProductInfo(game.PlaceId).Name
gameInfo["Descrição"] = MarketplaceService:GetProductInfo(game.PlaceId).Description or "Sem descrição"
gameInfo["Criador"] = MarketplaceService:GetProductInfo(game.PlaceId).Creator.Name
end)
gameInfo["Place ID"] = game.PlaceId
gameInfo["Game ID"] = game.GameId
gameInfo["Job ID"] = game.JobId
gameInfo["Versão"] = game.PlaceVersion or "Desconhecida"
return gameInfo
end
-- Função para obter informações dos jogadores
local function getPlayersInfo()
local playersInfo = {}
local playersList = {}
playersInfo["Total de Jogadores"] = #Players:GetPlayers()
playersInfo["Máximo de Jogadores"] = Players.MaxPlayers
for i, player in pairs(Players:GetPlayers()) do
table.insert(playersList, player.Name .. " (ID: " .. player.UserId .. ")")
end
playersInfo["Lista de Jogadores"] = table.concat(playersList, ", ")
return playersInfo
end
-- Função para obter informações de performance
local function getPerformanceInfo()
local perfInfo = {}
perfInfo["FPS Atual"] = math.floor(1 / RunService.Heartbeat:Wait())
perfInfo["Ping"] = math.floor(LocalPlayer:GetNetworkPing() * 1000) .. "ms"
pcall(function()
local memory = Stats:GetTotalMemoryUsageMb()
perfInfo["Uso de Memória"] = math.floor(memory) .. "MB"
end)
pcall(function()
perfInfo["Data Received"] = math.floor(Stats.Network.ServerStatsItem["Data Received"].Value) .. " bytes"
perfInfo["Data Sent"] = math.floor(Stats.Network.ServerStatsItem["Data Sent"].Value) .. " bytes"
end)
return perfInfo
end
-- Função para obter informações do workspace
local function getWorkspaceInfo()
local workspaceInfo = {}
workspaceInfo["Gravity"] = Workspace.Gravity
workspaceInfo["FallenPartsDestroyHeight"] = Workspace.FallenPartsDestroyHeight
workspaceInfo["StreamingEnabled"] = tostring(Workspace.StreamingEnabled)
local partCount = 0
local function countParts(parent)
for _, child in pairs(parent:GetChildren()) do
if child:IsA("BasePart") then
partCount = partCount + 1
end
countParts(child)
end
end
countParts(Workspace)
workspaceInfo["Total de Parts"] = partCount
return workspaceInfo
end
-- Função para obter informações de lighting
local function getLightingInfo()
local lightingInfo = {}
lightingInfo["Brightness"] = Lighting.Brightness
lightingInfo["Ambient"] = tostring(Lighting.Ambient)
lightingInfo["ColorShift_Top"] = tostring(Lighting.ColorShift_Top)
lightingInfo["ColorShift_Bottom"] = tostring(Lighting.ColorShift_Bottom)
lightingInfo["OutdoorAmbient"] = tostring(Lighting.OutdoorAmbient)
lightingInfo["ClockTime"] = Lighting.ClockTime
lightingInfo["GeographicLatitude"] = Lighting.GeographicLatitude
return lightingInfo
end
-- Função para obter informações de segurança
local function getSecurityInfo()
local securityInfo = {}
pcall(function()
securityInfo["FilteringEnabled"] = tostring(Workspace.FilteringEnabled)
end)
securityInfo["LocalPlayer Admin"] = tostring(LocalPlayer:GetRankInGroup(0) > 0)
securityInfo["Chat Filtrado"] = "Ativo"
-- Verificar serviços de segurança
local hasServerStorage = game:GetService("ServerStorage") ~= nil
securityInfo["ServerStorage Acessível"] = tostring(hasServerStorage)
return securityInfo
end
-- Função principal para coletar todas as informações
local function collectServerInfo()
-- Limpar informações anteriores
for _, child in pairs(InfoScrollFrame:GetChildren()) do
if child:IsA("Frame") then
child:Destroy()
end
end
-- Coletar e exibir informações
createInfoSection("🎮 Informações do Jogo", getGameInfo(), Color3.fromRGB(100, 200, 255))
createInfoSection("👥 Jogadores", getPlayersInfo(), Color3.fromRGB(150, 255, 150))
createInfoSection("⚡ Performance", getPerformanceInfo(), Color3.fromRGB(255, 200, 100))
createInfoSection("🌍 Workspace", getWorkspaceInfo(), Color3.fromRGB(255, 150, 200))
createInfoSection("💡 Lighting", getLightingInfo(), Color3.fromRGB(255, 255, 150))
createInfoSection("🔒 Segurança", getSecurityInfo(), Color3.fromRGB(255, 100, 100))
-- Informações adicionais do sistema
local systemInfo = {
["Data/Hora Atual"] = os.date("%d/%m/%Y %H:%M:%S"),
["Tempo de Jogo"] = math.floor(tick() - game.Players.LocalPlayer.AccountAge * 86400) .. "s",
["Plataforma"] = game.Players.LocalPlayer.OsPlatform or "Desconhecida"
}
createInfoSection("💻 Sistema", systemInfo, Color3.fromRGB(200, 150, 255))
print("📊 Informações do servidor atualizadas!")
end
-- Função para exportar informações
local function exportInfo()
local exportText = "=== INFORMAÇÕES DO SERVIDOR ROBLOX ===\n\n"
exportText = exportText .. "Jogo: " .. (MarketplaceService:GetProductInfo(game.PlaceId).Name or "Desconhecido") .. "\n"
exportText = exportText .. "Place ID: " .. game.PlaceId .. "\n"
exportText = exportText .. "Jogadores: " .. #Players:GetPlayers() .. "/" .. Players.MaxPlayers .. "\n"
exportText = exportText .. "Data: " .. os.date("%d/%m/%Y %H:%M:%S") .. "\n\n"
for _, player in pairs(Players:GetPlayers()) do
exportText = exportText .. "- " .. player.Name .. " (ID: " .. player.UserId .. ")\n"
end
-- Copiar para clipboard (se suportado)
pcall(function()
setclipboard(exportText)
print("📋 Informações copiadas para a área de transferência!")
end)
print("📤 Informações exportadas:")
print(exportText)
end
-- Eventos
CloseButton.MouseButton1Click:Connect(function()
ScreenGui:Destroy()
end)
RefreshButton.MouseButton1Click:Connect(function()
collectServerInfo()
RefreshButton.BackgroundColor3 = Color3.fromRGB(100, 255, 100)
wait(0.3)
RefreshButton.BackgroundColor3 = Color3.fromRGB(50, 150, 50)
end)
ExportButton.MouseButton1Click:Connect(function()
exportInfo()
ExportButton.BackgroundColor3 = Color3.fromRGB(255, 200, 100)
wait(0.3)
ExportButton.BackgroundColor3 = Color3.fromRGB(150, 100, 50)
end)
-- Atualização automática a cada 30 segundos
spawn(function()
while ScreenGui.Parent do
wait(30)
if ScreenGui.Parent then
collectServerInfo()
end
end
end)
-- Inicializar
collectServerInfo()
print("🖥️ Server Info Scanner carregado com sucesso!")
print("📊 Informações coletadas e atualizadas automaticamente")
print("🔄 Use o botão refresh para atualizar manualmente")
print("📋 Use o botão export para copiar informações")
![[KEYLESS] Moondiety Script | 17+ supported Games](https://scriptblox.com/images/sb/0-1753093706828.png)


@lieeaer Please be respectful in comments.
hm, this admin looks so active
@rhuancillo I don't understand br
@wyvern guy made this script with ai you are not gonna do anything about it?
@lieeaer It's Not against the rules.
@moonxzp BR means Brazilian translation
@rhuancillo I don't understand br as I said, I mean the lang
Parabéns pelo excelente script! 🎉 Que iniciativa incrível criar uma versão 100% brasileira com tradução completa. Scripts em português BR tornam a comunidade muito mais inclusiva e acessível para os desenvolvedores brasileiros. Adoraria ver mais scripts *im por aqui! Continue compartilhando suas criações, o site precisa de mais conteúdo com qualidade como esse! 🇧🇷✨