Hi ALl,
I've been working on this project for a few weeks now and finally feel like it's in a fit state to present a bit more widely. Things are still evolving, but it's quite a bit better than when I found it, so here we are.
What is Forge?
Forge is an open-source, mostly single-player version of Magic: the Gathering. It's available for free from this site, though I recommend grabbing the latest snapshot, as that includes up-to-the-minute accessibility fixes.
What's included in this game?
Basically everything. The game has coded support for something like 20,000 Magic cards, from all eras of the game history, a quite good AI, the ability to build custom decks, run tournaments of various stripes, play more casual game variants, and so on. About the only thing missing from the Forge implementation is the
card flavor text, which can easily be looked up online.
What is Magic: the Gathering?
The web site I linked above explains it better than I can, but it's basically a fantasy card game in which you play the role of a powerful wizard or "planeswalker," and can summon various magical creatures or cast spells to try and defeat your opponent. It's a complex game, but a lot of fun, if you enjoy strategic thinking or fantasy in general. It's usually played in physical paper format but has recently been made available digitally in various formats. Forge is not an official version of the game but is nevertheless very close to the real thing.
What sorts of accessibility work has been done on this?
A decent amount. The game is open source and readily accepts submissions. I added a setting to optimize the game for screen reader users, which updates the way mana costs are displayed. I also updated the deck editor to be a little more accessible using the keyboard, and finally just added a way to see what cards on the battlefield are tapped, or used up for any given turn.
How do I get started?
Download the Forge snapshot I linked above, unpack it into a folder somewhere, and run forge.exe. You'll want to maximize the window. I'm providing a link to my forge.preferences file. Download that and put it in the following place…
%appdata%\forge\preferences. You should be able to open the Windows "Run," dialog and just copy that string in there to find it. The file just turns off the game music and enables screen reader mode, which can otherwise be a bit annoying to deal with on a first run.
How do I play?
You need to use NVDA to explore the game screen. It's a Java program and doesn't really have great support for tab and shift+tab navigation, though I plan to eventually work on improving this feature. For now, you can use NVDA item navigation commands, nvda+numpad-4 and 6, or nvda+shift+arrow keys, to explore. The game window is laid out in a mostly logical way, though it still takes some getting used to. You'll hear labels for areas like "Your hand," "Your field," or the game log window. To play cards, you route the mouse to them with nvda-numpad-slash, or nvda-shift-m, and left-click. If you ever get completely lost, you can get back to where you started from by alt+tabbing back into the Forge window.
There is a Golden Cursor bookmarks file available, which combined with NVDA mouse tracking can make exploring the game UI a bit smoother. The problem is that this is restricted to my screen resolution of 1920x1080. If you don't have a screen of that size it will not be as useful for you.
THe screen navigation is definitely the most confusing part of FOrge. The important thing to understand is that the log and stack and combat windows all share the same area of the screen, and that the log window is easy to get stuck in because it has the potential to grow very large. The solution for this is to press "s," which will close the log window and open the stack window, which is usually much smaller.
This game is not easy for someone completely new to Magic to play, because it doesn't do a great job of teaching you the game rules. Still, it's worth the effort and I definitely recommend exploring it if the game is at all interesting to you. I am going to keep working to improve it, at the moment we can play complete games and the remaining accessibility issues are mostly just convenience-related.
As always, I'm happy to answer questions or help out as much as I can. I hope to record some kind of demo this weekend to demonstrate what's possible.