很多人以为手柄之所以无效,是因为南梦宫在搞鬼,其实是大冤枉.
其实主要原因是因为游戏对手柄的处理,并非是直接调用XINPUT库去处理,因为这样做的话,
就只能支持XBOX家族的手柄,无法支持PS/NS家族的手柄.
于是南梦宫就采取调用STEAM INPUT(简称SI)的API来桥接手柄,SI其实就是一个手柄桥接库,主要作用是负责统一不同手柄的输入键值.
好处就是不用游戏针对不同的手柄做相对的处理.南梦宫之所以采取这个方案,完全是为了照顾玩家,这里的玩家应该是特制PS手柄的玩家.
网上流传的所谓手柄修复补丁,其实是不存在的.为什么使用了那些steam_api64.dll文件后,游戏的手柄功能就正常了,而游戏文字却乱码了?
原因其实很简单,因为你们使用的那个steam_api64.dll是"坏"的文件,是一个无效的文件.
要"修复手柄功能"其实很简单,只要将一个无效的steam_api64.dll文件替换原来的文件就行了.你可以随便去别的游戏里面找一个来替换.
不过一旦这样做了的话,那么等于是steam平台的所有功能都会丢失,比如"语言设定"和"DLC"功能.而这个游戏对手柄的处理却有两套方案,一旦Steam平台功能失效之后,它并没有崩溃,而是采取了第二个方案,就是直接调用Xinput来处理手柄了.(尴尬)
明白了否?这个就是为什么兼顾了手柄功能之后,却无法使用DLC和设置语言了
如图所示,更换了无效的steam_api64.dll之后,手柄功能虽然正常了,但是所有Steam平台功能丢失,游戏自身有报错的,不过并不影响游戏继续运行:
目前的解决方法其实很麻烦,也可以说很简单吧,你只需要模拟一个完整的Steam平台环境就可以支持Steam Input了.但是目前的所有未加密补丁,
基本上都是没有实现SteamInput功能的,我相信各大未加密组也不会为了这个游戏而帮补丁去实现Steam Input功能.
所以等待也不是办法,那么既然这个游戏可以脱离steam平台玩,那么只要处理好语言方面的问题就行了,不要DLC了.
游戏在丢失Steam平台功能之后(原本这个语言功能是由Steam平台提供),它会查询系统获取当前系统的UI语言是什么,使用系统的语言作为游戏的默认语言.
所以也有人利用修改系统的默认语言来解决了这个问题,不过这样未免太麻烦了.
我简单修改了一下游戏的主程序,让其获取系统默认语言的时候,返回的是zh-TW,那么它就可以正常显示繁体中文了.
以上,就等于是解决了手柄问题和语言问题,但是,DLC问题是无法在脱离Steam平台功能下使用的,所以,DLC就只能放弃了.
这个简单修改过的游戏程序,我提供给大家下载:
https://pan.baidu.com/s/1wSaoLtMm_u-Ln4iqyEByVA 提取码: drha
里面附带了一个"steam_api64.dll",必要时候,你可以使用这个替换掉你现在使用的文件.
|