Don’t believe you can do that, trying to assign a property of type number to a string will result in it becoming NaN and therefore 0. Instead of Parenting to Workspace, Parent to SoundService and Play it there without any issues.
Some issues I also spotted:
You use GetService for ReplicatedService twice, try to use a variable rather than getting it multiple times.
This can be heavily bad on performance, I’d recommend using the :Wait() method on an event such as soundObj.Ended or soundObj.Stopped as that’ll yield the thread until the event fires.