New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Play Memorized BGM does not work after a BGM fade-out #1354

Closed
vgperson opened this Issue May 6, 2018 · 2 comments

Comments

Projects
None yet
3 participants
@vgperson

vgperson commented May 6, 2018

Name of the game:

Witch's Heart (http://vgperson.com/games/witchheart.htm)

Player platform:

Windows

Attach files (as a .zip archive or link them)

WitchsHeartMemorizeBGMBug.zip

Describe the issue in detail and how to reproduce it:

In numerous situations in Witch's Heart, the music does not come back when it's supposed to. Most notably, the music will momentarily stop to show a "countdown" effect when you complete a demon request, then fail to restart after - but if you save and reload, the music then plays. (The same applies to getting Rainbow Crystals.) In some cases the music does come back, but only because there's a parallel event in charge of playing the BGM. In the attached save, just press Confirm to use the water on the demon and see the issue with the countdown.

I believe the cause is that when Play Memorized BGM is called, music volume does not properly reset, and thus will remain at 0 following a Fade-Out BGM. Some testing indicated that a fade-out followed by a Play Memorized BGM wouldn't work, but putting a Play BGM command in the middle made it work.

@Ghabry Ghabry added the Audio label May 6, 2018

@carstene1ns

This comment has been minimized.

Member

carstene1ns commented May 6, 2018

Seems we only need to set data.stored_music.volume here:
https://github.com/EasyRPG/Player/blob/master/src/game_system.cpp#L189

Question is does RPG_RT reset to 100% or do we need to save the volume from before the fade-out.

@Ghabry

This comment has been minimized.

Member

Ghabry commented May 6, 2018

I wonder which volume is saved when you start the fade out and invoke "MemorizeBGM" while it's fading in RPG_RT.

But fixing this specific issue: Is enough to remove the if (previous_music.volume != data.current_music.volume) { check.

Ghabry added a commit to Ghabry/easyrpg-player that referenced this issue May 6, 2018

Simply set BGM Volume and Pitch even if they were the same before. Ot…
…herwise this breaks cancelling of fade effects.

SetVolume of AudioDecoder cancels fade effects now.

Fix EasyRPG#1354

@Ghabry Ghabry added this to the 0.5.4 milestone May 6, 2018

@Ghabry Ghabry modified the milestone: 0.5.4 May 6, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment