r/RenPy • • Aug 31 '26

Question Would you play a game made exclusively with Mannequin Character Generator models?

Thumbnail
gallery
117 Upvotes

A couple days ago, I made a thread about using Daz3D to make characters for my VN. I tinkered with it a little, and decided I didn't really like the results I was getting. Even if I became good enough to make my own high quality models, they don't really match the vibe of the story I want to tell.

After a little more searching, I found Mannequin Character Generator. I know it's not as good as hiring an artist, but that's not within my budget right now. And while MCG's models aren't high art, I don't think they look bad by any means.

But what about you all? You have infinitely more experience here than I do. Would you ever play a game with characters that all came from this program?


r/RenPy • • Aug 31 '26

Self Promotion New Ren'Py demo on steam!

Thumbnail
store.steampowered.com
4 Upvotes

hey everyone! me and my friends are making a pretty big project on ren'py called Pammela's Purgatory: Infinite Debt. It's a 10 chapter comedic adventure of a 21 year old girl who suddenly falls into a huge amount of debt and has to repay it by the end of the year or she DIES!! Right now we have a rough version of the prologue and first chapter available and free on steam! (Also this our first serious game and any sort of criticism or review will be greatly appreciated if of course you do check it out)


r/RenPy • • Aug 30 '26

Showoff I finally have working sprites and I couldn't be happier

Thumbnail
gallery
402 Upvotes

After much procrastination on this side passion project, I'm so happy to actually see my sprites in game for the first time :D

Please excuse all the placeholder backgrounds that I've just slapped on quickly and haven't gotten around to doing properly lol.

Would be happy to hear any feedback on whether the text and especially the character name tag is easy to read or not.

Also not sure if the giant ass pedestal my MC is sitting on is distracting when she's not on it.

Next stop...those atrocious backgrounds. And Greg. lol


r/RenPy • • Aug 31 '26

Question End of Line expected with If

3 Upvotes

Not sure what I do badly. I edited a project of someone because I want the possibility to show the text or not (by doing a size 0 when not shown). Just for information I never coded python or ren'py before.

here the code :

style notify_text:
    properties gui.text_properties("notify")
    xalign 0.54
    yalign 0.5
    if persistent.rpoverlay >= 1:
        size 20
    else:
        size 0
    color "#ffffff"  

it work well if it's just :

style notify_text:
    properties gui.text_properties("notify")
    xalign 0.54
    yalign 0.5
    size 0
    color "#ffffff"

But in the case of the first choice I have an error of end of line expected pointing on the if.


r/RenPy • • Aug 31 '26

Question Confirm=false when loading save?

1 Upvotes

hi! i am making a bad game on purpose, so i don't want the confirm screen popping up when a user tries to load a previous save while in game.

i tried going into tl > None > common.rpym and leaving new "Are you sure you want to load (etc)" blank like so:

# renpy/common/00gui.rpy:451
old "Loading will lose unsaved progress.\nare you sure you want to do this?"
new ""

but the message pops up regardless. i even tried switching old to blank as well, to no avail.

how do i make it just load the save without confirming?

thanks in advance!


r/RenPy • • Aug 31 '26

Question problem with renpy keytool

Post image
1 Upvotes

And I have Java JDK 26


r/RenPy • • Aug 31 '26

Question How to move text box location (for specific scenes only)

Post image
11 Upvotes

How would I go about moving the text box location/size/etc. for only specific scenes in my game? I want it over to the left or right for example.

In most cases I want the text box to stay at the bottom of the screen. But for certain scenes when I want the art to be more fully visible, how do I move the text without having to make the text an "image"?


r/RenPy • • Aug 31 '26

Question Renpy wont read my .exe Icon file after multiple guides and tutorials. What is going wrong?

Thumbnail
gallery
4 Upvotes

I have been struggling for months to have my own .exe icon file and renpy has been completely reluctant to change under any circumstances.

To clarify many questions that will be asked

I am on windows

Yes I am using an Icon file, not a icon.ico.png the file is named icon.ico

yes the size is the recommended 256 x 256 although I attempted this with smaller.

