If anyone here has played Umineko no Naku Koro ni (either 1-4 or 5-8; both handle menus the same way) will be able to easily picture what I'm trying to accomplish.
There are four chapters to the main story, and at the beginning of the fourth chapter, a character asks the player which story they want to follow for the fourth chapter, choosing from five different protagonists. This much I've already accomplished.
What I want to do is have the "Start" menu option lead to a sub-menu, allowing you to choose which chapter to start from, and have 2, 3, and 4 locked until you've reached them in a full playthrough. Once you've read through all five protagonists' routes, a second menu item is unlocked at the main menu, inside which are three side-stories that are all self-contained. Once they are read, a third menu item is unlocked that leads directly into an epilogue. Again, if you've read Umineko no Naku Koro ni, it functions very similarly.
This seems like it's going to be an extremely complicated process, so I haven't even begun to attempt it myself until I ask here what the best way to go about it is.
I apologize if this is miscategorized, and thank you in advance for any advice you can give.
Help making multiple menus, unlockable endings
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
- Taleweaver
- Writing Maniac
- Posts: 3428
- Joined: Tue Nov 11, 2003 8:51 am
- Completed: Metropolitan Blues, The Loyal Kinsman, Daemonophilia, The Dreaming, The Thirteenth Year, Adrift, Bionic Heart 2, Secrets of the Wolf, The Photographer
- Projects: The Pilgrim's Path, Elspeth's Garden, Secret Adventure Game!
- Organization: Tall Tales Productions
- Location: Germany
- Contact:
Re: Help making multiple menus, unlockable endings
Moved to a more appropriate forum.
Scriptwriter and producer of Metropolitan Blues
Creator of The Loyal Kinsman
Scriptwriter and director of DaemonophiliaScriptwriter and director of The Dreaming
Scriptwriter of Zenith ChroniclesScriptwriter and director of The Thirteenth Year
Scriptwriter and director of Romance is DeadScriptwriter and producer of Adrift
More about me in my blog"Adrift - Like Ever17, but without the Deus Ex Machina" - HigurashiKira
- namastaii
- Eileen-Class Veteran
- Posts: 1350
- Joined: Mon Feb 02, 2015 8:35 pm
- Projects: Template Maker for Ren'Py, What Life
- Github: lunalucid
- Skype: Discord: lunalucid#1991
- Soundcloud: LunaLucidMusic
- itch: lunalucid
- Location: USA
- Contact:
Re: Help making multiple menus, unlockable endings
There is probably another way to do this but my suggestion is to create a variable that changes depending on where you've been.
define the variables
or this, I guess:
just change the number or change it to true to unlock the chapter.
create a menu where you choose to start from
Let's say they chose chapter 2:
(or if chapter_3_unlocked == True etc whatever)
Hope this makes sense. This is how I unlock things or change things.as long as they went through a label that is required to unlock something and you change that variable at that time then it will be unlocked for next time you go through the menu or progress through the story.
define the variables
Code: Select all
$ chapter_3_unlocked = 0
Code: Select all
$ chapter_3_unlocked = False
create a menu where you choose to start from
Code: Select all
menu:
"Chapter 1":
jump chapter_1
"Chapter 2":
jump chapter_2
Code: Select all
label chapter_2:
d "blah blah blah"
d "You've completed chapter 2 and chapter 3 is now unlocked."
$ chapter_3_unlocked = 1
jump main_menu
Code: Select all
label main_menu:
menu:
"Chapter 1":
jump chapter_1
"Chapter 2":
jump chapter_2
"Chapter 3":
if chapter_3_unlocked == 1:
jump chapter_3
else:
"You have not unlocked this chapter."
jump main_menu
Hope this makes sense. This is how I unlock things or change things.as long as they went through a label that is required to unlock something and you change that variable at that time then it will be unlocked for next time you go through the menu or progress through the story.
- cath-mg
- Regular
- Posts: 36
- Joined: Fri Oct 30, 2015 8:41 am
- Projects: Ashworth's Last Princess (Resigned), Kokorogawari
- Organization: Precatio彡
- Tumblr: cath-mg
- Github: cath-mg
- Contact:
Re: Help making multiple menus, unlockable endings
I haven't really read Umineko no Naku Koro ni but what you wanted is alike to some games I've played. I hope I interpreted it right.
So at first you can define persistent variables so later you can detect which chapters the player has cleared:Note: If you have 5 protagonist and each has 4 different chapters which you want to track individually, then you'll need more, i.e. four persistent variables for each characters. You can probably organize it more using arrays or even classes but you can do it after you get the logic done.
And then you could have something like:On the last line of your first chapter.
Then you can have an if statement on the sub menu screen which will show the chapter as locked or accessible, e.g:
In my opinion, the best way to accomplish this is by using persistent variable which will act like flags.10takuru wrote:What I want to do is have the "Start" menu option lead to a sub-menu, allowing you to choose which chapter to start from, and have 2, 3, and 4 locked until you've reached them in a full playthrough.
So at first you can define persistent variables so later you can detect which chapters the player has cleared:
Code: Select all
$ persistent.chapter1Clear = False
$ persistent.chapter2Clear = False
$ persistent.chapter3Clear = False
$ persistent.chapter4Clear = False
And then you could have something like:
Code: Select all
$ persistent.chapter1Clear = True
Then you can have an if statement on the sub menu screen which will show the chapter as locked or accessible, e.g:
Code: Select all
if persistent.chapter1Clear == True:
#Your code to allow access to the second chapter, by imagebutton or whatever you're using
else:
#Your code to show that the second chapter is still locked and inaccessible
Same principle goes for this one. Set persistent variables that define whether the player has read through all five protagonists' routes and another separate set for the three side stories, and change them on appropriate times. Then you do a check before you display the second and third menu item. Hope this makes sense.10takuru wrote:Once you've read through all five protagonists' routes, a second menu item is unlocked at the main menu, inside which are three side-stories that are all self-contained. Once they are read, a third menu item is unlocked that leads directly into an epilogue.
Who is online
Users browsing this forum: Bing [Bot]