Ren'Py Tutorial How-To have a dynamic story that react to player choices.

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Respected User
Donor
Jun 10, 2017
10,131
14,812
Appreciate your efforts on this very much, AON (yourself and many others throughout these Forums, in fact).
And, as strange as it can seem, I appreciate you saying it ; I believe that I also speak in name of the "many others".
We sometimes pass hours on our answer, to be sure that it's the right one, that we haven't be lured by our tired mind, and all. So, yes, seeing time to time that it's appreciate is really pleasing, thanks.


So that’s where we tend to end, right?

“Let’s not leave the cave. There’s way to much out there to deal with.”
Yeah, totally. For the actually version of the game I'm slowly working on, I've tons of drawing representing the different locations as I have them in mind... And know that most of them will be finally different. Because of many reasons, but mostly because it would be too much works for "this" to happen "there", or to happen "that way".
You talked about enjoyment, and it's what should prime over the idea you have of your game. Even if this mean having less dynamism because it would be too difficult to handle the many variations.

It can feel "stupid" to put the enjoyment you get will working on the game before the game itself. One can feel that he can deal with the burden, thinking that the further it go on the quality side, the more his game will have support, and so the more money he'll earn. Perhaps it's true, but the problem isn't here.
No, the problem is that the less you enjoy working on your game, the less it will be a quality game. You'll pass less time trying to build the more fitting scene, less time trying to find the best dialog line, and you'll not make fun in your game, because you don't have fun yourself. And obviously, all this will have an impact on the feeling people will get while playing your game.

If you goes to far on the dynamism, you'll end writing the most generic possible scenes. Just to avoid the tons of "if this, do that, but if that, do this" you can't stand anymore. And this also apply to the visual parts ; "oh yeah, I know, I let you choose the swimsuit they'll wear, and you saw them on the first beach scene. But you do you understand how many variation if mean when you've six girls that all have 10 different swimwear ? Out of question that I do this again !"


At which point, we make a more informed… drum roll please… Choice ; )
:D
 

46n2

Member
Jun 29, 2021
379
1,079
You betcha.

It would be good if the free-sphere were a bit less grabby these days and might think to afford just a few more unsolicited Thank You’s. No doubt about that ; )

the problem is that the less you enjoy working on your game, the less it will be a quality game. You'll pass less time trying to build the more fitting scene, less time trying to find the best dialog line, and you'll not make fun in your game, because you don't have fun yourself. And obviously, all this will have an impact on the feeling people will get while playing your game.
Once again. No doubt about that.

I'll know that going in. It wouldn't be about any money to gain to begin with anyhow. Just for shits and giggles. The enjoyment of learning the process, planting a seed, nurturing it into something more; I get off on that (Writer and Musician here). And if I enjoy that enough, then maybe I would have to consider the sustainability of it going forward and how to best feed or (fuel) that.

Money would not be the motivation. At neither the beginning nor end. I'm just a hopeless perv who might like the idea of throwing some impossibly provocative tits and dicks around for others to enjoy - in a bit more engaging manner than general Erotica can allow for. Enhance my own engine, perhaps.

If you goes to far on the dynamism, you'll end writing the most generic possible scenes. Just to avoid the tons of "if this, do that, but if that, do this" you can't stand anymore. And this also apply to the visual parts ; "oh yeah, I know, I let you choose the swimsuit they'll wear, and you saw them on the first beach scene. But you do you understand how many variation if mean when you've six girls that all have 10 different swimwear ? Out of question that I do this again !"
Yup. Copy that (meaning, understood).

I noted a section you included on that within the post. Real good advice there.

I wouldn't go too far beyond the testing phase and architecture, before throwing some (at least placeholder) images in there to identify what I'm setting myself up for.

Baby steps before leaps ; )

Thanks again.
 
Last edited:

46n2

Member
Jun 29, 2021
379
1,079
I went ahead and download Renpy; toyed with it to test how complicated all that coding might be.

Turns out it’s Not. A lot less raw, and a lot more intuitive than I had anticipated.

Just to illustrate that point. I threw this early draft together in a couple days time:

at MEGA:



