ContentProvider.AssetFetchFailed:Connect(function(contentId)
print("AssetFetchFailed", contentId)
end)
ContentProvider:PreloadAsync({ SoundService.Sounds }, function(contentId, AssetFetchStatus)
if AssetFetchStatus == Enum.AssetFetchStatus.Failure then
print("Failed to Preload", contentId)
end
end)
Reviving this because I don’t believe theres still is any way to detect for these errors. If some script is dependent on a particular object existing and that object fails to load, then there might be an indexing into nil error that halts the script, and maybe even the entire game. A single failed asset load does not necessitate breaking the entire game, since most assets are just vanity effects (the game shouldn’t break for a client just because “footstep-sand_sfx” doesn’t load in), and with no way to detect and work around failed assets, scripts are uneccessarily halted.
local assetStatus = contentprovider:GetAssetFetchStatus(asset)
if assetStatus ~= Enum.AssetFetchStatus.Success then
print(asset, 'failed to load, reason:', assetStatus)
end