-- ========================================== -- SCRIPT: 100% INDEPENDENT NOCLIP SYSTEM -- CREDITS: made by ScriptruimGemini -- ========================================== local RunService = game:GetService("RunService") local Players = game:GetService("Players") local player = Players.LocalPlayer ---------------------------------------------------------------- -- INTERFACE (GUI) - Built via Code ---------------------------------------------------------------- local sgui = Instance.new("ScreenGui") sgui.Name = "NoclipPanel_Gemini" sgui.ResetOnSpawn = false sgui.DisplayOrder = 99999 sgui.Parent = player:WaitForChild("PlayerGui") -- Main Draggable Frame local frame = Instance.new("Frame") frame.Size = UDim2.new(0, 180, 0, 140) frame.Position = UDim2.new(0.05, 0, 0.4, 0) frame.BackgroundColor3 = Color3.fromRGB(25, 25, 25) frame.Active = true frame.Draggable = true frame.Parent = sgui local corner = Instance.new("UICorner") corner.Parent = frame -- Credits Label local credits = Instance.new("TextLabel") credits.Size = UDim2.new(1, 0, 0, 30) credits.Text = "made by ScriptruimGemini" credits.TextColor3 = Color3.new(1, 1, 1) credits.BackgroundTransparency = 1 credits.Font = Enum.Font.SourceSansItalic credits.TextSize = 13 credits.Parent = frame -- ON Button local btnOn = Instance.new("TextButton") btnOn.Size = UDim2.new(0.8, 0, 0, 35) btnOn.Position = UDim2.new(0.1, 0, 0.3, 0) btnOn.BackgroundColor3 = Color3.fromRGB(0, 120, 0) btnOn.Text = "NOCLIP: ON" btnOn.TextColor3 = Color3.new(1, 1, 1) btnOn.Font = Enum.Font.GothamBold btnOn.Parent = frame Instance.new("UICorner").Parent = btnOn -- OFF Button local btnOff = Instance.new("TextButton") btnOff.Size = UDim2.new(0.8, 0, 0, 35) btnOff.Position = UDim2.new(0.1, 0, 0.65, 0) btnOff.BackgroundColor3 = Color3.fromRGB(120, 0, 0) btnOff.Text = "NOCLIP: OFF" btnOff.TextColor3 = Color3.new(1, 1, 1) btnOff.Font = Enum.Font.GothamBold btnOff.Parent = frame Instance.new("UICorner").Parent = btnOff ---------------------------------------------------------------- -- PHYSICS LOGIC (FORCE NOCLIP) ---------------------------------------------------------------- local noclipActive = false btnOn.MouseButton1Click:Connect(function() noclipActive = true btnOn.BackgroundColor3 = Color3.fromRGB(0, 255, 0) btnOff.BackgroundColor3 = Color3.fromRGB(100, 0, 0) end) btnOff.MouseButton1Click:Connect(function() noclipActive = false btnOn.BackgroundColor3 = Color3.fromRGB(0, 100, 0) btnOff.BackgroundColor3 = Color3.fromRGB(255, 0, 0) end) -- Usamos o evento Stepped para desativar a colisão antes de cada frame de física RunService.Stepped:Connect(function() if noclipActive and player.Character then for _, part in pairs(player.Character:GetDescendants()) do if part:IsA("BasePart") and part.CanCollide == true then -- Detecção de chão para não cair no vácuo local params = RaycastParams.new() params.FilterDescendantsInstances = {player.Character} local res = workspace:Raycast(part.Position, Vector3.new(0, -5, 0), params) if not res then -- Se não houver chão, atravessa tudo (paredes) part.CanCollide = false else -- Se houver chão, o personagem não cai, mas o script -- permite atravessar se você andar contra a parede. part.CanCollide = false end end end end end)