From scratch. Read the initial tutorials (interactive and smartly done, btw). And went about testing my own approach, using some random materials on hand. This is not intended to be a unique release of my own in any way, since I did not create any of the images myself. Just threw them in there for cheat-sheet usage while testing demands of the system and how difficult it might be to create or implement choices in a manner I might wanna own down the road.

Not all that confusing. And I did test a fair amount of things that could be. Ran into a road block here and there but once I identified the issue - they were all the sort of thing that you only need learn one-time; from there it’s generally just human error or outright mistakes.

I could (or would if I were to wanna release this as anything) make another pass in the script.rpy to clean up the coding and make it more readily accessible for future edit options. But since it’s functional and not too absurd, I’ve left all the hidden shit as is. Could also do another pass on the texting itself and maybe certify some parameters as organic and fluid - but it’s functional enough for my testing purposes, as is.

Took me 2 days to throw this together, including the time it took to digest and test the entry tutorials. Another day to pilfer through some things and clean it up just a little. I would imagine that might be plenty encouraging for any others out there who might have the same itch I had?

It’s not overwhelming at all. Give it a go!!


-And thanks again to those of you here who take the time to encourage other neophytes out there in the ways of How to Perv on RenPy. Much appreciated ; )

Enjoy your weekend!!
 
Last edited:

Night Hacker

Forum Fanatic
Jul 3, 2021
4,341
21,413
I love refresher courses! Thanks for taking the time to write this and I hope your knees get well soon!
I've gotta implement scene expression in my code. Your example made that very clear to me.

This is a must-read for anyone starting out.
However, it doesn't matter what stage the developer is at, I can 100% guarantee they have no idea what the word "semaphore" means. (It doesn't mean you're half-way through your second year in college)
When adding or subtracting values from a variable, the following code is useful to keep the values within certain limits without needing extra lines of code to check.

Ensuring a value is not subtracted lower than zero, max() will return the highest value, which would be zero if the value drops below zero.
Python:
# Subtracting a value from player_health without going below 0...
$ player_health = max(player_health - damage, 0)
You can also ensure the value doesn't go higher than a specific range; min() in this case returns the lowest number so if player_health is higher than 100, it will return 100 which will cap the maximum you can have at 100.
Python:
# Adding a value to player_health without going over 100...
$ player_health = min(player_health + boost, 100)
Another thing that bugs me in many RenPY games that ask for your character name are blank entries when there is a default name, but it doesn't tell you what the default name will be if you just press ENTER. The following code fixes that and it is much shorter code for entering a name and ensuring it isn't blank with no IF checks required.
Python:
$ name = renpy.input("What's your name?", "Mark", length=10) #displays "Mark" as default and limits name length to 10
$ name = name.strip() or "Mark" #strips spaces out of name and if there are no characters, blank name, it uses "Mark".
 
  • Love
  • Like
Reactions: sakosux and Lou111

Night Hacker

Forum Fanatic
Jul 3, 2021
4,341
21,413
I figured it out, if anyone wants to know it is this.

put this as your choice
Code:
    menu:
        v "Please Chose If You Want To Be Bisexual In The Game, This Means You Will Have Regular Sex Plus Gay Sex And With DickGirls. If You Chose No, Then You Will Only Have Male On Female Sex."
        "Yes, I want Bisex, Gay sex, DickGirl sex":
            $ BisexRout="Yes"
            v "[BisexRout]"
        "No, I only want Male on Female sex":
            $ BisexRout="No"
            v "[BisexRout]"
then when you want the option in your game to show bisex content you put
Code:
if BisexRout=="yes":
    youi "Oh, look, im bisexual."
if BisexRout=="no":
    youi "Oh, look, im not bisexual."
You could also use
Python:
"Yes, I want Bisex, Gay sex, DickGirl sex":
    $ BisexRout=True
    v "Enabled."
"No, I only want Male on Female sex":
    $ BisexRout=False
    v "Disabled."
Then later in your code you would have:
Python:
if BisexRout:
    #do stuff here for BisexRout
else:
    #do stuff here if BisexRout was disabled
