Why are Ren'Py games often so broken?

FlamesOfVengeance

Well-Known Member
Jul 16, 2019
1,397
1,544
I know there's many people out there who flip out immediately when they see the "RPGM" tag and say it's a broken engine, it's super buggy and the games are too dragged out but I have to say from my experience Ren'Py games are actually the ones that have the most game breaking glitches with its now infamous error screen that seems to pop up in so many games (and unfortunately so many great ones).

Did any of you experience something similar? I personally can't remember a single RPGM game that had such an error screen and made it impossible to continue.
 

Adabelitoo

Well-Known Member
Jun 24, 2018
1,947
3,018
I think you just had really bad look while choosing games. If you find any "breaking glitches" in any engine that's because the dev is a lazzy ass who doesn't care about that or the dev just made a mistake and it'll be patched a few days after the release.

There is more space for error in sandboxes than linear VN so RPGM games tends to be buggier than Ren'Py games, but that is something about games, not engines. In Unity and others, you could do the same game as a sandbox and as a VN, the sandbox game always will be the easier to brake.
 

FlamesOfVengeance

Well-Known Member
Jul 16, 2019
1,397
1,544
I think you just had really bad look while choosing games. If you find any "breaking glitches" in any engine that's because the dev is a lazzy ass who doesn't care about that or the dev just made a mistake and it'll be patched a few days after the release.

There is more space for error in sandboxes than linear VN so RPGM games tends to be buggier than Ren'Py games, but that is something about games, not engines. In Unity and others, you could do the same game as a sandbox and as a VN, the sandbox game always will be the easier to brake.
It's usually the sandbox games that have these bugs and glitches (you know the typical Ren'Py error screen) so maybe it really has to do with the sandbox genre in general.
 

wurg

Active Member
Modder
Apr 19, 2018
705
1,629
Ren'Py games are so often broken because there are a lot of newcomers making them, people with very little to no experience coding them. I've had some experience helping random devs with the little bugs in their games from time to time, most just don't know, they just jump in the water and start swimming.

It boils down to lack of experience, lack of forward planning, wanting to add things now that they didn't think of before, and mostly, failure to QC the game before launch.

I'm not immune to this either, I've tested my gallery mods I've put out, thought I'd went through all the scenarios, and they were still not working right. It happens.

The ones that get me are "old saves won't work, you must start a new game", nothing gets on my nerves more than that one. I've dropped more than a couple of sandbox style games for that reason alone. Nothing I want to do more than spend a couple of hours pixel hunting to find all the "hidden" items in a game again.
 

FlamesOfVengeance

Well-Known Member
Jul 16, 2019
1,397
1,544
Ren'Py games are so often broken because there are a lot of newcomers making them, people with very little to no experience coding them. I've had some experience helping random devs with the little bugs in their games from time to time, most just don't know, they just jump in the water and start swimming.

It boils down to lack of experience, lack of forward planning, wanting to add things now that they didn't think of before, and mostly, failure to QC the game before launch.

I'm not immune to this either, I've tested my gallery mods I've put out, thought I'd went through all the scenarios, and they were still not working right. It happens.

The ones that get me are "old saves won't work, you must start a new game", nothing gets on my nerves more than that one. I've dropped more than a couple of sandbox style games for that reason alone. Nothing I want to do more than spend a couple of hours pixel hunting to find all the "hidden" items in a game again.
Oh yea absolutely. Saves not working for newer versions is probably one of the most infuriating things and can very well push you to drop a game for good. It's often very unfortunate tho because those games can be really good like for example Summertime Saga. It's one of my favourites on here but I haven't played it in over a year because I don't want to restart the whole thing every two updates.
 

;KFW;LKF;WL

Newbie
Dec 13, 2020
49
204
Ren'Py games are so often broken because there are a lot of newcomers making them, people with very little to no experience coding them. I've had some experience helping random devs with the little bugs in their games from time to time, most just don't know, they just jump in the water and start swimming.

It boils down to lack of experience, lack of forward planning, wanting to add things now that they didn't think of before, and mostly, failure to QC the game before launch.

I'm not immune to this either, I've tested my gallery mods I've put out, thought I'd went through all the scenarios, and they were still not working right. It happens.

The ones that get me are "old saves won't work, you must start a new game", nothing gets on my nerves more than that one. I've dropped more than a couple of sandbox style games for that reason alone. Nothing I want to do more than spend a couple of hours pixel hunting to find all the "hidden" items in a game again.
It's really hard to create bugs in renpy like you have to have no idea what you're doing.
 

