
KeylessUniversal

-- Future Lighting + Full Shadow Enabler (Phase 4 Direct)
-- Developed by me_ver245 & ronfc2xx
local Lighting = game:GetService("Lighting")
local RunService = game:GetService("RunService")
local function setFF(name, val)
pcall(setfflag, name, val)
end
-- Phase 4 direct, no intermediate phases
setFF("FFlagDebugForceFutureIsBright4", true)
setFF("FFlagHighQualityShadows", true)
setFF("FIntRenderShadowIntensity", 255)
pcall(function() Lighting.GlobalShadows = true end)
pcall(function() Lighting.LightingStyle = Enum.LightingStyle.Realistic end)
pcall(function() Lighting.PrioritizeLightingQuality = true end)
-- Atmosphere
if not Lighting:FindFirstChild("FutureAtm") then
local atm = Instance.new("Atmosphere")
atm.Name = "FutureAtm"
atm.Density = 0.28
atm.Offset = 0.22
atm.Color = Color3.fromRGB(220, 220, 220)
atm.Decay = Color3.fromRGB(150, 150, 150)
atm.Haze = 2
atm.Parent = Lighting
end
-- Bloom
if not Lighting:FindFirstChild("FutureBloom") then
local bloom = Instance.new("BloomEffect")
bloom.Name = "FutureBloom"
bloom.Enabled = true
bloom.Intensity = 0.85
bloom.Size = 25
bloom.Threshold = 0.8
bloom.Parent = Lighting
end
-- Sun Rays
if not Lighting:FindFirstChild("FutureSunRays") then
local sunrays = Instance.new("SunRaysEffect")
sunrays.Name = "FutureSunRays"
sunrays.Intensity = 0.25
sunrays.Spread = 0.5
sunrays.Parent = Lighting
end
pcall(function() Lighting.Ambient = Color3.new(0, 0, 0) end)
pcall(function() Lighting.OutdoorAmbient = Color3.new(0, 0, 0) end)
pcall(function() Lighting.Brightness = 2.2 end)
pcall(function() Lighting.EnvironmentDiffuseScale = 1 end)
pcall(function() Lighting.EnvironmentSpecularScale = 1 end)
-- Shadow enabler
local function crushLight(obj)
if obj:IsA("PointLight") or obj:IsA("SpotLight") or obj:IsA("SurfaceLight") or obj:IsA("AreaLight") then
pcall(function() obj.Shadows = true end)
pcall(function() obj.ShadowSoftness = 1 end)
end
end
local function scanAll()
for _, obj in game:GetDescendants() do
crushLight(obj)
end
end
scanAll()
game.DescendantAdded:Connect(function(obj)
crushLight(obj)
if obj:IsA("Model") or obj:IsA("Folder") then
for _, sub in obj:GetDescendants() do
crushLight(sub)
end
end
end)
local last = 0
RunService.Heartbeat:Connect(function()
local t = tick()
if t - last > 4 then
scanAll()
last = t
end
end)
print("Future lighting active (Phase 4 Direct). Sun reflectance + rays enabled.")



can you make a version that change to "ShadowMap" ?