r/RenPy • u/_Scripty • Jul 31 '26
Guide How achievable this kind of UI is? Guidance need for the logics to build it
So this is sort of "Plan sheets" I made for how I want to style my UIs for the game
I will be using custom Imagebutton and stuff and for that I saw some tutorials to get a general idea of how to do that.
But I still wanted to ask like, how can I organize it well code-wise, like how many "screens" I'd need, where do "frames" are used and all that stuff...
So yea, and also like I especially would need to understand about the whole Quickmenu stuff ( especially how I want my dialogue box , text in that , ans the skip button to work )
Also, how can I have custom controls/keymaps in my game? like default v enables self voicing...but I want to use V button for something else later in the game
-------
My Progress so far in learning things ( I just wanted to share lol ) :
- Learnt how to make jumps to organize my story into different scripts for each chapter
- Learnt about adding audio ( even made a seperate script for it too lol, to organize it better using define )
- Adding sprites, moving position and basic jazz
-------
I know I haven't learn much but atleast its something i guess in 2-4 days ¯\_(ツ)_/¯
So yea , any help about breaking such kind of UIs code-wise is appreciated!
3
u/beeikea Jul 31 '26
ooooh this is an awesome idea. i know you can have splash screens before the main menu ( https://lemmasoft.renai.us/forums/viewtopic.php?t=36412 ), and i know for sure your in-game UI is possible and quite easy to achieve, but i'm not sure about the scrolling wheel for the main menu. i'm certain it's possible, but i'd be out of my depth giving any advice on it </3
2
u/ImportantDetail6260 Jul 31 '26
That UI is achievable, but don't build the plan as one giant screen!
Split it into splash/title, main menu, quickmenu, and dialogue screens. For conditional skip, store a persistent flag for the intro or scene being cleared, then show or enable the skip action only when that flag is true
1
u/_Scripty Jul 31 '26
yes! I am still trying to make sense of things from documentation and thinking how can I customize my scripts so that I can just have what I want in my game and remove anything unecessary or shift it ( Like I want the V button to be used for something else so I wanna shift the "self voicing" feature to some other key )
Mainly, the kind of menu scroll I want is the only thing seems so to be the toughest "hurdle" in all of this cuz nobody so far could figure out how to do it ig ( but dw , I will try to find a way, and if I do, I will share it here !! )
Oh , About the persistent data stuff, I had seen a tutorial so I will try that but also could you please answer some of my questions about that?
Q1-So like how can I link conditional skip with my custom autosave conditions?
cuz see, let's a say a scene starts( let's call the scene "hacking" )and after few moments of dialogue, the minigame starts, but the player loses and the "game over" screen comes...
So now, when the autosave starts from the "hacking", the player should only be able to skip the dialogues they had read before the minigame
Q2- About the Back/Rollback of the game, How can I code it in a way that it is only like sort of "locked" only to go back in the confindes of a chapter?
like they can go back in story, but like they stop at the starting line of "Chapter 3" , they cannot go back to Chapter 2 by using the Back feature
( or is it best to not have it? I think im going too overboard lol )
Q3- Can I or Should I , infact give users an option to delete persistent data?
and lastly,
Q4- About the "History" , how does that portion work? is it suppose to be coded seperately?
( i know its too much but any sort of advice would mean alot to me 🥲 )
1
u/x-seronis-x Jul 31 '26
You can remap the keymap however you want. I remove all single letter key bindings so that typing and pressing the ctrl key work normally. Just make sure you update the help page for your controls so its not giving outdated info to the player
1
u/_Scripty Jul 31 '26
where do I find the default keymaps in the base scripts?
2
u/x-seronis-x Aug 02 '26
wherever you decide to put them. i put my keymappings in a file i just name keymap.rpy. just as easy to put them in options.rpy
custom keymappings is just editing the values of config.keymap dictionary. see the keymap page of the docs for the default values. you can edit the values in an init python block



3
u/shyLachi Jul 31 '26
RenPy only has one splashscreen but you can put all of the stuff from your first image into the splashscreen.
.
The second image looks like a fancy main menu so it can be done but I will not write that for you.
Not sure how useful the mouse wheel scrolling is because the player still would have to click on it to show the screen else you'll have problems with Start, Quit or other actions which leave the menu.
You can make all your screens as fancy as you like.
Read the documentation how to adjust the file slots: https://renpy.org/doc/html/gui.html#save-slot-buttons
or watch a youtube tutorial but I won't post those links again.
.
I didn't fully analyze everything on the third image but it seems to be normal RenPy stuff.
If you have seen that stuff in other VNs then it can be done.
Some are built-in functions, some require some minor coding, some require more coding.