得益于熟练使用读屏软件的经验,再加上辅助插件的键盘快捷键,视障和非视障玩家之间的差异明显缩小了。在工作之余,鲜鱼每天至少会在《炉石传说》上投入3个小时。起初,辅助插件还没有中文,也只能打冒险模式的英雄之书和练习模式。随着插件不断更新,国内玩家“老男人”与“蓝疆帝月”跟开发者Guide Dev取得了联系,很快在去年8月完成了辅助插件的中文本地化。在Guide Dev的不懈努力下,随着2021年10月的游戏更新,HearthstoneAccess的使用者们可以在解锁所有职业后进行天梯排名、休闲与友谊赛。
世界各地的众多玩家为插件的本地化做出了贡献
对使用辅助插件的玩家来说,这无疑是个划时代的好消息:视障玩家拥有了与非视障玩家共同享受游戏的舞台。在这之后,视障玩家开始在排位中展现出不错的实力。在自己的《炉石传说》经历中,鲜鱼印象最深刻的,是他第一次用“海盗战”卡组登上天梯的“传说”等级。
鲜鱼告诉我:“那时候特别高兴,我也能和那些看得到的玩家一样,在游戏中登上最高段位。”
4
尽管收到了玩家们数不清的感谢,但作为开发者,Guide Dev渐渐意识到,维持一个插件的长久更新并不容易。
Guide Dev将维护HearthstoneAccess比喻成“修车”:“想象一下,假如《炉石传说》是一辆汽车,需要用一个方向盘和一个踏板来驾驶这辆车。方向盘和踏板就像游戏的用户界面,引擎盖下的一切则是游戏的内部构造。如果想要改造这辆汽车,用辅助插件来控制这辆车,一种方法是制造一对机械手和机械腿,焊在方向盘和踏板上,利用辅助插件控制它们;另一种方法是让辅助插件直接与引擎建立联系,绕过方向盘与踏板,直接控制引擎。”
第一种方法就是依靠OCR(光学字符识别)直接对屏幕上的信息进行文字识别,再转换成语音输出给玩家。这种做法看似简单明了,实则会出现识别时间长、错字率高等各类问题。权衡再三,Guide Dev选择了第二种方法:直接让辅助插件读取游戏内部信息。要做到这一点,他必须在每次版本更新后对游戏客户端进行逆向分析,直接找到游戏文本内容所在的位置,并交付给屏幕阅读软件NVDA。
Guide Dev说,第一种方法确实能更方便地更新与维护插件,却永远无法像第二种方法一样给视障玩家带来最接近原生的游戏体验。对玩家来说,这是“识别内容并模拟鼠标点击一张牌”和“直接用键盘选中一张牌”之间的区别,二者的流畅度完全不同。在他的努力下,HearthstoneAccess确实为玩家们带来了无可比拟的操作体验,它对游戏的适配几乎就像《炉石传说》原生的无障碍功能一样。
可是,另一方面,这意味着Guide Dev要承担庞大的工作量。像《炉石传说》这样不断更新的游戏是一辆不断改变的“汽车”。有时候,汽车外壳看起来变了不少,但引擎并没有变动;有时候,外壳看起来没什么变化,引擎却发生了天翻地覆的改动。每当看见测试程序频频报错,Guide Dev就不得不硬着头皮慢慢手动查找、修正问题。
一旦游戏更新,上一个版本的辅助程序便无法继续使用。《炉石传说》的项目成员在得知了这件事后,为了让Guide Dev能赶上更新,每次更新前都会将新版本提前发送给他。即便如此,要在更新第一天就让视障玩家们同步玩上游戏也并不容易。每次游戏更新,他都要抽出10多个小时调试新版本的辅助插件。如果是大型更新,他甚至要花30个小时以上——15个月以来,HearthstoneAccess已经发布了41次更新,Guide Dev的辛苦可想而知。
尽管如此,Guide Dev并不希望为辅助插件加入付费选项。确实有一些玩家想要在经济上支持这个项目,但他认为这种状态很难持续下去。“这个插件肯定是全部免费的,我没法为付过钱的用户提供更多的功能。”
辅助插件带来的负担变得愈发沉重。Guide Dev是兼职制作和维护HearthstoneAccess,平均两周一次更新,对他来说已经远远不止“业余时间的公益项目”这么简单。他也曾寻找过能够接手这个项目的人,但在知晓了项目背后要付出的代价后,20多位慕名而来的程序员都选择了放弃。
百般无奈,在30小时的疲惫工作之后,Guide Dev完成了《炉石传说》24.6版本的辅助插件更新,并发布了公告:“自此,HearthstoneAccess辅助插件即将停止更新。”