Hearthstone Access

Table of Contents

1. Introduction

Hearthstone is a popular free-to-play online digital card game developed by Blizzard Entertainment. The game is a turn-based card game between two opponents and features characters and elements from the Warcraft series. Hearthstone was first released in 2014 and still has millions of players all around the world.

Hearthstone Access is a custom Hearthstone mod built by Guide Dev that makes Hearthstone accessible for visually impaired screen-reader users who wouldn't otherwise be able to enjoy the game. For the time being, you can:

For the time being, you can only play Hearthstone Access if you're using Windows. If you understand english, it's highly recommended that you use the english version of the game as other languages aren't officially supported. However, Polish, Spanish, Brazilian Portuguese, Chinese, Thai and French are now available and other languages are being localized by contributors. Note that while most popular screen readers appear to be compatible, Hearthstone Access was fully developed and tested using NVDA. If the game is unable to detect your screenreader for some reason, it will fall back to using Microsoft's Speech API.

2. Getting started

Blizzard games are installed and updated through their own launcher called Battle.net. In order to play, you must first install Hearthstone and patch it using Hearthstone Access afterwards.

2.1. Installing Hearthstone

  1. Create a Battle.net account on Blizzard's Battle.net website. If you run into any problems, Nuno from the audiogames forum has kindly written this guide
  2. Download and install Battle.net from Blizzard's download page
  3. Launch Battle.net on your computer, log in with your new account and use the Battle.net launcher to download and install Hearthstone. Make sure you install the english version of the game for the best experience
  4. Wait for Hearthstone to fully be downloaded and updated. Feel free to launch the game once and close it immediately to ensure it has been installed. Keep in mind you will have to close the window itself if you do so since Hearthstone is not accessible at all by default

2.2. Patching Hearthstone for Accessibility

The easiest way to patch Hearthstone is to use the Hearthstone Access accessible patcher which automatically finds your Hearthstone installation and patches the game. However, although the code is open source, you may not feel comfortable running unknown programs in your computer. If so, please use the manual process described further down.

2.2.1. Patching Hearthstone using the patcher

  1. Download the latest Hearthstone Access patcher named HearthstoneAccess.zip file from github and extract the zip file into a convenient location
  2. Run HearthstoneAccess.exe and follow the accessible dialogs using your screen reader to patch Hearthstone. Note that patching the game may take somewhere between one second and a couple of minutes depending on how fast your internet connection is
  3. Launch Hearthstone normally and enjoy the game!

2.2.2. Patching Hearthstone manually

  1. Find your Hearthstone installation folder. This is normally under "Program Files (x86)\Hearthstone"
  2. Download the latest available patch.zip file for your Hearthstone version from github
  3. Extract the downloaded patch.zip file into your Hearthstone installation folder and overwrite any existing files
  4. Launch Hearthstone normally and enjoy the game!

2.2.3. Keeping Hearthstone Access updated

Whenever Blizzard patches Hearthstone or releases a new expansion, your game will automatically update and your version of Hearthstone will no longer be accessible until you patch it again. This normally happens every other week and I do have to update and release a new version of Hearthstone Access when it does, so you may have to wait a few hours depending on how complex the update was and on how busy I am at the time.

If you're using the patcher, all you need to do is run HearthstoneAccess.exe again and everything will be handled automatically for you. If you're doing it manually, you'll have to follow the manual process again using the new version.

3. Commands

New players are encouraged to simply launch the game and progress through the tutorial, as most commands will be taught as you play. If you've played Hearthstone in the past before becoming visually impaired, you should still start by creating a new account just so you can go through the tutorial again. While you may already know the rules, you'll still need to learn how to play using a screen-reader and keyboard commands. Once you've finished the tutorial, feel free to go back to your old account and pick up where you left off.

3.1. Global commands

Open game menu Escape
Get help F1
Open social menu F4
Toggle Accessibility to allow sighted users to control the game F8
Decrease game speed in games against AI so opponents play slower F11
Increase game speed in games against AI so opponents play faster F12

3.2. Navigating menus

Read previous option upArrow
Read next option downArrow
Confirm option Enter
Go back Backspace
Reread current option Shift+upArrow
Read first option Home
Read last option End

3.3. Playing the game

Read next card in zone rightArrow
Read previous card in zone leftArrow
Read first card in zone Home
Read last card in zone End
Read next card line downArrow
Read previous card line upArrow
Repeat current card line Shift+upArrow
Read card to end Shift+downArrow
Read next valid play Tab
Read previous valid play Shift+Tab
Play card Enter
Cancel current action Backspace
End turn e
End turn without asking for confirmation if more valid plays exist Shift+e
See how much mana you have a
See how much mana your opponent has Shift+a
Look at your hand c
Count the cards in your opponent's hand Shift+c
Look at your minions b
Look at your opponent's minions g
Look at your Hero v
Look at your opponent's Hero f
Send all your minions to attack your opponent's Hero Shift+f
Look at your Hero Power r
Look at your opponent's Hero Power Shift+r
Look at your weapon w
Look at your opponent's weapon Shift+w
Look at your secrets s
Look at your opponent's secrets Shift+s
Count the cards in your deck d
Count the cards in your opponent's deck Shift+d
Get more information about a focused card's abilities i
Read base attack, health and any enchantments affecting a focused minion k
Trade tradeable card t
Open the play history log y
Access in-game emotes when selecting a Hero Space