This just feels cleaner to me. If BisexRout is True, than "if BisexRout:" will always execute, otherwise the "else:" condition will. You're basically using a boolean, which is ideal for simple switches like this.
 
  • Like
Reactions: Lou111

sakosux

Newbie
Oct 1, 2019
57
52
Thanks for this great post anne O'nymous. I took a 6-month break from using python and renpy (COVID sucks) so this was a great refresher on how things work. I also just wanted to add that I found it's easier (for me) to create a class that has a love change function so it makes reading what a menu does easier. It's not perfect and I will look into incorporating what Night Hacker suggested.
Example:

Python:
def love_ch(self, change):
    self.love += change
    if self.rel > 100:
        self.rel = 100
       
    if self.rel < -100:
        self.rel = -100
       
    renpy.notify(str(self.c) + " will remember that")
    renpy.pause(1)
Which can be easily called as such:
Python:
 menu:
     "You look great.":
         $ girl.love_ch(20)
 
  • Like
Reactions: Night Hacker

coffeeaddicted

Well-Known Member
Apr 13, 2021
1,734
1,420
This seems really helpful and useful.
So i am writing (like many before me) a freaking novella. So far i did it as a kinetic novella. Its the easiest one can do with little knowledge of RenPy.
Though i am thinking of implementing somehow choices, but choices that matter. I really hate choices in games they aren't choices.
So i will make use of this guide and see how it looks like.
 
  • Like
Reactions: Night Hacker

coffeeaddicted

Well-Known Member
Apr 13, 2021
1,734
1,420
While Kinetic Novels are good, if you want to really interest your players, you need to involve them, at least a little, into your story. And the only way to achieve this is to offer them choice that really change the story.

There's nothing more uninteresting, than a game that don't care of your choices. The author offer you the possibility to spy at a girl while she shower, and being a nice guy (it's the first choice of the game), you decide to not do it. You're then sent to the breakfast scene, where you've the surprise to see the girl angry, because she know you spied on her...
Don't look at me, it's a real example that come from a real game available here. And it's far to be the only game like that, alas. You're presented some choice, but if you don't pick the right one, you'll be facing a story that make no sense.
It doesn't matter if the changes implied by your decision are small or big, as long as they exist and are shown in your game. If the player decide to not do something, then the characters should not react as if he did it. It's the basis, and we (players) shouldn't have to say it.

1) Keep track of the choices made by the player.

2) Change the game flow accordingly to the choices made by the player.

3) Offer choice in accord with the choices previously made by the player.

4) Tweak the scene depending of the choices made by the player.

5) Tweak the visual part depending of the choices made by the player.

5) Conclusion.


By just following this How-To, you would already be able to offer a story that will stick more closely to the player choices, and this is something that your players will appreciate. But, as I said, this is a basic introduction. Ren'Py being an engine that offer many opportunities, there's way more than can be done, and everything I presented here can be done with even more dynamism. Therefore, don't hesitate to tweak the solution I presented here, and to test on your own.
Thanks is the first i can say.
As someone who has very, very limited experience with programming at all, this is useful.

Though my problem start here.
Originally i planned just a kinetic novel where you just follow and see what happens.
Another problem is, as this story is about someone from the east ending up with a pimp and yadayada...

There are some parts where i can see the option for an escape, help or just buying simply a drink.
She will earn money, so i need to keep track of that and offer options what to do with it. Since she is limited in what she can do, just by the nature of the story, i am not sure how i can engage the player to lock the player in.

As this is about prostitution and the ugly kind of that, there could be choices of yes and no, but the consequences would be bad for her.

I had played some games before and i did see a lot of times that you had a choice like "wrong choice, game over". This seems stupid. So you have to make some other renders that either bridge the path to some other part but still connect to the main premise.

I have to see how i can implement this in my game. So far, i just follow the kinetic path which makes the game itself much more quicker to be over.
So some choice would certainly enhance this problem. Not for the sake of choice but to make it more interesting and meaningful.

Bottomline to me is, that for my purposes it would be about money tracking (purchases) and consequences which is not that bad.
 

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Respected User
Donor
Jun 10, 2017
10,131
14,812
I have to see how i can implement this in my game. So far, i just follow the kinetic path which makes the game itself much more quicker to be over.
So some choice would certainly enhance this problem. Not for the sake of choice but to make it more interesting and meaningful.

