Reference Manual: (offline | online) Quickstart: (offline | online)

NVL Mode

NVL mode is a mode in which Ren'Py shows more than one line of dialogue on the screen at once. This is used to better emulate the Japanese visual novel format, whereas the default settings of Ren'Py emulate the ADV format.

To use NVL mode, one must declare NVLCharacters, instead of regular characters.

The narrator can also be made an NVLCharacter, by setting the narrator variable to an NVLCharacter with the name of None.

init:
    $ e = NVLCharacter("Eileen", color="#c8ffc8")
    $ narrator = NVLCharacter(None)

When dialogue is spoken with an NVLCharacter, it is added to the end of a buffer, and then the entire contents of that buffer are shown to the user. The buffer can be cleared using the nvl clear statement. It should be cleared before the first use.

nvl clear

e "This is the first line of the first screen."

e "This is the second line of the first screen."

nvl clear

e "This is the first line of the second screen."

e "This is the second line of the first screen."

The nvl show transition statement causes a transition to occur from the previous screen to a screen with the buffer shown. The nvl hide transition statement causes a transition to occur from a screen with the buffer shown to a screen without the buffer shown.

Menus. The nvl_menu function shows a menu in NVL-mode. To use it, it should be assigned to menu in an init block, using code like:

init:
    $ menu = nvl_menu

As nvl-mode menus are shown without being added to the buffer, we suggest clearing the buffer (using nvl clear) immediately after each menu.

Function Equivalents. For each of the nvl-mode statements, there is an equivalent python function.

Styles. There are several styles that are used by the nvl-mode.

Reference Manual: (offline | online) Quickstart: (offline | online)