Accessible interactive fiction

Hi,
I’m a person who is blind. I have no experience with this but I am very keen to develop and play interactive fiction but have found it surprisingly inaccessible. What systems are accessible so that I can write, publish and play interactive fiction?

It seems like to perfect platform to create games for people that are blind or vision impaired. I’m a little surprised it’s been quite hard to find any information about it.

Kind regards,
Jeff

12 Likes

Hi Jeff - welcome to the forums! I do know that there are a solid number of IF players and authors who are blind and otherwise visually impaired, and many authors generally do try to make their games accessible. From my understanding, typically there aren’t different programs or platform that folks use, though - the major interpreters and development platforms generally try to be accessible to folks using screen readers (this may be more true about parser games and slightly less true on the choice-based side of things, which might have more GUI type approaches? I’m personally less familiar there).

I believe I’ve heard @fos1 and @BlueAskew mention using screen readers or other accessibility tools for IF, so hopefully they’ll forgive me tagging them in - and forgive me getting the details wrong if I’m misremembering! And there are other folks with more first hand knowledge too. Hope you find something that works for you!

10 Likes

Thanks for the information and tagging others in too, in the stream. I’m just after something that as someone who is blind I can use to make a text based game, something that is simple and easy to use.

Thanks again,
Kind regards,
Jeff

6 Likes

Hi Jeff. Hope things are going well.

2 Likes

Welcome, Jeff!
I have some good news and some bad news. The good news is that playing and developing IF is absolutely something you will be able to do, if you stick with it. The bad news is that with some rare exceptions, a few interpreters and most development environments are not designed to work (well, if at all) with screen readers, so learning to use them requires learning a lot of workarounds, some of which are barely adequate and are subject to change. It can be a bit of a discouraging battle sometimes, to tell the truth, but it can be well worth it for the possibilities out there. I’ll start with playing, and then move on to development.

Playing

On the parser-based side, it’s positive. For users of the NVDA screen reader, there exists an addon that enables speech output in a dozen popular interpreters. The original developer no longer seems to be maintaining it, but I have a personal copy which I have kept updated, and which I can upload here. There is also Parchment, an online interpreter which works well with most popular Windows screenreaders. I have yet to try it on MacOS, but I see no reason why it shouldn’t work, given that it competently implements basic web accessibility standards. I highly recommend it if you want to jump right in. Many games available on IFDB have a button which allows you to play in your browser, and this is the interpreter they use.

I don’t usually play IF on my phone or on Linux, so I’m not quite aware what’s available in those spaces, but someone else might have more of a clue.

Choice-based games are a mixed bag, mostly because they run in your web browser, and are therefore subject to similar accessibility bugs as any other web page. I’ve played quite a few perfectly accessible choice-based games, and plenty more which are accessible enough. It’s well worth trying a game you like the sound of!

Developing

Most of my IF development knowledge is parser-based. There may be others here with more information on choice-based tools, but for this post, I’ll stick to what I know. I’m also writing this post with some time constraints, so I may miss a detail here or there.

In terms of learning curve, my opinion is that languages with command line compilers are the most accessible to use, so I’ll discuss that sort first. You can use your favorite text editor to write them, and a few simple commands to compile them. If you develop a workflow, you can even write scripts to compile your projects for you, no typing required.
Such languages include:

  • Dialog - which compiles for the Z-machine, and has a fully featured command line compiler and debugger
  • Inform 6 - which compiles mainly for the Z-machine, and has a documented command line interface.

Both are portable and completely accessible, the interfaces are entirely text-based. Both require a library. One is already included with Dialog, and one for Inform 6 is easily obtainable from links in the Readme found on the page above.

Next up, we have systems which are mainly interacted with through an IDE (integrated development environment), a piece of software which brings various development tools together into a single interface. It’s worth noting that these systems also usually have a command line interface, but they are often more complex, and documentation is sometimes lacking or harder to find, as it is assumed you will be using the IDE to compile and test.
These IDEs range from moderately inaccessible to practically unusable. Your level of success depends a lot on your degree of proficiency with your screen reader, as very little has been designed with screen reader access in mind.

The most accessible interface by far is the Windows IDE for Inform 7, a popular natural language system. While the interface leaves a fair bit to be desired, we are able to write, compile and release projects without any barriers, and access a few more features with some workarounds. I have written some documentation describing these processes and workarounds from the perspective of an NVDA user.

