Ren'Py menus

Menus present the player with a list of options to choose from. Depending on which option they choose the corresponding block of statement is executed.


label study:
    "You are in your grandfather's study."
    menu:
        "Search desk":
            "You carefully search the desk, but don't find anything."
        "Check under rug":
            "You look under the old rug, but don't find anything."
    return

In the above example the player reads the narration then when they click the "say" box is removed and two options are shown in the centre of the screen:

  • Search desk
  • Check under rug
When they pick one the corresponding narration is shown. It can be a little distracting to have the say box disappear and re-appear. The other problem is that the fact that there's a menu on screen isn't announced to those using self-voicing. Adding a menu prompt (which is a string without a colon at the end) that also has alt text solves both these problems:


label study:
    "You are in your grandfather's study."
    menu:
        "{alt}Menu. {/alt}Where do you want to look?"
        "Search desk":
            "You carefully search the desk, but don't find anything."
        "Check under rug":
            "You look under the old rug, but don't find anything."
    return