As far as a "general" tutorial... erm... yes, I guess.
There are youtube tutorials like:
You must be registered to see the links
... that are very good as an introduction.
The
You must be registered to see the links
is both a blessing and a curse.
It has the standard problem of documentation written by people who already fully understand a system - it assumes a certain level of knowledge already... It is primarily a technical reference manual, which makes it often
too detailed and difficult to follow for someone just starting out.
That said... the
You must be registered to see the links
section is very good and I would personally start with
You must be registered to see the links
.
Beyond that, the RenPy launcher comes with two example projects "Tutorial" and "The Question". "The Question" is a good starting point for looking at code, it's relatively simple and easy to follow. Sadly "Tutorial" is less newbie friendly - as it is designed to be played rather than have you looking at it's own code. It covers a lot of topics and is very good, just not when you look under the hood.
There's also what most of us end up doing. Find a simple game (no inventory system, no open world, nothing too clever)... and look at the code used to write it. If it's too complex to follow... forget it... and pick another game. Rinse and repeat until you either can understand the common themes of how it's written, or at least have picked up enough that you can start to look at the RenPy documentation. Just keep in mind that there are a lot of badly written games out there, where someone who barely knew what they were doing 5 or 6 years ago wrote something that has been cut and paste a hundred times since into other games. That said... if it works... then that's good enough.
The trick to looking at code is to know that the source scripts are stored in simple
.rpy
text files. These are then processed by RenPy to create a "compiled" version of the code stored in
.rpyc
files. These are what RenPy uses when you run a game
(never, ever delete these once you've started writing a game). However, when a game is shipped by a developer... they often compress the game into a RenPy Archive file (
.rpa
). There is a tool called
UnRen (Currently... use the dev version 0.9, as the 0.8 won't unpack some recent games). UnRen will unpack the
.rpa
files. If the game only shipped
.rpyc
files without the
.rpy
code, UnRen also has an option to recreate the omitted
.rpy
files too.
Finally, these
programming and
dev forums have been answering questions for years on all sorts of topics. It's always worth searching them for specific keywords when you run into trouble. It'll be a lot to wade through... but chances are, someone's already asked the question you're thinking of.