For Ren’Py, broadly, an “interaction” is considered to be what happens when the player performs some action in the game – such as clicking on a button, or clicking on the screen to proceed through dialogue – or when the game causes some kind of event to occur, such as a timer counting down to 0 and jumping to a “failure” label as a result.
Some common things where Ren’Py considers an interaction to occur are when the player taps to advance through dialogue (the
say statement), when the player clicks a choice in a choice menu, for lines like
pause or transitions like
with dissolve, and when a screen is called via
call screen or input with
Essentially when the game is awaiting input of some kind, whether that be via the player clicking around or the game itself auto-advancing dialogue or a screen timer timing out, it is considered to be “waiting for an interaction”. Things which cause an interaction are things which end or modify the state the game is currently in. Not everything causes an interaction to occur – showing images like
show zoran happy, playing music via
play music sunflower, or changing variables like
$ gave_ashwin_cookies = True do not cause interactions on their own.
If this all sounds confusing, that’s all right; you don’t need to understand the nitty-gritty of what an interaction is to use Ren’Py. Most of the time we speak about interactions in Ren’Py with the phrase “waiting for an interaction”, and all you need to know to understand that is that when Ren’Py is “waiting for an interaction”, it is waiting for some kind of signal from the game or from the player to proceed with the rest of the game.
You may be interested in this in-depth Ren’Py article on the topic as well.« Back to Glossary Index