VoiceOver testers wanted for new Spatterlight with Arthur and Shogun support

Similar to the Journey support of the previous version, Spatterlight now has experimental support for Infocom’s Shogun and Arthur.

https://github.com/angstsmurf/spatterlight/releases/download/v1.4.4b/Spatterlight.app.zip

Download a ZBlorb version of Arthur here:

https://curiousdannii.github.io/infocom-frotz/arthur-r74-s890714-graphics.zblorb

And Shogun here:

https://curiousdannii.github.io/infocom-frotz/shogun-r322-s890706-graphics.zblorb

There is also an early development version of Shogun available that has the debug command $SCENE which lets you jump directly to any scene of the game:

https://eblong.com/infocom/gamefiles/shogun-r278-s890211.z6

Window resizing, autosave, all game versions and all graphics variants should be working. I’ve tried to make everything accessible with VoiceOver, with custom support for menus and for simplifying the Shogun graphical maze.

Here is a video recording with sound of me playing a couple of moves in both games with VoiceOver. I’m also using VoiceOver Recognition to (incorrectly) describe some of the images (VO + Shift + L). As usual, VoiceOver will sometimes skip text or just stop speaking, especially when there are windows closing and opening. You might have to press the ”Repeat last move” shortcut (Option + Command + left arrow), sometimes repeatedly, to make it say all that it is supposed to.

In the video I first change two settings, ”Format > Redirect text to main window” (more on this below) and ”VoiceOver > Speak Images > All”. The latter is needed to make VoiceOver take note of the images in these games. I then start up Arthur, try to make VoiceOver Recognition describe the images with varying success (including the room image), and then type HINT to make sure that the response is printed in the main buffer window. I then enter the hint menu and navigate to a hint.

After that, I start Shogun, using the intro menu, and play long enough for it to show two margin images, which I then try to get VoiceOver recognition to describe. (I navigate to the first one with the custom image rotor VO + U.) I also enter the “Function Keys” menu with the DEFINE command, and create a macro for TAKE ALL, activated by pressing F2. Yes, it is kind of useless, but it works.

Spatterlight has had basic support for Infocom InvisiClues style menus for a long time, but the help menus in the version 6 games are different enough to require special handling. Unlike the previous menu detection, it also handles the listing of actual hints, the ”bottom level” of the menu hierarchy. The seen hints for a puzzle can be stepped through using the command history rotor.

Arthur was always more playable with a screen reader than the other Infocom version 6 games, but it prints some interpreter responses to a separate ”error window.” To help with this I’ve added a new option to Settings > Format, ”Redirect text to main window,” which will make these print to the main text buffer window instead.

Another potential problem is that Arthur uses a timeout in a couple of places, so if VoiceOver is not set to speak at a high enough speed, as in my video, the game will wipe the text and move to a new screen before it has spoken all of it. If anyone is bothered by this, let me know. I might try doing something about it.

In Shogun, one major stumbling block for screen readers is the graphical maze. I gave up on trying to bypass it entirely, and instead just added an option to simplify it. If VoiceOver is active, you will be asked about this before entering the maze. I hope that some people will appreciate that a little of the challenge of the maze remains for VoiceOver users. If anyone really wants an option to skip it entirely, I suppose I might be persuaded to give it another try.

I figure the original graphical maze is a puzzle, if not necessarily a very good one. Likewise, navigating the simplified maze using VoiceOver is another puzzle of similar quality. Trying to solve it on your own might make it more interesting, but if not, here is the spoiler:

The city ”maze” is now a single path. Every ”room” in the maze represents a 90 degree bend in the path, either to the left or to the right, relative to the way you came. In other words, there are always two exits: one back to where you came from, the other one either a left or a right turn. If you come from the west, the way back is to the east, and the way ahead is either north or south. There is no telling which until you try one of them, so there is a 50 percent chance you will pick the wrong one first, and the game will say that ”There’s a house there.” If the way ahead is to the south, the next turn will be either east or west, and so on. Of course, there is also the risk of getting confused, turned around, and ending up back where you started. Then you will have to get back in and do it all over again.

2 Likes

This is shaping up to be a bit of a crazy week for me, but I should have time to sit down with these over the weekend. I ran Arthur through Spatterlight a few years ago and was able to complete the game without any notable issues, but Shogun is one which I’ve actively avoided due to that notorious maze.

1 Like

Well, there is no rush. One thing I’m worried about is that I’ve made changes that make Arthur less accessible than it used to be, but I’m grateful for any feedback I can get.

1 Like

All right, here we go! I just booted up the zblorb version of Arthur, and it looks like the game’s introductory text is an example of a wipe-the-screen situation. Fortunately VoiceOver was able to get through everything before it all disappeared; I doubt Infocom would hide crucial information in text blocks that players wouldn’t be able to scroll back to at a later time (???), so I would say this isn’t a major issue at this point. I also noticed that there is about a 15-second delay before VoiceOver reads the “restore a saved position” prompt when launching the game. However, pressing space or enter appears to get things moving right away. Out of curiosity, is there some sort of screen effect taking place at startup that can be dismissed with the keyboard?
Update: I finished the game. The hint menu seems to be working as intended, and I did not encounter any other accessibility-related issues! Yay!

1 Like

Thanks a lot! That’s a relief.

This is the game is showing the title image. For technical reasons, there is a text view hidden behind the full screen graphics view, and VoiceOver focuses on the text one, just speaking the word “text”, which isn’t very helpful.

When it starts, the game switches between three full screen images and three full screen text views, and unless the player presses a key, they all switch automatically after a delay. It is not entirely clear to me what the purpose of this automatic switching is, but on a slow disk-based system, it might have been helpful to start loading the next image while the player is still reading.

On the other hand, the fact that the full screen images eventually go away by themselves is actually what you want when playing with a screen reader. Well, the third best thing after describing the images, and not showing them at all, I suppose.

There are two places later in the game where this happens as well, one at the very end: after a delay, all text is cleared and a full screen image is shown for a while.

The simplest solution is probably to just patch away these time-outs, so that the game waits for a key press indefinitely. I doubt many people will miss them.

1 Like

New build here: https://github.com/angstsmurf/spatterlight/releases/download/v1.4.2b/Spatterlight.app.zip

It patches the relevant time-outs in Arthur into ordinary “wait forever for a key press”.

I also added image descriptions for the five full-screen images.

EDIT: Updated again:
https://github.com/angstsmurf/spatterlight/releases/download/v1.4.3b/Spatterlight.app.zip
This mainly fixes some stuff in Journey.

EDIT: And again:
https://github.com/angstsmurf/spatterlight/releases/download/v1.4.4b/Spatterlight.app.zip
This fixes the toolbar selection i the settings panel, and also a very annoying bug where an alert saying “The game is taking a long time to load” could appear at the wrong time and get stuck indefinitely.

1 Like