Basically, whenever I put onClientEvent with my remote event it doesn't work. But when I don't use it it works.
Client side:
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RemoteEvent = ReplicatedStorage:WaitForChild("RemoteEvent")
RemoteEvent.OnClientEvent:Connect(function()
local player = game.Players.LocalPlayer
print "It works"
end)
RemoteEvent:FireServer()
Server Script:
local ReplicatedStorage = game:GetService("ReplicatedStorage") -- Gets the REP (Replicated Storage)
local RemoteEvent = ReplicatedStorage:WaitForChild("RemoteEvent")
RemoteEvent.OnServerEvent:Connect(function(player)
if player.Name == "JesseSong" then
print "idk"
end
end)
RemoteEvent:FireClient(game.Players:WaitForChild "JesseSong")
EDIT: OnClientEvent is used to communicate to the server and client multiplte times vice - versa, if you only wante it to do it from the server to client. Then you don't need an on client event - :FireClient.

6 comments
Can I see your Server script?
First question is why do you fire to server right after you receive event from server (you can replace it with remote function). Could you provide server-side code and erros if there are.
I edited
It only works when I remove OnClientEvent function
Also, there isn't any error
You never fired the event so it won't work.