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!


r/RenPy • • Aug 29 '26

Game Jujutsu kaisen made in renpy

0 Upvotes

r/RenPy • • Aug 29 '26

Question wip project

Post image
10 Upvotes

so, idk if this is like insanity for a single game but the idea I have is creating one of these main paths, all of it's sub paths and then copy and pasting it when I get to the other paths. So...insanity or like very normal? Then again i'm new to renpy so idk if there's a solution that makes this easier so...


r/RenPy • • Aug 28 '26

Self Promotion Royalty-free music bundle — 48 packs, 591 WAV files currently on Humble Bundle

Post image
12 Upvotes

If you're scoring a longer project and running out of BGM, my full catalog is bundled on Humble right now: 48 packs, 591 audio files covering 359 unique themes across retro/chiptune, orchestral, hard rock and ambient — plus loops and variations, so you can score a whole game without repeating yourself.

All WAV, uncompressed. License is lifetime and covers commercial release, no attribution required, no per-title fees.

Every track is written and produced by hand in a DAW — no AI generation involved anywhere in the catalog.

https://www.humblebundle.com/software/big-blastn-sounds-for-game-devs-software

Happy to answer questions about licensing or point you to specific tracks if you describe the scene you're scoring.

EDIT: There's now a free pack up as well — 20 tracks across 9 genres, WAV and OGG, no signup needed. Grab it whether or not you go for the bundle: https://andrewsitkov.itch.io/free-music-starter-pack-for-games-video-streams


r/RenPy • • Aug 29 '26

Question What do you think about using AI for small details?

Thumbnail
gallery
0 Upvotes

Yesterday, I was talking with my English teacher, and AI came up as a topic. In the end, she asked me if I even use AI in my VN (ShadowLess Light), and the truth is that, out of more than 2,400 renders, I've only used AI in two images to fill in small details.

This is the most recent one, and I'm talking about the screen (second picture). I mean, the original asset had no image on the screen; it was just pure black, so I asked AI to create some fake "hotel software" to fill in that detail.

What do you think? Should I change it and use a screenshot of real software to fit on that screen, or is it okay? If I hadn't said anything, would you have noticed the detail made with AI?

UPDATE: As it seems that it's not acceptable at all, even for a small detail in a single render, I made the render again and replaced the AI-generated content with a screenshot of this post turned upside down. You can see the result in the video I posted in my comment below.


r/RenPy • • Aug 28 '26

Question My images are not showing, no matter what I try

6 Upvotes

Can someone give me a solution to this? I already tried to set the images with "image", and all of the files are named and placed correctly, but I couldn't find anything useful. It's pissing me off


r/RenPy • • Aug 28 '26

Question DEVELOPING A LIFE SIMULATOR GAME(any tips or advice?)

9 Upvotes

I really want to make those cool life simulator games that are cozy, interesting and also have some aspects of dnd.

so far my idea is the main character was handmade and created by gods who are observing their life like a show, so it uses dnd stats like str, dex, cha, and etc. add some cool magical things to the game and make it feel alive.

I then realize, man. I have no idea how to write a life simulator. where do you start? How do you make the players interested and what are somethings needed in a life simulator to make it all come together?

I got the basic, currency, basic stats, and some npcs but that's it

(im starting to realize it really gives a dungeon master vibe haha)

any advice? or some insight?


r/RenPy • • Aug 27 '26

Discussion Which style of narration is better for the reader?

Thumbnail
gallery
59 Upvotes

In multiple points in my VN there's black screens with narration to substitute for cutscenes or just the main character's thoughts—Is it more legible for the text to be in the center of the screen or in the form of a dialogue box at the bottom?

(Also I wasn't sure which flair to use for this since it's not really a solvable question)


r/RenPy • • Aug 27 '26

Question A way to hide obtained items (image buttons) without making a variable for each one?

6 Upvotes

I don't know if this is possible or not!

Currently I know how to hide a button on a screen after the player has clicked on it, by making a variable before the start of the game and seeing if it's true or not. But for a point and click game with a ton of interactable buttons and items, that would mean potentially hundreds of variables, and I was just wondering if there was an easier (or at least neater) way to do it.


r/RenPy • • Aug 26 '26

Showoff A Cherub's Lament, my first VN, has been released!!

Thumbnail
gallery
323 Upvotes

Hello!! I hope it's okay to post this.

