Ren’Py is an open source visual novel engine – used by hundreds of creators from around the world – that helps you use words, images, and sounds to tell interactive stories that run on computers and mobile devices. These can be both visual novels and life simulation games. The easy to learn script language allows anyone to efficiently write large visual novels, while its Python scripting is enough for complex simulation games.
This open source engine offers movie playback for both full-screen movies and animated sprites, in-engine animation (using the built in “Animation and Translation Language”, or ATL), and full animation and customization of UI elements via “Screen Language”.
Ren’Py is built on pygame, which is built with Python on SDL. It supports three computer platforms: Windows, Mac OS X, and Linux.
Ren’Py has been used to create over 1,500 visual novels, games, and other works.
Key Features
- Highly cutomizable. For example:
- Dialogue can be presented in the default ADV-style mode, or in NVL-mode, where more than one block of text is on the screen at once.
- The style system allows the creator to customize the look of text, buttons, bars, and other interface components.
- Ren’Py’s screen language makes it possible to control the layout and behaviour of every screen of the user interface.
- The same functionality is made available to Python code, for games that might choose to change their interface at runtime.
- Create branching stories.
- Save file systems.
- Downloadable content.
- Animation and Transformation Language included with Ren’Py makes it possible to animate images, move them around the screen, rotate them, adjust their scaling, and adjust their opacity.
- Supports a sprite system which allows the author to create sprites.
- Supports many editors including Atom.
- Self-voicing mode, which provides accessibility for blind users.
- Script language makes it easy to write visual novels, and other writing-heavy games. It’s easy to learn.
- A main menu that lets the user start a new game, load a game, or adjust settings.
- A game menu that lets the user load, save, and adjust settings.
- Automatic saving of games.
- Rollback, the ability to go back in time to see previously shown screens. The user can even make different choices the second time around.
- Predictive image loading, which loads images in the background. This prevents the user from having to wait around while images are being loaded from disk.
- Support for controlling the game using the mouse, keyboard, or gamepad.
- Pick if the game runs in full screen mode, or in a resizeable window.
- Skip through text when replaying, including the ability to skip only text that’s been read.
- Auto-advance text without having to hit the keyboard. This adjusts to the amount of text being shown, so longer text stays around longer.
- Hide text, so that the user can see the pictures behind it.
- Independently change music, sound effect, and voice volume.
- Compatible with a wide range of formats:
- Images: JPEG/JPG, PNG, WEBP, BMP, and GIF;
- Sound/Music: OGG Vorbis, OPUS, WAV, MP3, and MP2;
- Movies: OGG Theora, VP9, VP8, MPEG 4, MPEG 2, and MPEG 1;
- Scalable Fonts: TrueType;
- Image-based Fonts: SFont, BMFont, and MudgeFont.
- Supports a wide range of operating systems – Linux, Windows, OS X, iOS, Android, and Chrome OS.
Website: www.renpy.org
Support: Documentation, GitHub Code Repository
Developer: Tom “PyTom” Rothamel
License: MIT License

Ren’Py is written in Python. Learn Python with our recommended free books and free tutorials.
Related Software
| Writing Tools | |
|---|---|
| FocusWriter | Simple, distraction-free word processor |
| Ren'Py | Used to create over a thousand visual novels, games, and other works |
| novelWriter | Plain text editor designed for writing novels |
| CherryTree | Hierarchical note taking application packed with features |
| Zettlr | Markdown editor for the 21st Century |
| oStorybook | Offers authors a complete and well integrated tool |
| Twine | Visual tool for creating interactive stories |
| Manuskript | Snowflake method can help you grow your idea into a book |
| Quoll Writer | Java tool to help you focus on writing and your words |
| Joplin | Note taking and to-do application with synchronisation capabilities |
| Hammer | Simple tool for building stories |
| Bibisco | Write your story, in a simple way |
| WareWoolf | Minimalist novel-writing system built specifically for fiction writing |
| Scriptorium | Write short stories and novels |
| Skribisto | Born from the ashes of Plume Creator |
| novelibre | Novel organizer for writers who use LibreOffice or OpenOffice |
| Plume Creator | Project manager and rich text editor for writers |
| NovProg | Graphs your progress when writing a novel |
Read our verdict in the software roundup.
| Write Interactive Fiction | |
|---|---|
| Ren'Py | Create over a thousand visual novels, games, and other works |
| Twine | Visual tool for creating interactive stories |
| ALAN | ALAN Adventure Language |
| Quest | A good system to make interactive story games |
| Squiffy | Useful tool for creating interactive stories |
| FrobTADS | Authoring System to Create Your Own Interactive Fiction |
| Inform | Popular design system for interactive fiction based on natural language |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

