Nlg plus kal
Key RequiredUniversal

Nlg plus kal

Universal ScriptC427C427 1.6K views 95 executesUpdated Mar 17, 2026
Unrated
00
Lua Script•198 lines (6190 chars)
-- ServerScript – place in ServerScriptService or run in Command Bar (server context)

local SKYBOX_ID = "rbxassetid://134330697176777"        -- Skybox
local PARTICLE_ID = "rbxassetid://122032350874971"      -- New particles
local MUSIC_ID = "rbxassetid://1847661783"              -- Music
local MUSIC_PITCH = 1.0                                 -- Normal pitch
local MUSIC_VOLUME_GROUP = 99                           -- SoundGroup multiplier

-- 1. SKYBOX
local function setupSkybox()
	local sky = Instance.new("Sky")
	sky.SkyboxBk = SKYBOX_ID
	sky.SkyboxDn = SKYBOX_ID
	sky.SkyboxFt = SKYBOX_ID
	sky.SkyboxLf = SKYBOX_ID
	sky.SkyboxRt = SKYBOX_ID
	sky.SkyboxUp = SKYBOX_ID
	sky.Parent = game.Lighting
	print("Skybox set to", SKYBOX_ID)
end

-- 2. MAKE BASEPLATE CLEAR (transparent)
local function makeBaseplateClear()
	local baseplate = workspace:FindFirstChild("Baseplate")
	if baseplate and baseplate:IsA("BasePart") then
		baseplate.Transparency = 1  -- fully invisible
		baseplate.CanCollide = true -- keep collision
		print("Baseplate set to clear (transparent)")
	else
		print("Baseplate not found, skipping")
	end
end

-- 3. DISCO EFFECT covering the whole map (ambient + color correction)
local function startDiscoEffect()
	local colorCorrection = Instance.new("ColorCorrectionEffect")
	colorCorrection.Name = "DiscoColorCorrection"
	colorCorrection.Parent = game.Lighting

	spawn(function()
		local hue = 0
		while true do
			local color = Color3.fromHSV(hue, 1, 1)
			game.Lighting.Ambient = color
			game.Lighting.ColorShift_Top = color
			game.Lighting.ColorShift_Bottom = color
			colorCorrection.TintColor = color
			hue = (hue + 0.01) % 1
			task.wait(0.1)
		end
	end)
	print("Full-map disco effect started (ambient + color correction)")
end

-- 4. PARTICLES ON EVERY PLAYER (and refresh on respawn)
local function attachParticlesToCharacter(character)
	local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
	if not humanoidRootPart then return end

	-- Avoid duplicate emitters
	if humanoidRootPart:FindFirstChildOfClass("ParticleEmitter") then return end

	local emitter = Instance.new("ParticleEmitter")
	emitter.Texture = PARTICLE_ID
	emitter.Rate = 100
	emitter.Lifetime = NumberRange.new(3)
	emitter.SpreadAngle = Vector2.new(360, 360)
	emitter.VelocityInheritance = 0.2
	emitter.Acceleration = Vector3.new(0, -2, 0)
	emitter.Speed = NumberRange.new(5, 10)
	emitter.Parent = humanoidRootPart
	print("Particles attached to", character.Name)
end

local function setupPlayerParticles()
	for _, player in ipairs(game.Players:GetPlayers()) do
		if player.Character then
			attachParticlesToCharacter(player.Character)
		end
	end
	game.Players.PlayerAdded:Connect(function(player)
		player.CharacterAdded:Connect(function(character)
			attachParticlesToCharacter(character)
		end)
	end)
end