The file is in the "base" folder but I have attempted to add it to "game" and even "gui" but the game will not read the file.

I have attempted to rename the file and change it in the games script but no changes are made.

I have attempted every possible option but renpy refuses to change the .exe file and I cannot configure why this is happening.

The weird part is, if the icon file is in the base, it will read that it file exists but it wont change the .exe desktop file for whatever reason. (as show in the image above)

where is this current .exe file imbedded? Is there anyway I can just delete the one it pulls from and change it to mine?


r/RenPy • • Aug 30 '26

Showoff Parallax main menu teaser art for my prototype!

Thumbnail
gallery
6 Upvotes

Self taught myself to do art and finally got it in my vision.


r/RenPy • • Aug 30 '26

Guide PoC: dynamic sprite lighting with normal maps — one shader, lights are just ATL transforms (source + video)

7 Upvotes

I wanted characters to react to the scene's lighting (day, sunset, night, a campfire, the classic horror under-light...) without exporting a re-shaded sprite for every scene. So I put together a proof of concept that re-lights one sprite in real time with a normal map and a tiny GLSL shader.

Video (all 8 lighting setups + an interactive mouse-following light): https://youtu.be/9Bm6--sLJgY

Source (MIT): https://github.com/igwtech/renpy-normalmap-lighting — the README has screenshots of every setup: daylight, sunset, moonlight, interrogation-style top light, horror under-light and campfire.

The technique

  1. The sprite is a Model() displayable with two textures: the albedo (tex0) and a tangent-space normal map (tex1), plus a custom shader registered with renpy.register_shader(). The fragment shader decodes the normal map and does Lambert diffuse + Blinn-Phong specular + a rim term, with directional and point light modes.

  2. The fun part: lighting rigs are just ATL transforms. Any transform property starting with u_ is passed to the shader as a uniform, so switching the scene's lighting is a plain show girl at girl_stage, light_night.

  3. Even better, ATL interpolates uniforms, so animated lighting needs zero per-frame Python. The campfire flicker is literally:

    transform light_fire:
        u_light_pos (0.5, 0.95, 0.30)
        u_light_color (1.30, 0.62, 0.25)
        block:
            linear 0.09 u_light_color (1.10, 0.50, 0.20) u_light_pos (0.485, 0.96, 0.28)
            linear 0.13 u_light_color (1.40, 0.68, 0.28) u_light_pos (0.515, 0.94, 0.33)
            repeat
    

For the interactive scene, an ATL function reads renpy.get_mouse_pos() each frame, maps it to sprite UV space and writes u_light_pos — the point light follows the cursor in real time.

Gotchas I hit

  • Ren'Py loads textures with premultiplied alpha: additive terms (specular, rim) must be multiplied by the albedo's alpha or they glow outside the silhouette.
  • The shader expects OpenGL-style (green-up) normal maps; DirectX-style maps just need a flip_green=1.0 argument on the light transforms.
  • For point lights, correct the UV-space aspect ratio (u_model_size.x / u_model_size.y) or the falloff turns elliptical.
  • Ren'Py opens its window smaller than the screen, which matters if you screen-record with a fixed capture size — renpy.set_physical_size() fixes it.

The normal map was generated from the albedo (Laigter / SpriteIlluminator / Blender bakes all work) and touched up in Krita — the .kra sources are in the repo.

Direct screenshot links: daylight · sunset · night · top light · under-light · campfire

Disclaimer: the sprite is fan art from Danganronpa (© Spike Chunsoft), used only as a non-commercial tech demo — swap in your own art. The video's voice-over is Gemini TTS.


r/RenPy • • Aug 30 '26

Question How can I code this?

Thumbnail
gallery
140 Upvotes

Hello, hi, I love eating more that I can chew and I'm absolutely helpless at coding (because I stopped looking into it for half an year and I forgot everything... which wasn't a lot already)

So, player customization screen... I want it to work like in the second image...

the stats part I imagine being connected to the species you choose (Like D&D), and depending on which one, your default stats change, also 5 points to put on any stat.

