-- Services local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local player = Players.LocalPlayer -- Settings local Settings = { InvisibleEnabled = false, InfiniteJumpEnabled = false } -- GUI Creation local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "InvisibleScriptGui" ScreenGui.ResetOnSpawn = false ScreenGui.Parent = player:WaitForChild("PlayerGui") -- Main Frame (UI Window) local MainFrame = Instance.new("Frame") MainFrame.Name = "MainFrame" MainFrame.Size = UDim2.new(0, 220, 0, 190) MainFrame.Position = UDim2.new(0.5, -110, 0.5, -95) MainFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25) MainFrame.BorderSizePixel = 0 MainFrame.Active = true MainFrame.Draggable = true MainFrame.Parent = ScreenGui -- Smooth Corners for Main Window local UICorner = Instance.new("UICorner") UICorner.CornerRadius = UDim.new(0, 12) UICorner.Parent = MainFrame -- Rainbow Edges (UIStroke + UIGradient) local UIStroke = Instance.new("UIStroke") UIStroke.Thickness = 2.5 UIStroke.Parent = MainFrame local UIGradient = Instance.new("UIGradient") UIGradient.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 0, 0)), ColorSequenceKeypoint.new(0.2, Color3.fromRGB(255, 127, 0)), ColorSequenceKeypoint.new(0.4, Color3.fromRGB(255, 255, 0)), ColorSequenceKeypoint.new(0.6, Color3.fromRGB(0, 255, 0)), ColorSequenceKeypoint.new(0.8, Color3.fromRGB(0, 0, 255)), ColorSequenceKeypoint.new(1, Color3.fromRGB(139, 0, 255)) }) UIGradient.Parent = UIStroke -- Animate Rainbow Effect RunService.RenderStepped:Connect(function() UIGradient.Rotation = (tick() * 50) % 360 end) -- Title Label ("Invisible script") local TitleLabel = Instance.new("TextLabel") TitleLabel.Size = UDim2.new(1, 0, 0, 30) TitleLabel.Position = UDim2.new(0, 0, 0, 8) TitleLabel.BackgroundTransparency = 1 TitleLabel.Text = "Invisible script" TitleLabel.TextColor3 = Color3.fromRGB(255, 255, 255) TitleLabel.TextSize = 16 TitleLabel.Font = Enum.Font.GothamBold TitleLabel.Parent = MainFrame -- Invisible Toggle Button local InvisibleButton = Instance.new("TextButton") InvisibleButton.Size = UDim2.new(0.85, 0, 0, 38) InvisibleButton.Position = UDim2.new(0.075, 0, 0, 42) InvisibleButton.BackgroundColor3 = Color3.fromRGB(40, 40, 40) InvisibleButton.BorderSizePixel = 0 InvisibleButton.Text = "Invisible: Off" InvisibleButton.TextColor3 = Color3.fromRGB(255, 255, 255) InvisibleButton.TextSize = 13 InvisibleButton.Font = Enum.Font.GothamSemibold InvisibleButton.Parent = MainFrame local InvisibleButtonCorner = Instance.new("UICorner") InvisibleButtonCorner.CornerRadius = UDim.new(0, 8) InvisibleButtonCorner.Parent = InvisibleButton -- Infinite Jump Toggle Button local InfJumpButton = Instance.new("TextButton") InfJumpButton.Size = UDim2.new(0.85, 0, 0, 38) InfJumpButton.Position = UDim2.new(0.075, 0, 0, 88) InfJumpButton.BackgroundColor3 = Color3.fromRGB(40, 40, 40) InfJumpButton.BorderSizePixel = 0 InfJumpButton.Text = "infinite jump: Off" InfJumpButton.TextColor3 = Color3.fromRGB(255, 255, 255) InfJumpButton.TextSize = 13 InfJumpButton.Font = Enum.Font.GothamSemibold InfJumpButton.Parent = MainFrame local InfJumpButtonCorner = Instance.new("UICorner") InfJumpButtonCorner.CornerRadius = UDim.new(0, 8) InfJumpButtonCorner.Parent = InfJumpButton -- Watermark Text ("Made by Onix Nebula") local CreditLabel = Instance.new("TextLabel") CreditLabel.Size = UDim2.new(1, 0, 0, 20) CreditLabel.Position = UDim2.new(0, 0, 1, -22) CreditLabel.BackgroundTransparency = 1 CreditLabel.Text = "Made by Onix Nebula" CreditLabel.TextColor3 = Color3.fromRGB(200, 200, 200) CreditLabel.TextTransparency = 0.4 CreditLabel.TextSize = 11 CreditLabel.Font = Enum.Font.Gotham CreditLabel.Parent = MainFrame -- Floating Icon Button (Hide / Show GUI Window) local ToggleIconButton = Instance.new("ImageButton") ToggleIconButton.Name = "ToggleIconButton" ToggleIconButton.Size = UDim2.new(0, 45, 0, 45) ToggleIconButton.Position = UDim2.new(0, 20, 0.5, -22) ToggleIconButton.BackgroundColor3 = Color3.fromRGB(30, 30, 30) ToggleIconButton.Image = "rbxassetid://6031097225" -- Eye icon ToggleIconButton.ImageColor3 = Color3.fromRGB(255, 255, 255) ToggleIconButton.Active = true ToggleIconButton.Draggable = true ToggleIconButton.Parent = ScreenGui local IconCorner = Instance.new("UICorner") IconCorner.CornerRadius = UDim.new(1, 0) IconCorner.Parent = ToggleIconButton local IconStroke = Instance.new("UIStroke") IconStroke.Thickness = 2 IconStroke.Color = Color3.fromRGB(80, 80, 80) IconStroke.Parent = ToggleIconButton -- Toggle Main GUI Visibility ToggleIconButton.MouseButton1Click:Connect(function() MainFrame.Visible = not MainFrame.Visible end) -- Infinite Jump Logic UserInputService.JumpRequest:Connect(function() if Settings.InfiniteJumpEnabled then local character = player.Character local humanoid = character and character:FindFirstChildOfClass("Humanoid") if humanoid then humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end end end) -- Infinite Jump Button Interaction InfJumpButton.MouseButton1Click:Connect(function() Settings.InfiniteJumpEnabled = not Settings.InfiniteJumpEnabled if Settings.InfiniteJumpEnabled then InfJumpButton.Text = "infinite jump: On" InfJumpButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) else InfJumpButton.Text = "infinite jump: Off" InfJumpButton.BackgroundColor3 = Color3.fromRGB(40, 40, 40) end end) -- Invisible Script Logic (Provided Open Source) local InvisibleRealCFrame = nil local InvisibleAnimationTrack = nil local InvisibleRenderKey = "PrecisionInvisibleRender" local InvisibleOriginalTransparency = {} local InvisibleOriginalCanCollide = {} local function loadInvisibleAnimation(character) local humanoid = character:FindFirstChildOfClass("Humanoid") if not humanoid then return nil end local animator = humanoid:FindFirstChildOfClass("Animator") if not animator then return nil end local isR15 = humanoid.RigType == Enum.HumanoidRigType.R15 local animation = Instance.new("Animation") animation.AnimationId = isR15 and "rbxassetid://18665825805" or "rbxassetid://215384594" local track = animator:LoadAnimation(animation) track.Priority = Enum.AnimationPriority.Action4 track:Play(0, 0.001, 0) animation:Destroy() task.delay(0, function() track.TimePosition = isR15 and 1.95 or 0.4 end) return track end local function stopInvisible() pcall(function() RunService:UnbindFromRenderStep(InvisibleRenderKey) end) if InvisibleAnimationTrack then InvisibleAnimationTrack:Stop() InvisibleAnimationTrack:Destroy() InvisibleAnimationTrack = nil end local character = player.Character local rootPart = character and character:FindFirstChild("HumanoidRootPart") if rootPart and InvisibleRealCFrame then rootPart.CFrame = InvisibleRealCFrame local currentVelocity = rootPart.AssemblyLinearVelocity rootPart.AssemblyLinearVelocity = Vector3.new(currentVelocity.X, 0, currentVelocity.Z) end InvisibleRealCFrame = nil if character then for _, part in ipairs(character:GetDescendants()) do if part:IsA("BasePart") and part ~= rootPart then if InvisibleOriginalTransparency[part] ~= nil then part.Transparency = InvisibleOriginalTransparency[part] end if InvisibleOriginalCanCollide[part] ~= nil then part.CanCollide = InvisibleOriginalCanCollide[part] end end end if rootPart then rootPart.Transparency = 1 end end table.clear(InvisibleOriginalTransparency) table.clear(InvisibleOriginalCanCollide) end local function startInvisible() local character = player.Character if not character then return end local humanoid = character:FindFirstChildOfClass("Humanoid") local rootPart = character:FindFirstChild("HumanoidRootPart") if not humanoid or not rootPart then return end InvisibleAnimationTrack = loadInvisibleAnimation(character) InvisibleRealCFrame = nil table.clear(InvisibleOriginalTransparency) table.clear(InvisibleOriginalCanCollide) for _, part in ipairs(character:GetDescendants()) do if part:IsA("BasePart") and part ~= rootPart then InvisibleOriginalTransparency[part] = part.Transparency InvisibleOriginalCanCollide[part] = part.CanCollide part.Transparency = 0.5 part.CanCollide = false end end rootPart.Transparency = 1 pcall(function() RunService:UnbindFromRenderStep(InvisibleRenderKey) end) RunService:BindToRenderStep(InvisibleRenderKey, Enum.RenderPriority.Camera.Value - 1, function() if Settings.InvisibleEnabled and InvisibleRealCFrame and rootPart.Parent then rootPart.CFrame = InvisibleRealCFrame if InvisibleAnimationTrack then InvisibleAnimationTrack:AdjustWeight(0.001) end end end) end RunService.Heartbeat:Connect(function() if not Settings.InvisibleEnabled then return end local character = player.Character local humanoid = character and character:FindFirstChildOfClass("Humanoid") local rootPart = character and character:FindFirstChild("HumanoidRootPart") if not humanoid or not rootPart then return end local isR15 = humanoid.RigType == Enum.HumanoidRigType.R15 local dropOffset = humanoid.HipHeight + (rootPart.Size.Y / 2) - 1 InvisibleRealCFrame = rootPart.CFrame rootPart.CFrame = (rootPart.CFrame - Vector3.new(0, dropOffset, 0)) * CFrame.Angles(math.rad(isR15 and 180 or 90), 0, 0) local currentVelocity = rootPart.AssemblyLinearVelocity rootPart.AssemblyLinearVelocity = Vector3.new(currentVelocity.X, 0, currentVelocity.Z) if InvisibleAnimationTrack then InvisibleAnimationTrack:AdjustWeight(100) end end) player.CharacterAdded:Connect(function(character) if Settings.InvisibleEnabled then task.wait(0.5) startInvisible() end end) -- Invisible Button Interaction InvisibleButton.MouseButton1Click:Connect(function() Settings.InvisibleEnabled = not Settings.InvisibleEnabled if Settings.InvisibleEnabled then InvisibleButton.Text = "Invisible: On" InvisibleButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) startInvisible() else InvisibleButton.Text = "Invisible: Off" InvisibleButton.BackgroundColor3 = Color3.fromRGB(40, 40, 40) stopInvisible() end end) getgenv().SetInvisibleEnabled = function(v) Settings.InvisibleEnabled = v == true if Settings.InvisibleEnabled then InvisibleButton.Text = "Invisible: On" InvisibleButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) startInvisible() else InvisibleButton.Text = "Invisible: Off" InvisibleButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) stopInvisible() end end