-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. Deal with caution. -- -- Stay safe: -- • Never log in on unofficial Roblox sites or lookalike domains. -- • Real Roblox links use roblox.com (check the .com ending). -- • Treat fake Roblox login / "claim reward" pages as phishing. -- [[ End Rscripts Risk Notice ]] local CoreGui = game:GetService("CoreGui") local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local TweenService = game:GetService("TweenService") local Lighting = game:GetService("Lighting") local ReplicatedStorage = game:GetService("ReplicatedStorage") local TextChatService = game:GetService("TextChatService") local LocalPlayer = Players.LocalPlayer local Camera = workspace.CurrentCamera -- Configuration State local Config = { SilentAim = false, Aimbot = false, FOVSize = 120, InfiniteJump = false, FPSBooster = false, AutoSpell = false, SelectedSpeed = "Focused", SpeedDelays = { ["Focused"] = 2.3, ["Hacker"] = 0.5, ["Normal"] = 5.0, ["Casual"] = 4.5, ["Slow"] = 6.0, ["Super Slow"] = 8.0 } } -- Cleanup existing UI if CoreGui:FindFirstChild("SodiumHubUI") then CoreGui.SodiumHubUI:Destroy() end -- ScreenGui Setup local SodiumHubGui = Instance.new("ScreenGui") SodiumHubGui.Name = "SodiumHubUI" SodiumHubGui.ResetOnSpawn = false if gethui then SodiumHubGui.Parent = gethui() elseif syn and syn.protect_gui then syn.protect_gui(SodiumHubGui) SodiumHubGui.Parent = CoreGui else SodiumHubGui.Parent = CoreGui end -- FOV Circle local FOVCircle = Drawing.new("Circle") FOVCircle.Thickness = 1.5 FOVCircle.NumSides = 64 FOVCircle.Radius = Config.FOVSize FOVCircle.Filled = false FOVCircle.Visible = false FOVCircle.Color = Color3.fromRGB(0, 102, 255) -- Main Frame local MainFrame = Instance.new("Frame") MainFrame.Name = "MainFrame" MainFrame.Size = UDim2.new(0, 680, 0, 520) MainFrame.Position = UDim2.new(0.5, -340, 0.5, -260) MainFrame.BackgroundColor3 = Color3.fromRGB(245, 247, 252) MainFrame.BorderSizePixel = 0 MainFrame.Active = true MainFrame.Draggable = true MainFrame.Parent = SodiumHubGui local MainCorner = Instance.new("UICorner") MainCorner.CornerRadius = UDim.new(0, 14) MainCorner.Parent = MainFrame local MainStroke = Instance.new("UIStroke") MainStroke.Color = Color3.fromRGB(220, 226, 238) MainStroke.Thickness = 1.5 MainStroke.Parent = MainFrame -- Top Bar Header local TopBar = Instance.new("Frame") TopBar.Name = "TopBar" TopBar.Size = UDim2.new(1, 0, 0, 46) TopBar.BackgroundColor3 = Color3.fromRGB(255, 255, 255) TopBar.BorderSizePixel = 0 TopBar.Parent = MainFrame local TopCorner = Instance.new("UICorner") TopCorner.CornerRadius = UDim.new(0, 14) TopCorner.Parent = TopBar local TopFix = Instance.new("Frame") TopFix.Size = UDim2.new(1, 0, 0, 10) TopFix.Position = UDim2.new(0, 0, 1, -10) TopFix.BackgroundColor3 = Color3.fromRGB(255, 255, 255) TopFix.BorderSizePixel = 0 TopFix.Parent = TopBar -- Logo & Title local LogoIcon = Instance.new("TextLabel") LogoIcon.Size = UDim2.new(0, 28, 0, 28) LogoIcon.Position = UDim2.new(0, 14, 0.5, -14) LogoIcon.BackgroundColor3 = Color3.fromRGB(0, 102, 255) LogoIcon.Text = "S" LogoIcon.TextColor3 = Color3.fromRGB(255, 255, 255) LogoIcon.Font = Enum.Font.GothamBold LogoIcon.TextSize = 16 LogoIcon.Parent = TopBar local LogoCorner = Instance.new("UICorner") LogoCorner.CornerRadius = UDim.new(0, 8) LogoCorner.Parent = LogoIcon local TitleText = Instance.new("TextLabel") TitleText.Size = UDim2.new(0, 200, 1, 0) TitleText.Position = UDim2.new(0, 50, 0, 0) TitleText.Text = "SODIUM HUB" TitleText.RichText = true TitleText.TextColor3 = Color3.fromRGB(0, 102, 255) TitleText.Font = Enum.Font.GothamBold TitleText.TextSize = 18 TitleText.TextXAlignment = Enum.TextXAlignment.Left TitleText.BackgroundTransparency = 1 TitleText.Parent = TopBar -- Minimize & Close Buttons local MinimizeBtn = Instance.new("TextButton") MinimizeBtn.Size = UDim2.new(0, 24, 0, 24) MinimizeBtn.Position = UDim2.new(1, -60, 0.5, -12) MinimizeBtn.Text = "—" MinimizeBtn.TextColor3 = Color3.fromRGB(100, 110, 130) MinimizeBtn.Font = Enum.Font.GothamBold MinimizeBtn.TextSize = 12 MinimizeBtn.BackgroundTransparency = 1 MinimizeBtn.Parent = TopBar local CloseBtn = Instance.new("TextButton") CloseBtn.Size = UDim2.new(0, 24, 0, 24) CloseBtn.Position = UDim2.new(1, -32, 0.5, -12) CloseBtn.Text = "✕" CloseBtn.TextColor3 = Color3.fromRGB(100, 110, 130) CloseBtn.Font = Enum.Font.GothamBold CloseBtn.TextSize = 14 CloseBtn.BackgroundTransparency = 1 CloseBtn.Parent = TopBar CloseBtn.MouseButton1Click:Connect(function() FOVCircle:Remove() SodiumHubGui:Destroy() end) local IsMinimized = false MinimizeBtn.MouseButton1Click:Connect(function() IsMinimized = not IsMinimized MainFrame.ClipsDescendants = true TweenService:Create(MainFrame, TweenInfo.new(0.3), { Size = IsMinimized and UDim2.new(0, 680, 0, 46) or UDim2.new(0, 680, 0, 520) }):Play() end) -- Sidebar local Sidebar = Instance.new("Frame") Sidebar.Name = "Sidebar" Sidebar.Size = UDim2.new(0, 150, 1, -56) Sidebar.Position = UDim2.new(0, 10, 0, 52) Sidebar.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Sidebar.BorderSizePixel = 0 Sidebar.Parent = MainFrame local SidebarCorner = Instance.new("UICorner") SidebarCorner.CornerRadius = UDim.new(0, 10) SidebarCorner.Parent = Sidebar local SidebarStroke = Instance.new("UIStroke") SidebarStroke.Color = Color3.fromRGB(230, 235, 245) SidebarStroke.Thickness = 1 SidebarStroke.Parent = Sidebar -- Sidebar Items local GamesHeader = Instance.new("TextButton") GamesHeader.Size = UDim2.new(1, -16, 0, 32) GamesHeader.Position = UDim2.new(0, 8, 0, 10) GamesHeader.BackgroundColor3 = Color3.fromRGB(0, 102, 255) GamesHeader.Text = "GAMES" GamesHeader.TextColor3 = Color3.fromRGB(255, 255, 255) GamesHeader.Font = Enum.Font.GothamBold GamesHeader.TextSize = 12 GamesHeader.AutoButtonColor = false GamesHeader.Parent = Sidebar local GamesCorner = Instance.new("UICorner") GamesCorner.CornerRadius = UDim.new(0, 6) GamesCorner.Parent = GamesHeader local RivalsTab = Instance.new("TextButton") RivalsTab.Size = UDim2.new(1, -16, 0, 36) RivalsTab.Position = UDim2.new(0, 8, 0, 48) RivalsTab.BackgroundColor3 = Color3.fromRGB(255, 255, 255) RivalsTab.Text = "🎯 RIVALS" RivalsTab.TextColor3 = Color3.fromRGB(0, 102, 255) RivalsTab.Font = Enum.Font.GothamBold RivalsTab.TextSize = 12 RivalsTab.TextXAlignment = Enum.TextXAlignment.Left RivalsTab.Parent = Sidebar local RivalsCorner = Instance.new("UICorner") RivalsCorner.CornerRadius = UDim.new(0, 6) RivalsCorner.Parent = RivalsTab local RivalsStroke = Instance.new("UIStroke") RivalsStroke.Color = Color3.fromRGB(0, 102, 255) RivalsStroke.Thickness = 1.5 RivalsStroke.Parent = RivalsTab local SpellingTab = Instance.new("TextButton") SpellingTab.Size = UDim2.new(1, -16, 0, 36) SpellingTab.Position = UDim2.new(0, 8, 0, 90) SpellingTab.BackgroundColor3 = Color3.fromRGB(255, 255, 255) SpellingTab.Text = "🐝 SPELLING BEE" SpellingTab.TextColor3 = Color3.fromRGB(80, 90, 110) SpellingTab.Font = Enum.Font.GothamMedium SpellingTab.TextSize = 11 SpellingTab.TextXAlignment = Enum.TextXAlignment.Left SpellingTab.Parent = Sidebar local SpellingCorner = Instance.new("UICorner") SpellingCorner.CornerRadius = UDim.new(0, 6) SpellingCorner.Parent = SpellingTab local SpellingStroke = Instance.new("UIStroke") SpellingStroke.Color = Color3.fromRGB(230, 235, 245) SpellingStroke.Thickness = 1 SpellingStroke.Parent = SpellingTab -- Main Content Container (Scrollable) local ContentScroll = Instance.new("ScrollingFrame") ContentScroll.Name = "ContentScroll" ContentScroll.Size = UDim2.new(1, -180, 1, -56) ContentScroll.Position = UDim2.new(0, 170, 0, 52) ContentScroll.BackgroundTransparency = 1 ContentScroll.BorderSizePixel = 0 ContentScroll.ScrollBarThickness = 4 ContentScroll.ScrollBarImageColor3 = Color3.fromRGB(0, 102, 255) ContentScroll.CanvasSize = UDim2.new(0, 0, 0, 680) ContentScroll.Parent = MainFrame local ContentLayout = Instance.new("UIListLayout") ContentLayout.SortOrder = Enum.SortOrder.LayoutOrder ContentLayout.Padding = UDim.new(0, 12) ContentLayout.Parent = ContentScroll -- Helper: Create Section Title local function CreateSectionTitle(text, icon) local Frame = Instance.new("Frame") Frame.Size = UDim2.new(1, -10, 0, 24) Frame.BackgroundTransparency = 1 Frame.Parent = ContentScroll local Label = Instance.new("TextLabel") Label.Size = UDim2.new(1, 0, 1, 0) Label.Text = icon .. " " .. text Label.TextColor3 = Color3.fromRGB(0, 102, 255) Label.Font = Enum.Font.GothamBold Label.TextSize = 15 Label.TextXAlignment = Enum.TextXAlignment.Left Label.BackgroundTransparency = 1 Label.Parent = Frame end -- Helper: Create Card Frame local function CreateCard(titleText, iconText, sizeY) local Card = Instance.new("Frame") Card.Size = UDim2.new(1, -10, 0, sizeY) Card.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Card.BorderSizePixel = 0 Card.Parent = ContentScroll local CardCorner = Instance.new("UICorner") CardCorner.CornerRadius = UDim.new(0, 8) CardCorner.Parent = Card local CardStroke = Instance.new("UIStroke") CardStroke.Color = Color3.fromRGB(230, 235, 245) CardStroke.Thickness = 1 CardStroke.Parent = Card -- Card Header Banner local Header = Instance.new("Frame") Header.Size = UDim2.new(1, 0, 0, 28) Header.BackgroundColor3 = Color3.fromRGB(0, 102, 255) Header.BorderSizePixel = 0 Header.Parent = Card local HeaderCorner = Instance.new("UICorner") HeaderCorner.CornerRadius = UDim.new(0, 8) HeaderCorner.Parent = Header local HeaderFix = Instance.new("Frame") HeaderFix.Size = UDim2.new(1, 0, 0, 8) HeaderFix.Position = UDim2.new(0, 0, 1, -8) HeaderFix.BackgroundColor3 = Color3.fromRGB(0, 102, 255) HeaderFix.BorderSizePixel = 0 HeaderFix.Parent = Header local Title = Instance.new("TextLabel") Title.Size = UDim2.new(1, -20, 1, 0) Title.Position = UDim2.new(0, 10, 0, 0) Title.Text = iconText .. " " .. titleText Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.Font = Enum.Font.GothamBold Title.TextSize = 11 Title.TextXAlignment = Enum.TextXAlignment.Left Title.BackgroundTransparency = 1 Title.Parent = Header local Container = Instance.new("Frame") Container.Size = UDim2.new(1, -20, 1, -34) Container.Position = UDim2.new(0, 10, 0, 30) Container.BackgroundTransparency = 1 Container.Parent = Card return Container end -- Helper: Create Toggle Switch local function AddToggleRow(container, text, flag, posY, callback) local Row = Instance.new("Frame") Row.Size = UDim2.new(1, 0, 0, 32) Row.Position = UDim2.new(0, 0, 0, posY) Row.BackgroundTransparency = 1 Row.Parent = container local Label = Instance.new("TextLabel") Label.Size = UDim2.new(0.7, 0, 1, 0) Label.Text = text Label.TextColor3 = Color3.fromRGB(40, 50, 70) Label.Font = Enum.Font.GothamMedium Label.TextSize = 13 Label.TextXAlignment = Enum.TextXAlignment.Left Label.BackgroundTransparency = 1 Label.Parent = Row local ToggleBtn = Instance.new("TextButton") ToggleBtn.Size = UDim2.new(0, 42, 0, 22) ToggleBtn.Position = UDim2.new(1, -42, 0.5, -11) ToggleBtn.BackgroundColor3 = Config[flag] and Color3.fromRGB(0, 102, 255) or Color3.fromRGB(210, 218, 230) ToggleBtn.Text = "" ToggleBtn.Parent = Row local ToggleCorner = Instance.new("UICorner") ToggleCorner.CornerRadius = UDim.new(1, 0) ToggleCorner.Parent = ToggleBtn local Knob = Instance.new("Frame") Knob.Size = UDim2.new(0, 16, 0, 16) Knob.Position = Config[flag] and UDim2.new(1, -19, 0.5, -8) or UDim2.new(0, 3, 0.5, -8) Knob.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Knob.Parent = ToggleBtn local KnobCorner = Instance.new("UICorner") KnobCorner.CornerRadius = UDim.new(1, 0) KnobCorner.Parent = Knob ToggleBtn.MouseButton1Click:Connect(function() Config[flag] = not Config[flag] local targetColor = Config[flag] and Color3.fromRGB(0, 102, 255) or Color3.fromRGB(210, 218, 230) local targetPos = Config[flag] and UDim2.new(1, -19, 0.5, -8) or UDim2.new(0, 3, 0.5, -8) TweenService:Create(ToggleBtn, TweenInfo.new(0.2), {BackgroundColor3 = targetColor}):Play() TweenService:Create(Knob, TweenInfo.new(0.2), {Position = targetPos}):Play() if callback then callback(Config[flag]) end end) end -- Helper: Create Slider Row local function AddSliderRow(container, text, min, max, flag, posY, callback) local Row = Instance.new("Frame") Row.Size = UDim2.new(1, 0, 0, 32) Row.Position = UDim2.new(0, 0, 0, posY) Row.BackgroundTransparency = 1 Row.Parent = container local Label = Instance.new("TextLabel") Label.Size = UDim2.new(0.25, 0, 1, 0) Label.Text = text Label.TextColor3 = Color3.fromRGB(40, 50, 70) Label.Font = Enum.Font.GothamMedium Label.TextSize = 13 Label.TextXAlignment = Enum.TextXAlignment.Left Label.BackgroundTransparency = 1 Label.Parent = Row local ValueLabel = Instance.new("TextLabel") ValueLabel.Size = UDim2.new(0.15, 0, 1, 0) ValueLabel.Position = UDim2.new(1, -35, 0, 0) ValueLabel.Text = tostring(Config[flag]) ValueLabel.TextColor3 = Color3.fromRGB(40, 50, 70) ValueLabel.Font = Enum.Font.GothamMedium ValueLabel.TextSize = 13 ValueLabel.TextXAlignment = Enum.TextXAlignment.Right ValueLabel.BackgroundTransparency = 1 ValueLabel.Parent = Row local Track = Instance.new("Frame") Track.Size = UDim2.new(0.55, -20, 0, 4) Track.Position = UDim2.new(0.25, 5, 0.5, -2) Track.BackgroundColor3 = Color3.fromRGB(220, 228, 240) Track.BorderSizePixel = 0 Track.Parent = Row local TrackCorner = Instance.new("UICorner") TrackCorner.CornerRadius = UDim.new(1, 0) TrackCorner.Parent = Track local Fill = Instance.new("Frame") Fill.Size = UDim2.new((Config[flag] - min)/(max - min), 0, 1, 0) Fill.BackgroundColor3 = Color3.fromRGB(0, 102, 255) Fill.BorderSizePixel = 0 Fill.Parent = Track local FillCorner = Instance.new("UICorner") FillCorner.CornerRadius = UDim.new(1, 0) FillCorner.Parent = Fill local Knob = Instance.new("Frame") Knob.Size = UDim2.new(0, 12, 0, 12) Knob.Position = UDim2.new(1, -6, 0.5, -6) Knob.BackgroundColor3 = Color3.fromRGB(0, 102, 255) Knob.Parent = Fill local KnobCorner = Instance.new("UICorner") KnobCorner.CornerRadius = UDim.new(1, 0) KnobCorner.Parent = Knob local dragging = false local function UpdateSlider(input) local pos = math.clamp((input.Position.X - Track.AbsolutePosition.X) / Track.AbsoluteSize.X, 0, 1) local val = math.floor(min + (max - min) * pos) Config[flag] = val ValueLabel.Text = tostring(val) Fill.Size = UDim2.new(pos, 0, 1, 0) if callback then callback(val) end end Track.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true UpdateSlider(input) end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end end) UserInputService.InputChanged:Connect(function(input) if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then UpdateSlider(input) end end) end -- ==================================================================== -- BUILDING UI FROM MATCHING IMAGE -- ==================================================================== -- 1. RIVALS SECTION CreateSectionTitle("RIVALS", "⚔️") local CombatCard = CreateCard("COMBAT", "🎯", 135) AddToggleRow(CombatCard, "Silent Aim", "SilentAim", 0, function(val) FOVCircle.Visible = val end) AddSliderRow(CombatCard, "FOV", 10, 500, "FOVSize", 34, function(val) FOVCircle.Radius = val end) AddToggleRow(CombatCard, "Aimbot", "Aimbot", 68) local StuffCard = CreateCard("STUFF", "📦", 100) AddToggleRow(StuffCard, "Infinite Jump", "InfiniteJump", 0) AddToggleRow(StuffCard, "FPS Booster", "FPSBooster", 34, function(enabled) if enabled then for _, v in pairs(game:GetDescendants()) do if v:IsA("Part") or v:IsA("UnionOperation") or v:IsA("MeshPart") then v.Material = Enum.Material.SmoothPlastic elseif v:IsA("Decal") or v:IsA("Texture") then v:Destroy() elseif v:IsA("ParticleEmitter") or v:IsA("Trail") then v.Enabled = false end end Lighting.GlobalShadows = false if setfpscap then setfpscap(120) end end end) -- 2. SPELLING BEE SECTION CreateSectionTitle("SPELLING BEE", "🐝") local AutoSpellCard = CreateCard("AUTO SPELL", "⚡", 65) AddToggleRow(AutoSpellCard, "Auto Spell", "AutoSpell", 0) local SpeedCard = CreateCard("BEHAVIOR SPEED", "⏱️", 230) local Speeds = { {"Focused", "2.3 secs"}, {"Hacker", "0.5 secs"}, {"Normal", "5 secs"}, {"Casual", "4.5 secs"}, {"Slow", "6 secs"}, {"Super Slow", "8 secs"} } local SpeedButtons = {} for i, item in ipairs(Speeds) do local name, timeStr = item[1], item[2] local Row = Instance.new("TextButton") Row.Size = UDim2.new(1, 0, 0, 28) Row.Position = UDim2.new(0, 0, 0, (i - 1) * 30) Row.BackgroundTransparency = 1 Row.Text = "" Row.Parent = SpeedCard local NameLabel = Instance.new("TextLabel") NameLabel.Size = UDim2.new(0.5, 0, 1, 0) NameLabel.Text = name NameLabel.TextColor3 = (Config.SelectedSpeed == name) and Color3.fromRGB(0, 102, 255) or Color3.fromRGB(40, 50, 70) NameLabel.Font = (Config.SelectedSpeed == name) and Enum.Font.GothamBold or Enum.Font.GothamMedium NameLabel.TextSize = 13 NameLabel.TextXAlignment = Enum.TextXAlignment.Left NameLabel.BackgroundTransparency = 1 NameLabel.Parent = Row local TimeLabel = Instance.new("TextLabel") TimeLabel.Size = UDim2.new(0.5, 0, 1, 0) TimeLabel.Position = UDim2.new(0.5, 0, 0, 0) TimeLabel.Text = timeStr TimeLabel.TextColor3 = Color3.fromRGB(80, 90, 110) TimeLabel.Font = Enum.Font.GothamMedium TimeLabel.TextSize = 13 TimeLabel.TextXAlignment = Enum.TextXAlignment.Right TimeLabel.BackgroundTransparency = 1 TimeLabel.Parent = Row SpeedButtons[name] = NameLabel Row.MouseButton1Click:Connect(function() Config.SelectedSpeed = name for sName, lbl in pairs(SpeedButtons) do lbl.TextColor3 = (sName == name) and Color3.fromRGB(0, 102, 255) or Color3.fromRGB(40, 50, 70) lbl.Font = (sName == name) and Enum.Font.GothamBold or Enum.Font.GothamMedium end end) end -- ==================================================================== -- FUNCTIONAL BACKEND LOGIC -- ==================================================================== -- FOV Circle Position Follow Mouse RunService.RenderStepped:Connect(function() local mousePos = UserInputService:GetMouseLocation() FOVCircle.Position = Vector2.new(mousePos.X, mousePos.Y) end) -- Target Selection Helper local function GetClosestTargetInFOV() local closestPlayer = nil local shortestDistance = Config.FOVSize local mousePos = UserInputService:GetMouseLocation() for _, player in ipairs(Players:GetPlayers()) do if player ~= LocalPlayer and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then local pos, onScreen = Camera:WorldToViewportPoint(player.Character.HumanoidRootPart.Position)