If when opening the pause menu or other screen, the dialogue reaches a {w=x} tag, the game will then close the menu of its own accord.
I was able to replicate the effect with the following in a fresh project:
Code: Select all
# In options.rpy:
define config.enter_transition = Dissolve(4.0)
#
default preferences.text_cps = 32
Code: Select all
# In script.rpy:
e "Please open the pause menu or history on the next line of text before the pause."
e "The purpose of this is to test...{w=1.0} whether opening the menu at an upcoming pause causes the pause to cancel the menu on its own."
e "The bug appears to manifest if the pause happens during menu transition."
e "Restarting..."
jump start
Additionally, a non-timed {w} tag does not close the menu.
Personally, I would like for the ability to freeze dialogue when the menu is opened. As it is, Ren'py continues to type out text even while the menu is open. This would technically solve the problem by preventing it from happening, as long as the freeze/unfreeze functions happened outside of the transitions, but it's mostly an aside request.