As a Roblox Developer who wants to support catalog based character customisation in my games, my workflow is affected by having to keep track of accessories which make sounds and remove them from my game.
The sounds negatively affect how immersive my game is. Ambient music in my environments are drowned out by these sounds. In the case of this accessory, it is obnoxious loud chicken sounds which I’ll list below:
I can see how it would have been a cool addition years ago, however the platform has scaled to a point where it is no longer appropriate. Developers should be in control of their games. It is a negative experience having to resort to videos such as the following to find which assets affect my game.
If Roblox is able to address my feature request, I won’t have to write work-arounds to remove sounds from accessories. I can focus my time on creating, testing, and deploying functional updates to my games.
This doesn’t take a very large workaround at all; in a few lines you can check when a new character is added, and then iterate over their accessories and delete any Sound types. If you are keeping track of accessories manually and then banning them, you are doing it wrong.
This feature request seems to kill some iconic hat elements when the fix is very simple to implement.
I don’t think sound types in hats are expected behavior. Every game that does not want sounds in hats would have to implement this fix when there are only 4 older accessories that are an exception to the rule, and there likely won’t be any new ones in the future. Roblox should just remove the sound instances from these accessories.
Not every developer is going to have a fix for that, for an example, imagine you join a game which the owner is unaware of those sound accessories, his players are going to be annoyed if someone is gonna hop in the server with one of those accessories.
Users paid good money for such accessories. Removing their value because they don’t fit the constraints of one game is not a great excuse.
Even so, it will take significantly more work for someone to scan through the entire catalog to remove any “nuisance” accessories than it would for you to take the 5 minutes to write a simple filter.
workspace.DescendantAdded:Connect(function(desc)
if not desc:IsA("Accoutrement") then
return
end
for _, child in pairs(desc:GetChildren()) do
if child:IsA("BasePart") and child.Name == "Handle" then
for _, child in pairs(child:GetChildren()) do
if not child:IsA("DataModelMesh") and not child:IsA("Attachment") then
child:Destroy()
end
end
else
child:Destroy()
end
end
end)
the value of those accessories is irrelevent, roblox should refund them if that’s a problem, the feature itself is stupid and there is no denying it, just because we can work around it doesn’t mean you can do so in other people’s games, to the average player it is very annoying to hear those sounds across the whole server while playing. It shouldn’t have been a thing in the first place.
I’m not sure how applicable this statement is considering no new accessories that make noise have come out since “years ago”, to my knowledge, correct me if I’m wrong.
All of the accessories that make noise are either Limited or offsale, so there is a finite number in circulation, and as such, Roblox’s growth does not effect the number of these accessories in circulation.
Arguably, as a developer, you shouldn’t resort to custom measures to remove these sounds yourself because I agree, them making noise isn’t really expected behavior. Although, I don’t think this is substantial enough to merit removing these sounds outright, because they’re collectibles and people own them for this exact reason.
On a related note, does anyone object accessories that have particles? I would argue these accessories, in some cases, are more intrusive than sounds. If we take that route, it sounds like a feature request should be made to disable accessory effects in game settings, and we can knock two birds out with one stone.
My post has been tweaked a bit so it matches the requirements for a post in this catagory, I don’t stand behind this feature at all and I agree that the scale of the platform is irrelevent to if it’s appropriate or not, I think it’s not appropriate at all in the first place. Even if the accessories are limited and there aren’t many people who use them that still doesn’t prevent people with those accessories to annoy people in games which don’t have anything to prevent those accessories from playing those sounds. Like I’ve said before, roblox can refund those players their robux, this feature is a mistake, roblox should be accountable for it. The option to disable the effects of accessories would be nice and all but it is not guranteed every game owner will tick that option, the players don’t have control over those accessories playing these sounds, it is not expected behaviour.
Hello, I made a module that has a built-in feature that solves this issue
here’s a small code snippet that does what you are asking for
if CONFIGURATION.SanitizeAccessories then
for _, accessory: Accessory in humanoid:GetAccessories() do
for _, descendant: Instance in accessory:GetDescendants() do
if BLACKLIST[descendant.ClassName] then
descendant:Destroy()
end
end
end
end
I also ran into the same issue as you described however I have made a solution for that too
Why cant you just do a simple check for any sound or script instances in any script that detects a player join (leaderstats best spot), then remove them that way?