# OS 6.7 Delayed Clashes and Effects with Fett263 Prop File

**URL:** <https://crucible.hubbe.net/t/os-6-7-delayed-clashes-and-effects-with-fett263-prop-file/2273>\
**Category:** ProffieOS\
**Created:** [August 24, 2022, 12:01am UTC](https://crucible.hubbe.net/t/os-6-7-delayed-clashes-and-effects-with-fett263-prop-file/2273 "2022-08-24T00:01:45Z")\
**Posts on this page:** 1\
**Showing post:** 14

<div class="post-metadata">

**Author:** ![NoSloppy](https://crucible.hubbe.net/user_avatar/crucible.hubbe.net/nosloppy/32/3865_2.png) [@NoSloppy](https://crucible.hubbe.net/u/NoSloppy)\
**Post date:** [August 24, 2022, 5:03am UTC](https://crucible.hubbe.net/t/os-6-7-delayed-clashes-and-effects-with-fett263-prop-file/2273/14 "2022-08-24T05:03:59Z")

</div>

Keep in mind that currently there are 7 wav players available in total. Hum and 2 smoothswings are constantly occupying 3 of those slots.  
If you trigger more than 4 more sounds that need to overlap, you’re going to have to wait for the oldest one to finish playing it’s sound before a new sounds will be able to play. Long effect sounds exacerbate the issue.  
This is the “dud” you get.  
I have something in the works to kill off the oldest sound to make room for new.  
See this thread and this video.

> [@ProffieOS v7.x feature discussions - freeing wavplayer](https://crucible.hubbe.net/t/proffieos-v7-x-feature-discussions-freeing-wavplayer/1350):
>
> Topic: Freeing a wavplayer when we run out. (such as spamming blasts). Ideally, this would be the oldest triggered effect that is not hum, swingl, or swingh. I thought I’d take a crack at this, but I’m doing something wrong when getting a currently occupied player because I still get ‘nothin’ reported. But I should be on the right track? Shouldn’t be a big deal to do, right? RefPtr\<BufferedWavPlayer\> PlayPolyphonic(Effect\* f) { EnableAmplifier(); if (!f-\>files\_found()) return RefPtr\<BufferedWavPlayer\>(nullptr); RefPtr\<BufferedWavPlayer\> player = GetFreeWavPlayer(); if (player) { player-\>set\_volume\_now(font\_config.volEff / 16.0f); player-\>PlayOnce(f); current\_effect\_length\_ = player-\>length(); } else { STDOUT.println("\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* Out of WAV players! Getting more...I think."); RefPtr\<BufferedWavPlayer\> effect = GetWavPlayerPlaying(f); effect-\>set\_fade\_time(0.003); effect-\>FadeAndStop(); effect.Free(); STDOUT.println("\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* ok freed?"); player = GetFreeWavPlayer(); if (player) { STDOUT.println("\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* Found freed player, about to 2nd attempt to player-\>PlayOnce()."); player-\>set\_volume\_now(font\_config.volEff / 16.0f); player-\>PlayOnce(f); current\_effect\_length\_ = player-\>length(); } else { STDOUT.println("\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* I got nothin. returning nothin."); } } return player; } The 2nd attempt to play is to prevent a dead click while we “reload” this time around.

[![](https://img.youtube.com/vi/M1R25apdK0g/maxresdefault.jpg "Blast spamming ProffieOS no duds, no lag.") ](https://www.youtube.com/watch?v=M1R25apdK0g)

---

_[View the full topic](https://crucible.hubbe.net/t/os-6-7-delayed-clashes-and-effects-with-fett263-prop-file/2273)._
