Ren'Py Taking brave new steps and learning how to use Ren'py

Would you prefer this game to have a completely linear approach or have full choice and consequences

  • I Do Not Care

    Votes: 0 0.0%
  • *Ron Perlman voice* War, War never changes.

    Votes: 0 0.0%

  • Total voters
    7
Jun 29, 2017
111
84
Hey there, Thanks for stopping by this thread. So short version is I want to develop a fallout style of game using Ren'Py but im still learning the basics and breaking stuff alot at the moment lol. Any help would be greatly appriciated. See below things i want to figure out how to do. If my wording makes no sense below then feel free to post and ask me to clarify.

You don't have permission to view the spoiler content. Log in or register now.

Thanks in advance for you're time ^^
 
  • Like
Reactions: osanaiko

Winterfire

Conversation Conqueror
Respected User
Game Developer
Sep 27, 2018
6,178
8,914
How to add Variables the engine can track throughout the game such as a trust value that gets assigned and saved for each character that is met by our protag
The easiest way is to have a .rpy (such as customvariables.rpy) and drop there all the variables you need.

default timmyTrust = 0

You can access it at anytime to either increase/decrease it, and check what's the current value whenever you need during the game.

You can increase it by doing:
$timmyTrust += 1

You can decrease it by doing:
$timmyTrust -= 1

You can check it by doing:
if timmyTrust == 1:
#Execute if it's equal to 1

if timmyTrust >= 1:
#Execute if it's equal or more than 1

if timmyTrust >= 1 and timmyTrust < 10:
#Execute if it's between 1 and 9
else
#Execute if it's any other value

It's too much to make a full description of this, but if you're interested, it's called "Conditional branching":



How to create a clickable map interface
You need to use imagebuttons and make the map to be a modular asset (so backround in a layer, clickable park in another layer, clickable house in another layer, and then assemble all of that in-engine by using a mix of images (for not clickable) and imagebuttons (for clickables):

Here's a random youtube video showingcase this:



How to have a dynamic system that uses the trust stat to change the protag / protags name in conversations
Conditional statement (as listed above) but if you need to do it often, it's better to create a function and execute it when needed (rather than copy/pasting a block everytime, which you shouldn't do):



How to add a hidden menu you can use to augment / change reactions of people after you pick an option like flirting. I got that idea from Dating My Best Friends Daughter
I am sorry but I have no idea what you're talking about, you'll have to be more specific. If it's hidden, how do I use it? You mean like having a menu that's always accessible, like a phone?
In that case, you simply have an imagebutton of the phone, and learn the difference between show screen and call screen, they behave differently and you'll need to be using both:

 
Jun 29, 2017
111
84
Thanks for the response and the information so far. I didnt think to have the variabls be a seperate rpy.

Unfortunately i do have work today so I wont be able to give a full reply but i did word the hidden menu thing incorrectly. will give full reply tomorrow if im not able to today.

Its not really a hidden menu more like an overide you can use to influence a character reaction to something. In the project i mentioned in my post there is a sound that plays then your able to click a face sprite in the top left to perform said override. its kinda like a small cheat in the way it works.
 
Jun 29, 2017
111
84
The easiest way is to have a .rpy (such as customvariables.rpy) and drop there all the variables you need.

default timmyTrust = 0

You can access it at anytime to either increase/decrease it, and check what's the current value whenever you need during the game.

You can increase it by doing:
$timmyTrust += 1

You can decrease it by doing:
$timmyTrust -= 1

You can check it by doing:
if timmyTrust == 1:
#Execute if it's equal to 1

if timmyTrust >= 1:
#Execute if it's equal or more than 1

if timmyTrust >= 1 and timmyTrust < 10:
#Execute if it's between 1 and 9
else
#Execute if it's any other value

It's too much to make a full description of this, but if you're interested, it's called "Conditional branching":




You need to use imagebuttons and make the map to be a modular asset (so backround in a layer, clickable park in another layer, clickable house in another layer, and then assemble all of that in-engine by using a mix of images (for not clickable) and imagebuttons (for clickables):

Here's a random youtube video showingcase this:




Conditional statement (as listed above) but if you need to do it often, it's better to create a function and execute it when needed (rather than copy/pasting a block everytime, which you shouldn't do):




I am sorry but I have no idea what you're talking about, you'll have to be more specific. If it's hidden, how do I use it? You mean like having a menu that's always accessible, like a phone?
In that case, you simply have an imagebutton of the phone, and learn the difference between show screen and call screen, they behave differently and you'll need to be using both:

First of all thank you very much for your input. When I said I was learning I do mean I only started taking a real interest in developing something around a week ago, at the moment I've been taking notes as I learn stuff and I make each feature I figure out its own separate script rpy file so that if I forget how to do something from scratch I can refer back to my own documentation and then when it likely breaks use the actual Ren'py documentation lol.

Super helpful of you to provide links and sources in your response. I'll make sure to avoid doing copy/paste jobs with the conditional statements. Appreciate that you used a couple examples with "Timmy"

Could I directly ask for your help in future if I get stuck in future, I promise it won't be simple things, I have a bad habit of dreaming big then achieving those dreams in inefficient ways which for Game Dev / Design is not great I'd imagine
 

Winterfire

Conversation Conqueror
Respected User
Game Developer
Sep 27, 2018
6,178
8,914
First of all thank you very much for your input. When I said I was learning I do mean I only started taking a real interest in developing something around a week ago, at the moment I've been taking notes as I learn stuff and I make each feature I figure out its own separate script rpy file so that if I forget how to do something from scratch I can refer back to my own documentation and then when it likely breaks use the actual Ren'py documentation lol.

Super helpful of you to provide links and sources in your response. I'll make sure to avoid doing copy/paste jobs with the conditional statements. Appreciate that you used a couple examples with "Timmy"

Could I directly ask for your help in future if I get stuck in future, I promise it won't be simple things, I have a bad habit of dreaming big then achieving those dreams in inefficient ways which for Game Dev / Design is not great I'd imagine
Sure, although in general it's better if you make a thread so you can get multiple points of view. Never rely on a single source (Including a single book to learn a topic, single youtuber, etc.)
 
  • Heart
Reactions: Flaming Worlds