Hey everyone,
I’m encountering a strange and frustrating issue with sound playback in Roblox Studio and my experience. Here’s a breakdown of what’s happening:
The Issue:
I have a Music folder in workspace
containing all the sounds I want to play. Sometimes, the sounds do play when testing in Studio, but never when running the actual experience. Here’s the kicker:
- When I manually click and play the sounds using Studio, they play and I can hear the music.
- When running the game(either Experience or Studio), I get errors like this:
Failed to load sound rbxassetid://0: Request asset was not found (x5) - Studio
This happens repeatedly with multiple lines, indicating that the asset isn’t loading or doesn’t exist.
Looking at the error line I see rbxassetid://0 which confuses me because I dont have any song in the music folder that does not have an assetid.
I even wrote a validation script to check each sound’s asset ID:
local MarketPlaceService = game:GetService('MarketplaceService')
local sounds = workspace:WaitForChild('Music')
local songsInvalid = {}
local songsValid = {}
local function ValidateSong(songID)
if not songID or not tonumber(songID) then return false end
local success, result = pcall(function()
return MarketPlaceService:GetProductInfo(songID)
end)
if success and result then
return true
else
return false
end
end
for _, song in pairs(sounds:GetChildren()) do
task.spawn(function()
if not ValidateSong(song.SoundId) then
table.insert(songsInvalid, song.Name)
else
table.insert(songsValid, song.Name)
end
end)
end
print("Valid songs: ", table.concat(songsValid, ', '))
print("Invalid songs: ", table.concat(songsInvalid, ', '))
-
Output:
-
songsValid
prints an empty string. -
songsInvalid
lists all the sounds, even though some sounds do play occasionally in Studio.
-
What Confuses Me:
- Why do the sounds sometimes work in Studio but never in the experience?
- If the asset IDs were truly invalid, they shouldn’t work at all, right? So why can I play them manually?
What I’ve Tried:
-
Double-checking all
SoundId
values to ensure they’re properly formatted (rbxassetid://<ID>
). -
The Assets are not owned by me, but even if they were private, howcome I can still play them manually but not in experience?
-
Using the script above to validate assets, which suggests they’re all invalid, even though some play.
-
Has anyone else encountered this type of inconsistent sound playback?
-
I believe this has to do with ownership but from what I understand, all sounds that can be played in Studio should be able to be played in the Experience!
I’d really appreciate any insights or suggestions! Thanks in advance.