https://devforum.roblox.com/t/open-source-3d-sound-system/287330
Usage is super simple, with just a single function.
local SoundSystem3D = require(script.SoundSystem3D)
local Sound = SoundSystem3D:Create(ID, Target, Looped)
:Create()
returns an Attachment with a Sound in it.
ID can be:
Target can be:
Looped can be:
Because this must be run from the client, you should use RemoteEvents to tell the client when and where to play sounds.