--Server script
local function fireClientCreateClickDetectors()
print("Click Detectors Added")
for i,v in pairs(plrs) do
createClickDetectors:FireClient(v)
end
end
fireClientCreateClickDetectors()
--Local script
local function onCreateClickDetectorsFired()
print("Create Click Detectors Event Fired")
addClickDetectors()
end
createClickDetectors.OnClientEvent:Connect(onCreateClickDetectorsFired)
Whenever I fire the client in the server script, nothing happens client side. The server print works but of course the local script doesn't print anything because it seems it was never fired. I should say that I'm aware that I could use FireAllClients() instead of the method that I used in the server script, but I did it this way because I'm going to have multiple games going on in a server and I'm going to have different player tables for each game. Also, I had it as FireAllClients originally and it still didn't work, so I don't think that's the problem. I'm completely stumped as to why it won't work, am I missing something really obvious?
Also also, no errors are thrown in the output.

6 comments
are you writing your events properly?
Yes, the variable is correct if that's what you mean. Also the local script is stored in the player's character, so the problem isn't that the local script isn't running.
Try converting onCreateClickDetectorsFired to an anonymous function. In theory it shouldn't make a difference, but I'm as confused as you are.
Where are you placing your RemoteEvent?
Make sure to put it in ReplicatedStorage, since then both the server AND client can see it.
Yes yes, the event is in replicated storage.