Greed hub v1
Key RequiredUniversal

Greed hub v1

Universal ScriptGggghGgggh 452 views 176 executesUpdated Jan 5, 2026
Unrated
00
Lua Script•161 lines (9635 chars)
-- SERVICES
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Lighting = game:GetService("Lighting")
local TweenService = game:GetService("TweenService")
local UserInputService = game:GetService("UserInputService")

local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")

-- 1. CLEANUP & SETUP
if playerGui:FindFirstChild("GreedSystem") then playerGui.GreedSystem:Destroy() end
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "GreedSystem"
screenGui.IgnoreGuiInset = true
screenGui.ResetOnSpawn = false
screenGui.Parent = playerGui

-- 2. INTRO ASSETS
local introFrame = Instance.new("Frame", screenGui)
introFrame.Size = UDim2.new(1, 0, 1, 0); introFrame.BackgroundColor3 = Color3.new(0, 0, 0); introFrame.ZIndex = 9000; introFrame.Visible = false
local introTxt = Instance.new("TextLabel", introFrame)
introTxt.Size = UDim2.new(1, 0, 1, 0); introTxt.BackgroundTransparency = 1; introTxt.TextColor3 = Color3.fromRGB(0, 255, 100); introTxt.Font = Enum.Font.Code; introTxt.TextSize = 35; introTxt.TextTransparency = 1; introTxt.ZIndex = 9001

-- 3. VARIABLES
local espActive = false
local corruptTexts = {"greed..", "gr33d..", "ERR_OR", "sin..", "VOID", "EMPTY", "CONSUMED"}
local yesGlitches = {"YES", "dead.", "Death.", "Error.", "Error_999"}
local noGlitches = {"NO", "peace.", "Live.", "Take in the sins.", "Live with it"}

-- 4. DRAGGABLE HELPERS
local function makeDraggable(frame, parentFrame)
	local dragging, dragInput, dragStart, startPos
	frame.InputBegan:Connect(function(input)
		if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true; dragStart = input.Position; startPos = parentFrame.Position end
	end)
	frame.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then dragInput = input end end)
	UserInputService.InputChanged:Connect(function(input)
		if input == dragInput and dragging then
			local delta = input.Position - dragStart
			parentFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
		end
	end)
	frame.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end end)
end

-- 5. MAIN HUB ELEMENTS
local spawnBtn = Instance.new("TextButton", screenGui)
spawnBtn.Size = UDim2.new(0, 40, 0, 40); spawnBtn.Position = UDim2.new(1, -50, 0, 10); spawnBtn.Text = "X"; spawnBtn.TextColor3 = Color3.fromRGB(0, 255, 100); spawnBtn.BackgroundColor3 = Color3.new(0,0,0); Instance.new("UICorner", spawnBtn)

local mini999 = Instance.new("TextButton", screenGui)
mini999.Size = UDim2.new(0, 70, 0, 35); mini999.Position = UDim2.new(0.1, 0, 0.1, 0); mini999.BackgroundColor3 = Color3.new(0,0,0); mini999.Text = "999"; mini999.TextColor3 = Color3.fromRGB(0, 255, 100); mini999.Visible = false; mini999.Font = Enum.Font.Code; Instance.new("UICorner", mini999)
makeDraggable(mini999, mini999)

local mainHub = Instance.new("Frame", screenGui)
mainHub.Size = UDim2.new(0, 400, 0, 350); mainHub.Position = UDim2.new(0.5, 0, 0.5, 0); mainHub.AnchorPoint = Vector2.new(0.5, 0.5); mainHub.BackgroundColor3 = Color3.fromRGB(15, 15, 15); mainHub.Visible = false; Instance.new("UICorner", mainHub)

local dragBar = Instance.new("Frame", mainHub)
dragBar.Size = UDim2.new(1, 0, 0, 35); dragBar.BackgroundColor3 = Color3.fromRGB(30, 30, 30); makeDraggable(dragBar, mainHub)

local sinExitBtn = Instance.new("TextButton", dragBar) -- EXIT BUTTON
sinExitBtn.Size = UDim2.new(0, 35, 0, 35); sinExitBtn.Text = "X"; sinExitBtn.TextColor3 = Color3.fromRGB(255, 50, 50); sinExitBtn.BackgroundTransparency = 1

