Narration

Narration is any text the player reads that isn't spoken by a specific character. This can include descriptions, instructions, and notes the player reads.

Hello World!

As is tradition, here's the "Hello World!" example in Ren'Py script. To output narrative text all that is needed is the text in quotes on it's own on a line. The line is displayed in the "say" screen area at the bottom of the screen and waits for the player to acknowledge that they have read it with a left-click or Enter key.

script.rpy

label start:
    "Hello World!"
    return

Hello World!

Longer narration

This string of text can stretch over multiple lines which is convenient so the lines of text in the script don't get too long. Normally script lines shouldn't go beyond 80 characters across. Ren'Py re-formats the text to fit the size of the say box wrapping lines as needed. By default you can get three or four lines of 80 column text in the box provided at the bottom of the screen.


label downTheRabbitHole:
    "Alice was beginning to get very tired of sitting by her sister on the bank,
    and of having nothing to do: once or twice she had peeped into the book her
    sister was reading, but it had no pictures or conversations in it."
    return

Alice was beginning to get very tired of sitting by her sister on the bank, and of having nothing to do: once or twice she had peeped into the book her sister was reading, but it had no pictures or conversations in it.

Note: These need to be vanilla double-quotes. If you are cutting and pasting from a word-processor you may have trouble with smart-quotes that distinguish the opening and closing versions. Also this multi-line string only applies to Ren'Py, not lines of Python.

Almost all the extraneous whitespace at the start and ends of lines is removed before it is displayed. However if the first double quote is on a line by itself one space is kept at the start of the paragraph:


label downTheRabbitHole:
    "
    Alice was beginning to get very tired of sitting by her sister on the bank,
    and of having nothing to do: once or twice she had peeped into the book her
    sister was reading, but it had no pictures or conversations in it.
    "
    return

 Alice was beginning to get very tired of sitting by her sister on the bank, and of having nothing to do: once or twice she had peeped into the book her sister was reading, but it had no pictures or conversations in it.

You may or may not like this - that's up to you. However it is best to be consistent within your game!

"Monologue" narration

If you have several blocks of narration that follow each other you can use monologue mode by using triple double-quotes. A blank line is used to separate each section.

Note: You still need to escape even single instances of the double-quote character. This is different to the way Python handles it's triple quoted string literals which don't need this escaping.


label monoNarrate:
    """
    This is the first line of narration.

    The second line. It's simple isn't it?

    So then I said \"This is the third line!\"
    """

This is the first line of narration.
The second line. It's simple isn't it?
So then I said "This is the third line!"