Ren'Py Looking for renpy games with high quality codes

studiololipop

New Member
Jun 12, 2017
14
8
I am learning renpy by studying the codes of various games and I would really like some recommendation if you have seen games with high quality codes.Thank you!
 

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Donor
Respected User
Jun 10, 2017
10,957
16,188
Nope, didn't find any yet :D
If you find some, let me know :)
What about or ? :D Their code isn't bad, even if the quest log of the second one don't take good use of the inheritance (sorry).

More seriously, Ren'py games with really high quality code are exceptional, but there's some who have code above the average for indy games. It's the case for or . But the problem I have, even with these two, is that the quality isn't equal. There's part that are well wrote, and some pretty innovation, but there's also parts that give me nightmares.
 
  • Like
Reactions: Palanto

Palanto

Active Member
Game Developer
Oct 4, 2017
964
1,841
What about or ? :D Their code isn't bad, even if the quest log of the second one don't take good use of the inheritance (sorry).
Hahaha :D True, but the questlog was just copied from the lemmasoft cookbook and slightly edited to make it work for veqs purposes ;)
 
  • Like
Reactions: anne O'nymous

studiololipop

New Member
Jun 12, 2017
14
8
What about or ? :D Their code isn't bad, even if the quest log of the second one don't take good use of the inheritance (sorry).

More seriously, Ren'py games with really high quality code are exceptional, but there's some who have code above the average for indy games. It's the case for or . But the problem I have, even with these two, is that the quality isn't equal. There's part that are well wrote, and some pretty innovation, but there's also parts that give me nightmares.
Thanks!Will look into them!
 

Palanto

Active Member
Game Developer
Oct 4, 2017
964
1,841
Well, it really depends on what you're looking for, what features are you looking for and so on... just "learning" renpy through others code without a target or something you want to accomplish seems pretty useless to me :D
 

f95zoneuser463

Member
Game Developer
Aug 14, 2017
219
1,024
Best I've seen so far is Summertime Saga. But I don't use any of it since I don't have any permission. I'd always ask first to avoid trouble. The state machine, the strict naming-scheme and how everything is organized impressed me the most. Hmm now that I think about it I should probably ask them about using some of their code.
 
  • Like
Reactions: Palanto

Palanto

Active Member
Game Developer
Oct 4, 2017
964
1,841
Best I've seen so far is Summertime Saga. But I don't use any of it since I don't have any permission. I'd always ask first to avoid trouble. The state machine, the strict naming-scheme and how everything is organized impressed me the most. Hmm now that I think about it I should probably ask them about using some of their code.
actually never checked sommertime saga.... hmmm gotta look into it :D I heard they pretty much squeezed everything possible out of renpy and are hitting the limit of the engine.... might be some good educational stuff in there :D
 
  • Like
Reactions: Penfold Mole

Finsit

Harder Better Faster Cheater
Game Developer
Jun 2, 2017
1,167
1,401
@Palanto Games : Hitting the limits of Ren'Py is kinda easy really. Too easy in fact.

You can also check Vren's games, maybe more Lab Rats 2 since I would guess he started fresh with a clean slate. I think Lab Rat suffers from the delta of knowledge from the start of the project to the end, that is what it's occurring on mine, I learned doing it so my first pieces of code are obsolete mere months after starting.

But I would argue that "high quality" in Ren'Py is not to making nice Python that do stuff but using the Ren'Py engine while doing so.
That is why I would not be that positive about the quality of Superpowered. At one point a Ren'Py game not using Ren'Py is merely a Pygame game.
And making Ren'Py core features works with custom stuff is the hard part.
Summertime Saga suffers from the same issue, that is why they deactivated some features from Ren'Py.

To be clear I'm not talking about the formatting or structure, only implementation of custom systems.
 
  • Like
Reactions: Palanto

TearStar

Developer of Lesbian/Futa Games
Game Developer
Mar 12, 2018
514
1,089
The question is: What exactly you are looking for?

Python is not a low-level programming language where you need to use pointers, references and memory-management (Garbage Collector). I used the that same low-effort IF ELSE... JUMP LABEL... etc. syntax everywhere, still worked. Also inventory management is very easy. There are classes, lists, arrays etc. where you can manage a better code.

If you know some basic programming you will do just fine. Also quality code comes with routine. You will always find an easier way to a problem what you previously tried to fix in hours.
 
  • Like
Reactions: Palanto

Finsit

Harder Better Faster Cheater
Game Developer
Jun 2, 2017
1,167
1,401
Anyway, for me the highest level on Ren'Py would be using most of its features while still using Python and make it work somehow.

Because of Ren'Py's lack of valuable documentation, and total lack of for most advanced features, it clearly takes a master of it to do that.

But on a more accessible level, custom statements are already kinda cool. It's more of less documented and if you are working with a creative snowflake (like I do on Deviant Discoveries) it can allow you to add custom features while making them accessible to your less code-inclined mates.


But the most valuable tip one can give to a beginner coder on Ren'Py is : Use "renpy.store.object()" when you create a new object in which you add attribute on the fly and initialize it after the start of the game. That way you will use an object the store know how to deal with and it will work during rollback and saves and all that predictive execution Ren'Py uses.

And kudos to Vren for that post on Patreon :
 
  • Like
Reactions: Palanto

TearStar

Developer of Lesbian/Futa Games
Game Developer
Mar 12, 2018
514
1,089
I posted some of this before but I think it's here to take that again.

For some real advanced stuff: Use Unity.
Anything else: Ren'Py.

Real-time rendered stuff like WoW or Mass Effect or any other AAA game requires a 3D game engine. But I would still find another solution to it in Ren'Py when it comes VN stuff. VN-Stuff can be fun and interactive too. Yeah maybe not that free roam and explore. Much easier than unity though.
 
  • Like
Reactions: Palanto

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Donor
Respected User
Jun 10, 2017
10,957
16,188
But I would argue that "high quality" in Ren'Py is not to making nice Python that do stuff but using the Ren'Py engine while doing so.
It can have changed, but last time I took a look at the code, it's the use of Ren'py language which pleased me, not the Python code (which is far to be good).
This said, for me "high quality" in Ren'py is not the use of the strict Ren'py language, neither the use of a nice Python stuff, but the use of the Ren'py capabilities ; especially but not only, its capablity to extend its own language. You create your core with a (mandatory) lot of Python, then almost not use a single "python" or "$" in the code of the game itself.
This is high quality in Ren'py, and I'm still searching a game which do it. If you except the few games which use my dynamic string patching feature, there's only one game here which use this ( ). But I personally see it as a trashy code since they copy/pasted codes from Ren'py core instead of importing it or, way better, using the Ren'py functions dedicated to what they did. Which fallback to what you implied. Their coder is not bad as Python (neither good else), but know nothing about Ren'py, so it can't be seen as "high quality Ren'py code".
 
  • Like
Reactions: Palanto