Being able to set the BGM in the GameScene node has been a great help, as it ensures that the BGM is not interrupted when loading save files within the same scene.
However, regarding the audio playback function, I found several issues during testing.
The BGM set in the GameScene node lacks basic volume adjustment functionality akin to audiostreamplayer. It is impossible to adjust the volume and pitch scaling. It is hoped that this simple function will be added to facilitate user volume adjustment.
I have set different BGMs in two game scenes, but the BGM does not trigger if I pass through the portal. It seems that if I want to switch scenes through the portal, I have to set the BGM in the scene where the portal is located. Is it not possible to play the BGM set in the GameScene by itself?
However, if the BGM is set using a portal, it will be interrupted and restarted during loading. It cannot continue to play like the BGM in the GameScene node
Additional: I am certain that the BGM was set up initially in the GameScene node, and it continued to play without interruption when loading save files. However, during repeated testing, it has been observed that both the BGM in the GameScene node and the BGM played through the portal are affected by the loading process, resulting in playback being restarted… The reason for this is completely unclear
In relation to the animation fix mentioned above, we have identified the following issue:
If a state transition occurs while the character is facing a direction without a defined animation, the animation will not play, and subsequent state transitions may fail.
Examples of occurrence:
Transitioning from falling to a landing motion that is only defined for left and right directions.
When the display direction is set to the movement direction, transitioning while facing downward.
→ Since no animation is defined for the downward direction, playback fails, causing the issue.
This issue will not corrupt your project, but if you are affected, please consider using the beta branch (e.g., previous-version).
This is a temporary issue and is scheduled to be fixed in the next update.
We will accept requests regarding volume adjustments, etc.
Regarding the use of game scene BGM during scene transitions or via portals,
you can play the BGM for post-transition effects by setting it to “Play” and specifying the “Scene Setting BGM”.
Loading save data inherently requires reloading the scene, which means the BGM will inevitably be interrupted due to the underlying mechanics.
Even if you were to save the BGM’s playback position, there would still be a brief pause.
It seems you likely want something like the quick restart feature found in Celeste. Instead of loading a save file, wouldn’t it be possible to reset the scene by moving objects or triggering object initialization actions?
Yes, as you mentioned, I need to implement a feature where the BGM doesn’t stop when the player dies, similar to Celeste. Currently, my logic involves saving at checkpoints and reloading upon death, but the BGM keeps getting interrupted, which negatively impacts the experience.
For a while, I tried avoiding BGM interruptions by placing it in a global scope. This way, reloading wouldn’t interrupt it. However, this approach introduced many other cumbersome issues (such as difficulty in managing BGM changes when switching scenes and enemy sounds overlapping with the BGM, which are hard to handle in a global scope). I’ve always hoped that AGM could provide an option to load scenes without interrupting the BGM.
I wonder if in the LoadGameData action there was an option of ‘Continue Current BGM’. That way you can have loads that do restart the BGM (title screen) and things that do continue it (death sequences). Would that work you think?
EDIT: I hadn’t read Moonling’s response. Sounds like it will cause a brief interruption trying to make LoadGameData do this… The quick reset sounds like the better way to go about it. How to come up with that is the question.