--[[ WARNING: Heads up! This script has not been verified by ScriptBlox. Use at your own risk! ]] -- 561 Hub Launcher (Fully Integrated with Intro Image) local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer:WaitForChild("PlayerGui") local CoreGui = game:GetService("CoreGui") local TweenService = game:GetService("TweenService") -- ===== INTRO IMAGE SETTINGS ===== local INTRO_IMAGE_ID = "115674173433831" -- your image local INTRO_DURATION = 4 -- how many seconds it stays (change to 0 to wait forever) local FADE_TIME = 0.5 -- Remove old intro if it exists if CoreGui:FindFirstChild("IntroImageGUI") then CoreGui.IntroImageGUI:Destroy() end local introGui = Instance.new("ScreenGui") introGui.Name = "IntroImageGUI" introGui.IgnoreGuiInset = true introGui.ResetOnSpawn = false introGui.Parent = CoreGui local introImage = Instance.new("ImageLabel") introImage.Size = UDim2.new(1, 0, 1, 0) introImage.Position = UDim2.new(0, 0, 0, 0) introImage.BackgroundTransparency = 1 introImage.Image = "rbxassetid://" .. INTRO_IMAGE_ID introImage.ScaleType = Enum.ScaleType.Stretch introImage.ImageTransparency = 1 introImage.Parent = introGui -- Fade in TweenService:Create(introImage, TweenInfo.new(FADE_TIME), {ImageTransparency = 0}):Play() -- If you want the intro to wait for a click instead of a timer, set INTRO_DURATION = 0 and uncomment the mouse click block below: -- introImage.InputBegan:Connect(function(input) -- if input.UserInputType == Enum.UserInputType.MouseButton1 then -- TweenService:Create(introImage, TweenInfo.new(FADE_TIME), {ImageTransparency = 1}):Play() -- task.delay(FADE_TIME + 0.05, function() if introGui and introGui.Parent then introGui:Destroy() end showLauncher() end) -- end -- end) -- ===== SHOW LAUNCHER (contains your full Fluent & Rayfield code) ===== local function showLauncher() -- Launcher GUI local ChoiceGui = Instance.new("ScreenGui") ChoiceGui.Name = "HubLauncher" ChoiceGui.ResetOnSpawn = false ChoiceGui.Parent = PlayerGui local Frame = Instance.new("Frame") Frame.Size = UDim2.new(0, 300, 0, 150) Frame.Position = UDim2.new(0.5, -150, 0.5, -75) Frame.BackgroundColor3 = Color3.fromRGB(35,35,35) Frame.BorderSizePixel = 0 Frame.Parent = ChoiceGui local UIText = Instance.new("TextLabel") UIText.Size = UDim2.new(1, 0, 0, 50) UIText.Position = UDim2.new(0,0,0,0) UIText.BackgroundTransparency = 1 UIText.Text = "Select GUI to Load" UIText.TextColor3 = Color3.fromRGB(255,255,255) UIText.Font = Enum.Font.SourceSansBold UIText.TextScaled = true UIText.Parent = Frame local function createButton(name, positionY, callback) local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 260, 0, 40) btn.Position = UDim2.new(0, 20, 0, positionY) btn.BackgroundColor3 = Color3.fromRGB(50,50,50) btn.TextColor3 = Color3.fromRGB(255,255,255) btn.Font = Enum.Font.SourceSansBold btn.TextScaled = true btn.Text = name btn.Parent = Frame btn.MouseButton1Click:Connect(function() ChoiceGui:Destroy() callback() end) end -- ===== FLUENT SCRIPT ===== local function loadFluent() local Fluent = loadstring(game:HttpGet("https://github.com/dawid-scripts/Fluent/releases/latest/download/main.lua"))() local SaveManager = loadstring(game:HttpGet("https://raw.githubusercontent.com/dawid-scripts/Fluent/master/Addons/SaveManager.lua"))() local InterfaceManager = loadstring(game:HttpGet("https://raw.githubusercontent.com/dawid-scripts/Fluent/master/Addons/InterfaceManager.lua"))() local Window = Fluent:CreateWindow({ Title = "561 Hub🔥 by fntbandoo", SubTitle = "Fntbandoo Script Hub", TabWidth = 160, Size = UDim2.fromOffset(580, 460), Acrylic = true, Theme = "Dark", MinimizeKey = Enum.KeyCode.RightShift }) local Tabs = { Main = Window:AddTab({ Title = "Main", Icon = "" }), Misc = Window:AddTab({ Title = "Misc", Icon = "" }), Settings = Window:AddTab({ Title = "Settings", Icon = "settings" }), Discord = Window:AddTab({ Title = "Discord", Icon = "discord" }) } -- Variables local espEnabled = false local noclipEnabled = false local antiKickEnabled = false local antiAFKEnabled = false local savedPosition = nil local speedInput, jumpInput = 16, 50 -- ===== FUNCTIONS ===== local function applyESP(player) if player == Players.LocalPlayer then return end if not player.Character then return end if player.Character:FindFirstChild("ESP_Highlight") then player.Character.ESP_Highlight:Destroy() end if player.Character:FindFirstChild("ESP_Name") then player.Character.ESP_Name:Destroy() end if not espEnabled then return end local highlight = Instance.new("Highlight") highlight.Name = "ESP_Highlight" highlight.FillColor = Color3.new(1,1,1) highlight.FillTransparency = 0.5 highlight.OutlineColor = Color3.new(0,0,0) highlight.OutlineTransparency = 0 highlight.Adornee = player.Character highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop highlight.Parent = player.Character local billboard = Instance.new("BillboardGui") billboard.Name = "ESP_Name" billboard.Size = UDim2.new(0, 60, 0, 15) billboard.Adornee = player.Character:FindFirstChild("HumanoidRootPart") or player.Character.PrimaryPart billboard.AlwaysOnTop = true billboard.StudsOffset = Vector3.new(0, 3, 0) local label = Instance.new("TextLabel") label.Size = UDim2.new(1,0,1,0) label.BackgroundTransparency = 1 label.Text = player.DisplayName label.TextColor3 = Color3.new(1,1,1) label.TextStrokeTransparency = 0 label.TextStrokeColor3 = Color3.new(0,0,0) label.Font = Enum.Font.SourceSansBold label.TextScaled = true label.Parent = billboard billboard.Parent = player.Character end -- Toggle ESP local function toggleESP(state) espEnabled = state for _, v in pairs(Players:GetPlayers()) do applyESP(v) v.CharacterAdded:Connect(function() task.wait(1) if espEnabled then applyESP(v) end end) end end -- Noclip game:GetService("RunService").Stepped:Connect(function() if noclipEnabled and LocalPlayer.Character then for _, part in pairs(LocalPlayer.Character:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end end) -- Anti-Kick local function toggleAntiKick(state) antiKickEnabled = state if antiKickEnabled then local mt = getrawmetatable(game) setreadonly(mt,false) local old = mt.__namecall mt.__namecall = newcclosure(function(self,...) local method = getnamecallmethod() if tostring(self) == "Kick" or tostring(self) == "Ban" then return end return old(self,...) end) setreadonly(mt,true) end end -- Anti-AFK local function toggleAntiAFK(state) antiAFKEnabled = state if state then LocalPlayer.Idled:Connect(function() if antiAFKEnabled then game:GetService("VirtualUser"):CaptureController() game:GetService("VirtualUser"):ClickButton2(Vector2.new()) end end) end end -- Teleport to player local function teleportToPlayer(plr) if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") and plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") then LocalPlayer.Character.HumanoidRootPart.CFrame = plr.Character.HumanoidRootPart.CFrame + Vector3.new(0,3,0) Fluent:Notify({Title="561 Hub🔥", Content="Teleported to "..plr.DisplayName, Duration=3}) end end -- Fly GUI local function runFlyGUI() pcall(function() loadstring(game:HttpGet("https://rawscripts.net/raw/Universal-Script-Gui-Fly-v3-37111", true))() end) end -- Mobile Aimbot local function runAimbot() pcall(function() loadstring(game:HttpGet("https://rawscripts.net/raw/Universal-Script-Aimbot-Mobile-34677", true))() end) end -- Server Hop local function fetchServers(placeId, sortOrder) local url = "https://games.roblox.com/v1/games/"..placeId.."/servers/Public?sortOrder="..sortOrder.."&limit=100" local response if http_request then response = http_request({Url=url, Method="GET"}) elseif syn and syn.request then response = syn.request({Url=url, Method="GET"}) else Fluent:Notify({Title="561 Hub🔥", Content="Executor does not support server hopping.", Duration=3}) return nil end if response and response.Body then return game:GetService("HttpService"):JSONDecode(response.Body).data end return nil end local function joinServer(serverId) game:GetService("TeleportService"):TeleportToPlaceInstance(game.PlaceId, serverId, LocalPlayer) end local function joinLowestServer() local servers = fetchServers(game.PlaceId, "Asc") if servers and #servers > 0 then joinServer(servers[1].id) end end local function joinHighestServer() local servers = fetchServers(game.PlaceId, "Desc") if servers and #servers > 0 then joinServer(servers[1].id) end end -- ===== Tabs Setup ===== Tabs.Main:AddToggle("ESP", {Title="ESP", Default=false}):OnChanged(toggleESP) Tabs.Main:AddToggle("Noclip", {Title="Noclip", Default=false}):OnChanged(function(v) noclipEnabled=v end) Tabs.Main:AddButton({Title="Mobile Aimbot", Callback=runAimbot}) Tabs.Main:AddButton({Title="Fly GUI V3", Callback=runFlyGUI}) Tabs.Main:AddToggle("AntiKick", {Title="Anti-Kick & Ban", Default=false}):OnChanged(toggleAntiKick) Tabs.Main:AddParagraph({Title="Teleport to Players", Content="Select a player below:"}) for _, plr in pairs(Players:GetPlayers()) do if plr ~= LocalPlayer then Tabs.Main:AddButton({Title=plr.DisplayName, Callback=function() teleportToPlayer(plr) end}) end end Players.PlayerAdded:Connect(function(plr) if plr ~= LocalPlayer then Tabs.Main:AddButton({Title=plr.DisplayName, Callback=function() teleportToPlayer(plr) end}) end end) -- Misc Tab Tabs.Misc:AddInput("SpeedInput",{Title="Speed", Default="16", Numeric=true}):OnChanged(function(v) speedInput = tonumber(v) or 16 end) Tabs.Misc:AddInput("JumpInput",{Title="Jump Power", Default="50", Numeric=true}):OnChanged(function(v) jumpInput = tonumber(v) or 50 end) Tabs.Misc:AddButton({Title="Apply", Callback=function() if LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid") then local hum = LocalPlayer.Character:FindFirstChildOfClass("Humanoid") hum.WalkSpeed = speedInput hum.JumpPower = jumpInput Fluent:Notify({Title="561 Hub🔥", Content="Speed & JumpPower applied!", Duration=3}) end end}) Tabs.Misc:AddButton({Title="Save Position", Callback=function() if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then savedPosition = LocalPlayer.Character.HumanoidRootPart.CFrame Fluent:Notify({Title="561 Hub🔥", Content="Position saved!", Duration=3}) end end}) Tabs.Misc:AddButton({Title="Teleport to Saved Position", Callback=function() if savedPosition and LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then LocalPlayer.Character.HumanoidRootPart.CFrame = savedPosition Fluent:Notify({Title="561 Hub🔥", Content="Teleported to saved position!", Duration=3}) else Fluent:Notify({Title="561 Hub🔥", Content="No position saved!", Duration=3}) end end}) -- Discord Tab Tabs.Discord:AddButton({Title="Copy Discord Link", Callback=function() if setclipboard then setclipboard("https://discord.gg/9hquecNc") Fluent:Notify({Title="561 Hub🔥", Content="Discord link copied!", Duration=3}) else Fluent:Notify({Title="561 Hub🔥", Content="Executor does not support clipboard.", Duration=3}) end end}) -- Settings Tab Tabs.Settings:AddToggle({Title="Anti-AFK", Default=false}):OnChanged(toggleAntiAFK) Tabs.Settings:AddButton({Title="Join Lowest Server", Callback=joinLowestServer}) Tabs.Settings:AddButton({Title="Join Highest Server", Callback=joinHighestServer}) -- Save/Load Config SaveManager:SetLibrary(Fluent) InterfaceManager:SetLibrary(Fluent) SaveManager:IgnoreThemeSettings() SaveManager:SetFolder("561HubFluent") InterfaceManager:SetFolder("561HubFluent/interface") InterfaceManager:BuildInterfaceSection(Tabs.Settings) SaveManager:BuildConfigSection(Tabs.Settings) SaveManager:LoadAutoloadConfig() Fluent:Notify({Title="561 Hub🔥", Content="Fluent GUI Fully Loaded!", Duration=5}) end -- ===== RAYFIELD SCRIPT ===== local function loadRayfield() local success, Rayfield = pcall(function() return loadstring(game:HttpGet("https://sirius.menu/rayfield"))() end) if not success then warn("Rayfield failed to load. Executor may not support it.") return end local espEnabled = false local noclipEnabled = false local antiKickEnabled = false local antiAFKEnabled = false local savedPosition = nil local speedInput, jumpInput = 16, 50 -- ===== ESP ===== local function applyESP(player) if player == Players.LocalPlayer then return end if not player.Character then return end if player.Character:FindFirstChild("ESP_Highlight") then player.Character.ESP_Highlight:Destroy() end if player.Character:FindFirstChild("ESP_Name") then player.Character.ESP_Name:Destroy() end if not espEnabled then return end local highlight = Instance.new("Highlight") highlight.Name = "ESP_Highlight" highlight.FillColor = Color3.new(1,1,1) highlight.FillTransparency = 0.5 highlight.OutlineColor = Color3.new(0,0,0) highlight.OutlineTransparency = 0 highlight.Adornee = player.Character highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop highlight.Parent = player.Character local billboard = Instance.new("BillboardGui") billboard.Name = "ESP_Name" billboard.Size = UDim2.new(0, 60, 0, 15) billboard.Adornee = player.Character:FindFirstChild("HumanoidRootPart") or player.Character.PrimaryPart billboard.AlwaysOnTop = true billboard.StudsOffset = Vector3.new(0, 3, 0) local label = Instance.new("TextLabel") label.Size = UDim2.new(1,0,1,0) label.BackgroundTransparency = 1 label.Text = player.DisplayName label.TextColor3 = Color3.new(1,1,1) label.TextStrokeTransparency = 0 label.TextStrokeColor3 = Color3.new(0,0,0) label.Font = Enum.Font.SourceSansBold label.TextScaled = true label.Parent = billboard billboard.Parent = player.Character end local function toggleESP(state) espEnabled = state for _, v in pairs(Players:GetPlayers()) do applyESP(v) v.CharacterAdded:Connect(function() task.wait(1) if espEnabled then applyESP(v) end end) end end -- Noclip game:GetService("RunService").Stepped:Connect(function() if noclipEnabled and LocalPlayer.Character then for _, part in pairs(LocalPlayer.Character:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end end) -- Mobile Aimbot local function runAimbot() pcall(function() loadstring(game:HttpGet("https://rawscripts.net/raw/Universal-Script-Aimbot-Mobile-34677", true))() end) end -- Fly GUI local function runFlyGUI() pcall(function() loadstring(game:HttpGet("https://rawscripts.net/raw/Universal-Script-Gui-Fly-v3-37111", true))() end) end -- Anti-Kick local function toggleAntiKick(state) antiKickEnabled = state if antiKickEnabled then local mt = getrawmetatable(game) setreadonly(mt,false) local old = mt.__namecall mt.__namecall = newcclosure(function(self,...) local method = getnamecallmethod() if tostring(self) == "Kick" or tostring(self) == "Ban" then return end return old(self,...) end) setreadonly(mt,true) end end -- GUI Setup local Window = Rayfield:CreateWindow({ Name = "561 Hub🔥", LoadingTitle = "561 Hub🔥", LoadingSubtitle = "Fntmistik / fntbandz made ts", ConfigurationSaving = {Enabled = true, FolderName = "561HubRayfield", FileName = "MainConfig"}, KeySystem = false }) -- Main Tab local MainTab = Window:CreateTab("Main") MainTab:CreateToggle({Name="ESP", CurrentValue=false, Flag="ESP_Toggle", Callback=toggleESP}) MainTab:CreateToggle({Name="Noclip", CurrentValue=false, Flag="Noclip_Toggle", Callback=function(s) noclipEnabled=s end}) MainTab:CreateButton({Name="Mobile Aimbot", Callback=runAimbot}) MainTab:CreateButton({Name="Fly GUI V3", Callback=runFlyGUI}) MainTab:CreateToggle({Name="Anti-Kick & Ban", CurrentValue=false, Flag="AntiKick_Toggle", Callback=toggleAntiKick}) -- Teleport to Players MainTab:CreateSection("Teleport to Players") local TeleportFolder = Instance.new("Folder") local function refreshTeleportButtons() for _, btn in ipairs(TeleportFolder:GetChildren()) do btn:Destroy() end for _, plr in pairs(Players:GetPlayers()) do if plr ~= LocalPlayer then local newBtn = MainTab:CreateButton({ Name = plr.DisplayName, Callback = function() if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") and plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") then LocalPlayer.Character.HumanoidRootPart.CFrame = plr.Character.HumanoidRootPart.CFrame + Vector3.new(0,3,0) Rayfield:Notify({Title="561 Hub🔥", Content="Teleported to "..plr.DisplayName, Duration=3}) end end }) newBtn.Parent = TeleportFolder end end end Players.PlayerAdded:Connect(refreshTeleportButtons) Players.PlayerRemoving:Connect(refreshTeleportButtons) refreshTeleportButtons() -- Misc Tab local MiscTab = Window:CreateTab("Misc") MiscTab:CreateInput({Name="Speed", PlaceholderText="16", NumberOnly=true, Callback=function(v) speedInput = tonumber(v) or 16 end}) MiscTab:CreateInput({Name="Jump Power", PlaceholderText="50", NumberOnly=true, Callback=function(v) jumpInput = tonumber(v) or 50 end}) MiscTab:CreateButton({Name="Apply", Callback=function() if LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid") then local hum = LocalPlayer.Character:FindFirstChildOfClass("Humanoid") hum.WalkSpeed = speedInput hum.JumpPower = jumpInput Rayfield:Notify({Title="561 Hub🔥", Content="Speed and Jump Power applied!", Duration=3}) end end}) local savedPosition = nil MiscTab:CreateButton({Name="Save Position", Callback=function() if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then savedPosition = LocalPlayer.Character.HumanoidRootPart.CFrame Rayfield:Notify({Title="561 Hub🔥", Content="Position saved!", Duration=3}) end end}) MiscTab:CreateButton({Name="Teleport to Saved Position", Callback=function() if savedPosition and LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then LocalPlayer.Character.HumanoidRootPart.CFrame = savedPosition Rayfield:Notify({Title="561 Hub🔥", Content="Teleported to saved position!", Duration=3}) else Rayfield:Notify({Title="561 Hub🔥", Content="No position saved yet!", Duration=3}) end end}) -- Discord Tab local DiscordTab = Window:CreateTab("Discord") DiscordTab:CreateButton({Name="Copy Discord Link", Callback=function() if setclipboard then setclipboard("https://discord.gg/9hquecNc") Rayfield:Notify({Title="561 Hub🔥", Content="Discord link copied!", Duration=3}) else Rayfield:Notify({Title="561 Hub🔥", Content="Executor does not support clipboard.", Duration=3}) end end}) -- Settings Tab local SettingsTab = Window:CreateTab("Settings") local antiAFKEnabled = false SettingsTab:CreateToggle({Name = "Anti-AFK", CurrentValue = false, Flag = "AntiAFK", Callback = function(value) antiAFKEnabled = value if value then LocalPlayer.Idled:Connect(function() if antiAFKEnabled then game:GetService("VirtualUser"):CaptureController() game:GetService("VirtualUser"):ClickButton2(Vector2.new()) end end) end end}) -- Server Hop Buttons local function fetchServers(placeId, sortOrder) local url = "https://games.roblox.com/v1/games/"..placeId.."/servers/Public?sortOrder="..sortOrder.."&limit=100" local response if http_request then response = http_request({Url=url, Method="GET"}) elseif syn and syn.request then response = syn.request({Url=url, Method="GET"}) else Rayfield:Notify({Title="561 Hub🔥", Content="Executor does not support server hopping.", Duration=3}) return nil end if response and response.Body then return game:GetService("HttpService"):JSONDecode(response.Body).data end return nil end local function joinServer(serverId) game:GetService("TeleportService"):TeleportToPlaceInstance(game.PlaceId, serverId, LocalPlayer) end local function joinLowestServer() local servers = fetchServers(game.PlaceId, "Asc") if servers and #servers > 0 then joinServer(servers[1].id) end end local function joinHighestServer() local servers = fetchServers(game.PlaceId, "Desc") if servers and #servers > 0 then joinServer(servers[1].id) end end SettingsTab:CreateButton({Name="Join Lowest Server", Callback=joinLowestServer}) SettingsTab:CreateButton({Name="Join Highest Server", Callback=joinHighestServer}) Rayfield:Notify({Title="561 Hub🔥", Content="Rayfield GUI Fully Loaded!", Duration=3}) end -- ===== Launcher Buttons ===== createButton("Fluent GUI Version", 60, loadFluent) createButton("Rayfield GUI Version", 110, loadRayfield) end -- Run: wait then fade out intro, then show launcher if INTRO_DURATION > 0 then task.delay(INTRO_DURATION, function() TweenService:Create(introImage, TweenInfo.new(FADE_TIME), {ImageTransparency = 1}):Play() task.delay(FADE_TIME + 0.05, function() if introGui and introGui.Parent then introGui:Destroy() end pcall(showLauncher) end) end) else -- if INTRO_DURATION == 0, wait for fade-in to finish then wait for click or manual close (default: show immediately after fade-in) task.delay(FADE_TIME + 0.05, function() if introGui and introGui.Parent then introGui:Destroy() end pcall(showLauncher) end) end