performous / performous

An open-source music and rhythm game.
https://performous.org
Other
489 stars 106 forks source link

Duet songs not recognised properly #696

Closed MagicChocoRolls closed 2 years ago

MagicChocoRolls commented 2 years ago

Do you want to request a feature or report a bug?

Bug

What did you do?

I tried the new 1.2.0-rc1 version and navigated around a bit. I found that duet songs are shown as single (indicated by the singer in the top right corner) in the song overview. When clicking enter to sing the song, the menu opens, so I can select which microphone sings which duet part. The song was perfectly working as expected (with duet mode). After navigating back to the song overview (either by quitting the song or singing it entirely) the song is then correctly shown as a duet song in the overview (indicated by the two singers in the top right corner).

Restarting Performous starts this process from the beginning.

I furthermore tried to only show duet songs with the help of the duet song filter. The filter did not show any songs unless the song was opened before.

What did you expect to see?

I expected duet songs to be recognised as duet from the beginning.

What did you see instead?

Duet songs were shown as 1-singer-only until opened once.

Output of performous --version: (What version of Performous are you using?)

1.2.0-rc1

What is your environment & configuration (arguments, platform, ...)?

MacBook Pro 2018 macOS 12.1

If applicable, please paste the log output in DEBUG level (--logLevel=DEBUG switch)

none
Baklap4 commented 2 years ago

Might be a caching issue, can you try it with and without removing Songs-Metadata.json? This file should be in your OS cache directory:

ooshlablu commented 2 years ago

When I first load Performous with no cache file, all songs show as only having 1 vocal track. I have noticed that once the cache is loaded (for instance on a second run) I have almost the opposite issue: Songs with one vocal track will be recognized as duets, but the second available track is only dummy_track0, which is a clone of the single vocal track. When selecting a song after the cache is loaded that I know is a duet song, all appears to work fine except for the addition of another dummy_track0. Other vocal tracks are selectible and show up on their on staff with the correct mics assigned, etc.

Lord-Kamina commented 2 years ago

I'll try to look into this later.

ooshlablu commented 2 years ago

I should have mentioned that everything I use is in Clonehero/Frets on fire format

I did mess around a bit a while ago and the problem seems to happen somewhere around here https://github.com/performous/performous/blob/master/game/songparser-mid.cc#L69

Baklap4 commented 2 years ago

Closing this as this doesn't occur on master anymore (if there's a duet mode, 2 singers will appear in the top right of the song browser)

If this is still a problem to you @MagicChocoRolls please update to the latest version of Performous (found in the readme) And if this still happens then please reopen this issue.