I'm developing a Backgammon app for iOS, and want feedback and suggestions on VoiceOver support
I noticed that many if not all of the existing Backgammon experiences out there are not accessible. I wanted to correct that with the new Backgammon app I’m working on for iOS. My friend @Leo said that I should post here to find out more about what the community would want in a Backgammon app.
I was thinking that VoiceOver would announce each point (triangle) on the board with the color and number of checkers. Then, each point could have custom actions to advance one of its checkers by the dice amount.
For example, if the dice are 1 and 2 and the user is focused on the 4-point, VoiceOver could read “White’s 4-point, Button, 3 white checkers”. (Should the points be buttons themselves? They are not explicitly activating elements per se.) The custom actions could be “Move checker 1 to 3-point, capturing black checker” and “Move checker 2 to 2-point”.
I also want to add custom rotors so that people can quickly scan the board for their own and their opponent’s controlled points.
That all being said, is there anything I should change or add to my approach in bringing assistive tech support to my app? The currently available TestFlight beta of the app is not very accessible but I will post a link here once I am satisfied that people could use it and give valuable feedback.
I can't wait to try what you come up with. Your timing couldn't be more perfect as I was trying to find an accessible backgammon game for iOS a few days ago.
Like others said, we'll be able to give you more information once we can see the game in action. That being said, A11Y's game world app includes a Ludopalooza game which is similar to backgammon and the system they came up with is very similar. You can explore the gameboard and get an announcement if there are pieces on a space. Double-tapping on a piece opens a menu which lets you select how far you want to move that piece. Having the movement options as rotor actions would make the experience even faster, so personally I'm all for it.
Hi Alex, I will try to play around with Pontes Backgammon but I don't have a PC at my disposal right now. I will try to see if I can test it on a Windows machine soon. In the meantime, though, the Pontes Backgammon online help/documentation is very in-depth and could prove to be very helpful while developing this game. Thanks for the link!
Hi Piotr, do you have a link to the A11Y game world app? I haven't heard of this one before but would be interested in trying it out.
I started working on VoiceOver support and I'm pretty happy with the results so far. Here is a TestFlight invitation link so that you can try it now and see if I'm missing any functionality:
Known issues with beta 3:
- After you roll the dice and VO announces the roll numbers, you cannot re-focus on the dice
- Undo move and end turn buttons are at the start of the accessibility element tree and it is not obvious that they become visible after performing a move
- After ending your turn, should the focus jump to the roll dice button?
- After using your last die roll, should the focus jump to the end turn button?
- Should I add a Magic Tap gesture to roll the dice (if that button is visible)? Or should it open an "undo or end turn" menu?
If you do create a game that utilizes Ludopalooza's functionality, I believe it should be quite accessible and successful for VO players. Can't wait to see what you come up with.
I just installed the game. So far, looks good. Here's feedback, and keep in mind, I've only used the game a few minutes so maybe I need to just figure out how to use it.
Not being able to focus back on the dice is a problem. I promptly forgot what my role was. Also, and perhaps this is a limitation of not playing with anyone else, I am not sure how to move my second checker once the first move is completed.
Yes, a magic tap that rolls the dice would be useful.
No, having an actual system alert telling what the player's roll is isn't because then the player has to dismiss it before they can get on with their roll. Is there a way for Voiceover to anounce the roll without presenting that system alert?
Apologies if I'm not using proper vernacular, mobile accessibility is a little new to me, that is, aside from being a user of course.
Okay, my apologies. I just got a second update from Test-flight. I am now able to move the second checker no problem.
I think the "undo move" option could just be removed. That way, when the user finishes moving their final checker for that turn, their move is over and the other player can roll the dice immediately. For games like this, limiting taps and gestures is really important. I imagine most Voiceover users would want to play this with someone who is sighted so speeding up game-play for VO users as much as possible is necessary.
Hi Alex M,
First let me thank you for your valuable feedback. Focusing back on the dice to remember your roll is a valuable addition, I agree. @Leo suggested that the Magic Tap gesture would either roll the dice or remind the player what the board state is. I didn't have a chance to program the "announce board state” action yet because a user discovered a serious crash affecting all users when the game progresses towards bearing off checkers. Therefore I rushed out the beta 4 build to fix this with some accessibility improvements but certainly not the last of them.
I understand that you don’t find the “undo move” option particularly useful but I think it is important for non-VoiceOver users who drag the checkers on the board because you might accidentally mis-move the checker. This happened to me when the dice values are one number apart like 2 and 3 because the end positions are next to each other.
Currently on my list of accessibility improvements are as follows (but not really in a particular order):
- Make the dice focusable by VoiceOver
- Remove system alert for player’s roll if VoiceOver is on. (I will also find a better way to indicate this for players not using VoiceOvers.)
- Allow Magic Tap to read the current dice roll and board state
- Add a custom rotor for all points where moves are possible. (I think the custom rotors for black- and white-controlled points are helpful for getting a sense of where pieces are, not not for playing a move)
- Add a custom rotor for game control elements (menu, end turn, undo move, the dice)
Regarding number 3, one question I have for you (and anyone else reading) is what kind of board state information would be useful? That is, what would help you visualize the current board situation?
Hello. First of all, thanks for taking this task on. I've really been hoping for a Backgammon game plus hopefully more accessible board games. I think iOS and VoiceOver open up a tremendous potential which has yet to be fully exploited when it comes to making board and probably card games accessible. I'm also hoping for a nice innovative sidescroller taking advantage of stereo sound which I also think iOS has lots of untapped potential for. Anyhow, I like what I've read about using custom rotors. I would also like to be able to feel the board in landscape mode. I like the way Pontes does that with the arrow keys making it super easy to explore the top and bottom halves. Your thoughts on using the custom rotor feature should work out marvelously I think.
I'm working on a guide for blind owners of iOS devices which is taking all my creative time and energy. Otherwise, I'd be all over the betatesting of this. The section about games could certainly use this kind of addition and I hope you can release this in time for me to include it. I plan to release my guide in mid December after over three years of work on it.
Hi Michael F, it pleases me to read about other Backgammon fans out there, especially ones who will be able to enjoy this game on their iOS devices using my app. I'm aiming to release early this summer, hopefully in mid to late June. There should definitely be enough time to include this game in your almanac before the end of the calendar year. Looking forward to talking more about this!
I sent out beta 5 on TestFlight last night with these five improvements. Happy to hear what people think of the update :)
The game play seems very nicely accessible. I do have a couple of suggestions off the cuff. If you can make finding and playing online opponents possible from within the app itself without the need for the Messages app, that would b good. Also, please add the option for solo offline play against AI opponents. That will let people get used to the game before challenging other people. Regarding the instructions, it would probably be beter if you have them divided into headings and browsable like an HTML page. There should be a section explaining how to use the custom rotors. Also, "unless" was missing an s. That was the only spelling error which jumped out at me.
You're off to a very good start here. I look forward to seeing how you choose to update this app as well as to future games.
Hi,Firstly, thank you for implementing what feels like pretty great accessibility on thisWithout being able to find opponents to play or play against the computer, I don't have a use for this app. I was very excited at the prospect of an accessible backgammon game. How does one use this game with the messages app? Doesn't seem clear.
Yes, this indeed should be described more clearly.
What you have to do is start in the messages app rather than in the Game.
- Open messages.
- Pick the person you want to play with.
- Tap the „Message Apps“ button, located to the left of the Textbox in which you normally write messages.
- Select „Backgammon“.
- Pick a color.
- Follow the instructions.
I find that when I have finished my moves and the “Undo Move“ and „End Turn“ buttons appear, they can‘t be located using the „Game Controls“ rotor action. Instead, „Game Controls“ either focuses on the „Menu“ or on „Roll Dice“ (the later of which is af far as I know not even visible on the screen at that time).
Is that fixable?
Just discovered another rather irritating one.
So I start a game; it‘s brown‘s turn. Everything is ok and I am able to make my moves.
Then, it‘s White‘s Turn.
VoiceOver reports „Double-three“.
- I place VO Focus near the top right corner of the screen, right to the left of „Browns Borne-off Area“. VoiceOver reports „24-point 2 White checkerS“.
- NOW: VoiceOver offers as an available game action: „Move checker by 3 to 4-point“.
One of these two has to be wrong. Either, the field originally containing the checkers should not be called „24“, but „1“. OR the offered move should be described as „Move checker by 3 to 21-point“ instead of „...4-point“.
I hope I was able to explain clearly enough...
I just ended up playing a game against myself.
I won, by the way.
But I did discover another VO Bug: The number of dice in the White Born-off area is never reported. VO instead reports the number from the brown born-off area for the white one as well.
@René Thanks for the feedback. I've just fixed the VO bug where the white borne-off number is announced using the brown borne-off area. That fix will come with the next update.
Other than that, I've logged from you the following bugs:
- Game controls rotor is unreliable
- The "point" system of referring to the triangles is mis-numbering them
I'll work on these in the next week or so. Thank you so much for reporting these bugs and for playing Backgammon with Buddies.
I just want to add my voice to those asking for an offline mode where you can play against the computer. I don't know the game at all, but it's a game I've always wanted to learn. I'd rathre learn by playing against the computer than by playing against a live person - even if I had a friend who knows how to play, which I don't. I learnt Cribbage by playing against the computer and would like to do the same for Backgammon.
I currently have the following features on my to-do list. I'd be happy to add more or adjust if anyone has ideas or suggestions.
- Game controls rotor is unreliable
- The "point" system of referring to the triangles is mis-numbering them
- Better browsable instructions page
- Backgammon AI for offline/single-player play
I appreciate everyone's feedback and eventual reviews on the App Store. I'm an individual developer with a full-time job so I can't guarantee precise timeframes.
hello, I would have several suggestions
2 rooms in which we enter and wait for our opponents
3 playing against computers in three levels of difficulty
4 the ability to choose between portrait and landscape orientation
5 except for the rotor, the ability to move the figure with a double tap
I just submitted version 1.1 of Backgammon with Buddies with the following accessibility bug fixes and improvements:
- White player’s born-off area no longer reports Brown player’s score
- “Point” landmarks are correctly numbered for White player
- Fixes for “Game Controls” accessibility rotor
Thanks to René Jaun and everyone at AppleVis for reporting bugs. If you find anything unusual, don't hesitate to reply here or get in touch.
Thanks so much for your work. I wanted a good backgammon app for a long time. Looking forward to offline play as well.
Regarding offline play against CPU opponents, it's definitely a feature that I'm actively working on. A quick question that I have for the AppleVis community—and specifically VoiceOver users—is this how would you want the game to indicate to you what moves are happening as the "opponent" plays them. For example, I could imagine a VoiceOver announcement of "CPU moves white checker by 3, from point 6, previously with 2 checkers to point 3, now with 4 checkers".
On another note, those of you who are following along with the iOS 13 or iPadOS 13 betas may be familiar with the new "Voice Control" feature. There are some support issues with Backgammon with Buddies that make it difficult to drag checkers. The downside is that when a drag occurs from a triangle ("point"), it always drags from the center, where there may not be a checker. I could make each checker into an accessible element, but I don't know how that would affect VoiceOver users' ability to play the game or get a good overview of the board state effectively.
Again, please reply here or get in touch with me personally if you have any suggestions, concerns, or further feedback.
Hello. Regarding announcements, this is a very subjective question, however I generally don't like verbose games. Some people might disagree, but for me just saying CPU moves a checker from point 6 by 3 would be fine. When playing you anyways need to keep a track of which checker is where, so I think that saying the number of checkers for each move could make it too verbose. The model where you just say CPU moves a checker from X to Y also works, but again I don't know what potential newbie Backgammon players might think about this since I've played Backgammon for several years now. There are many Windows accessible games that use this model and I haven't seen many complaints.
Hi all, I know it's been a long time since I posted a status update here. I just submitted the first beta of version 3.0 to Apple for TestFlight review. If you aren't yet subscribed to test the app on TestFlight, head over to this link here to sign up. Please report anything strange or unusual to me here, through in-app feedback, or over email at firstname.lastname@example.org.
Lastly, here are the release notes of the upcoming beta:
- Basic CPU opponent to test your understanding of the game against.
- Remote play against other Game Center users.
- Multiple window support on iPadOS 13 and higher.
- Starting in iOS 13 and iPadOS 13, users have reported that VoiceOver in the Messages app does not correctly read Backgammon messages in the conversation view.
- Messages app has not been touched much in this release. It may have a few bugs due to the modification of other, shared components.
- It may not be possible to end a game over Game Center.
- VoiceOver announcements during play against a Game Center player or the CPU opponent may be cut short
- "Modes of Play" help article is unfinished for Game Center.
- In local games, the board rotates between turns. It will be possible to disable this in a future release.
- A player invited to a Game Center match over, for example, iMessage will be allowed to move even though it is the invitation sender's turn.
Looking forward to your feedback,
Just wanted to post a quick comment that TestFlight review was approved, so you all should have received an email that the update is available.
Thank you to the person who already gave feedback about a bug in the Messages app extension! For future reports through the TestFlight screenshot thing, I don't have any way to contact you (since email addresses are hidden if you join through the link) so if I need more information about a bug you are reporting, it would be easier if you could include some contact information in the bug report.