wurg

Active Member
Modder
Apr 19, 2018
705
1,629
It's really hard to create bugs in renpy like you have to have no idea what you're doing.
It's not hard, reference an image wrong - or in the wrong location in the file system, delete the .rpyc and try to load a save file that relies on it ( this is a very common thing that happens breaking save files ). There's a hundreds of ways to cause errors, and all of them aren't hard to do, from simple typos to not understanding how the engine works.

For some it comes from not grasping code, it's not for everyone. I like code, it suits how my mind works. I can't write a story or an create image without considerable effort though.
 

Avaron1974

Resident Lesbian
Aug 22, 2018
24,883
84,977
Ren'py is babies first engine.

So easy to do anything with quite literally anyone can make a game using it. All you need is an idea, something to make renders with and any step by step guide online will show you what to do.

Due to it being so easy to use and anyone able to have a go it's mainly used by amateurs that run into problems and don't have a bug test process. If it works, they push it out.
 

rk-47

Active Member
Jun 27, 2020
851
723
Usually the errors are in part due to a png or animation missing, and pressing ignore will send you the the next cg or animation, same happens on rpgm which the dev states is either a bug or will be fixed in the next update
many renpy games ive played havent really seen a catastrophic error that wont let me progress and i would say its because you are getting games that many people havent played or released very recently
 

SomeGuyWithNoImagination

❤️ Keep comfy. ❤️
Game Developer
May 31, 2019
607
2,265
RenPy is a deceptively easy engine to get into and I suspect that many of the smaller and newer devs writing games in it have never written any code before. They may just assume that because they pass the syntax check and get into the main menu that there are no errors in the script.

TL;DR: Dev inexperience. There's nothing wrong with RenPy that causes it to be inherently buggy, but with an inexperienced developer or a simple lack of effort, bugs can and will appear, as with all engines.
 
Last edited:

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Respected User
Donor
Jun 10, 2017
10,130
14,809
It's really hard to create bugs in renpy
It's one of the easiest possible thing to do.
Code:
label whatever:
   [blablabla]
   show screen ScreenThatExpectAnInputToSendYouSomewhere
   pause

label whatever1:
   [blablabla]
Boom, just forgot to put your screen modal, and you've a wonderful bug.


like you have to have no idea what you're doing.
But, and it's not a criticism, they have no idea what they are doing. The majority of them never coded before starting their game.
 
  • Like
Reactions: Shadow Fiend

Pretentious Goblin

Conversation Conqueror
Nov 3, 2017
7,774
6,577
Strange, I haven't had too many problems with R'P, and I even go for the more complex games rather than VNs. If there's one engine I associate with bugs, crashes, bad performance etc., it's Unity, followed by Unreal Engine. Also, that janky one I've seen in some Japanese games like Arms Bless, that seems to produce flicker in every single game.
 

おい!

Engaged Member
Mar 25, 2018
2,574
7,523
I have not found that many R'P games with problems. Maybe the OP can tell us how many of the 2784 R'P games they have found to be broken?
 

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Respected User
Donor
Jun 10, 2017
10,130
14,809
I have not found that many R'P games with problems. Maybe the OP can tell us how many of the 2784 R'P games they have found to be broken?
It's just an estimation, but it's about 40% of them.
A game being broke don't necessarily mean that you'll have a beautiful screen telling you that there's an error. There's games where the variables are never saved, therefore you restart every time without knowing it. There's games where you see things that you shouldn't see, or at the opposite don't see things that you should. There's games that will advance in place or waiting when they show you a screen with buttons and you click on the wrong place. And so on.
Those games are all broke, but don't necessarily looks like it.
 

woody554

Well-Known Member
Jan 20, 2018
1,264
1,590
renpy script
screen language
animation and transformation language
python

contrary to popular belief I don't think the reason why it's so hard to not make errors is just people being bad at programming. renpy uses 4 different languages, with three of them very similar to each other with subtle semantic differences. bad, vast and out of date documentation, and to top it off forces you into using GOTO like an animal. it single-handedly throws 50 years of software engineering theory out of the window. it's amazing how people without years of professional programming experience can keep their projects together even at the level they do. it's like writing in assembler + three other languages vomitted on top of it. things will be guaranteed to be missed.

otoh if you ONLY restrict yourself to a basic VN with zero bells and whistles, just showing static renders with dialogue on them, it's extremely easy to do that in renpy. probably easier than writing your dialogue in word.