Bottomline to me is, that for my purposes it would be about money tracking (purchases) and consequences which is not that bad.
You can have a variable representing her relation with her pimp ; something like -20 (really bad) to 20 (really good). Both limits being obviously relative, she'll not become her pimp best friend if she have a really good relation with him, he'll just be less rude with her. This while the "really bad" can mean a game over ; I'm not totally fan of them, but sometimes when the player really decide to mess with the game for too long, it's deserved.
Then, this relation evolve depending of what the girl will do with her money. If she buy alluring clothes, she'll attract richer clients, something that her pimp should like. If she spend it more selfishly, she'll probably have less time to works, something that her pimp will surely not like.

From there, you've more or less an infinity of possibilities.
I don't know if it can fit your story, but by example she can sit at a luxury hotel bar, trying to catch some clients. Depending of the money she have, she can afford more or less sophisticated drinks. Her drinking win will attract lowly clients (drop of the relation with her pimp), but if she can afford (and choose) champagne, jackpot she'll surely catch the richer guy in the hotel (raise of the relation with her pimp). In the same time you can let the player decide if she chain the drinks (risk that she end drunk and not works that day), or take her time to drink.

In the end, the players choices tweak the story, without really letting you loose control over it. She's still stuck with her life and can't escape it, but through their choices, players will decide how easy, or hard, this life will be for her.
 

coffeeaddicted

Well-Known Member
Apr 13, 2021
1,734
1,420
You can have a variable representing her relation with her pimp ; something like -20 (really bad) to 20 (really good). Both limits being obviously relative, she'll not become her pimp best friend if she have a really good relation with him, he'll just be less rude with her. This while the "really bad" can mean a game over ; I'm not totally fan of them, but sometimes when the player really decide to mess with the game for too long, it's deserved.
Then, this relation evolve depending of what the girl will do with her money. If she buy alluring clothes, she'll attract richer clients, something that her pimp should like. If she spend it more selfishly, she'll probably have less time to works, something that her pimp will surely not like.

From there, you've more or less an infinity of possibilities.
I don't know if it can fit your story, but by example she can sit at a luxury hotel bar, trying to catch some clients. Depending of the money she have, she can afford more or less sophisticated drinks. Her drinking win will attract lowly clients (drop of the relation with her pimp), but if she can afford (and choose) champagne, jackpot she'll surely catch the richer guy in the hotel (raise of the relation with her pimp). In the same time you can let the player decide if she chain the drinks (risk that she end drunk and not works that day), or take her time to drink.

In the end, the players choices tweak the story, without really letting you loose control over it. She's still stuck with her life and can't escape it, but through their choices, players will decide how easy, or hard, this life will be for her.
That sounds really great.
Though my pimp is really bad. So far i had him supply clothing and things. Plus there is a transformation (no choice).
Its really about abuse and i can see for her seeking help where ever possible.
Though corruption should play a role and the more mundane choices like do i get drunk or get some drugs because i can't take it anymore.
So there is a lot of things that can go on where the player is kind of in control.

Now, the question is how to implement all that.
I will try to follow you really great instruction and i hope i can do it. This would be really nice for the game but also for the experience the player can have.

So before even thinking of a preview on this website, i will have to dig in to code that in. RenPy is nice and i still have my Python for Dummies.
I can't say how much time i already wasted just to render and have a basic structure in RenPy but it's an interesting journey. Not sure if it's worth it. For me, yes.
Thanks again
 

coffeeaddicted

Well-Known Member
Apr 13, 2021
1,734
1,420
You can have a variable representing her relation with her pimp ; something like -20 (really bad) to 20 (really good). Both limits being obviously relative, she'll not become her pimp best friend if she have a really good relation with him, he'll just be less rude with her. This while the "really bad" can mean a game over ; I'm not totally fan of them, but sometimes when the player really decide to mess with the game for too long, it's deserved.
Then, this relation evolve depending of what the girl will do with her money. If she buy alluring clothes, she'll attract richer clients, something that her pimp should like. If she spend it more selfishly, she'll probably have less time to works, something that her pimp will surely not like.