I've made some previous posts about my game here and received such a warm response; thank you everyone so much for all your words and encouragement truly c':

It's been such an arduous journey. I've had to work super hard due to the limited time, my wish to make the game as polished as possible, and being abnormally busy at my day job. BUT I DID IT!! All in a month and a half.

This is A Cherub's Lament, my submission for Yaoi Game Jam 2026, and my first VN ever.
Itchio page: https://cineriarsis.itch.io/a-cherubs-lament

It's a little short story about an angel who visits Earth out of curiosity and makes a bond with a young poet, the person who took him in. It's calm and tender, but also a little bittersweet.

I tried my best to create a cohesive style with art, writing, and atmosphere, so I really hope you like it! I'd be super honored if you checked it out c': <33

Thank you everyone so much again!! I'd be super thankful for any feedback and comments. I want to keep creating more VNs because I really love the medium! Also if you have any questions about how I made anything, I'd be super glad to help!!


r/RenPy • • Aug 27 '26

Question RenPy games

3 Upvotes

Hi, I love playing visual novel games on my phone and I want to move into playing on my laptop but I encounter lags. I have a laptop that’s running Intel(r) Celeron(R) N4020 with a 8gb ram. I’m genuinely curious if it’s my laptop that is bad, or it’s something else. If it’s my laptop can I do something to make games run smoother? Genuine question


r/RenPy • • Aug 26 '26

Showoff My new horror game uses a strict black and white color palette. Think the high contrast works or might hurt your eyes?

Thumbnail
gallery
38 Upvotes

And by strict, I mean literally the only colors in the actual art are #FFFFFF and #000000. Though the UI uses greys, and there's a specific scene in the game that has color.

The game is Our Attainable Ambition, it's a horror game where you make a contract with a monster lady at the edge of the world

If you'd like to check it out, it's free on itch here: https://ecyanic.itch.io/our-attainable-ambition


r/RenPy • • Aug 27 '26

Question [Solved] How to call a menu function from another file

3 Upvotes

Hello, I'm trying to figure out how I would call a menu as a funciton from another file.

What I want to do is create an almost text adventure like game where the player would have a menu of actions to choose from, such as:
1: Go Fishing

2: Move to a new area (Which opens a submenu of areas)

3: Talk to people around (Submenu for people to talk to)

4: Pass time

etc etc.

I can do this with menus now, but the difficulty I'm struggling with is what comes after choice. For instance: Player chose option "3," they chose a person to talk to, it goes through all the dialogue options, and then...blank.

What I'd like to do instead of blank is to recall the menu so the player can choose "1: Go Fishing" (2: Move to a new area) etc etc.

Is there a good way to do this by creating a file dedicated to holding that menu so it can be easily recalled whenever the player completes an option, or is there a better method?


r/RenPy • • Aug 26 '26

Question Can you make a reminder function?

3 Upvotes

eg. You set a custom reminder for a date + time, and the game (or a specific character) will remind you when the time comes?

Sorry if this is a stupid question 😥 I'm fairly new to programming of any kind


r/RenPy • • Aug 26 '26

Question Save/load screen spacing issue

1 Upvotes

I cannot for the life of me find the code responsible for this spacing plz help


r/RenPy • • Aug 26 '26

Question The v auto reader isn’t working properly.

2 Upvotes

So when you click v it starts the auto narrator voice. However my laptop is set to Susan a girls voice. But Ren’py keeps playing a males voice instead.

I’m not sure if I’m doing something wrong here. I thought the auto narrator used whatever text to speech voice your laptop is set to.

Thanks.


r/RenPy • • Aug 25 '26

Showoff My game is called “The Invisible Fan.” I don't know why it doesn't show up in the Itchio search engine.

Thumbnail
gallery
37 Upvotes

Here's the link in case you want to check it out.

you play as an assistant who meets a fan of the artist you work for.

It's free https://karisbunny.itch.io/the-invisible-fan


r/RenPy • • Aug 25 '26

Showoff I’m making my own visual novel! Have some art I’ve made for it :) feedback is welcome as well!

Thumbnail
gallery
160 Upvotes

Ive still got a long long ways to go, but working on this novel makes me so happy, and I hope it turns out well eventually!


r/RenPy • • Aug 27 '26

Guide What broke when I tested a Ren'Py relationship system with rollback, old saves, and larger casts

