Ren'Py Advice on how to handle decision hubs

SuperSleuth

New Member
Oct 1, 2021
3
13
I started writing and mapping out story decisions in a test game to familiarize myself with programming in Renpy. The more I've worked on it the more I've decided to just focus on this one. While working on my story map I started wondering about "game overs" in visual novels. I hate games that just end with a game over and kick me out to the main menu making me start all over / load a prior save. But I don't mind the occassional dead end if the action seems logical to the character and the resulting scene is worth it. Almost as if it's a sort of wink from the dev. "Yeah, I knew what you wanted to do smart ass. Deal with the consquence, maybe enjoy a laugh or two and try again." I don't know... I'm also that person that will watch every deleted scene of a DVD so...

The image is the decision tree for a scene I'm currently working on. I promise there's no math! And sorry if it looks like a page out of Madden's playbook. ;) I'm definitely more of a visual thinker so this helps me wrap my head around the different paths. (Numbers are decisions, letters are the resulting path, colored lines are jumps back to a decision hub.)

So my question has more to do with game theory (is it fun, and how do you plan for it / structure it so it doesn't become a drag for the player) rather than how to code it.

What are your thoughts? From a player perspective are you against any fail states / dead ends for a story path (quick little one shot endings) with the option that you might have to / be able to loop back to the previous decision so you can try a different decision path? Do you often go back to the start of a chapter/scene and try other paths to see if there are other surpises? Or do you prefer a more linear approach with decisions reserved for major story arcs and just live with the consequences?

From a dev perspective, how do you structure your decision points? Do you think it's easier for you and the player to program a jump that loops them back to just the previous decision (minor path blue line), jumping further back (orange line), or all the way back to the first decision in a scene? Or just daisy-chain jumps backward toward the beginning?

I appreciate any advice you may have.

decision_hub.png
 

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Donor
Respected User
Jun 10, 2017
10,302
15,172
What are your thoughts?
You started saying that you dislike game over, but the 3 failing points, over 7 shown possible outcome for a single scene, tell me that it's a lie. The simple fact that there's more than one possibility to fail already made it a lie.


From a player perspective are you against any fail states / dead ends for a story path (quick little one shot endings) with the option that you might have to / be able to loop back to the previous decision so you can try a different decision path?
A failing state should always be temporary, and possibly be cumulative. You failed this time, but you'll have more luck next time, until the moment where you clearly missed all the opportunities, what close this path of the story. And if the said path is important for the story, then the last opportunities is rigged and can't be failed ; by example because the girl really like you and is tired to wait for your move, so she throw an "I love you, idiot", then french kiss you crazily.
As for the possibility to loop back in order to change your decision, it's the lamest approach. It don't say, "I care about you and don't want you to be stuck", but, "I'm too lazy to take count of your decisions once the scene is over".


Do you often go back to the start of a chapter/scene and try other paths to see if there are other surpises? Or do you prefer a more linear approach with decisions reserved for major story arcs and just live with the consequences?
None of those two.

If the game engine permit it, I'll follow in parallel the main routes that interest me, but I'll not try to search for all the scenes in them. And I prefer games where the choice aren't limited to the current, or following, scene, nor limited to impactful decisions.
I have nothing against narrative choices, but not when they hide behind a more consequent decision. Make me choose between pizza and burger, then for the rest of the game feed me only with burgers whatever my choice, I don't care. But if you make me choose what dress she'll buy, I expect her to wear it every time she want to be seductress, like a real woman would do.
 

GNVE

Active Member
Jul 20, 2018
685
1,152
Your question made me think of this old episode. While it is about games in general I do think some of the tips apply to visual novels as well.

I certainly quit a few games that were punishing in VN's. Best one was you have 17 out of 20 love points and then booted me to the main screen. Yeah did not play that game again.
I think fail states can be okay in a game if the following rules are met:
- I can easily go back and fix it.
- They are satisfying story wise.
- It is clear why I got a fail state.
- It is used sparingly

This issue is broader though a lot of games have a changing room scene where the PC opines about what outfit looks better on the NPC. sometimes for some reason outfit x leads to a better outfit than outfit y without a clue as to why.
I hate games where I need the guide to play optimally.
 

ClarkeDeaper

New Member
Game Developer
Jul 2, 2020
12
61
What you're describing sounds like a , but when I look at your flow chart it looks way more complicated. You may want to think about what mechanics your game is about, as you seem to try to have several in there at the same time.

And as Emily Short mentions in that article as well, is that a menace stat is in that case favorable to a game over. It gives a player that feedback and it adds tension and it isn't as hard as a game over. Mitigation then becomes an option for the player as well, as you can give them choices where they can reduce the menace stat(s). really utilizes this nicely with a danger stat, which you can choose to increase by taking risks, or decrease by choosing safe options.

An alternative to a negative consequence (game over/menace stat) is to give the player an alternative reward. Let's say they don't convince the girl this time, but they get more charm experience so future attempts have a higher chance of success.
 

Saki_Sliz

Well-Known Member
May 3, 2018
1,403
1,004
I'd say as a player of adult games, there are many, and as a result my limited game play time is valuable to me. If I'm interested enough to play a game, I typically only want to play it once. if I can play the way I want to (good guy/gal, happy ending, true ending?), and complete it, that's usually enough for me (I often won't return to a game even when it updates, its why I'm holding off on the ATLA game, I want to be able to complete the game while it still has my attention). It's vary rare that the game becomes memorable, I only know about 6 vn's (the first one I've ever played, the first one that showed me 1D character writing can lead to a enjoyable game play experience, and my favorite, one is a fan game with best girl, and 2 are well made games that often get brought up a lot). ignoring non VN games.