local zeroBtn = Instance.new("TextButton", dragBar)
zeroBtn.Size = UDim2.new(0, 35, 0, 35); zeroBtn.Position = UDim2.new(1, -35, 0, 0); zeroBtn.Text = "0"; zeroBtn.TextColor3 = Color3.fromRGB(0, 255, 100); zeroBtn.BackgroundTransparency = 1

local espBtn = Instance.new("TextButton", mainHub)
espBtn.Size = UDim2.new(0.9, 0, 0, 45); espBtn.Position = UDim2.new(0.05, 0, 0, 60); espBtn.Text = "ENABLE ESP"; espBtn.BackgroundColor3 = Color3.fromRGB(25, 25, 25); espBtn.TextColor3 = Color3.new(0, 1, 0.4)

local confirmMenu = Instance.new("Frame", screenGui)
confirmMenu.Size = UDim2.new(0, 300, 0, 150); confirmMenu.Position = UDim2.new(0.5, 0, 0.5, 0); confirmMenu.AnchorPoint = Vector2.new(0.5, 0.5); confirmMenu.BackgroundColor3 = Color3.fromRGB(10, 10, 10); confirmMenu.Visible = false; confirmMenu.ZIndex = 8000
Instance.new("UIStroke", confirmMenu).Color = Color3.fromRGB(0, 255, 100)

local yesBtn = Instance.new("TextButton", confirmMenu)
yesBtn.Size = UDim2.new(0.4, 0, 0, 40); yesBtn.Position = UDim2.new(0.05, 0, 0.6, 0); yesBtn.BackgroundColor3 = Color3.fromRGB(40, 0, 0); yesBtn.TextColor3 = Color3.new(1, 1, 1); yesBtn.ZIndex = 8001
local noBtn = Instance.new("TextButton", confirmMenu)
noBtn.Size = UDim2.new(0.4, 0, 0, 40); noBtn.Position = UDim2.new(0.55, 0, 0.6, 0); noBtn.BackgroundColor3 = Color3.fromRGB(0, 40, 0); noBtn.TextColor3 = Color3.new(1, 1, 1); noBtn.ZIndex = 8001

