The Client crashes when sound files play massively. The problem seems to occur when there is a soundfile overload, aka multiple sounds starting to play/overlap in a close timerange.
This is happening with a 16kb .ogg file, which we use for multiple items, but it only crashes when used by one specific item being used multiple times.
Numbered Steps to Reproduce Problem:
1. Make some turf which trigger a sound file when stepped on.
2. Keep walking on those turfs.
3. The game will stay, but your Client will crash.
Code Snippet to Reproduce Problem:
It seems to happen most here:
SoundEffect(view(src), 'Chainsaw.ogg')
with SoundEffect() being:
SoundEffect(wide, file)
if(ismob(wide))
var/mob/M = wide
if(M.sfxon)
M << sound(file, volume=50)
else
var/list/people = new /list()
for(var/mob/M in wide)
if(!M.dead && !M.spyingOn)
people |= M
for(var/mob/M2 in people)
people |= M2.spiers
for(var/mob/M2 in people)
if(M2.sfxon)
M2 << sound(file, volume=50)
Expected Results:
The sounds playing.
Actual Results:
The Client crashing.
Does the problem occur:
Every time? Or how often?
Only when a sound overlaps, it seems. When we call it separately, it doesn't crash. And it seems to be based on how unlucky you are, because it doesn't always overload.
In other games?
We do not know of other games.
In other user accounts?
Yes, we have tested it on various accounts + random players crash from it too.
On other computers?
Yes. On both 32 and 64 bit Windows 7 hosting + numerous systems for playing
When does the problem NOT occur?
Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
This used to work on all previous versions, but broke for all versions when the latest was released.
Workarounds:
Disable sound.