From there, you've more or less an infinity of possibilities.
I don't know if it can fit your story, but by example she can sit at a luxury hotel bar, trying to catch some clients. Depending of the money she have, she can afford more or less sophisticated drinks. Her drinking win will attract lowly clients (drop of the relation with her pimp), but if she can afford (and choose) champagne, jackpot she'll surely catch the richer guy in the hotel (raise of the relation with her pimp). In the same time you can let the player decide if she chain the drinks (risk that she end drunk and not works that day), or take her time to drink.

In the end, the players choices tweak the story, without really letting you loose control over it. She's still stuck with her life and can't escape it, but through their choices, players will decide how easy, or hard, this life will be for her.
The code seems to work fine.
What i need to do is to make some renders with different expressions.
Though one problem i see for me is the fact that the way i made the game, the player will have a choice but it doesn't matter since he can't accumulate enough points in the beginning.
That may not be a bad thing. I went with 5 points to have a real choice.

So the code really helped me to make that happen. Which is really nice. I think i don't want to have to many choices in the game and one thing that always kind of scarred me was that you need to have a side path. For instance that MC chose between path a and b. Both lead to something different. This in itself can result in much more work so i have to stick to expressions and reactions instead.

I do like to implement the money arc. This seems fitting as to choices she will have. I have to research on that.

Thanks again for your input and help. I wouldn't know how to have done it without.
 

toolkitxx

Well-Known Member
Modder
Donor
Game Developer
May 3, 2017
1,471
1,786
That sounds really great.
Though my pimp is really bad. So far i had him supply clothing and things. Plus there is a transformation (no choice).
That bit caught my eye actually because you earlier wrote that 'game over' decisions are stupid. Forced transformation is pretty much the same as it is a game over for any player not interested in that part. Make sure to advertise that up-front else you basically created a different kind of 'game-over' scenario for many players ;)
 
  • Like
Reactions: coffeeaddicted

coffeeaddicted

Well-Known Member
Apr 13, 2021
1,734
1,420
That bit caught my eye actually because you earlier wrote that 'game over' decisions are stupid. Forced transformation is pretty much the same as it is a game over for any player not interested in that part. Make sure to advertise that up-front else you basically created a different kind of 'game-over' scenario for many players ;)
That is correct.

Yes, this will be in the tags. Everything that "is" in the game will be tagged. Not sure about future tags as i kind of have a setup of the story and don't want to expand it. This will be my first game and possibly only one. As i am older, it takes so much energy to craft that with my lag of knowledge. But i want to realize it and eventually bring it over the finish line.

I know, not everyone likes transformation but for a play i think its great. Nevertheless that lots of women and men do themselves one or more enhancements. And it's not really a bimbofication either.
For the game it's more or less a form of cruel intention. It's not something she wants but her now pimp enforces. Not sure if that should be a choice.

But returning to your point. Absolutely. Anything else would be unfair to everyone.

It's still to early for a release of any kind but we are getting there. Eventually.
 

toolkitxx

Well-Known Member
Modder
Donor
Game Developer
May 3, 2017
1,471
1,786
That is correct.

Yes, this will be in the tags. Everything that "is" in the game will be tagged. Not sure about future tags as i kind of have a setup of the story and don't want to expand it. This will be my first game and possibly only one. As i am older, it takes so much energy to craft that with my lag of knowledge. But i want to realize it and eventually bring it over the finish line.

I know, not everyone likes transformation but for a play i think its great. Nevertheless that lots of women and men do themselves one or more enhancements. And it's not really a bimbofication either.
For the game it's more or less a form of cruel intention. It's not something she wants but her now pimp enforces. Not sure if that should be a choice.

But returning to your point. Absolutely. Anything else would be unfair to everyone.

It's still to early for a release of any kind but we are getting there. Eventually.
I actually didnt mean right in the tags as that might give too much away from the story - surprises are what some players really love. But since this thread is about choices I rather pointed to this as a choice that requires some kind of advertising in-game. Up to that point people that dont like forced transformation might still like your game but could be let off the hook by some form of alternative path with a smooth ending (botched boob job etc comes to mind here). Basically a game over but in story form.