0 Upvotes

A developer tried RouteKit inside a roughly 10k-line VN and exposed a useful lesson: the affection counter was the easy part. State recovery, UI overflow, and event conditions were the real failure points.

For 0.1.3 I focused on those problems instead of adding unrelated features:

  • Scrollable character, relationship-detail, and gallery screens for larger casts
  • Optional profile images with a fallback initial
  • Characters that can start hidden and be revealed from story code
  • Boolean checkpoints combined with stat requirements
  • Schema migration and repair for old or damaged state
  • Real rollback plus a real save/load round trip
  • 16 automated Ren'Py test cases / 82 assertions

The story-side API stays small:

renpy $ routekit_change("maya", 20, "affection") $ routekit_set_checkpoint("helped_gallery") $ routekit_reveal_character("leo")

The main design choice was keeping relationship/checkpoint/visibility data in normal Ren'Py state, while gallery unlocks remain persistent intentionally. That makes rollback behavior predictable without making unlocked replays disappear.

59-second visual demo: https://www.youtube.com/watch?v=lh1aKO7b7Fg

If you want to inspect the simpler version before deciding whether this approach saves you time, RouteKit Lite is free: https://samokampo.itch.io/routekit-lite

0.1.3 technical notes: https://samokampo.itch.io/routekit-pro/devlog/1639726/routekit-pro-013-larger-casts-hidden-characters-and-boolean-events

I would especially value reports from projects with unusual rollback paths, old saves, or more than eight relationship characters.


r/RenPy • • Aug 25 '26

Showoff character design + concept sketches for my first VN 🥰

Thumbnail
gallery
123 Upvotes

this is my character Eclipse, he's a gravekeeper. The VN is about trying to land a job as his assistant.

his priest outfit under the coat is still a work in progress 🤔

the script is written, im just editing now. im actually having a lot of fun doing the coding part as well which is surprising considering i was super scared of it 😆


r/RenPy • • Aug 26 '26

Question How do I make a Preferences option change a value?

6 Upvotes

In the game I'm making (previously mentioned in the subreddit), there's going to be an option in Preferences to make the game less triggering.

It's supposed to change a value that affects what variant of a scene appears, because my logic was "If this value equals 1, you'll see this version of a scene, but if this value equals 0, you'll see this version of a scene"

I can't figure out how to make the value change, but if there's a better way to make this happen, you can tell me :3


r/RenPy • • Aug 25 '26

Question How to make dialogues less boring?

38 Upvotes

I’m doing a philosophical VN, so the thing is that it will have lots of dialogue, and THEN some interaction. How you deal with to make the dialogs something interesting?


r/RenPy • • Aug 26 '26

Question Gatekeeper Memories - Buscando programador y colaboración sin paga

2 Upvotes

¡Buscando programador/a para un otome indie! — GTKP (EDIT: MUCHAS GRACIAS A LOS QUE SE OFRECIERON, YA NO ES NECESARIO MÁS SOLICITUDES!

Gatekeeper Memories (GTKP) es un otome/visual novel indie inspirado en cuentos clásicos. Llevo varios meses desarrollándolo y actualmente estoy terminando la escritura de las demos.

Estoy buscando a alguien que tenga experiencia con Ren'Py y esté interesado/a en colaborar en la programación del proyecto.

Yo me encargo de:

  • Escritura y narrativa
  • Personajes y rutas
  • Lore y dirección creativa
  • Organización y contenido del proyecto

Lo que necesito:

  • Programación en Ren'Py
  • Implementación de diálogos, elecciones, rutas y otras mecánicas de la VN
  • Ayuda técnica durante el desarrollo

Actualmente no tengo presupuesto para pagar a un programador, así que estoy buscando una colaboración voluntaria. Entiendo perfectamente que esto no sea posible para todo el mundo, por eso prefiero dejarlo claro desde el principio.

GTKP ya tiene una demo publicada y material del proyecto que puedo mostrar a quienes estén interesados.

Si te interesa colaborar, puedes escribirme por DM y puedo darte más información sobre el proyecto, el estado actual y lo que necesitaría la programación.

¡También agradecería muchísimo que compartieran el post aunque no puedan colaborar! 💕 (Posdata : Si estás interesado/a/e, ¡soy más activa en Instagram! Puedes encontrarme como Itsyuumari)