Ren'Py QoL features in Ren'Py

Grim Fantasia

New Member
May 13, 2021
13
89
Hi :giggle:

I am new to adult game development, but got some experience in game dev in general. That's why my first VN project is probably going to use Unity, so I can easily expand on mechanics later on. However, seeing that most of the Adult VNs are created in Ren'Py makes me curious on what exactly players love about it. From a dev perspective it's quite clear: Easy to learn, free to use, lots of features, a lot of documentation

But seeing a lot of players favor Ren'Py got me thinking about what exactly it is that players love so much about it? So if you have played Ren'Py games I would really love to hear on what quality of life features you like about Ren'Py and maybe even what you missed in games that used other engines compared to Ren'Py games. And is there something that you don't like about Ren'Py games?

I would love to hear your opinions :)
 

LightmanP

Well-Known Member
Modder
Game Developer
Oct 5, 2020
1,671
15,504
Accessibility features, easy customization options (text box, font size, etc), modability.
Also, the fact that saves are automatically saved outside of the game folder, so I don't need to bother with keeping the game or backing up saves when waiting for updates.
 

79flavors

Well-Known Member
Respected User
Jun 14, 2018
1,581
2,219
For the most part... familiarity.

As much as things like rollback and auto-forward are nice QoL features, knowing how they work exactly and knowing what to click to enable/disable them shouldn't be underestimated. And whilst the UI can be heavily customized, it's still mostly very easy to understand how things work immediately you start the game. The default text font is about the right size and easily readable. That familiarity extends to the other common UI functions too... like dev written choice menus.

For me personally... rollback, text speed control, auto advance timing control. Right clicking to access the load/save/options game menu. Quick Save/Quick Load. I've played games written using similar engines, and the differences tend to annoy me (usually how the auto-advance timing isn't well balanced for my reading speed).

Plus, if I'm honest, the ability to look at the underlying code to see the consequences of choices myself without referring to a formal walkthrough. Then beyond that, there's the occasional game that I enjoy playing... but something irritates me about it (spelling, font, etc)... RenPy means I can "fix" the thing that's annoying me myself.

Edit: I guess the other thing is that RenPy programming is relatively easy (emphasis on relatively). What that means to me is that I can usually tell within 10 minutes of starting to play whether the developer is going to deliver a game I'm going to enjoy. I put that down to my assumption that because of the effectively low barrier to entry, the developer can focus on their story telling rather than figuring out the game engine. Of course, there's always the clear "doesn't have a clue" developers too... that is... if you can deliver a tedious game using RenPy - there was probably no other better solution for ya.
 
Last edited:

Odlanier

Member
Jun 23, 2020
392
251
Porting to Android is easier
Also applications are available to unofficially compress the game
 
Last edited:

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Donor
Respected User
Jun 10, 2017
10,363
15,280
There's mostly four things that make Ren'py quality of life for the player, and none will be easy to implement on another engine.

Firstly, it's the rollback feature, that permit to advance in the game by trial & error.
Being mostly amateur games, Ren'py games are sometime hard to follow because their logic isn't necessarily apparent or constant. Being able to advance few step on one side, then easily go back to finally choose the other side make this easier. Especially when it can be done faster than a "save then reload" process.

Secondly, the "watch" debug mechanism, that permit to track whatever variable changes in real time.
Couple this with the rollback, and whatever how obscure the choice can be, you'll always do the right ones.

Thirdly, the skip feature, that permit to follow more than one route without loosing time.
If there's a change, as insignificant as it can be, between the route you played first, and this one, the skip will stop, letting you enjoy it. Else, you'll pass a hour of play in few minutes.

And finally, it's the console, that permit absolutely everything you can do with Ren'py.
It's not just a console with few commands, it's a live interpreter for both Python and the Ren'py script language ; whatever you can do on a Python bloc or a Ren'py label, you can do it from the console.
The most useful part being obviously the variables manipulation, that permit to limit the grind, but it's not the only one. Just the possibility to use jump and call from the console is something marvelous. As long as you know the label names, you can follow two parallels route in one single play if you want.


But as I said, none would be easy to add to another game engine.

The rollback don't regard just the dialog, it revert all the variables, what force you to keep their state for each single step made by the player.

The "watch" command let you watch whatever variable, even the one purely internal to the engine. Even assuming that you gave the name of the variables to the player, you would have to implement a "watch" for each one of them, because you can't address them by their names.

The skip feature is probably the easiest to implement. Yet it imply that you have a flag for each single lines of dialog, but a flag that rely on an ID, in order for a change in a line between two updates to not be skipped, even if the player have seen the previous version of this line.

As for the console, it's just impossible to fully implement it.


Edit: Tried to force my brain to make it more English and less Engrish :(
 
Last edited:

Deleted member 609064

Well-Known Member
May 11, 2018
1,249
1,587
It runs on Linux, there is plenty of support to compress versions (important for those of us with limited disk space or bandwidth usage concerns).

I am a writer and not a dev, it's enough work to write something good, let alone having to develop programming competency. I understand that people like Unity but it looks like a lot of work to me, and generally isn't compatible with all platforms, so reduced audience and exposure, which are big negatives if someone is trying to make a living at game production (which I am not, but is for many who try to make great content because it is so time-consuming to do a great job).