Devlog #004: Accessibility
As I recently started to implement accessibility features and settings for Soulblaze, I wanted to recap a little on my experience with making my games more inclusive. I'm by far not an expert on the topic but I've learned a thing or two that might be worth sharing. Mind you, that this is not a researched article and structure? Ha! I have ADHD, I will write whatever comes to my mind and not in an organized manner. Anything that looks structured is purely by accident.
Accessi-what?
A lot of devs are ignorant about accessibility. There, I said it.
I don't mean it in a mean way. It's more of a "we can do better" way. I was one of them, too! When I worked on my first games, I didn't think about the subject at all. I wasn't even aware of its existance. Ironically, I need some accessiblity settings myself but I didn't even comprehend that until I saw these settings in front of me (spoiler alert: cognitive overload).
It wasn't until one of our Kickstarter backers for Code 7 pointed out, that the game (a fully-voiced hacking adventure) was destined to be made accessible to visually impaired players and asked if we considered that. I had a little "mind blown" experience back then and I was baffled how obvious that was and embarassed I didn't even think about that. We implemented a VI-mode and each episode was playable for more people. We talked to a lot of players on audiogames for feedback and discussions how to improve the mode.
We later heard from a dyslexic player that it was nice that the commands allowed typos. In the game, you had to type commands into a command console and it had an auto-complete function. At some point, we realized that the commands would be interpreted correctly if the first letters where matching, as long as there was no other similar word. We thought about fixing it (as not accepting "opne" for "open") but then decided against it to make it easier. I hadn't thought of this being an accessibility feature for dyslexic players but it was.
For Signs from Mars, I worked together with deaf players to help our team make a game with and about American Sign Language in VR
Different Shapes
Accessibility comes in so many forms and features, big and small, and I would argue that almost every player benefits from one setting or another. For me, it's subtitles. I get vastly overwhelmed by too many audio-visuals happening simultaneously and having a fixed point to look for story and context is super helpful for me. Devs often think of the same few things, when the term comes up like visual impairment or color vision deficiency, maybe, but there's A LOT more to think about. The game accessibility guidlines note these categories:
- Motor(Control / mobility)
- Cognitive (Thought / memory / processing information)
- Vision
- Hearing
- Speech
For example, I need settings or features for cognitive accessibility. My mind often drifts away or I have extreme trouble processing longer texts. In Dragon Age: The Veilguard, the main character, Rook, often summarizes a letter I read if it was important for the plot. This is SO HELPFUL because I often think I read and processed something when I actually didn't and missed key information. Also, every missions ends with a short summary screen which, again, helps me a lot if I missed any information. I wasn't aware of needing these features until I saw them in this game.
It's hard to know everything that can be done or every need there is from player accross the world, that's why it's so important to keep talking to them and other devs and exchange experiences, talk about what makes a game difficult to play or what feature helped them. Accessibility is also not always about disabilities but can help different skill levels. The Last Case of Benedict Fox has puzzles and combat with platforming. For me, that's a great combination but for my wife, she would enjoy the story and the puzzles but would struggle with the required dexterity and reaction of combat and platforming. The game lets you adjust settings for either side, even to an extreme where you can set puzzles to auto-solve or make yourself immune to enemy damage. In Prince of Persia: The Lost Crown you can enable a feature that lets you skip platforming sections, great!
Some might think "but that's how it's meant to be played" but honestly, I dislike this sentiment. Yes, I consider games a platform of art and that the developers had certain visions and experiences in mind when making the game, but games are played differently by nature. Speedrunners will break your game to find the shortest way, explorers and story-fans will find creative ways to avoid your carefully designed combat to go climb that mountain, some will play an MMORPG completely by themselves for the story and skip any multiplayer content. Do they all enjoy your game? Yes! Do you really want to keep a player from playing and loving your game because they are not good at a certain mechanic but enjoy everything else?
But, Zein, where do we start? What do we do?
That depends on the game you're making. Making a game playable for blind players is easier for a text adventure than it is for a 3D multiplayer shooter. Check the above list or use these fun design cards (I love them!) and decide what makes sense. Some things will be easier to implement, some will be harder. Important: the sooner you start the easier it is! Slapping accessibility features and options on a game on the end will be a royal PITA. Some adjustmets are small but have to be made for a variety of assets. Checking this while making the asset is easier than having to go through hundreds of them at the end. For Soulbzlaze, I'm adding descriptions for the animons appearance. It's a few more lines of text when I setup a new animon but it's managable but when I think about having to do it at the end, with probably a hundred of those critters, that'd be... oof.
Also, nobody expects you to do everything. Of course, it'd be nice to have settings for every player need there is in the world but it's... a lot. Pick what makes sense and add what you can. Every little feature, the smallest toggle, can help a person enjoy your game more or at all.
Here's a few easy things, you can often implement easily if you consider them early enough:
- input remapping
- high contrast mode
- reduce motion (turn of screenshake)
- turn off flashing
- open dyslexic font option
- ui size / text size
- have information not be conveyed by color alone
- subtitles
- being able to find and re-read important information (especially if you use a lot of made-up terms)
- option to avoid having to hold a button
- difficulty settings (easier for some games than others)
Does any of these sound like you could make them happen pretty quickly? Awesome. Do it! For the others, think about what you could do about it. Many things don't even need settings if you design them correctly. For example, settings for color vision deficiency if none of the information is conveyed through color alone. If fire skills where red AND had a fire symbol and water blue AND had a drop symbol, you give information on two ways. Check out this excellent GDC talk on the matter.
What's next for Soulblaze
I currently have:
- toggle to disable button holding that lets you click on dice to pull them instead of click-hold to drag
- screen reader support for NVDA and Windows TTS
- Open Dyslexic font: It does break a lot of containers due to its size so I'll have to work around that. I could make a second theme for it and swap to it but that also means I'd have to adjust any general layout changes twice which sounds like a bad idea. I'll do research on this.
- UI scale slider
The game still relies too much on color information which I will change soon. I prepared color pickers for the player to pick their own ones for elements, rarities, and positive/negative effects but I also plan to add icons and textures to element information. Godot already comes with a color picker button which is super neat!
I'd love to have a font size slider, too but dynamic sizes in Godot seems like a beast on its own. Whenever I tried it, it broke a lot. I will see what I can do but until then, the UI scale slider adjust text size as well.
I will also work on a database where players can look up descriptions of battle tags and conditions.
Closing Words
I hope you found this article interesting or helpful. If any of this made you consider accessibility settings for your game, I have done my job. As said, think about it as early as you can, talk to players, talk to devs, test with a variety of people, and get feedback. We can all work on a more inclusive gaming space by considering people are and play differently.
Do you have any favorite accessibility settings or examples who do it well? I'd love to hear them in the comments!
Get Soulblaze
Soulblaze
a creature-collecting rogue-lite
Status | In development |
Author | Sword & Quill |
Genre | Strategy |
Tags | 2D, creature-collecting, Cute, Dice, Godot, Roguelike, Roguelite, Singleplayer, Tactical, Turn-based |
Languages | English |
Accessibility | Color-blind friendly, Blind friendly |
More posts
- Patch Notes [0.0.8.1]2 days ago
- Patch Notes [0.0.8]5 days ago
- Patch Notes [0.0.7]11 days ago
- Patch Notes [0.0.6]19 days ago
- Patch Notes [0.0.5]26 days ago
- Devlog #003: Responsiveness29 days ago
- Patch Notes [0.0.4]40 days ago
- Patch Notes [0.0.3]45 days ago
Leave a comment
Log in with itch.io to leave a comment.