3.4. Browsing cards in the collection manager

Read next card rightArrow
Read previous card leftArrow
Read next page pageDown
Read previous page pageUp
Jump to next class Tab
Jump to previous class Shift+Tab
Read first card in page Home
Read last card in page End

3.5. Main menu shortcuts

Open My Collection c
Open Journal j
Open Shop s
Open Modes m

4. Known issues

4.1. I'm stuck in the end game screen after finishing a game

I got a few complaints about this happening once or twice to a few people. However, I'm not sure this is an issue with the mod itself given that a few sighted players have mentioned it happening to them as well occasionally.

If you run into this, press F8 to disable accessibility and click somewhere on the screen with your left mouse button. If it works, press F8 again to reenable accessibility and carry on. If it doesn't work, the problem is most likely a bug in Hearthstone itself and you will need to restart the game. Note that you won't lose anything by restarting the game. You may miss out on reading some rewards if you leveled up, but they will be added to your collection regardless.

4.2. I'm stuck in the summon at the right and summon at the left

Only 3 players have reported this so far, so it seems to be a very rare issue. In any case, this issue happens either when the game window is extremely thin or the screen is in portrait mode instead of landscape. As an example: if you think of a normal 1080p resolution, the game window would have a width of 1920 pixels and a height of 1080 pixels. If this is happening to you, it means your game window somehow has a width of about 200 pixels even if the height is 1080. With a window like this, the board doesn't fit on the screen so the game is unplayable even for sighted players.

The solution is simply to fix the game window proportions by changing to landscape mode or adjusting the resolution depending on what the underlying issue is. Note that you can reach the game menu by pressing Escape if you need to change the resolution.

5. Frequently asked questions

5.1. Will I get banned due to using patched files?

I can't really answer for Blizzard. Patching games is a bit of a grey area and you should always do so at your own risk. However, I sincerely hope people are generally ok with it given that it doesn't provide anyone with an unfair advantage. If anything, it helps counter the unfair disadvantage many gamers unfortunately have.

I wish I could do it any other way but it's simply not possible. A patch was the only viable option I could find and I hope that the fact that the code for the patch itself is open source provides enough transparency for people to be comfortable with it.

I'm happy to work something out with Blizzard to verify the patches if needed. I'd be a lot happier if someone from Blizzard simply took the code and used it to implement accessibility into the game itself though. If anyone who works there happens to be looking for a cool hackathon idea, consider this my suggestion.

5.2. Won't people be able to use this to create bots?

I'm not sure where this came from but I was asked to address it. Using Hearthstone Access to create a bot would be at least 100 times harder and produce a significantly weaker bot than simply reading log files and performing mouse clicks or writing a Hearthstone Deck Tracker plugin to do it.

Creating a capable bot for a game such as Hearthstone is extremely complex and a good AI research topic. Creating a bot capable of constructing a board with the speech this mod outputs is a good PhD thesis.

Keep in mind that the challenge of writing a bot has nothing to do with being able to control the game using the mouse or keyboard commands. Making the game controllable with the keyboard is a couple of hours type of work. Making a decent bot is a couple of years type of work.

5.3. Is this mod free?

Yes! Hearthstone Access is and always will be free to use.

5.4. Can other languages be made available?

Absolutely. While english is the only officially supported language, several people have volunteered to localize the mod to other languages.

At the moment, Polish, European Spanish, Mexican Spanish, Brazilian Portuguese, Chinese, Thai and French are all available due to the awesome contributions of Nuno, Alisson, pildain, AAyoubelbakhti, sanslash332, oldman, wightfall, Alexandre and Arkandias. If you'd like to contribute, you can find more details here.

Note that even if no one has localized the mod into your particular language, many gamers have successfully been playing localized versions of the game. Most speeches will simply be a bit weird since you'll hear a mix of english with your native language.

5.5. When will x feature be available?

I'll use the feedback from the community to decide which features to work on next. Keep in mind this is a side project and while I'll try my best to deliver new features in a timely manner, progress will be limited to my availability.

5.6. Where can I find the Golden Cursor scripts?

Niki, Lirin and blindndangerous maintain a file for 1920x1080 resolution here.

LordLuceus maintains a file for 1366x768 resolution here.

If you need help with any of these, note that all maintainers can be reached on Discord and are generally happy to help.

5.7. Where can I find the Discord server?

You can find an invite link to join the Discord server here.

5.8. Will other operating systems be supported?

I currently have no plans on supporting other operating systems as my availability is limited enough as it is and Windows is by far the most popular choice among visually impaired people.

6. Release Notes

Release notes will always be published here.