So when it comes to fail conditions, I say there is a time and a place for each type.

Path B on Decision 4, blue path return to decision 4
since decision 4 only has two options, if I the player am brought back via the blue path to decision 4 I imigine I would feel that the game is either trying to emphasize a point, saying that choice A should be obvious, or depending on the story/context, it can be as you said, the dev allows the decision even if its just to spice things up and avoid a monolog, but its there for fun, its not a super critical character defining choice, good for joke/fun to see what happens. Some games however do take this to the extreme, where a side story can be explored but its a side story that only fails. if a decision locks a player onto only fail paths, but the playre continues to play, this can be confussing, so it has to be communicated whats going on, what happened, else you get frustrated players who thought a choice was inconsequential is actually critical.

if say decision 3 with A B and C, I am ok with returning to 3 if the dialog from choice to fail was long, or there's a lot of options to pick from and its unclear which is the best/prefered

If however the choice is more narrative, where the player knows they are controlling the story and the flow, I would actually prefer something like an orange path, so I can either try again and make it work, or do something completely different, but the important thing is that you have to frame the failure as the result of the general narrative of the scene, not just the result of one wrong move.

I mentioned the issue of getting locked in a fail only side story. just yestarday I decided to play detroit become human, where it makes use of a flow chart system so you can see that certain choices locks you into certain scenarios. such as, I could investigate a location, or interrogate an android, both are part of my investigation, but both lead two two different endings that will impact later chapters.

lastly, I would avoid the pink path at all cost, it generally seems low effort and disrespectful to disregard my choices and work, unles of course, the failure is presented more like a story, a narrative where i was close, but something was amis. However, I would love to have this in the pause menu, where I can restart a scene/chapter because I don't like where things are going (ie i didn't realize that investigating the android led me to a chapter ending scene and miss the actual thing I wanted to investigate, I just wanted to get the side quest out of the way, turns out it wasn't a side quest. alt F4 baby!!)

~~~

as a dev, I am smooth brain. I usually don't make branching stories because its hard enough for me to think of 1 story, much less multiple ending stories. I do however do something else. I make games with no fail, but instead, context and flavoring. for example, in my intro scene I have a character who's late for work and needs to get dressed. however, the player can just leave the bathroom and start walking around the place naked, and leave naked, but regardles of what they do, the character still acts in a way that maches their personality, so if you leave naked the story becomes one looking for help, eventually a neighbor befriends the player. Or the player can go to bed, and the character will start to mention being unmotivated and how they hate how unmotivated they are, start to get depressed, only for their boss to call them, cheer them up, and now when you go to work your boss is gentler, you give them a hug, and that data is recorded so that later interactions are also framed with this positive relationship in mind. I basically rain in the players poor game play tendancies....

though I do make an exception for a special senario. Bad ends. if I'm watching a kids movie and the bad guy throws a knife, haha it only popped a balloon. I however have been exploring more serious and darker ideas and have decided, if you are willing to show something, you need to be willing to use it. if a kids movie shows a bad-man throwing a knife... that's no joking matter, if the subject is to be taken seriously, then the consequences should be shown. I want that knife to land in some poor soul's gut, and for everything to go quite as the haha mood is no longer funny, and the characters are starting to realize they are not ok. In my case, I want to make a mean bitchy character who's rude, and who ends up paying for it, but because I'm pro-happy endings, it has to be constructive eventually, ie realizing that everyone is serious about hurting them as payback, and after a while realizing that their behavior has been 'seriously' hurting everyone around them, its not a game.

though the way I think and code, while flow charts are nice... they only work in 2 or 3 dimensions. In cases where you need to achieve several things (like a list of items) or something more complex, I prefer to make 'concepts' or object classes to represent what parameters control something, and a model of that control 'such as modeling who characters should react and evolve over time'. but i haven't gotten far enough in any mock up examples to really point out what I mean.