Your game is much more a novel than a game by definition so far. So having 'endings' is natural while a game over is much more something that belongs to an actual game with game mechanics and a certain goal to achieve. Failing to reach certain steps of that goal and having a game-over is what pretty much belongs to a game. While endings are part of a novel style which is what you described so far. Visualizing certain choices that have far reaching consequences (like ending the entire story) is just good game design.
 

coffeeaddicted

Well-Known Member
Apr 13, 2021
1,734
1,420
I actually didnt mean right in the tags as that might give too much away from the story - surprises are what some players really love. But since this thread is about choices I rather pointed to this as a choice that requires some kind of advertising in-game. Up to that point people that dont like forced transformation might still like your game but could be let off the hook by some form of alternative path with a smooth ending (botched boob job etc comes to mind here). Basically a game over but in story form.

Your game is much more a novel than a game by definition so far. So having 'endings' is natural while a game over is much more something that belongs to an actual game with game mechanics and a certain goal to achieve. Failing to reach certain steps of that goal and having a game-over is what pretty much belongs to a game. While endings are part of a novel style which is what you described so far. Visualizing certain choices that have far reaching consequences (like ending the entire story) is just good game design.
Ok, i get it now.

Mm.. there are possibilities in that regard. Though i have a sex scene at the clinic that eventually will have the transformation, there is room to make a different path happen.:geek:
It may not be the outcome i prefer but for game design this is possible. Though i have to think of some arc that will serve for both situations.

I have to admit, that writing a game or VN is not that easy. I just see it every day when i render scenes. To my mind, a VN with slides should be able to tell the story even without dialog just by whats happening in the picture.

As for game, i think i am ok with giving limited choices as anything beyond may be more than i can deliver. It takes some knowledge to make a game happen that has many alternative paths for the player.
Though the games i played, even though there weren't harem for example, still made me always go after every girl in the game which i found kind of lame.

In a sense my game will offer on a basic level a choice of agreeing or denying. Either or which will not enable you to pursue a different path but of what kind of person you (the MC) will be and where you eventually end up.
Plus some money system that gives you additional options good or bad.

I think this is manageable and makes the VN more interesting. In the beginning i thought, ok kinetic is the way to go. It is, but i think it leads to a more static flow which can also pretty quick towards the end.
Not to mention that i started 3 times and tossed everything because it didn't made sense. Only for self pleasure perhaps.

So the 4th it is and it looks good in my view. Though i can bramble a lot since it subjective.
I really have to stress that transformation isn't something weird but slight enhancements to the body. It ain't the bimbo of the internet but i'll get it that some people fall in love with the MC and don't want to have him/her changed as this has a shrinking effect on the player.

I appreciate the input since this gets me thinking of how to progress the game overall.
One day, when it sees the light of day you may think, oh man what a garbage. But that's ok. At least i tried and if i like it, that is all it matters.
Can a VN actually be bad? :unsure:
 

coffeeaddicted

Well-Known Member
Apr 13, 2021
1,734
1,420
I made some progress.
Not sure if you can assign a value to an image but i inject a variable (i hope that is the right term) to some images to get a depressed state for the character.
Another feature i thought about is drug dependence.
So i need to figure out how to make the character depending on the depression getting urges for drugs.
I tested it so far and i kind of like that it works.
2022-08-25 11_52_05-Window.jpg
 

coffeeaddicted

Well-Known Member
Apr 13, 2021
1,734
1,420
So this gets really complicated very quickly.
I imagine some games with way more complicated choices and long code. How do you navigate through all those lines?

Anyway, so i will have 5 parameters that i set and have the player influence through choice. It seems i need to insert some slides to make the expression fit the choice made.

So this is my silly code that suppose to do 2 things.

1) give the player a basic choice of yes or no.
2) Inject some mood into the mix based on the level of depression and painslut stats.

