Environment Variables link

Ren'Py accepts a number of environment variables that influence its behavior. These environment variables may disappear or change between Ren'Py releases.

The following environment variables control the behavior of Ren'Py:

RENPY_DISABLE_JOYSTICK

If set, joystick detection is disabled. Use this if a faulty joystick is causing Ren'Py to advance when not desired.

RENPY_DISABLE_FULLSCREEN

If set, Ren'Py will refuse to go into fullscreen mode.

RENPY_DISABLE_SOUND

This prevents sound playback from occurring. If this variable contains "pss", sound playback will be disabled.

RENPY_DRAWABLE_RESOLUTION_TEXT

If set to 0, Ren'Py will not use draw text at the screen's resolution.

RENPY_EDIT_PY

The path to an .edit.py file telling Ren'Py how to invoke a text editor. See Text Editor Integration for more information.

RENPY_GL_ENVIRON

Sets the OpenGL texture environment.

RENPY_GL_RTT

Sets the OpenGL render-to-texture method.

RENPY_GL_VSYNC

This determines if Ren'Py will attempt to synchronize with the display's vertical refresh. (This prevents tearing, at the cost of potentially lowering framerate.) Set this to "0" to disable synchronization, or "1" to sync to every vertical refresh.

RENPY_LANGUAGE

If set, gives the translation language Ren'Py will use.

RENPY_LESS_MEMORY

This causes Ren'Py to reduce its memory usage, in exchange for reductions in speed.

RENPY_LESS_MOUSE

This causes Ren'Py to disable the mouse at all times.

RENPY_LESS_PAUSES

This causes Ren'Py to disable the pauses created by the {p} and {w} text tags.

RENPY_LESS_UPDATES

This causes Ren'Py to reduce the number of screen updates that occur.

RENPY_MULTIPERSISTENT

The path to a directory where Ren'Py stores multipersistent data.

RENPY_NO_STEAM

If present in the environment, Ren'Py will not initialize Steamworks.

RENPY_OPEN_FILE_ENCODING

Sets the default encoding for renpy.open_file(). This is mostly used to help Python 2 games run on Python 3 based versions of Ren'Py try "utf-8" and "latin-1" to see if it helps a those games run. (But remember to set this back for newer games.)

RENPY_PATH_TO_SAVES

The path to a directory where Ren'Py stores it's saves. The actual saves for a game are stored in a game-specific path underneath this directory.

RENPY_SCREENSHOT_PATTERN

A pattern used to create screenshot filenames. It should contain a single %d substitution in it. For example, setting this to "screenshot%04d.jpg" will cause Ren'Py to write out jpeg screenshots rather than the usual pngs.

RENPY_SEARCHPATH

If set, a double-colon (::) separated list of additional paths that are added to config.searchpath.

RENPY_SIMPLE_EXCEPTIONS

When set, this disables Ren'Py's graphical exception handling.

RENPY_SKIP_MAIN_MENU

When set, skips the main menu.

RENPY_SKIP_SPLASHSCREEN

When set, skips the splashscreen.

RENPY_SOUND_BUFSIZE

This controls the sound buffer size. Values larger than the default (2048) can prevent sound from skipping, at the cost of a larger delay from when a sound is invoked to when it is played.

RENPY_TIMEWARP

This can be set to make time run faster or slower. For example, setting a timewarp of 0.5 makes things run at half-speed, while a timewarp of 2.0 makes everything run at twice normal speed.

RENPY_USE_DRAWABLE_RESOLUTION

If set to 0, Ren'Py will perform certain operations (including dissolve transforms and text rendering) at the game's virtual resolution rather than the screen's native resolution.

RENPY_VARIANT

This should be set to a space-separated list of screen variants that Ren'Py is expected to use.

As Ren'Py uses SDL, its behavior can also be controlled by the SDL environment variables.

At startup, Ren'Py will look in the Ren'Py directory (the one containing renpy.exe or renpy.py) for the file environment.txt. If it exists, it will be evaluated as a Python file, and the values defined in that file will be used as the default values of environment variables.