-- 5. PARTICLES ON EVERY PART IN THE WORKSPACE (excluding player characters)
local function addParticlesToPart(part)
	-- Only apply to physical parts, not player characters (they already have their own)
	if not part:IsA("BasePart") then return end
	if part:IsDescendantOf(game.Players) then return end -- Skip player parts

	-- Avoid duplicate emitters
	if part:FindFirstChildOfClass("ParticleEmitter") then return end

	local emitter = Instance.new("ParticleEmitter")
	emitter.Texture = PARTICLE_ID
	emitter.Rate = 20   -- Lower rate for world parts to reduce lag
	emitter.Lifetime = NumberRange.new(5)
	emitter.SpreadAngle = Vector2.new(360, 360)
	emitter.VelocityInheritance = 0
	emitter.Acceleration = Vector3.new(0, -2, 0)
	emitter.Speed = NumberRange.new(2, 5)
	emitter.Parent = part
end

local function setupWorldParticles()
	-- Apply to all existing parts (with a small delay between each)
	spawn(function()
		local allObjects = workspace:GetDescendants()
		for _, obj in ipairs(allObjects) do
			addParticlesToPart(obj)
			task.wait() -- keep server responsive
		end
		print("Particle emitters added to all existing world parts")
	end)

	-- Apply to any new part added later
	workspace.DescendantAdded:Connect(function(obj)
		addParticlesToPart(obj)
	end)
end

-- 6. MUSIC with SoundGroup – loops naturally
local function playMusic()
	local soundGroup = Instance.new("SoundGroup")
	soundGroup.Name = "LoudMusicGroup"
	soundGroup.Volume = MUSIC_VOLUME_GROUP
	soundGroup.Parent = workspace

	local sound = Instance.new("Sound")
	sound.SoundId = MUSIC_ID
	sound.Pitch = MUSIC_PITCH
	sound.Looped = true   -- Loop the whole track
	sound.Volume = 1
	sound.SoundGroup = soundGroup
	sound.TimePosition = 0
	sound.Parent = workspace
	sound:Play()

	print("Playing music", MUSIC_ID, "at pitch", MUSIC_PITCH, "looping whole song, with group volume", MUSIC_VOLUME_GROUP)
end

-- 7. LOOPING ROBLOX SYSTEM MESSAGES (UPDATED TEXTS)
local function startLoopingMessages()
	local chatService = game:GetService("Chat")
	local useChat = pcall(function() return chatService:CanChat() end)
	local longMessage = "kal and nlg fucked ur game"          -- Updated
	local shortMessage = "WOWZA NLGZ AND KALZ HAXD UR GAMEZ"  -- Updated
	local interval = 5

	spawn(function()
		while true do
			task.wait(interval)
			if useChat then
				chatService:BroadcastMessage(longMessage, Enum.ChatColor.Red)
			else
				for _, player in ipairs(game.Players:GetPlayers()) do
					local hint = Instance.new("Hint")
					hint.Text = longMessage
					hint.Parent = player:WaitForChild("PlayerGui")
					game:GetService("Debris"):AddItem(hint, interval - 0.5)
				end
			end
		end
	end)

	spawn(function()
		task.wait(interval / 2)
		while true do
			task.wait(interval)
			if useChat then
				chatService:BroadcastMessage(shortMessage, Enum.ChatColor.Blue)
			else
				for _, player in ipairs(game.Players:GetPlayers()) do
					local hint = Instance.new("Hint")
					hint.Text = shortMessage
					hint.Parent = player:WaitForChild("PlayerGui")
					game:GetService("Debris"):AddItem(hint, interval - 0.5)
				end
			end
		end
	end)

	print("Looping Roblox system messages started (long: red, short: blue)")
end

-- 8. RUN EVERYTHING
spawn(function()
	setupSkybox()
	makeBaseplateClear()
	startDiscoEffect()
	setupPlayerParticles()
	setupWorldParticles()
	playMusic()
	startLoopingMessages()
end)

Features & Information

server side only not fe if not excuted in Serverside

Community Comments (2)

madwolf1231madwolf1231Mar 17, 2026

this script is not server sided

Replying to @madwolf1231
C427C427Mar 17, 2026

@madwolf1231 it is if u excute thru a ss executor 🤦‍♂️

More Scripts for Universal Scripts