orhun / CoolModFiles

A web player that plays some cool MOD files randomly 🎶
https://CoolModFiles.com
GNU General Public License v3.0
131 stars 12 forks source link

modules don't loop as the artist intended #47

Open runlow opened 1 year ago

runlow commented 1 year ago

Expected The song loops the way the artist intended it to loop (usually so it continues seamlessly like an infinite song)

Actual The song loops from the very beginning with the intro again

Steps to reproduce

  1. open https://modarchive.org/index.php?request=view_player&query=180439
  2. fast forward it near the end, notice how the song continues after it's over
  3. open https://coolmodfiles.com/?trackId=180439
  4. make sure "repeat" is on, fast forward near the end, notice what happens when it's over

Extra I don't know if it's a bug or a feature. Personally I prefer the originally intended looping, even if it breaks immersion.

There's another issue of "sub-songs". https://modarchive.org/index.php?request=view_player&query=38420 This is three songs in one. The following link only plays the first one. https://coolmodfiles.com/?trackId=38420

Do you think maybe there's some clever way to still get to have sub-songs and the intended looping but without breaking the "typical playback" experience? Most songs don't use this so maybe it wouldn't be a big deal if some songs had an extra "song select ui"? I like the overall design by the way.

WKFO commented 1 year ago

Pressing the loop mode could toggle between 3 options: "loop off", "loop from start", "follow mod-defined loops", third of which reveals a list of subsongs.

runlow commented 1 year ago

@WKFO There's another issue - that the listener may not even know that the song has "custom looping", this only applies to some select tracks

What if for now this could be only a semi-hidden keyboard shortcut, only announced in the help message, two key bindings:

orhun commented 1 year ago

The fix in #50 is now merged. I believe this will be somehow helpful.

For the other issues mentioned here, please create separate "feature request" issues. It is hard to track what else might be done here.