I fixed it I just commented out the repeat wait until game is loaded thing.

So when I die I have a thing to wait untill I respawn then it fires a event then prints a statment. The thing is its "firing" but the thing its suppost to pick it up is not working. (The print statment and stuff isnt showing up)

Script 1 (firing):

local RepStore = game:GetService("ReplicatedStorage")
local PermEvent = RepStore.PermServerFire

local Perma = false

PermEvent.Event:Connect(function()
	Perma = true
	print("Perma is now true!")
end)

game.Players.PlayerAdded:Connect(function(plr)
	plr.CharacterAdded:Connect(function(char)
		char:WaitForChild("Humanoid").Died:Connect(function()
			if Perma == false then print("Pd Not on!") return end
			
			print("Died!")
			
			plr.CharacterAdded:Wait(2)
			
			RepStore.PermaActive:FireClient(plr);
			print("Respawned! and fired!")
		end)
	end)
end)

Script 2 (receving Note: It dose work):

repeat wait() until game:IsLoaded()

local RepStore = game:GetService("ReplicatedStorage")

RepStore.PermaActive.OnClientEvent:Connect(function(plr)
	plr.PlayerGui.PermaDeath.Enabled = true
	print("GUI active!")
end)

Thank you in advanced.