
Key RequiredUniversal

--[[
☠ GİZLİ YARATIK KORKU SCRİPTİ - PART TABANLI ☠
CanCollide = TRUE (Duvarlardan geçmez)
Random jumpscare YOK
]]
local Players = game:GetService("Players")
local Lighting = game:GetService("Lighting")
local RunService = game:GetService("RunService")
local player = Players.LocalPlayer
--------------------------------------------------
-- ATMOSFER (SİLENT HILL HAVASI)
--------------------------------------------------
for _,v in pairs(Lighting:GetChildren()) do
if v:IsA("Sky") or v:IsA("Atmosphere") or v:IsA("ColorCorrectionEffect") then
v:Destroy()
end
end
-- Gri gökyüzü
local sky = Instance.new("Sky", Lighting)
for _,side in pairs({"Bk","Dn","Ft","Lf","Rt","Up"}) do
sky["Skybox"..side] = "rbxassetid://14421405417"
end
-- Sisli atmosfer
local atm = Instance.new("Atmosphere", Lighting)
atm.Density = 0.85
atm.Color = Color3.fromRGB(220,220,220)
atm.Decay = Color3.fromRGB(150,150,150)
atm.Haze = 2
-- Renk düzeltme (gri tonlar)
local cc = Instance.new("ColorCorrectionEffect", Lighting)
cc.Saturation = -0.7
cc.TintColor = Color3.fromRGB(200,200,200)
-- Işık ayarları
Lighting.ClockTime = 14
Lighting.Brightness = 0.8
Lighting.FogColor = Color3.fromRGB(220,220,220)
Lighting.FogEnd = 60
Lighting.FogStart = 10
--------------------------------------------------
-- SES SİSTEMİ
--------------------------------------------------
-- Gece ambiyansı (sürekli çalar)
local ambience = Instance.new("Sound", workspace)
ambience.SoundId = "rbxassetid://9112835827"
ambience.Looped = true
ambience.Volume = 0.4
ambience:Play()
-- Fısıltı (sürekli çalar)
local whisper = Instance.new("Sound", workspace)
whisper.SoundId = "rbxassetid://85064677546638"
whisper.Looped = true
whisper.Volume = 0.2
whisper:Play()
-- Jumpscare sesi
local jumpscareSound = Instance.new("Sound", workspace)
jumpscareSound.SoundId = "rbxassetid://109961399514238"
jumpscareSound.Volume = 1
jumpscareSound.Looped = false
-- Ölüm sesi
local deathSound = Instance.new("Sound", workspace)
deathSound.SoundId = "rbxassetid://137192919028248"
deathSound.Volume = 0.8
deathSound.Looped = false
--------------------------------------------------
-- GUI SİSTEMİ
--------------------------------------------------
local gui = Instance.new("ScreenGui")
gui.Name = "KorkuGUI"
gui.Parent = player:WaitForChild("PlayerGui")
gui.ResetOnSpawn = false
gui.IgnoreGuiInset = true
-- Siyah perde
local blackOverlay = Instance.new("Frame")
blackOverlay.Size = UDim2.new(1, 0, 1, 0)
blackOverlay.BackgroundColor3 = Color3.new(0, 0, 0)
blackOverlay.BackgroundTransparency = 1
blackOverlay.BorderSizePixel = 0
blackOverlay.ZIndex = 10
blackOverlay.Parent = gui
-- Ölüm yazısı
local deathText = Instance.new("TextLabel")
deathText.Size = UDim2.new(1, 0, 0.2, 0)
deathText.Position = UDim2.new(0, 0, 0.4, 0)
deathText.BackgroundTransparency = 1
deathText.Text = ""
deathText.TextColor3 = Color3.fromRGB(255, 0, 0)
deathText.TextScaled = true
deathText.Font = Enum.Font.GothamBlack
deathText.ZIndex = 11
deathText.Parent = gui
-- Kan efekti
local bloodFrame = Instance.new("Frame")
bloodFrame.Size = UDim2.new(1, 0, 1, 0)
bloodFrame.BackgroundColor3 = Color3.fromRGB(120, 0, 0)
bloodFrame.BackgroundTransparency = 1
bloodFrame.ZIndex = 9
bloodFrame.Parent = gui
--------------------------------------------------
-- YARDIMCI FONKSİYONLAR
--------------------------------------------------
-- Kan lekesi bırak
local function spawnBlood(pos)
local bloodPart = Instance.new("Part", workspace)
bloodPart.Size = Vector3.new(3, 0.2, 3)
bloodPart.Position = pos
bloodPart.Anchored = true
bloodPart.CanCollide = false
bloodPart.BrickColor = BrickColor.new("Really red")
bloodPart.Transparency = 0.2
local decal = Instance.new("Decal", bloodPart)
decal.Texture = "rbxassetid://3776366804"
decal.Face = Enum.NormalId.Top
game:GetService("Debris"):AddItem(bloodPart, 30)
end
-- Titreşim efekti
local function shake(intensity)
local camera = workspace.CurrentCamera
for i = 1, 15 do
camera.CFrame = camera.CFrame * CFrame.new(
math.random(-intensity, intensity)/5,
math.random(-intensity, intensity)/5,
0
)
wait(0.02)
end
end
-- Jumpscare göster (SADECE YAKALANINCA)
local function showJumpscare()
blackOverlay.BackgroundTransparency = 0
local jumpscareImg = Instance.new("ImageLabel", gui)
jumpscareImg.Size = UDim2.new(1, 0, 1, 0)
jumpscareImg.BackgroundTransparency = 1
jumpscareImg.Image = "rbxassetid://115982280618058"
jumpscareImg.ZIndex = 12
jumpscareSound:Play()
shake(3)
wait(1)
jumpscareImg:Destroy()
blackOverlay.BackgroundTransparency = 1
end
-- Ölüm anı
local function onDeath()
print("💀 OYUNCU YAKALANDI!")
ambience:Stop()
whisper:Stop()
deathSound:Play()
blackOverlay.BackgroundTransparency = 0
bloodFrame.BackgroundTransparency = 0.3
shake(5)
deathText.Text = "O SENİ YAKALADI.."
wait(4)
if player.Character and player.Character.Humanoid then
player.Character.Humanoid.Health = 0
end
wait(2)
deathText.Text = ""
blackOverlay.BackgroundTransparency = 1
bloodFrame.BackgroundTransparency = 1
wait(3)
ambience:Play()
whisper:Play()
end
--------------------------------------------------
-- KOVALAMA SİSTEMİ (CanCollide = TRUE)
--------------------------------------------------
local function startChase()
local char = player.Character
if not char then return end
local humanoid = char:FindFirstChild("Humanoid")
if not humanoid or humanoid.Health <= 0 then return end
local root = char:FindFirstChild("HumanoidRootPart")
if not root then return end
print("🔥 KOVALAMACA BAŞLIYOR!")
-- KOVALAYAN PART (CanCollide = TRUE)
local monster = Instance.new("Part", workspace)
monster.Name = "KovalayanYaratik"
monster.Size = Vector3.new(6, 8, 1)
monster.Anchored = false -- Fizik motoru açık
monster.CanCollide = true -- DUVARLARDAN GEÇMEZ!
monster.Material = Enum.Material.Neon
monster.BrickColor = BrickColor.new("Really black")
monster.Transparency = 0.2
-- Yerçekimi etkisini azalt ama tamamen kapatma
monster.CustomPhysicalProperties = PhysicalProperties.new(0.3, 0.3, 0.3, 0.3, 0.3)
-- Arkanda spawn ol
local spawnPos = root.Position - (root.CFrame.LookVector * 40)
spawnPos = Vector3.new(spawnPos.X, 3, spawnPos.Z)
monster.Position = spawnPos
-- KORKUNÇ RESMİ EKLE
local decal = Instance.new("Decal", monster)
decal.Texture = "rbxassetid://92860161440693"
decal.Face = Enum.NormalId.Front
-- Kan bırak
spawnBlood(monster.Position)
-- Kovalama değişkenleri
local chasing = true
local chaseSpeed = 2.0
local connection
-- Kovalama döngüsü
connection = RunService.Heartbeat:Connect(function(dt)
if not chasing or not root or not monster or not monster.Parent then
if connection then connection:Disconnect() end
return
end
-- Yön bul
local direction = (root.Position - monster.Position).Unit
-- Hedef pozisyon (yerçekimi etkisiyle oynamamak için velocity kullan)
local targetPos = monster.Position + direction * (chaseSpeed * 30 * dt)
targetPos = Vector3.new(targetPos.X, 3, targetPos.Z)
-- Velocity ile hareket (fizik motorunu kullan)
local velocity = (targetPos - monster.Position) / dt
monster.Velocity = velocity * 0.5 -- Yumuşak hareket
-- Yönünü oyuncuya çevir
monster.CFrame = CFrame.new(monster.Position, root.Position)
-- Yakalama kontrolü
local distance = (monster.Position - root.Position).Magnitude
if distance < 10 then
print("💀 YAKALANDI! Mesafe: " .. tostring(distance))
chasing = false
connection:Disconnect()
spawnBlood(monster.Position)
monster:Destroy()
showJumpscare()
onDeath()
return
end
end)
-- 30 saniye sonra kovalamaca bitsin
task.wait(30)
if chasing and monster and monster.Parent then
print("🏃 Kovalamaca bitti (kaçtın!)")
chasing = false
connection:Disconnect()
monster:Destroy()
end
end
--------------------------------------------------
-- RASTGELE KOVALAMACA (Random jumpscare YOK)
--------------------------------------------------
-- Karakterin gelmesini bekle
repeat
print("👤 Karakter bekleniyor...")
task.wait(1)
until player.Character and player.Character:FindFirstChild("HumanoidRootPart")
print("🎮 Karakter hazır! Korku başlıyor...")
task.wait(3)
-- SADECE KOVALAMACA - random jumpscare YOK!
task.spawn(function()
while true do
-- 60-120 saniye arası bekle (daha uzun)
local waitTime = math.random(60, 120)
print("⏱️ Sonraki kovalama: " .. waitTime .. " saniye")
-- Bekleme süresi - sadece bekle, ekstra efekt YOK
task.wait(waitTime)
-- KOVALAMACA BAŞLAT
startChase()
-- Kovalamacadan sonra biraz bekle
task.wait(15)
end
end)
print("☠ TÜM SİSTEMLER HAZIR! Sadece kovalama var, random jumpscare YOK.")No comments yet for this script.