Unfortunately, the latest version of the interface breaks many of those workarounds, which also locks us out of the latest version of the language itself. The most recent version of the software which is still compatible with all of the workarounds is available for download here. We can hope the software will generally become more accessible in future. Until then, if you wish to use later versions of the Inform language, you will have to learn its suite of command line tools. If you wish to use it on MacOS, you will have to use the command line tools regardless of version, as the interface doesn’t work at all with Voiceover.

Finally, there is TADS a mature and respectable language. Its IDE, TADS Workbench, is unusable with all of the common screen readers I’ve tried, although it may still be possible to compile from the command line. I’ve been told you can at least create the project directory structure with Workbench, and then write and compile manually, but I haven’t personally tried that yet.

In Conclusion

I feel the need to apologize. I hate to have been so doom and gloom here. I love this place and all of the incredible stuff that happens here. The reality is that while IF is one of the most accessible gaming spaces for blind people, many of the tools are not as inclusive as the community who uses them. I didn’t want to obscure that reality, but I also wouldn’t want to drive anyone off, and I feel a strange responsibility. On a more positive note, however, there are so many amazing folks here who are dedicated to accessible experiences, learning how they can improve the accessibility of their games, and are happy to have these sorts of discussions. I encourage reading the forum, and asking more questions. While it can be a struggle sometimes, you are more than welcome here, and I for one hope you stick around. There are many opportunities, and the more of us there are, the more visible we become, and the more opportunities we create. For each other, and for people to come.

15 Likes

Hi, Jeff

If you’re on Android you can try Fabularium. It has support for accessibility as well as support for all of the major formats. It has built-in Inform and TADS compilers too.

4 Likes

Here’s the IF Interpreters NVDA addon, updated for compatibility with NVDA 2023.1.0. Due to restrictions on allowed upload file types, I’ve had to zip up the addon package file. To install, unzip and click the package as per normal. Enjoy!
IFInterpreters_1.5.zip (18.3 KB)

4 Likes

thanks for updating that Add-on. I’ve just downloaded a copy…

3 Likes

Welcome to the forum Jeff.
I’m also blind, and have been playing IF on and off for a couple of decades. I hope you enjoy it here.

6 Likes

HI Cara thanks for the email, I have completed Zork from start to finish but haven’t found another game like Zork can you suggest anything?
I am also interested in creating my own text based game so do you know of any accessible platform to create my own game?
Kind regards Jeff

4 Likes

If anyone is interested in accessibility I have a youtube channel where I discuss lots of issues around accessibility called Blind Advocate.

4 Likes

I am IOS based. I use my ipad for Zork. On the macbook I had to spell everything backwards so was limited to the ipad.

3 Likes

Are you looking for text games in general or ones specifically similar to Zork? If the former, have you tried Frotz on iOS? It comes with a library of parser games. I can’t speak to how well it works with VoiceOver, only that it seems to work.

2 Likes

I can confirm that Frotz for iOS is fully accessible with Voiceover. It supports the z-machine, Glulx, and TADS, and allows you to search for and download games directly from IFDB onto your device. You mentioned being interested in games similar to Zork, so I would personally recommend checking out the following:
•The original Advent/Colossal Cave by Will Crowther and Don Woods
•Adventureland by Scott Adams
•Enchanter, Sorcerer, and Spellbreaker by Infocom (not on IFDB, download to iCloud and open in Frotz)
•Any of the adventure games by Jonathan Partington (these are very challenging to beat on your own)
•Curses by Graham Nelson
•Risorgimento Represso and Illuminismo Iniziato by Michael J. Coyne

2 Likes

Seconded with a cherry on top!

(and a side order of cheese…)

1 Like

If you want to give playing on your MacBook another go, I’m always looking for VoiceOver users who want to test the Mac-only multi-system interpreter Spatterlight:
https://github.com/angstsmurf/spatterlight/releases/download/v1.0/Spatterlight.zip

It runs pretty much the same games as Frotz for iOS or Fabularium on Android.

I tried to make it accessible a couple of versions ago, adding custom rotors for command history and hyperlinks, and automatic detection of old-style help menus, but I haven’t really been testing the VoiceOver functionality lately.

EDIT: It is also available on the Mac App Store:
https://apps.apple.com/us/app/spatterlight/id1585967830

2 Likes