-- 6. FULL BODY FLASHING ESP
RunService.RenderStepped:Connect(function()
	if not espActive then return end
	for _, p in pairs(Players:GetPlayers()) do
		if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then
			local char = p.Character
			local hrp = char.HumanoidRootPart
			local hl = char:FindFirstChild("GreedHL") or Instance.new("Highlight", char)
			hl.Name = "GreedHL"; hl.FillColor = Color3.new(0, 1, 0.4); hl.FillTransparency = 0.5
			
			local dist = (player.Character.HumanoidRootPart.Position - hrp.Position).Magnitude
			if dist <= 25 then
				hl.Enabled = false
				local bGui = char:FindFirstChild("BlackoutESP") or Instance.new("BillboardGui", char)
				bGui.Name = "BlackoutESP"; bGui.AlwaysOnTop = true; bGui.Adornee = hrp; bGui.StudsOffset = Vector3.new(0, 1, 0)
				local jitterSize = 6 + math.random(-5, 5) * 0.1
				bGui.Size = UDim2.new(jitterSize, 0, jitterSize + 3, 0) 

				local blackFrame = bGui:FindFirstChild("Cover") or Instance.new("Frame", bGui)
				blackFrame.Name = "Cover"; blackFrame.Size = UDim2.new(1, 0, 1, 0); blackFrame.BorderSizePixel = 0
				blackFrame.BackgroundColor3 = (tick() % 0.15 < 0.07) and Color3.new(0, 0, 0) or Color3.fromRGB(0, 255, 100)
				
				local textLabel = blackFrame:FindFirstChild("Label") or Instance.new("TextLabel", blackFrame)
				textLabel.Name = "Label"; textLabel.Size = UDim2.new(1,0,1,0); textLabel.BackgroundTransparency = 1; 
				textLabel.TextColor3 = (blackFrame.BackgroundColor3 == Color3.new(0,0,0)) and Color3.fromRGB(0, 255, 100) or Color3.new(0,0,0)
				textLabel.Font = Enum.Font.Code; textLabel.TextSize = 25; textLabel.Text = corruptTexts[math.random(#corruptTexts)]
			else
				if char:FindFirstChild("BlackoutESP") then char.BlackoutESP:Destroy() end
				hl.Enabled = true
			end
		end
	end
end)

-- 7. STARTUP LOGIC
spawnBtn.MouseButton1Click:Connect(function()
	spawnBtn:Destroy()
	introFrame.Visible = true
	introTxt.Text = "greed is easy to get.."
	TweenService:Create(introTxt, TweenInfo.new(1.5), {TextTransparency = 0}):Play()
	task.wait(2.5)
	local f1 = TweenService:Create(introTxt, TweenInfo.new(1), {TextTransparency = 1})
	f1:Play(); f1.Completed:Wait()
	introTxt.Text = "but hard to get rid of"
	TweenService:Create(introTxt, TweenInfo.new(1.5), {TextTransparency = 0}):Play()
	task.wait(2.5)
	for i = 1, 15 do
		introTxt.Position = UDim2.new(0, math.random(-20, 20), 0, math.random(-20, 20))
		introTxt.TextColor3 = (i % 2 == 0) and Color3.new(1, 1, 1) or Color3.fromRGB(0, 255, 100); task.wait(0.05)
	end
	introFrame:Destroy(); mainHub.Visible = true
end)

-- 8. REGRET SEQUENCE (THE RESTORED PART)
yesBtn.MouseButton1Click:Connect(function()
	mainHub:Destroy(); confirmMenu:Destroy(); mini999:Destroy()
	local blackout = Instance.new("Frame", screenGui)
	blackout.Size = UDim2.new(1, 0, 1, 0); blackout.BackgroundColor3 = Color3.new(0, 0, 0); blackout.ZIndex = 9500
	local sinLabel = Instance.new("TextLabel", blackout)
	sinLabel.Size = UDim2.new(1, 0, 1, 0); sinLabel.BackgroundTransparency = 1; sinLabel.TextColor3 = Color3.fromRGB(0, 255, 100); sinLabel.Font = Enum.Font.Code; sinLabel.TextSize = 35; sinLabel.ZIndex = 9501
	sinLabel.Text = "the sins can’t leave when you want…"; sinLabel.TextTransparency = 0
	task.wait(3.5)
	local fade = TweenService:Create(sinLabel, TweenInfo.new(1.2), {TextTransparency = 1})
	fade:Play(); fade.Completed:Wait()
	sinLabel.Text = "you will regret this"; TweenService:Create(sinLabel, TweenInfo.new(1.2), {TextTransparency = 0}):Play()
	task.wait(2.5)
	task.spawn(function()
		while true do
			blackout.BackgroundColor3 = (blackout.BackgroundColor3 == Color3.new(0,0,0)) and Color3.fromRGB(0, 80, 0) or Color3.new(0,0,0)
			sinLabel.Text = "GREED"; sinLabel.TextSize = math.random(85, 130); sinLabel.Position = UDim2.new(0, math.random(-40, 40), 0, math.random(-40, 40))
			task.wait(0.04)
		end
	end)
end)

-- 9. CORE BUTTONS
espBtn.MouseButton1Click:Connect(function() espActive = not espActive; espBtn.Text = espActive and "ESP: ON" or "ENABLE ESP" end)
zeroBtn.MouseButton1Click:Connect(function() mainHub.Visible = false; mini999.Visible = true end)
mini999.MouseButton1Click:Connect(function() mainHub.Visible = true; mini999.Visible = false end)
sinExitBtn.MouseButton1Click:Connect(function() confirmMenu.Visible = true end)
noBtn.MouseButton1Click:Connect(function() confirmMenu.Visible = false end)

task.spawn(function() while true do yesBtn.Text = yesGlitches[math.random(#yesGlitches)]; noBtn.Text = noGlitches[math.random(#noGlitches)]; task.wait(0.15) end end)

Features & Information

Nothing that much just esp and a bad ending if you leave your sins
#Greed#Talks#Text#Intro#Free

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts