overcomplicated memoriam deathscreen
Key RequiredUniversal

overcomplicated memoriam deathscreen

Universal ScriptBluudud_XBluudud_X 1.9K views 164 executesUpdated May 2, 2026
Unrated
00
Lua Script•346 lines (9060 chars)
local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local Lighting = game:GetService("Lighting")

local player = Players.LocalPlayer
local camera = workspace.CurrentCamera

------------------------------------------------
-- 🎬 INTRO
------------------------------------------------
local function playIntro()
	local gui = Instance.new("ScreenGui")
	gui.IgnoreGuiInset = true
	gui.ResetOnSpawn = false
	gui.Parent = player:WaitForChild("PlayerGui")

	local bg = Instance.new("Frame", gui)
	bg.Size = UDim2.new(1,0,1,0)
	bg.BackgroundColor3 = Color3.new(0,0,0)
	bg.BackgroundTransparency = 1

	local card = Instance.new("Frame", bg)
	card.Size = UDim2.new(0,420,0,200)
	card.Position = UDim2.new(0.5,0,0.5,0)
	card.AnchorPoint = Vector2.new(0.5,0.5)
	card.BackgroundColor3 = Color3.fromRGB(20,20,20)
	card.BackgroundTransparency = 1

	Instance.new("UICorner", card).CornerRadius = UDim.new(0,16)

	local txt = Instance.new("TextLabel", card)
	txt.Size = UDim2.new(1,0,1,0)
	txt.BackgroundTransparency = 1
	txt.TextColor3 = Color3.new(1,1,1)
	txt.Font = Enum.Font.GothamBold
	txt.TextScaled = true
	txt.Text = "made by Bluudud"
	txt.TextTransparency = 1

	TweenService:Create(bg, TweenInfo.new(0.4), {BackgroundTransparency = 0.3}):Play()
	TweenService:Create(card, TweenInfo.new(0.5), {BackgroundTransparency = 0}):Play()
	TweenService:Create(txt, TweenInfo.new(0.5), {TextTransparency = 0}):Play()

	task.wait(2)

	TweenService:Create(txt, TweenInfo.new(0.4), {TextTransparency = 1}):Play()
	TweenService:Create(card, TweenInfo.new(0.4), {BackgroundTransparency = 1}):Play()
	TweenService:Create(bg, TweenInfo.new(0.4), {BackgroundTransparency = 1}):Play()

	task.wait(0.6)
	gui:Destroy()
end

------------------------------------------------
-- 🧠 QUOTES SYSTEM (RESTORED)
------------------------------------------------
local quotes = {
	default = {
		"%s collapsed in silence.",
		"%s couldn’t keep going.",
		"%s’s story ended abruptly.",
		"%s faded out of the match."
	},

	meme = {
		"%s got sent to the shadow realm.",
		"%s forgot how to exist.",
		"%s took the L instantly.",
		"%s was NOT him."
	},

	pvp = {
		"%s was eliminated by %k.",
		"%k deleted %s from reality.",
		"%s got folded by %k.",
		"%s met their match: %k."
	},

	breakdown = {
		"%s couldn’t take it anymore.",
		"%s mentally disconnected.",
		"%s gave up mid-fight.",
		"%s chose silence."
	}
}

