Hey there!
I’m currently working on a new game, and while i was coding some visual and sound effects in client side for a character action, the time came to replicate these effects to other clients so everyone can hear and see it.
I don’t need to do server side checks or anyting else for it, i only want to replicate effects from client to all other clients.
So my main question is:
Which one is faster / better, using a RemoteEvent or a (Ghost) Tool ?
Tool client activation are replicating to the server faster than RemoteEvent?
Remote Event
Local Script
--Character do something
Module:PlayEffect() --Play effects on my own side
RemoteEvent:FireServer(LocalPlayer) --Replicate effects on other players side
RemoteEvent.OnClientEvent:Connect(function(Player)
if not Player == LocalPlayer then
Module:PlayEffect(Player.Character) --Play other players effects on my own side
end
end)
Server Script
RemoteEvent.OnServerEvent:Connect(function(OriginalPlayer)
RemoteEvent:FireAllClients(OriginalPlayer)
end)
Tool
Local Script
--Character do something
Module:PlayEffect() --Play effects on my own side
MyCharacterTool:Activate() --Replicate effects on other players side
PlayerService.PlayerAdded:Connect(function(Player)
Player.CharacterAdded:Connect(function(Character)
local CharacterTool = Character:WaitForChild("ActionNameTool")
CharacterTool.Activated:Connect(function()
Module:PlayEffect(Character)
end)
end)
end)