BambooTracker / BambooTracker

YM2608 music tracker 🎍🎋
https://bambooTracker.github.io/BambooTracker/
GNU General Public License v2.0
483 stars 29 forks source link

Add retrigg command #249

Closed Speedvicio closed 3 years ago

Speedvicio commented 4 years ago

As on title, can you add retrigg command like fasttracker (E9X) ?

rerrahkr commented 4 years ago

Thanks for your requests. I don't know well about FastTracker, but I suppose that it is like Xxx effect in FamiTracker. I don't know if it can be implemented at this time, because the playback routine needs to be changed significantly. I'll take a closer look at the behavior of the effect.

N-SPC700 commented 3 years ago

Isn't the retrigger just restarting the same note? in that case, you could simply use the ^0 note (and add a delay command when needed). Or just reinput the note (which may also need the delay command)

dotmatrixgirl commented 3 years ago

I just wanna bump this feature request. I know RMS mentioned this being a nice feature over a discord conversation. Retrigger is a common feature in many trackers, Deflemask, lsdj, and most classic module formats have the effect. It can be used for glitch sounds, and for doing finer work on songs with with a low speed. (i.e. echos in between lines). A lot of breakcore songs use it for drums that sound really cool. What it does is retrigger the last note y times every line with x volume factor.

i.e. x04 would retrigger the note every 4 ticks x14 would retrigger the note every 4 ticks while decreasing the volume of each retrigger by 1 xE4 would retrigger the note every 4 ticks while decreasing the volume of each retrigger by 2

Obviously having y ticks higher than the current song speed wouldn't have any effect.

rerrahkr commented 3 years ago

Finally I added it as 0Kxy in b35fcae1a5b721f69c4e3e0e29fd2d2d7ab8a662.

OPNA2608 commented 3 years ago

Like Rerrah said it's implemented in b35fcae1a5b721f69c4e3e0e29fd2d2d7ab8a662, closing. Let us know if you end up having any problems with this implementation.