local function getQuote(killer)
	local roll = math.random()

	if killer then
		if roll < 0.7 then
			return quotes.pvp[math.random(#quotes.pvp)]
		else
			return quotes.meme[math.random(#quotes.meme)]
		end
	else
		if roll < 0.8 then
			return quotes.default[math.random(#quotes.default)]
		else
			return quotes.breakdown[math.random(#quotes.breakdown)]
		end
	end
end

------------------------------------------------
-- 🧠 AVATAR HELPERS
------------------------------------------------
local function getAvatar(userId)
	return Players:GetUserThumbnailAsync(
		userId,
		Enum.ThumbnailType.AvatarBust,
		Enum.ThumbnailSize.Size420x420
	)
end

------------------------------------------------
-- 🖤 BLACK & WHITE
------------------------------------------------
local colorFX = Instance.new("ColorCorrectionEffect")
colorFX.Saturation = 0
colorFX.Contrast = 0.25
colorFX.Brightness = -0.05
colorFX.Enabled = false
colorFX.Parent = Lighting

local blurFX = Instance.new("BlurEffect")
blurFX.Size = 0
blurFX.Enabled = false
blurFX.Parent = Lighting

local function enableBW()
	colorFX.Enabled = true
	blurFX.Enabled = true
	for i = 1,10 do
		blurFX.Size = i
		RunService.RenderStepped:Wait()
	end
end

local function disableBW()
	colorFX.Enabled = false
	blurFX.Enabled = false
	blurFX.Size = 0
end

------------------------------------------------
-- 🎥 CAMERA RESET
------------------------------------------------
local function restoreCamera()
	local char = player.Character
	local hum = char and char:FindFirstChild("Humanoid")

	camera.CameraType = Enum.CameraType.Custom
	if hum then
		camera.CameraSubject = hum
	end
end

------------------------------------------------
-- 💀 UI
------------------------------------------------
local gui = Instance.new("ScreenGui")
gui.Name = "Memorial"
gui.IgnoreGuiInset = true
gui.ResetOnSpawn = false
gui.Parent = player:WaitForChild("PlayerGui")

local bg = Instance.new("Frame", gui)
bg.Size = UDim2.new(1,0,1,0)
bg.BackgroundColor3 = Color3.new(0,0,0)
bg.BackgroundTransparency = 1

local text = Instance.new("TextLabel", gui)
text.Size = UDim2.new(0,600,0,200)
text.Position = UDim2.new(0.5,0,0.8,0)
text.AnchorPoint = Vector2.new(0.5,0.5)
text.BackgroundTransparency = 1
text.TextColor3 = Color3.new(1,1,1)
text.Font = Enum.Font.GothamBold
text.TextScaled = true
text.TextTransparency = 1

------------------------------------------------
-- 📊 REPORT UI
------------------------------------------------
local report = Instance.new("Frame", gui)
report.Size = UDim2.new(0,340,0,180)
report.Position = UDim2.new(0.5,0,0.2,0)
report.AnchorPoint = Vector2.new(0.5,0.5)
report.BackgroundColor3 = Color3.fromRGB(15,15,15)
report.BackgroundTransparency = 1
Instance.new("UICorner", report).CornerRadius = UDim.new(0,10)

local title = Instance.new("TextLabel", report)
title.Size = UDim2.new(1,0,0,40)
title.BackgroundTransparency = 1
title.TextColor3 = Color3.new(1,1,1)
title.Font = Enum.Font.GothamBold
title.TextScaled = true
title.Text = "death report"
title.TextTransparency = 1

local info = Instance.new("TextLabel", report)
info.Size = UDim2.new(1,-20,1,-40)
info.Position = UDim2.new(0,10,0,40)
info.BackgroundTransparency = 1
info.TextColor3 = Color3.fromRGB(200,200,200)
info.Font = Enum.Font.Gotham
info.TextScaled = true
info.TextWrapped = true
info.TextTransparency = 1

------------------------------------------------
-- 🧍 AVATARS (FIXED + GREY)
------------------------------------------------
local avatar = Instance.new("ImageLabel", gui)
avatar.Size = UDim2.new(0,200,0,200)
avatar.Position = UDim2.new(0.35,0,0.5,0)
avatar.AnchorPoint = Vector2.new(0.5,0.5)
avatar.BackgroundTransparency = 1
avatar.ImageTransparency = 1
avatar.ImageColor3 = Color3.fromRGB(180,180,180)

local killerAvatar = Instance.new("ImageLabel", gui)
killerAvatar.Size = UDim2.new(0,200,0,200)
killerAvatar.Position = UDim2.new(0.65,0,0.5,0)
killerAvatar.AnchorPoint = Vector2.new(0.5,0.5)
killerAvatar.BackgroundTransparency = 1
killerAvatar.ImageTransparency = 1
killerAvatar.Visible = false
killerAvatar.ImageColor3 = Color3.fromRGB(180,180,180)

------------------------------------------------
-- TRACKING
------------------------------------------------
local lastTouchPlayer = nil

local function getKiller(hum)
	local tag = hum:FindFirstChild("creator")
	if tag and tag.Value then
		return tag.Value
	end
	return lastTouchPlayer
end

local function getTool(char)
	local tool = char:FindFirstChildOfClass("Tool")
	return tool and tool.Name or "none"
end

------------------------------------------------
-- 💀 MEMORIAL
------------------------------------------------
local function showMemorial(char)
	gui.Enabled = true

	local hum = char:FindFirstChild("Humanoid")
	local killer = hum and getKiller(hum)

	local quote = getQuote(killer)
	quote = quote:gsub("%%s", player.Name)
	if killer then
		quote = quote:gsub("%%k", killer.Name)
	end

	text.Text = quote

	avatar.Image = getAvatar(player.UserId)
	avatar.ImageTransparency = 1

	if killer then
		killerAvatar.Visible = true
		killerAvatar.Image = getAvatar(killer.UserId)
		killerAvatar.ImageTransparency = 1
	else
		killerAvatar.Visible = false
	end

	info.Text =
		"killer: " .. (killer and killer.Name or "unknown") ..
		"\nitem: " .. getTool(char)

	for i = 1,10 do
		bg.BackgroundTransparency = 1 - (i*0.1)
		text.TextTransparency = 1 - (i*0.1)
		report.BackgroundTransparency = 1 - (i*0.1)
		title.TextTransparency = 1 - (i*0.1)
		info.TextTransparency = 1 - (i*0.1)

		avatar.ImageTransparency = 1 - (i*0.1)
		if killerAvatar.Visible then
			killerAvatar.ImageTransparency = 1 - (i*0.1)
		end

		RunService.RenderStepped:Wait()
	end

	task.wait(5)

	for i = 1,10 do
		bg.BackgroundTransparency = i*0.1
		text.TextTransparency = i*0.1
		report.BackgroundTransparency = i*0.1
		title.TextTransparency = i*0.1
		info.TextTransparency = i*0.1

		avatar.ImageTransparency = i*0.1
		if killerAvatar.Visible then
			killerAvatar.ImageTransparency = i*0.1
		end

		RunService.RenderStepped:Wait()
	end

	gui.Enabled = false
	disableBW()
end

------------------------------------------------
-- CHARACTER
------------------------------------------------
local function onChar(char)
	local hum = char:WaitForChild("Humanoid")

	hum.Died:Connect(function()
		enableBW()
		showMemorial(char)
	end)
end

------------------------------------------------
-- START
------------------------------------------------
playIntro()

player.CharacterAdded:Connect(function(char)
	task.wait(0.1)
	restoreCamera()
	disableBW()
	onChar(char)
end)

if player.Character then
	onChar(player.Character)
end

Features & Information

cinematic memoriam/death ui system that pops when u die, shows ur avatar + a random quote, and if it can it shows who killed u with their avatar also i guess #weareskids -coming soon sprint -chatgpt, generate me a memoriam death screen in luau
#death#forsaken#deathscreen#memoriam

Community Comments (2)

Bluudud_XBluudud_XMay 2, 2026

bro this works

Replying to @Bluudud_X
Bluudud_XBluudud_XMay 2, 2026

The DO🤩

More Scripts for Universal Scripts