but the second you want something more, like the most trivial kind of rpg you used to do on c64 in the 80s with zero experience, it gets incredibly confusing, complicated and you'll drown in your hacks to get around the million convoluted problems renpy has.

don't get me wrong, renpy can do incredible things IF you're a professional and put in the insane amount of hours to become proficient in renpy swamp. but if you're capable of that, you'd get much more done with any normal language doing everything yourself.
 
Last edited:

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Respected User
Donor
Jun 10, 2017
10,130
14,809
contrary to popular belief I don't think the reason why it's so hard to not make errors is just people being bad at programming. renpy uses 4 different languages, with three of them very similar to each other with subtle semantic differences.
They have the same structure, but not the same vocabulary. There's way too few intersections between them for the, even fewer, semantic differences to be an effective problem. Plus, like they each rely on their own parser, they caught 99% of the possible errors due to those differences.


bad, vast and out of date documentation,
The official documentation is up to date, and any outdated part of the official site, like the cookbook by example, is explicitly stated as it. For everything else, it's a question of common sense, don't take as accurate information that are 10 years old.


and to top it off forces you into using GOTO like an animal. it single-handedly throws 50 years of software engineering theory out of the window.
You're the perfect example of those addressed by Dijkstra when he said this:
" "

Not only Dijkstra's publication isn't effectively a plea against the goto statement, but also others, among which Knuth in his " ", have explained why it's before anything else a question of context. What anyway Dijkstra said himself more than once, by example when he said the, "please don't fall into the trap of believing that I am terribly dogmatic about [the goto statement]. I have the uncomfortable feeling that others are making a religion out of it, as if the conceptual problems of programming could be solved by a single trick, by a simple form of coding discipline!", quoted in Knuth's publication.
So, no, Ren'py isn't throwing "50 years of software engineering theory out of the window". Like it's perfectly possible to write a full game in Ren'py without the use of its goto equivalent, by offering this choice in the structure followed, it just apply those 50 years of software engineering theory.
 

Diconica

Well-Known Member
Apr 25, 2020
1,092
1,138
Renpy and RPGM both attract a lot of new developers who have little to no programming experience.
RPGM has more addons that people can simply download and install to get access to features they want.

There is another large factor here. The underlying engine when it comes to Renpy games is Renpy.
When it comes to RPGM its effectively the web browser system which is vastly better built.
The HTML engine shipped with RPGM games is still based off one of the bigger main engines out there. I haven't looked which it is.
In that regard RPGM has a true multitasking system not just processes. Renpy is limited by the python language its built on.

A lot of programmers create large number of nested conditionals when building game in Renpy. The reason is the basic scripting system encourages it when they are learning.

If a group of people created a system more tuned for performance regarding character building and trait systems and provided a tutorial on how to use it that might help prevent some of this. However, you couldn't just simply build something of that nature without also creating replacement to the save and load system because it wouldn't likely be compatible with the current one without a good bit of work.

Frankly one of the biggest issues with Renpy is in how the back works. It stores multiple states to go back to. They should just be built into the scene as to what variable were effected in what way and thus simply undo them based on reversing the path.
That way there would be ZERO need to store a state for each scene you would only need to store the current state and it could be worked out backwards if you need a back button.
 
  • Like
Reactions: fot

hgameartman

Active Member
Game Developer
Dec 31, 2019
640
841
Having too much experience for your engine can also cause problems.
I'm a software developer, and decided "I can totally force RPGMaker MV into making a sandbox lifesim Action-RPG"

I did it, sure, but the cost is that now I'm re-writing 500 lines of nightmare "code" that's really half-javascript half-eventing that forms the backbone of my game's system that organizes, saves, and loads classes you attend to learn new spells and abilities for combat.

And after that? I get to re-write how my game assigns skills to hotkeys to fix several bugs and make it more user-friendly!

Complexity breeds errors and bugs, and I now have a year and 6 months of layering system after system that needs to be untangled, debugged, and fixed....

And all of this takes time to do! And the last thing players want to see in patchnotes for a new version is "Fixed 105325 bugs, nothing new added" so sometimes you gotta balance bugfixes (strike the biggest offenders first, then make progress on the long-term stuff) and also adding new, exciting stuff! (Like new dungeons or AI types or fun new H-Scenes!)
 
  • Like
Reactions: KMN

Callowayaway

Newbie
Dec 9, 2019
97
143
Isn't ren'py that software made specifically so that people who want to write low-tier trash where their only competition is Rance and Bible Black?