Overview of visual novel games, Ren'Py and setting up your first project
Welcome to my first series on "Let's Build A Simple Visual Novel Game Using Ren'Py"! My hope is that the articles in this series will give you a sense of how to create your first visual novel game from start to finish. I encourage you to use your imagination and don't be afraid to be creative with your scripting!
What are visual novel games?
If you ever read the Clue books back in the 90’s where you need to manually flip the pages to find out the ending, then visual novel games follow the same premise but on a digital level.
Visual novel games are text-based with storylines and narratives. Most games have non-linear gameplay and multiple storylines to keep the user engaged while making choices throughout the game. Visual novel games lean towards an anime/manga art style with a romantic plot. However, some visual novel games are created with different genres and art styles. Here’s a list of popular visual novel games that fit the category:
- Ace Attorney
- Professor Layton
- Dream Daddy
- The Letter
- Doki Doki Literature Club!
What is Ren’Py?
According to the official website, Ren'Py is a visual novel engine that is used by thousands of creators from around the world. You can 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. Ren’Py is open source and is free for commercial use.
What you’ll need to get started
We’ll create a simple visual novel game that utilizes a branching option where we have the user choose the good ending or the bad ending. Here’s what you’ll need:
- 1 character image with a transparent background
- 3-4 background images
- 1 audio file
- 1 font file
- 1 menu screen image
- Story script
You can download some royalty-free images from Unsplash and Pexels and tweak them to your liking. Itch.io has a wide selection of visual novel game assets you can use for your project. For audio files, you can look for some royalty-free music over at Bensound. For my project, I'm using my Sims 4 characters along with background images from Unsplash, one font file, and one audio file from Bensound.
It’s a good idea to have the story script prepared prior to coding it on Ren’Py. By having a story structure in place, you are able to add the dialogue and menu options easily on the script file. We’ll cover that later in the series.
Downloading the Ren’Py Engine
To get started, head over to Ren’Py’s download page and download the software development kit. I’m using my MacBook Pro for the game development. At the time of writing, the latest stable version of Ren’Py is 7.3.5. You can view here on how to install Ren’Py based on your operating system version.
Quick overview of the Ren’Py launcher
Once you have Ren’Py installed on your system, open the kit it and you should see the following launcher:
To give a brief overview - the left-hand side shows the list of projects. The right side of the launcher shows options to open the directory, editing the files, and provides a list of available actions. The bottom right corner allows you to launch your project, along with updating your software development kit, editing the preferences, and quitting Ren’Py.
By default, Ren’Py provides two visual novel games where you can browse and take a look at the files.
Creating your first project
So now we’re going to create our first project by scratch! Go ahead and click on the option at the left-hand side where it says +Create New Project.
You’ll be presented with this window below. Go ahead and click continue.
You will be asked to name your project. For my project, I’m naming it “Frameworks Over Flowers.” Bonus points to those who recognize the title format (hint: it’s based on a popular Korean Drama).
Once you have your project name, click Continue. From here, we’re asked to choose the resolution size. If you’re not sure, you can go ahead and leave the default settings as is (1280 x 720).
Once you click continue, you’re presented with an option to choose the accent and background colors. Pick anyone you like. For my project, I chose the pink one on the fourth row.
After clicking continue, it’ll generate the project and save it in your projects folder. In my case, my project is saved within the Ren’Py folder where the two sample games are located. You should see your project listed on the Ren’Py launcher:
"I'm getting an error when creating my project!"
There is a possibility that after following the steps above, you may be encountered with this error below:
On my end, I solved this error by going to preferences, changing the projects directory to where the software development kit resided (see below image). After that, I went through the new project process and I was able to see my project on the list.
If for some reason the above suggestion doesn't work, I highly encourage you to check out Ren'Py's Discord where you can connect with other developers who can walk you through on the project setup.
If you've managed to make it this far, congrats! In the next article, we'll start looking over the visual novel interface along with learning how to make customizations on the main menu interface. Enjoyed this article? Feel free to share and tag me on Twitter.