Making Your Visual Novel Accessible

Tags: , , , , ,

There's a lot of general guides to accessibility in video games but they can be a bit overwhelming, and I haven't seen any focussing on the stuff that comes up with visual novels, and other games that primarily revolve around reading text, looking at images, and clicking buttons.

I'm not an accessibility expert, just a well meaning developer, and this post is kinda slapdash. Don't take anything I say as gospel, and if I've missed/misrepresented anything, please let me know!

General philosophy

No game can be accessible to literally everyone, the goal is to make the game as enjoyable and playable as possible for as many people as possible. And not just disabled people, accessibility features make games more fun for everyone. All options are accessibility options for someone, and there's no neat line between disabled players and everyone else. Making your game accessible is really just a specific facet of generally making your game good.

The first priority is that it's playable at all. The second priority is that players get the full experience.

And I suppose the zeroeth priority is that if your game is intractably inaccessible in some way, then just make sure players can tell. That way they can move on to a game they can play, instead of paying/downloading and being disappointed.

For example: blind players can only understand information provided in images if an alternate description is added.

If your 'start' button uses an image with no description, blind players literally cannot start your game. If your backgrounds don't have descriptions, they can play your game but will miss out on the environmental storytelling.

So, if possible, you should have image descriptions for all visual elements. But if you just focus on vital things like user interface elements then that's better than nothing. And if you are unable or unwilling to make your game playable for visually impaired players, make that clear on the game page.

General Accessibility Guides and Tools:

Basics

These are things you should always try to include in your visual novel.

Readability

Playing a visual novel is mostly reading text, so you should make that as easy for the player as possible. Even people with perfect vision will get annoyed if they have to read lots of hard to read text.

By default, you should use relatively large text in a simple font against a contrasting colour. This applies to the main text as well as the user interface, and any important in-game text like letters.

You can test if something is colourblind friendly by looking at it in black and white and making sure everything is still readable.

If you want, you can offer different fonts, text sizes, text box opacity, and colour options, but this requires a little extra work.

Audibility

I don't use a lot of sound in my games so haven't looked into this very hard myself. But if you have a combination of music, sound effects, dialogue etc, it's good to make sure anything containing information is clear, and to let the player change the volumes or turn the sound off separately in case they have issues processing too much sound at once, or find certain sounds difficult to deal with, etc.

Described images and music

Beyond the basic text of the game, visual novels by definition have a visual element, and often also include sounds and music.

It's vital to add descriptions to those parts that are core features of the game, such as user interface elements and the keys to puzzles etc. But it also adds a lot to the player's experience to generally know what things look like and how they sound.

Non-standard visual novel elements

I'm not going to go into all the many different sorts of non-standard mini-games and mechanics that show up in visual novels. But in general, if your game requires any skill beyond reading text and clicking buttons at your own pace, some players who are fine with typical VNs may find your game difficult or impossible.

One of the most common issues is with timed sections or actions which require fast reaction speeds, even those that seem generous/easy to able bodied people.

The easiest way around this is to make these parts skippable/avoidable. Have an option in the menu to remove time limits on making choices, for example, or have a "skip minigame" button. Otherwise, check out Game Accessibility Guidelines for general suggestions on making various game mechanics accessible.

And once again, if you can't make it accessible, at least let players know what they're getting into.

This all helps not only disabled players, but also those who simply find such mechanics irritating, which may be more players than you think.

Ren'py Accessibility Features and Tools

I make my games in the visual novel engine Ren'py. It has a lot of accessibility features included as standard, like self voicing and autoplay. As far as I can tell it's harder, but not impossible, to include these features in games made in Unity etc, but it's not something I'm personally familiar with. I wrote this all based on Ren'py 7.4.10, later versions may be different.

Although Renpy's accessibility features are included automatically, it's worth making sure they function well with your game in particular.

Key Remapping: Not automatically included, and I have yet to figure out how to make it work :(

Autoplay and skip: Automatically included. Just don't remove them from the menu!!

Keyboard navigation: Automatically included, but can be broken by minigames etc if you're not careful.

Sound options: Sounds are divided into music, sound effects, and voice, with separate channels and volume controls. So make sure to declare your sounds as the right type.

Self Voicing: The player's computer reads out the text of the game. Enabled by pressing 'v'. This works well with normal buttons and dialogue etc but can go weird with things like screens and tables of data. Has the option to add extra descriptions that only show up when self voicing is enabled, which is vitally important for any text/information shown as images.

Accessibility menu: opened by pressing 'a'. This menu is functional but ugly, so a lot of devs prefer to create their own prettier versions of these options in the preferences menu.

Ren'py Accessibility Tools:

Accessibility Tools And Features In Other Engines

Note that I haven't tested these myself. More suggestions appreciated!

Little Tips and Tricks