I know i need some more slides to give at least a different expression for that choice and jump to another point in the story.
Also, that is my plan at least, let the player get drugs thus teleport to somewhere else or just go ape shit.
There is also suicide planned as a valid outcome.
This sounds pretty dark but i think it will fit the game.

My question is this. Is this code lame or does it do the job for what i want?
I am not a programmer. So this may look like some pizza but i hope it does what i want it to do.

p.s. the bottom check are not done as there should be some more. Its just an example.

Thank you

Code:
    label choiceorrebel00:
    menu:
        "Give in to his demand or rebel?"

        "Submit":
                if pleasure >= 5:
                        $ rage -= 1
                        $ pleasure += 1
                        $ depression += 1
                        $ money += 0
                        $ painslut += 1
                        jump choice00

                if pleasure <= 5:
                        $ rage += 1
                        $ pleasure -= 1
                        $ depression += 1
                        $ money += 0
                        $ painslut += 1
                        jump rebel00

        "Fuck him":
                if pleasure >= 5:
                        $ rage -= 1
                        $ pleasure += 1
                        $ depression += 1
                        $ money += 0
                        $ painslut += 1
                        jump choice00

                if pleasure <= 5:
                        $ rage += 1
                        $ pleasure -= 1
                        $ depression += 1
                        $ money += 0
                        $ painslut += 1
                        jump rebel00

    if depression >= 10:
        show day1training03a_nvidia
        m "{color=#0080ff}(thinking) I sure could you some drugs now.{/color}"
        jump choice00

    else:
        jump rebel00
p.s. my previous code produced not the result i was looking for. The math did add up. This one works. Probably still not the best solution but at least it works.
 
Last edited:

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Respected User
Donor
Jun 10, 2017
10,131
14,812
Your game is much more a novel than a game by definition so far. So having 'endings' is natural while a game over is much more something that belongs to an actual game with game mechanics and a certain goal to achieve. Failing to reach certain steps of that goal and having a game-over is what pretty much belongs to a game. While endings are part of a novel style which is what you described so far. Visualizing certain choices that have far reaching consequences (like ending the entire story) is just good game design.
I join you on this.

By themselves, game over should be really limited when it come to Visual Novel approach. The replayability value of such game is really low, and players will more surely abandon than starts again.
A game over can eventually happen if you've a combat system and the player loose a fight ; he still have the possibility to load the last save (like we all do with "regular games") or you can send him back to the start of the game after the game over sequence. But outside of this, you should really limit there use to extreme situations.

Among the many games I have in mind without having the time to works on them, there's one where you can shape the girl personality (vanilla, romantic, dom or sub) ; the story make this feel totally natural. Near to the start, you would be warned that you can do whatever you want, as long as the girl agree.
But I don't want the player to create a full jerk MC that would make the girl submit against her will ; they'll have to make her want to submit. So there will be a game over, if you play like a jerk. But as I said the player will be warned first, and I'll probably add one or two warnings if he starts to follow the wrong route.
I want to give enough freedom to the player, so I'll probably not just block this route. But, as well as following the romantic route will have for consequence to create a girl that will love you with all her heart, following the jerk route will have a consequence that can only be expressed by a game over.

It's, from my point of view, the something important ; a game over should always be player's full responsibility, and come from a succession of choices. You knew that you risk the worse if you do really poor choices, then you're warned that you are doing really poor choices. Free to you to continue, but don't complain when you'll face the consequences.


Be noted that the same apply for early endings. You shouldn't use too much of them, and don't force them.
There's on in Fetish Locator by example. One of the girl can be pregnant, and you've then the possibility to fly away with her. But this possibility come in two times.
Firstly you're warned that the girl is pregnant and want to fly away, being proposed to follow her. But at this time it's just a proposition. After the scene, the MC return to his life for few days, then come the moment where the player have to make a choice, will he follow the girl, and therefore have an early ending, or will he stay here and continue the game.

Exactly like for game over, this approach in two time left time for the player to think about his decision. Does he really want to continue on this route, or not.
More importantly, for the game over this make a perfect save point. You're at a moment in the game where you crossed the line, but also where you can still go back and save your ass. Keep a save file right there, and you'll just have a small bit of the game to replay if you get the game over sequence.