If exploiters can make sounds play by firing remote events then you should add sanity checks to make sure the events can only be fired in the right context. Otherwise you can get the player who fired the remote event from the first parameter and kick them.
Well, you could easily just use game.Workspace.ChildAdded:Connect(function().
Finding the person who inserted it is a lot harder, though.
The RespectFilteringEnabled property determines whether
Sound
playback is replicated from the client to the server, and therefore from server . In other words, when aLocalScript
callsSound:Play
and this property is true , the sound will only play on the respective client. If the property is false, other clients will also hear the sound.
Why not use Filtering Enabled, because anything that’s added from the Client, won’t replicate to the server.
And use RespectFilteringEnabled