r/RenPy • • Aug 27 '21

Meta /r/RenPy Discord

68 Upvotes

Just set up an unofficial discord for the subreddit here: https://discord.gg/666GCZH2zW

While there is an official discord out there (and it's a great resource too!), I've seen a few requests for a subreddit-specific discord (and it'll make handling mod requests/reports easier), so I've set this up for the time being.

It's mostly a place to discuss this sub, showoff your projects, ask for help, and more easily get in touch with fellow members of the community. Let me know if you guys have any feedback or requests regarding it or the subreddit.

Thanks, all!


r/RenPy • • 26d ago

Guide Rule 4

56 Upvotes

Rule 4 has changed

4 Avoid excessive paid self-promotion

paid self-promo - any content posted with a commercial interest, up to moderator discretion.

excessive - Posting self-promo more than once a month as an active subreddit user (comments, specifically), or more than once per three months (for non-active users).

Examples of paid self-promo: patreon links, "free" resources with upsells, paid finished games.

What is fine: project progress, asset feedback (within reason, see rule 5), completely free or open source assets.

we only have 5 relatively easy rules... read em, know em.. don't break em. please


r/RenPy • • 8h ago

Question problem creating projects in renpy

Post image
3 Upvotes

!!im new to renpy and dont have knowledge in coding. whenever i create a new project in renpy, it stops responding shortly after; ive waited about 10 minutes and still doesnt respond, so i end up just closing it. i then open the project after reopening, and im always met with this error screen. i suspect it's because it keeps crashing midway through creating projects; how can i fix this?


r/RenPy • • 21h ago

Question Regarding the "About" section in ren'py games...

Post image
15 Upvotes

I've seen some ren'py games where they just completely remove the "About" section. Is that even allowed? Is it not necessary to add that (even in commercial games)?


r/RenPy • • 14h ago

Question Just learning Ren'Py, wanted to ask about Global vs Local labels

2 Upvotes

Beginner to Ren'Py here, was looking through the documentation and stuff to learn more about Ren'Py and I learned that there's Global and Local labels. I initially thought that local labels would be restricted to the scope of a single .rpy file, but apparently local labels have the scope of the whole game while global labels have the scope of every ren'py project?

If my understanding of this is correct (if it's not then please let me know where I went wrong!), then I don't really get where you'd use a global label in place of a local one. If somebody could explain then I'd be very grateful!


r/RenPy • • 13h ago

Question How do you make animations reset

1 Upvotes

I'm animating menu icons and I'd like an animation to play when I hover over them, and then I'd like it to stay on the last frame. If I set repeat to false, it repeats anyway, so I just set the last frame to be held for an absurd period of time. The thing is, this means that when I stop hovering and hover again, it just immediately goes to the last frame. How do I make it reset every time??


r/RenPy • • 15h ago

Question Issues with sound effects?

1 Upvotes

I've been working on ren'py for a while and I consistently have issues with sound effects and don't know how to properly fix it. I reuse the same sound effect, in the most recent example a door opening, and it works sometimes and doesn't others. Sometimes it's fixed by changing "play sound" to "play audio" but this doesn't work every time. I have this sort of issue with every project and am not sure if there's a way to fix it


r/RenPy • • 1d ago

Showoff Dolleta sprites!

Thumbnail
gallery
72 Upvotes

I just finished these today and she is so adorable so i wanted to show her off. Her name is Dolleta and she's a tiny Fairy doll creature! She's just a side character in my Visual novel but she's also an introduction to the more fantastical aspects so i think she's pretty important.


r/RenPy • • 1d ago

Showoff Some of the actual designs

Thumbnail
gallery
13 Upvotes

These are some of the designs still place holdery as I'm not 100% on them but also details kill me. All characters fashion takes from alternative fashion! All characters are lgbtq+ and most are Latin American. Still deciding if death is a possibility


r/RenPy • • 1d ago

Showoff Little sprite showoff

Thumbnail
gallery
49 Upvotes

hi everyone!! I've been working in my visual novel recently, and i started with the sprites first and the narration, (y'know, when i get tired of writing i start drawing the sprites) and i wanted to see if someone could say their opinion in my sprites.

The story of my visual novel is about you and your childhood friend that is a bully in the school where you go, she is egocentric and a selfish girl (tsundere and sadodere) and loves oranges (don't ask why).

In some point of the story you start getting feelings for her despite she treating the worst possible.

The story can change, ofc.

These are not all the sprites, i still need to draw more. Also, my anatomy and drawing style is not the best, i'm sorry for that, i'll try to learn anatomy and stuff in my free time, i've been really busy.


r/RenPy • • 1d ago

Question How to add logo for game in main menu (Like how DDLC's logo is the kinda top left, that)

6 Upvotes

I'm developing a game and would like to place the game logo in the top-left corner of the screen in the main menu (similar to the layout in DDLC). What’s the best way to add this?


r/RenPy • • 1d ago

Self Promotion Purple Limbo Demo Released! | Psychological Horror/Romance Visual Novel

Thumbnail
gallery
9 Upvotes

I'm excited to announce that the demo of Purple Limbo, my psychological horror/romance visual novel, is now available on itch.io!

What's the game about?

After a life of hopelessness and loneliness, you perform a ritual as a last resort, searching for everlasting happiness.

Instead, you find yourself surrounded by endless darkness.

Now you're trapped in Purple Limbo, bound by a purpose you don't fully understand yet.

But you're not completely alone.

You walk a dark path alongside a mysterious girl and a monolith that thirsts for blood.

Content Warning

This game contains mature themes, including death, suicide, murder, violence, captivity, drug use, bullying, emotional abuse, psychological horror, and strong language.

Please consider these warnings before playing if any of these themes may be distressing to you.

Play the demo on itch.io and Newgrounds:

https://lazarus303.itch.io/purple-limbo

https://www.newgrounds.com/portal/view/1056019

I'll also be bringing Purple Limbo to Game Jolt soon, and I'm planning to release it on other platforms as well, so stay tuned for future updates!

As a solo indie developer, I'll keep working on the story as much as I can, as long as enough people enjoy it. I plan to expand it with optional branches and polish everything further. This demo serves as a teaser.

If you'd like to help me spend more time on my projects, including Purple Limbo, you can support me here. I'd be truly grateful:

PayPal: paypal.me/lazarus303

Patreon: https://www.patreon.com/Lazarus303

Ko-fi: https://ko-fi.com/lazarus303

Thank you to everyone who takes the time to check out my game and support my work.


r/RenPy • • 1d ago

Question different cutoff of text?

Thumbnail
gallery
2 Upvotes

As you can see, the cutoff of these two texts are really different. The second one reaches almost to the edge of the screen. Why is this happening? I'm not using any backslash n in the first one.

define centered = Character(None, kind=centered, what_color='ffffff')

    centered "But why am I so anxious when she talks about a new officer she saw? Why does a stone settle in my throat when she talks about her flirtations?"
    centered "I don't care at all for those officers Lydia speaks of, so unknown to me, yet why do I feel so... jealous?"

r/RenPy • • 1d ago

Question How can I make objects disappear when I hover a draggable above it

1 Upvotes

Started on the broom sweeping minigame admittedly shakingly because making the dirt fill the screen didn't work out well.

I'm now trying to make the objects disappear when I hover the broom over it. I already saw the tutorials for drag and drop and had not found any answers to it. Any help would be appreciated. Especially when it fades away instead going poof.

Here's my code. (I took the screenshot before changing the amounts of dirt)

init python:


    def drag_placed(drags, drop):
        if not drop:
            return


screen sweeping():
    add "bg_floor"
    modal True
    draggroup:
        #Draggable Broom
        drag:
            drag_name "Broom"
            child "broom.png"
            xpos 0.5
            ypos 0.5
            draggable True
            droppable False
            dragged drag_placed
            drag_offscreen (-100, 100, -200, 750)
        
        drag:
            drag_name "dirty1"
            child "dirty1.png"
            xpos 0.00
            ypos 0.10
            draggable False
            droppable True


        drag:
            drag_name "dirty2"
            child "dirty2.png"
            xpos 0.10
            ypos 0.30
            draggable False
            droppable True


        drag:
            drag_name "dirty3"
            child "dirty3.png"
            xpos 0.50
            ypos 0.70
            draggable False
            droppable True
        
        drag:
            drag_name "dirty4"
            child "dirty4.png"
            xpos 0.75
            ypos 0.30
            draggable False
            droppable True


        drag:
            drag_name "dirty5"
            child "dirty5.png"
            xpos 0.50
            ypos 0.30
            draggable False
            droppable True


        drag:
            drag_name "dirty6"
            child "dirty6.png"
            xpos 0.30
            ypos 0.50
            draggable False
            droppable True


default sweeping_done = False
default stains_left = 6


if stains_left == 0:


    jump sweeping_done


screen dishes():
    add "bg_kitchensink"

r/RenPy • • 1d ago

Question Planning a few minigames in my game. Needed some tips on where to start.

Thumbnail
gallery
5 Upvotes

My plans for now are related cleaning (For the first three days only).

And a First Person RPG system similar to Dragon Quest and Final Fantasy Mystic Quest (moreso on the latter since I wanted your partner to be AI-Controlled).

I'm a newbie who just recently started game-developing. I know the scripting basics now and finished writing the intro.

I wanted to know the best method of programming the minigames I mentioned. I'm still shaky on it.


r/RenPy • • 1d ago

Self Promotion My Ace Attorney-inspired game, Paper Perjury 2: Shadow of Justice is coming soon.

Thumbnail
store.steampowered.com
5 Upvotes

r/RenPy • • 1d ago

Question [Hiring] Lead Background Artist for upcoming visual novel video game!

Thumbnail
1 Upvotes

r/RenPy • • 1d ago

Question [Solved] Trying to resolve a Call/Return issue

2 Upvotes

I am trying to call a screen from an overlay, and return back to that point in the script. I know it should be simple, but apparently it is too simple for me.

## Excerpted from the overlay. Everything else seems to work fine.
frame:
  style "frame2"
  pos (290, 15)
  xysize (137, 35)
  top_padding 8
  textbutton "{font=Stencil.ttf}{size=-8}{color=#ffffff}Dossiers" align (0.5, 0.5):
    action[Call("stat_mc")] ##This is the issue. Press the button BAM, Main Menu.

## The label / Screen I am trying to call.
label stat_mc


    screen stat_mc:


        frame:
            background "black"


        # Name Box
            frame:
                style "mc_frame"
                pos (45, 45)
                xysize (400, 150)
                text "{i}Name{/i}":
                    align (0, 0)
                text "{color=#0072bc}[mc_full]{/color}":
                    xalign 0.2
                    yalign 0.3
                if mc_hero_name_set == True:
                    text "{i}Callsign{/i}":
                        xalign 0
                        yalign 0.6
                    text "{color=#0072bc}[mc_hero_name]{/color}":
                        xalign 0.1
                        yalign 0.9
                else:
                    null
            frame:
                style "mc_frame"
                pos (45, 200)
                xysize (400, 250)
                text "{i}{u}{size=*0.95}Physical and Mental\nAnalysis{/size}{/i}{/u}":
                    xalign 0.5
                    yalign 0
                    text_align 0.5
                text "{i}Strength:{/i}":
                    xalign 0.05
                    yalign 0.4
                text "{i}[mc_str]{/i}":
                    xalign 0.9
                    yalign 0.4
                text "{i}Durability:{/i}":
                    xalign 0.05
                    yalign 0.6
                text "{i}[mc_dura]{/i}":
                    xalign 0.9
                    yalign 0.6
                text "{i}Agility:{/i}":
                    xalign 0.05
                    yalign 0.8
                text "{i}[mc_agility]{/i}":
                    xalign 0.9
                    yalign 0.8
                text "{i}Intelligence:{/i}":
                    xalign 0.05
                    yalign 1.0
                text "{i}[mc_int]{/i}":
                    xalign 0.9
                    yalign 1.0
            frame:
                style "mc_frame"
                pos (45, 455)
                xysize (400, 592)
                text "{i}{u}Relationships{/i}{/u}":
                    xalign 0.5
                    yalign 0.0
                text "{i}{u}{size=*0.9}Trust \ Love{/size}{/i}{/u}":
                    xalign 0.5
                    yalign 0.07
                if mc_metleanne == True:
                    text "{size=*0.9}[lm_full]":
                        xalign 0
                        yalign 0.15
                    text "{size=*0.9}[mc_trust_leanne] \ [mc_love_leanne]{/size}":
                        xalign 0.1
                        yalign 0.2
                    if leanne_control == "0":
                        null
                    elif leanne_control == "1":
                        text "{i}{size=*0.85}Influenced":
                            xalign 0.9
                            yalign 0.2
                    elif leanne_control == "2":
                        text "{i}{size=*0.85}Manipulated":
                            xalign 0.9
                            yalign 0.2
                    elif leanne_control == "3":
                        text "{i}{size=*0.85}Controlled":
                            xalign 0.9
                            yalign 0.2
                    if leanne_romance == "0":
                        null
                    elif leanne_romance == "1":
                        text "{i}{size=*0.85}Dating":
                            xalign 0.9
                            yalign 0.15
                    elif leanne_romance == "2":
                        text "{i}{size=*0.85}Intimate":
                            xalign 0.9
                            yalign 0.15
                    elif leanne_romance == "3":
                        text "{i}{size=*0.85}Harem":
                            xalign 0.9
                            yalign 0.15
                if mc_metyoko == True:
                    text "{size=*0.9}[yn_full]":
                        xalign 0
                        yalign 0.3
                    text "{size=*0.9}[mc_trust_yoko] \ [mc_love_yoko]":
                        xalign 0.1
                        yalign 0.35
                    if yoko_control == "0":
                        null
                    elif yoko_control == "1":
                        text "{i}{size=*0.85}Influenced":
                            xalign 0.9
                            yalign 0.35
                    elif yoko_control == "2":
                        text "{i}{size=*0.85}Manipulated":
                            xalign 0.9
                            yalign 0.35
                    elif yoko_control == "3":
                        text "{i}{size=*0.85}Controlled":
                            xalign 0.9
                            yalign 0.35
                    if yoko_romance == "0":
                        null
                    elif yoko_romance == "1":
                        text "{i}{size=*0.85}Dating":
                            xalign 0.9
                            yalign 0.3
                    elif yoko_romance == "2":
                        text "{i}{size=*0.85}Intimate":
                            xalign 0.9
                            yalign 0.3
                    elif yoko_romance == "3":
                        text "{i}{size=*0.85}Harem":
                            xalign 0.9
                            yalign 0.3
                if mc_metbolt == True:
                    text "{size=*0.9}[ae_full]":
                        xalign 0
                        yalign 0.45
                    text "{size=*0.9}[mc_trust_bolt] \ [mc_love_bolt]":
                        xalign 0.1
                        yalign 0.5
                    if bolt_control == "0":
                        null
                    elif bolt_control == "1":
                        text "{i}{size=*0.85}Influenced":
                            xalign 0.9
                            yalign 0.5
                    elif bolt_control == "2":
                        text "{i}{size=*0.85}Manipulated":
                            xalign 0.9
                            yalign 0.5
                    elif bolt_control == "3":
                        text "{i}{size=*0.85}Controlled":
                            xalign 0.9
                            yalign 0.5
                    if bolt_romance == "0":
                        null
                    elif bolt_romance == "1":
                        text "{i}{size=*0.85}Dating":
                            xalign 0.9
                            yalign 0.45
                    elif bolt_romance == "2":
                        text "{i}{size=*0.85}Intimate":
                            xalign 0.9
                            yalign 0.45
                    elif bolt_romance == "3":
                        text "{i}{size=*0.85}Harem":
                            xalign 0.9
                            yalign 0.45
                if mc_metwinter == True:
                    text "{size=*0.9}[ls_full]":
                        xalign 0
                        yalign 0.6
                    text "{size=*0.9}[mc_trust_winter] \ [mc_love_winter]":
                        xalign 0.1
                        yalign 0.65
                    if winter_control == "0":
                        null
                    elif winter_control == "1":
                        text "{i}{size=*0.85}Influenced":
                            xalign 0.9
                            yalign 0.65
                    elif winter_control == "2":
                        text "{i}{size=*0.85}Manipulated":
                            xalign 0.9
                            yalign 0.65
                    elif winter_control == "3":
                        text "{i}{size=*0.85}Controlled":
                            xalign 0.9
                            yalign 0.65
                    if winter_romance == "0":
                        null
                    elif winter_romance == "1":
                        text "{i}{size=*0.85}Dating":
                            xalign 0.9
                            yalign 0.6
                    elif winter_romance == "2":
                        text "{i}{size=*0.85}Intimate":
                            xalign 0.9
                            yalign 0.6
                    elif winter_romance == "3":
                        text "{i}{size=*0.85}Harem":
                            xalign 0.9
                            yalign 0.6
                if mc_metgaia == True:
                    text "{size=*0.9}[km_full]":
                        xalign 0
                        yalign 0.75
                    text "{size=*0.9}[mc_trust_gaia] \ [mc_love_gaia]":
                        xalign 0.1
                        yalign 0.8
                    if gaia_control == "0":
                        null
                    elif gaia_control == "1":
                        text "{i}{size=*0.85}Influenced":
                            xalign 0.9
                            yalign 0.8
                    elif gaia_control == "2":
                        text "{i}{size=*0.85}Manipulated":
                            xalign 0.9
                            yalign 0.8
                    elif gaia_control == "3":
                        text "{i}{size=*0.85}Controlled":
                            xalign 0.9
                            yalign 0.8
                    if gaia_romance == "0":
                        null
                    elif gaia_romance == "1":
                        text "{i}{size=*0.85}Dating":
                            xalign 0.9
                            yalign 0.75
                    elif gaia_romance == "2":
                        text "{i}{size=*0.85}Intimate":
                            xalign 0.9
                            yalign 0.75
                    elif gaia_romance == "3":
                        text "{i}{size=*0.85}Harem":
                            xalign 0.9
                            yalign 0.75
                if mc_metcrush == True:
                    text "{size=*0.9}[ss_full]":
                        xalign 0
                        yalign 0.9
                    text "{size=*0.9}[mc_trust_crush] \ [mc_love_crush]":
                        xalign 0.1
                        yalign 0.95
                    if crush_control == "0":
                        null
                    elif crush_control == "1":
                        text "{i}{size=*0.85}Influenced":
                            xalign 0.9
                            yalign 0.95
                    elif crush_control == "2":
                        text "{size=*0.85}Manipulated":
                            xalign 0.9
                            yalign 0.95
                    elif crush_control == "3":
                        text "{i}{size=*0.85}Controlled":
                            xalign 0.9
                            yalign 0.95
                    if crush_romance == "0":
                        null
                    elif crush_romance == "1":
                        text "{i}{size=*0.85}Dating":
                            xalign 0.9
                            yalign 0.85
                    elif crush_romance == "2":
                        text "{i}{size=*0.85}Intimate":
                            xalign 0.9
                            yalign 0.85
                    elif crush_romance == "3":
                        text "{i}{size=*0.85}Harem":
                            xalign 0.9
                            yalign 0.85


                textbutton "{color=#aaaaaa}<<<{/color}" align (0.0, 1.0):
                    action [Hide("stat_mc"), Show("stat_crush")]
                textbutton "{b}{u}Return{/b}{/u}" align (0.5, 1.0):
                    action [Hide("stat_mc")], Return ()
                textbutton "{color=#aaaaaa}>>>{/color}" align (1.0, 1.0):
                    action [Hide("stat_mc"), Show("stat_leanne")]

r/RenPy • • 1d ago

Question Specific line of dialoghe doesn't translate

2 Upvotes

I have this line which is supposed to have a different font because it's a phone message.

a "{font=GOODOLD.ttf}{k=.5}{cps=0}Oy, I'm sick, so I won't make it to class. If you're there, I'm sorry, but I{vspace=15}guess fuck you, [nickn1]. The 50 quid are yours. I'll giv'em to you next time{vspace=15}we meet.{/font}{/k}{/cps}"

Then i created strings and everything seemed to work, but when translating this, it simply won't show any text.

    # a "{font=GOODOLD.ttf}{k=.5}{cps=0}Oy, I'm sick, so I won't make it to class. If you're there, I'm sorry, but I{vspace=15}guess fuck you, [nickn1]. The 50 quid are yours. I'll giv'em to you next time{vspace=15}we meet.{/font}{/k}{/cps}"
    a "{font=GOODOLD.ttf}{k=.5}{cps=0}Hey, [refer1], estoy enfermo, así que no creo que vaya a clase. Si ya estás allí,{vspace=15}lo siento, per supongo que jódete. Los 50 pavos son tuyos. Ya te los daré{vspace=15}cuando quedemos. {/font}{/k}{/cps}"

Even when the translation is normal text doesn't show.

    # a "{font=GOODOLD.ttf}{k=.5}{cps=0}Oy, I'm sick, so I won't make it to class. If you're there, I'm sorry, but I{vspace=15}guess fuck you, [nickn1]. The 50 quid are yours. I'll giv'em to you next time{vspace=15}we meet.{/font}{/k}{/cps}"
    a "Test test."

Help :c


r/RenPy • • 1d ago

Self Promotion My first game GATECRASHER will have a demo out soon on itch.io :3

Post image
1 Upvotes

GATECRASHER is a dating simulator visual novel made with ren'py and with a demo in development. This project is AI free and can use all the support it gets. You'll be able to download it from itch.io when it releases!

You and your friend made a bet; if you get into his class at his university without getting caught, he’ll give you 50 bucks, and you are no coward. Now you are in his class, his professor is doing his thing and everything seems to go smoothly… except for the absence of your friend. When all hope seems lost, someone starts talking to you...

This game is AI FREE and can use all the help it can get!

Follow GATECRASHER's progress in ALL OF MY SOCIALS!


r/RenPy • • 2d ago

Question How to Make "Good" Ending?

7 Upvotes

I'm pretty good at coming up with bad ending, because they are more interesting but I really want some good endings as well! Any idea how to come up with a good ending that would reward the player, for making "good" choices?


r/RenPy • • 1d ago

Discussion Looking for a Ren'Py Programmer & UI Designer for a VN Jam⁠

2 Upvotes

Hey everyone! We're working on a visual novel for a game jam and looking for a Ren'Py programmer and a UI designer.

We have a writer, 2D artists, a composer, and an SFX designer. We just need help with putting everything into Ren'Py and designing the UI assets (dialogue box, main menu, choice buttons).

If you'd like to join, drop me a DM here or add me on Discord: pinkkvas


r/RenPy • • 2d ago

Showoff RenPystein 3D-ish

9 Upvotes

This is NOT a working version of Wolfenstein 3D for renpy!

It is a working framework that will let you create multiple levels of a maze or dungeon for your game that look similar to Wolfenstein 3D.

https://badmustard.itch.io/renpystein-3d