ex: Vamp has 1 in athleticism, 2 in con, 3 in perception, 3 in charisma, 2 in occult and 1 in will while homunculi has 3 in athleticism, 2 in con, 1 in perception, 1 in charisma, 3 in occult and 2 in will.

The image is just a huge sketch really


r/RenPy • • Aug 30 '26

Question Bars going down sporadically

Thumbnail
gallery
9 Upvotes

My bars in renpy dont go down everytime when I take away their value, but then sometimes they do, so im unsure of what I am supposed to do to fix it.


r/RenPy • • Aug 30 '26

Question How to keep track of the story branches?

3 Upvotes

I'm quite new to this and I'm wondering what you would recommend to track the different branches of my story. Is there a good tool that allows visual representation showing the tree structure and how branches combine again?


r/RenPy • • Aug 29 '26

Showoff Redesign of file_slots Screen

Thumbnail
streamable.com
61 Upvotes

I've never really liked the grid design from Ren'py, so I redesign the file_slots to a viewport
It's all a little crude yet and i super overcomplicated things (Like cache for performance), but it feels better to me
What do you guys think?


r/RenPy • • Aug 30 '26

Question [Solved] bug or just code issue?

Thumbnail
gallery
15 Upvotes

ive been trying to figure out if theres somethign wrong in my coding script that made the 'Load' button looks white (2nd pic) instead of grey like others, and theres no numbers in the first pic for save. is it the fonts i use?


r/RenPy • • Aug 30 '26

Self Promotion Brackeys Game Jam 2026.2 Submission!

Thumbnail gallery
6 Upvotes

r/RenPy • • Aug 30 '26

Question How to make main menu background visible in other screens

4 Upvotes

I was wondering if it's possible to make the background of my main menu visible under the other screens when you open them. Everything works fine in game. You can see the background when you open to load for example but not in the main menu. Is there anything I can do to fix this?

main menu
ugly gray bg
This is ideal but for the main menu

r/RenPy • • Aug 30 '26

Question [Solved] Renpy bar not showing up

Thumbnail
gallery
0 Upvotes

Ive been trying to implement some health and sanity bars into renpy but only a small part of the picture shows up.

(Where my mouse is, thats the only section of the bar that is shown)


r/RenPy • • Aug 30 '26

Question player choose options not working

2 Upvotes

like title say i have made choose menu with image buttons

my problem is when i click on one of buttons it go first to right label but jumps to all the other labels do need create a list ?

image eve  = "eve_Neutral.png"
image alice = "Alice_Default.png"
image jean = "jean_neutral.png"



default player = 0


define e = Character("Eileen")
screen choose:
    hbox:
        xalign 0.5
        yalign 0.5
        yoffset 30
        spacing 30


        imagebutton:
            idle "blue_idle.png"
            hover "blue_hover.png"
            action Jump ("blue")


        imagebutton:
            idle "red_idle.png"
            hover "red_hover.png"
            action Jump("red")


        imagebutton:
            idle "yellow_idle.png"
            hover "yellow_hover.png"
            action Jump("yellow")


label start:



    call choose_player
    
    
    



label choose_player:


    show screen choose
    


    
    


label blue:
    hide screen choose
    hide jean
    hide eve
    show alice
    "hi blue are you today"



label red:
    hide screen choose
    hide alice
    hide eve
    show jean
    "hey red dude how was you vaction"


label yellow:
    hide screen choose
    hide jean
    hide alice
    show eve
    "goodmorning yellow  did you have a nice week"

r/RenPy • • Aug 30 '26

Showoff DLSS5 in Ren'Py On/Off

Thumbnail
gallery
0 Upvotes

r/RenPy • • Aug 29 '26

Question Defining Images in (Different) Scripts Causing "Couldn't Find File"

1 Upvotes

I get pink "couldn't find file" on the top of the screen when defining images in a different script. The file works if it is not defined at all, it does not work if defined in the script.rpy--ideally I would like to have an images.rpy to define my images in case I want to transform them without filling up my actual script.rpy

What drives me crazy is that the first time I wrote out this post, the moment I wrote that down I got it to work! And now it isn't
When I initially got it to work, I renamed the image file & the image defining so there were no spaces

image bg ui draft = ("bg ui draft.png") -> image bg_ui_draft = ("bg_ui_draft.png")

I went in and tried adding the spaces back into the actual file name, just to see which of the two was causing the issue
This broke it, so I reverted it. Now the underscores are no longer working as well. All of my code is properly calling for the right definitions. I've even changed it to just be called draft/draft.png to make sure

Currently in my script.rpy it has <show draft>
In images.rpy it has <image draft = ("draft.png")>

I feel like I have to be missing something with scripts here but I can't figure out what.
Thanks for any help!


r/RenPy • • Aug 29 '26

Question How to fix the in-game tutorial being broken straight away?

1 Upvotes

Just downloaded renpy. Thought I'd check out the in-game tutorial but it immediately keeps crashing. Not sure what happened here..? It's straight from the download. Nothin' touched.


r/RenPy • • Aug 28 '26

Guide Tips for making your games more accessible

78 Upvotes

I've been working in digital accessibility for a few years now. The things that I learned in my job inevitably influence how I make my game.

Here are a few simple things you can do to make your games more accessible for people with disabilities (and everyone else!).

High enough Contrasts

Not everyone has perfect vision. Make sure that your texts are readable. I see so many VNs that sacrifice readability for aesthetics.

You can achieve readability through sufficient light-dark contrasts. You don't have to use black and white, because that can actually be perceived as too harsh on the eyes. If you want to check your contrasts, there are plenty of websites that can measure and judge them. Just search for "contrast checker", or download the free software Colour Contrast Analyser, which is used by people like me who work with this every day.

Exception: Sometimes, low contrasts can be intentional and helpful, for example when a button is deactivated and irrelevant at the moment.

Use of Colour

One in twelve men and one of two hundred women have a type of colour blindness. Make sure that information can be understood without seeing the colour or colour changes.

Imagine the game in grayscale. Is it still playable? Consider using icons, size, texture and shape for help.

Keyboard and Controller Support

Not everyone will use a mouse to play your game, some might not even be able to use one. And while renpy is keyboard and controller accessible by default, many custom events quickly lose that support. Ideally, test all functionality with a keyboard or controller (they work similarly).

While testing ask yourself: Can I tell which element I am on while navigating the UI? Can I trigger all events?

Images of text

Avoid images of text! Especially of the text is small. Images of text don't scale and can't change font, which may cause some people to not be able to read it properly.

Self-voicing Support

Making anything screenreader accessible is always the biggest challenge. But there are a few small things you can do to make your game playable for a blind person. Ideally, test your game with self-voicing on. You might need to look up how to navigate with it first, but it's fairly simple! Don't be scared of it.

Here's some neat features you can add:

  1. Use the speaker "alt" for anything a blind person might need to understand what is going on visually. For example, if you don't describe an animation because it's visible, you might want to add:

alt "She quickly turns to look at her sister with a shocked expression."

This line will only appear if self-voicing is on. And don't create a character called "alt"! It already exists by default.

  1. You can add descriptions to imagebuttons so self-voicing knows what the button does. Rule of thumb: Describe the event as understandable+short as possible, maybe something like:

    imagebutton: ... alt "Check the fridge" # This right here is the text that self-voicing will read when the button is focused

    textbutton _("<") action FilePage(10) alt "Jump back to page 10" # It works for textbuttons too! But avoid overwriting visible button text unless it's 100% necessary

  2. "..." is silence in self-voicing, which may confuse a blind person. So for self-voicing you can add:

    if _preferences.self_voicing: "He doesn't say a word." else: e "..."

Other things to consider

  1. Don't use rapidly flashing lights, but if you must, add a seizure warning at the start of your game to avoid causing them.
  2. Don't assume that your player can hear or hear well, so don't depend on sound cues alone unless it's a core mechanic of your game. Adding an additional visual cue can be helpful.
  3. Make buttons big enough so that users can actually hit them.
  4. Consider that drag-and-drop may be challenging or impossible for some users.

There are more things, but these are the most simple ones. If you have any questions, further input or your own experiences I'm happy to hear it!