为星际争霸调试出最适合自己的鼠标和键盘设置

标签:StarCraft

这篇帖估计是我写得最费力的一篇了,好不容易找出来,但附件已经丢失=。=

注:
1.本文以罗技迷你旋貂光电版(Mini Optical Mouse)在Windows XP Pro SP2上的设置为例,其他鼠标和操作系统会有部分差异。

2.文中提到的地图和部分软件可在mouse.rar中找到。

3.写完后发现Intellimouse的这篇帖值得看看,好像我和他有些意见不一样,如果有耐心可以去看看。
http://bbs.yaoyuan.com/viewthread.php?tid=118777

如果你还没看腻,我又找到了这几篇:
http://bbs.yaoyuan.com/viewthread.php?tid=104897
http://bbs.yaoyuan.com/viewthread.php?tid=104899
http://bbs.yaoyuan.com/viewthread.php?tid=104896


OK,正文开始。
很多人可能不清楚progamer比赛前setting那么久干啥,也不知道应该怎样设置为最适合自己的状态,所以本文就讲述下设置时的一些事项。

全文分成3个部分:
第一部分是理论知识:有些东西必须弄懂了才能调试出最适合自己的设置,所以请耐心看一下也许你不太感兴趣的内容;如果你实在忍受不了,那就跳过吧。
第二部分是调试方法:用于找到最适合自己的设置。
第三部分是快速设置:可以让你飞快地完成设置。


一、理论知识:

(一)鼠标:

1.关于鼠标,讨论最多的就是速度和加速度的问题了。

先说说2者的概念吧:

(1)速度很好理解,当你鼠标实际移动的距离一定时,反应在屏幕上移动的距离越大时,鼠标速度就越快。

速度和2个值有关,一个是CPI,一个是系统的设置。

CPI(也叫DPI),就是每英寸采样数,即当你的鼠标以正常的速度移动1英寸时,返回给系统的采样次数。这个值越大,鼠标速度就越快。

对于光电鼠标而言,一般都在400CPI以上,有的甚至超过了2000CPI。
但是CPI并不是越高越好,这个和游戏的分辨率有关,多了也只能浪费。

射击类游戏很多人习惯在1600×1200的分辨率下玩,所以400的CPI肯定不够用。
因为要从屏幕左边移动到屏幕右边,至少需要移动4英寸才能提供所需的1600个采样点。那是非常夸张的事情了。

但我们知道,星际的分辨率是640×480。
在不移动手臂的情况下,左右移动大概有1.5~2英寸,上下移动大概有0.5~1英寸。(不移动手臂指的是自己能不用费劲、很舒服地移动)
因为屏幕下面那有117像素是不会经常点到的,所以对于星际而言,400CPI的鼠标是差不多可以胜任的,800CPI则完全足够了。

那么,被progamers广泛采用的迷你旋貂是多少CPI呢?罗技好像并没给出官方的资料,传闻是不可信的,所以只能自己测试了。
结果就是不装驱动(即Windows自带的鼠标驱动),CPI为400;装MouseWare为800CPI。
这有2种可能:
一个是迷你旋貂的CPI就是400,但通过驱动可以用差值算法提高到800CPI;
另一个是迷你旋貂的CPI是800,但由于驱动的限制,只能到达400CPI。
我也不太清楚差值算法。如果是只是简单的将移动距离×2的话,我在800CPI时还是能1个像素地精确移动。
究竟哪种是正确的,放在第二部分再讨论了。有兴趣的还可以看看我前面给的帖,有篇讲述光电鼠标历史的里面似乎提到了相关内容。

系统的设置其实就是指在控制台(控制面板-鼠标)中设置的鼠标移动速度。
这个值是保留在注册表里的,值越大,鼠标速度就越快。(对于注册表的修改,放在第二、三部分了,继续说鼠标速度。)

以前听说progamers喜欢把鼠标速度调得很快,所以我也尽量提高速度,让自己去慢慢适应。
但我却发现这样鼠标太快了,导致操作时经常不能精细地操作,反而让操作效率下降了。

前几天听lx说SKT T1的都喜欢把鼠标速度调得很慢,特别是canata是无驱动第3格。
那样的速度你可以去试试,想移动到屏幕边缘都是很费力的。
但是再提高几格后,发现原来低速也能很好地控制了,而且定位更为准确了。
所以我现在的倾向是速度调低点,但又能轻松移动到屏幕各处。


(2)加速度解释起来有点抽象,但其实很好理解。
设你的鼠标用很慢的速度移动s0的距离时,反应在屏幕上移动的距离为s1;
再设你的鼠标用很快的速度(未掉帧)移动s0的距离时,反应在屏幕上移动的距离为s2。
如果s2>s1,那么就说明有加速度。相差越大,加速度就越大。
通俗地说,就是有加速度时,鼠标速度不是固定的,而是你移动得快,速度就增加得多。

提供一个手动测试加速度的方法:
用AccTest.scm建个游戏,以protoss进入游戏(主要是因为基地边缘是直线,好判断)。
用一件较厚的边缘是直线的物体(如书)作为左端点。将鼠标移动到左边的屏幕边缘,并贴紧这个物体。
将鼠标缓慢地向右移动,直到鼠标指针到达基地的左边缘。此时将另一个符合上述条件的物品放在鼠标右端,并贴紧鼠标,作为右端点。
将鼠标指针移动到屏幕左边缘,并贴紧左端点,向右以较快的鼠标移动,直至到达右端点。
此时,若指针和基地左边缘重合或相差无几,则表明无加速度;
若超过了,则表明有加速度,且超过越多,加速度越大;
若未达到,表明你移动过快导致丢帧了,用慢一些的速度重新测试。

其实用Windows自带的“画图”就能测试了,方法和上面一样。利用画图能显示坐标的功能,就能看出移动的距离是否不同了。

不过这个方法只能测试平时的加速度,而DirectX下的则还是得在星际中测试。

另外,有帖说用MouMvRec.exe这个软件也可以测试。
我测试时即使开了加速度,只要一运行这个软件,就没加速度了,所以我没测出什么出来。


说了那么多,现在来研究下加速度对星际的影响。

不用加速度,则指针在屏幕上的移动距离和鼠标在鼠标垫上移动的距离是成正比的。控制指针的定位,只要控制鼠标在鼠标垫上移动的距离就行了。
用加速度,则指针在屏幕上的移动距离和鼠标在鼠标垫上移动的距离、鼠标移动的速度都有关。控制指针的定位,则需要2者都控制好。

我认为比赛时应该尽量去思考战略,而不该分心去想我该用多快的速度移动鼠标。
这样看来,似乎不用加速度是非常合理的,而当前绝大多数的progamers也没有使用加速度。

但是加速度并不是没有作用:

首先,它可以提供更快的速度。有的人把格数调满了还认为太慢了,那就只能通过加速度来增加速度的上限了。

其次,对于适应了加速度的人来说,它可以减少移动的距离。
距离近时,可以慢点移动;距离远时,用快一些的速度,移动较少的距离就到达目标了。
这样,就可以把移动控制在最短的距离,即可以在不移动手臂的条件下,很舒服地移动到屏幕上各个位置。
但是必须要适应了的人才能这样驾驭你的鼠标,否则只会让你更容易点错而已。

习惯这个东西还是不要太多地去改变为好,不适应就不要逼自己去适应。
我就很喜欢没有加速度的感觉,定位超级准,一个字就是“爽”;这是我忍受了半年加速度后,终于能完全去掉加速度时的第一感觉。

所以究竟要不要加速度,尽管大多数人认为不要会好些,但我还是认为,自己最习惯的才是最好的。

至于去除加速度的方法,由于内容较多,放在第二部分了。


2.除了速度和加速度,另一个重要问题就是掉帧了。
光电鼠标是将光按照一个固定频率(暂叫采样频率)照射在物体表面,然后获取反射光线,形成一帧图像。
通过比较连续2帧图像的变化,就能分析出鼠标的位置变化。
如果2次获取的信息几乎没有相同点,那就很难分析出鼠标进行了怎样的移动,因此就导致了掉帧。

要减少掉帧,就需要让每次采集的信息尽可能多,即采样点多;或2次采集的时间尽可能短,即扫描频率高。
当然,这些信息还必须要经过处理,合起来就是要让单位时间内处理的信息量尽可能大,这个就是光电鼠标除CPI外另一个重要的指标了。
引用一个名称叫做“像素处理能力”,单位可以用“像素/秒”。

不过减少掉帧属于硬件层次的问题了,换光学器件我是不敢试了,换个好点的鼠标垫还是有用的。
由于这不是一般的软件设置能搞定的,加上危险较大,所以就不深入研究了。

但是又出来个更改mouse rate来获得更快的刷新率的办法,所以不得不试试效果。
这个软件叫usbmrs11.exe,可以在125Hz、250Hz、500Hz和1000Hz之间调整频率。
其实所有的USB鼠标默认都工作在125Hz的刷新率下,但有的鼠标通过驱动修改了这个值,如G5等,以达到500Hz或1000Hz的频率。

那么增加这个频率会减少掉帧吗?

理论上应该是不相关的,因为这个频率和采样频率完全是2回事,2者根本不在1个数量级上。

那么实际测试呢?这里用mouserate.exe、dx_mouse_timer_dialog.exe和MouMvRec.exe来测试看看。

前2个是测试mouse rate的。
当移动鼠标时,这个数字会不停变化,正常移动时将稳定在一个值附近(一般是125Hz)。
低速则会下降,掉帧时也会下降。所以我们在高速移动时,发现有速度较低的数据,则表示掉帧了。
125Hz时,迷你旋貂正常移动和高速移动时都很稳定,mouse rate基本都在124、125Hz。
250Hz时,迷你旋貂正常移动较稳定,mouse rate基本都在248~251Hz之间;高速移动时偶尔有较大波动,出现极少量的125Hz和500Hz。
500Hz时,迷你旋貂波动较大,100多到1000的都有,但仍比较稳定。
1000Hz时,迷你旋貂波动较大,经常出现500~1000之间的值,平均值比1000低了几十。

MouMvRec使用时点下start,然后移动鼠标就行了。
右边一栏显示的EQ表示相等,即没错;显示DIF表示不同,即出错了。
如果鼠标性能不好就算了,我拿了个自带的鼠标,在一张比较皱的信纸上移动,基本看不到EQ;而换用迷你旋貂则基本看不到DIF。
另外,有的电脑运行这个软件就像死机了一样(如我重装系统之前就是这样),按下alt+ctrl+del,把这个程序结束进程就行了。
125Hz时,迷你旋貂正常移动和高速移动时很稳定,极少出现DIF;急速移动时必然出现DIF,即掉帧了(下面皆如此,不再叙述)。
250Hz时,迷你旋貂移动时出现少量DIF。
500Hz和1000Hz时,迷你旋貂移动时出现较多DIF。

测试结果很明显了,对于迷你旋貂来说,mouse rate还是不要更改的好。
提高这个值反而导致性能下降,原因可能有2个:
1是125Hz就是适合它的最佳值了,提高后因为超过了极限,反而不稳定了。
2是工作频率高了,对电信号的变化就更敏感了,外界、内界的电流、电压变化很容易干扰到鼠标的定位。

另外,在该帖的回帖中我看到了别人给我提供的资料:RaZiel的《Hardware: The next level of aiming》
http://www.warleagues.com/viewnews.asp?view=45
原文共3页,在第2页中提到的修改方法经我测试,发现就是更改mouse rate。
方法是更改Windows XP/2003操作系统的%SystemRoot%\System32\Drivers文件夹下的usbport.sys文件。
他说提高后的效果是鼠标的速度下降,更快的响应时间,更少的jitter(大概是指指针的跳跃)、鼠标延迟和whine(不懂是什么)。
作者举出了几个成功的(并未说最佳)事例:
Intellimouse Explorer 3 - 250&500hz&1000hz
Logitech MX300/310/500 - 250&500hz
Logitech MX510 - 250&450hz(怀疑作者写错了,应该是250&500hz)
Razer Viper - 250&500hz (不开启“提高指针精确度”)

关于mouse rate更多的资料,可以参考我推荐的第一篇帖。
这里说的是比较高档的鼠标,才会因为mouse rate不高而有所限制;其他观点和我差不多。


3.接着就是双击速度了。
在“控制面板-鼠标”中可以调节。
没装MouseWare的应该都会调吧;装了的在“按钮”标签,选择第一个按钮,点击“修改”按钮就能看到了。


4.另一个对鼠标影响巨大的就是鼠标驱动了。
因为我用的是罗技的迷你旋貂,所以只说Windows自带驱动和MouseWare;其他鼠标(如G1)和厂商(如微软)的驱动没用过,就不介绍了。

Windows自带驱动就是俗称的不装驱动。
在WindowsXP上,把USB鼠标插上USB接口,就会自动识别和安装驱动了。如果你曾经用删过一些驱动备份文件的话,可能需要Windows安装盘。

据lx透露,SKT T1战队的都是不装驱动的……
那么不装驱动有什么优劣呢?看完MouseWare再对比。

MouseWare就是罗技为自己生产的鼠标做的驱动。
其实大多数其他鼠标也能用。而因为2004.2.4以后就没更新了,所以最近的新鼠标可能不能识别(如G1)。
顺便插一句,KTEC的鼠标驱动也叫MouseWare。

MouseWare有很多版本,我用过的有9.73、9.75、9.76、9.78、9.79和9.80。
最大的不同就是迷你旋貂在9.75以上版本时,超过第6格就一定有加速度。
其次就是9.73安装后,原来的鼠标控制面板中“指针选项”标签被MouseWare取代了,其他版本则保留了。
并且,9.73的调节指针移动速度的挡数是10格,而以后版本是11格。
另外,9.76以上版本可以使用一个叫做“MouseWare Advanced Utility”的软件。主要是用来去除游戏中的加速度的。
此外,9.75还有个MouseFix.reg,好像是用于修复和其他设备的冲突。
最后就是你可以用winrar打开MouseWare安装文件。你会发现9.73的驱动是最全的,连DOS都有;而9.80则把95和NT都放弃了。
插一句:如果删掉了驱动备份,9.80安装时可能需要mouclass.sys和mouhid.sys,9.73则还需要I8042PRT.SY_;卸载时则需要hidusb.sys。

下面比较下自带驱动和MouseWare的不同吧:

注:
1.实际测试时感觉就9.73和9.80加速度最小,而其他版本没什么优点,所以就省去了。
2.表格是我在记事本上写的,在网页中可能无法对齐。请复制到记事本中,用Verdana字体、小五大小查看。

驱动种类Windows自带驱动MouseWare9.73MouseWare9.80
CPI(*)400800800
指针速度的挡数111011
注册表中速度调节(**)20100100
双击速度的挡数111717
加速度无/少量(***)无/低/中/高无/低/中/高
丢帧时的表现乱移动停在原处停在原处
兼容性(****)很好一般一般
功能设定较多
注册表生效方式注销后重新登录重新打开鼠标属性重新打开鼠标属性
注册表中参数设定较少较多较多

*:本来没什么好说的,不小心去做了下实验,见第二部分。只能说MouseWare在精度方面好于自带驱动。

**:这个在第二部分会提到,实际上速度和双击速度都能通过注册表更改。
这里要说的是,对于速度的调节,9.73可以有更好的精度,9.80可以有更高的速度(牺牲了精度),2者都好于自带驱动。
而对于双击速度的修改,实际上3者是一样精确的。

***:把“提高指针精确度”开启后,会减慢移动速度,同时增加少许加速度。

****:9.80安装后有时会出现无法完全去除加速度的问题,除非重新安装操作系统。安装后不用重启就能用了。
9.73安装后肯定没有加速度,但有时会出现滚轮有惯性的问题(这个不影响星际)。安装完需要重启。
另外,在有的电脑上会出现安装MouseWare时可能会显示“RPC服务失败”的错误,不过我看过RPC是开启的了。(可能和我装了2个鼠标有关。)
给个忠告就是,安装完系统后,先把驱动装上,然后慢慢地装软件。以后出问题了就能找到是安装了哪些软件后产生冲突了。
装驱动最好是越内核地越先安装,如按照这个顺序:主板(芯片组)、(Microsoft SpeedStep Fix)、(SCSI控制器)、显卡、声卡、网卡、鼠标、键盘和其他设备。

其实比较的结果很明显了:
对于会调试的人来说,用MouseWare更能精确地设置适合自己的指针速度;
需要快速度的人,还是选择9.80为好;
如果没有加速度问题,9.80是个不错的选择;
如果发生了加速度问题,则最好是用9.73;
如果习惯低速,9.73是个很好的选择。
如果发生了不能安装MouseWare的错误,那就只能用自带驱动了。

总之,我是不推荐自带驱动的。

最后,我个人认为对于不习惯加速度的人而言,有无加速度的重要性,比速度大小的重要性更大。因为后者很好适应。


(二)键盘:

关于键盘我了解得不多。加上我用本本,懒得换键盘,所以也没多大兴趣了解。(传说中我右手APM160,左手APM20=。=)

键盘最常见的问题就是延时和键位冲突。

1.延时就是按下一个键后,经过一段时间,系统才接收到信号并做出反应。
这个时间自然不可能为0,所以完全没有延时的键盘是不存在的。而我们追求的是延时尽可能短,短到人察觉不到就行了。

这很大程度上和硬件性能有关,包括键盘的性能、系统整体速度以及运行星际时的速度。这只能靠money解决了。
但同时也和键盘的设置有关,这个在第二部分说。
另外就是网络延时的效果也和按键延时差不多,甚至是更加恼人。尽量提高网速和设置为低延时吧。

延时对星际的影响是显而易见的,最常见的就是比如1a2a3a4a5a,然后发现3还在那看戏。
除了换键盘,只能适应这种延时了。

2.键位冲突就是同时按下几个键后,继续按下别的按键时,这个按键并没有生效。

产生的原因很简单,为了方便生产和节省成本,现在的USB接口的键盘大多是将几个按键作为一组来焊接的。
当同一组中同时按下的按键数目过多,超过设计时说支持的上限时,就会导致键位冲突了。
另外,不是同一组的一般不会造成键位冲突。比如我有款键盘按住1234,再按5就键位冲突;但是按住1234,再按6就没问题。

据说PS/2接口的键盘没有这个问题,但我试了一款自带的PS/2接口的,照样有冲突。
另一个小道消息是早期的键盘没这个问题,因为没有分组,而是单独焊接的;不过我家附近没有古董商买这个玩意。

按键冲突到底对星际有什么很大影响呢?
因为我很少用hotkey,所以个人感觉影响不大。毕竟不是VOS,谁打星际把12345都按着不放啊……
星际平时最多同时按2个键吧,操作失误多按1个也就3个罢了,基本上没有键盘达不到这个指标了。

但是如果又有延时又有键位冲突,那就可能有问题了。
因为可能你连续按下几个键,但是因为延时被当成同时按的,就有可能键位冲突了。

解决的方法最好是更换好键盘。
软件也有办法,比如用更改键位的软件,把常用的按键分散在不同的组。
不过我忘记那个软件丢哪了,网上也比较好找,我就不去找了。
只是这相当于外挂了,比赛时应该是禁止的,所以我不推荐。


二、调试方法:

因为要用到注册表,所以稍微介绍下注册表的用法:

先说注册表编辑器:
在“开始菜单-运行”中输入regedit,回车就打开注册表编辑器了。
左边的树形结构是项,右边是值。和资源管理器的操作差不多,分别当成文件夹和文件就行了。
操作时,对项或值点右键,就会弹出菜单,都是很容易的中文。
“文件”菜单下有导入/导出,用于保存.reg文件和导入.reg文件。
“收藏夹”菜单可以添加常用的路径,方便以后访问。

接着说说.reg文件:
默认情况下,.reg文件双击就能将其中的内容导入到注册表。
一个.reg文件其实就是一个文本文档,右键点它,选择编辑,或用记事本打开就能看到内容了。
它的头部都是这样的:
对于XP是如下字符加一行空行:
Windows Registry Editor Version 5.00
对于98好像是“REGEDIT 4”加一行空行(很久没用98了,记不清了)。98中使用的格式,在XP上也能正确导入。
头部后面就是内容了,用[]括住的就是项路径,下面则是项中的值。
赋值是用“=”符号,删除是用“-”符号,注释用“;”符号。

因为经常会用到3个路径,所以我这里先写出来,以后就省去了:
路径1:HKEY_CURRENT_USER\Control Panel\Mouse
路径2:HKEY_CURRENT_USER\Software\Logitech\MouseWare\CurrentVersion\Control Center\Schemes\.Default\Devices\OpticalMouse10\0001\Usability
路径3:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LMouFlt2\Parameters\OpticalMouse10\0000

将下面的内容保存为.reg文件就能快速地在收藏夹中调用了:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\Favorites]
"Mouse"="我的电脑\\HKEY_CURRENT_USER\\Control Panel\\Mouse"
"MouseWare1"="我的电脑\\HKEY_CURRENT_USER\\Software\\Logitech\\MouseWare\\CurrentVersion\\Control Center\\Schemes\\.Default\\Devices\\OpticalMouse10\\0001\\Usability"
"MouseWare2"="我的电脑\\HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\LMouFlt2\\Parameters\\OpticalMouse10\\0000"

好了,下面正式开始调试了。

1.调整加速度。

(1)首先把“提高指针精确度”取消,格数调至6格,确定此时自带驱动没有加速度。方法见第一部分。
一般是没有加速度的,有的话试试重装。当然,比赛是不可能允许你重装的,可以尝试换电脑。实在不行就忍受。
另外accelfix.exe这个软件可以减轻加速度的状况,但是还是无法完全消除。

(2)如果你使用自带驱动,按照自己的习惯,决定是否把“提高指针精确度”勾上。然后跳过调整加速度的部分。

(3)按照调整速度的内容调整指针速度。

(4)安装自己喜欢的MouseWare版本,把加速度关闭,并测试是否有加速度。
如果是9.80且有加速度,则换9.73或自带驱动(即卸载MouseWare)。

(5)根据自己的习惯,决定选择何种加速度方式。


2.调整速度。

(1)粗调。

进入星际,进行些点矿之类的练习,切换出来在鼠标属性中调整鼠标速度。

我的方式是尽量调低,感觉连续点击最远的矿比较准确,移动到屏幕4周不费力就行了。注意横向和纵向移动都要测试。

(2)细调。

用剩下那3张地图创建游戏,以use map settings模式进入游戏,练习分农民。
主要是因为我是玩P的,所以做的都是P的。懂地图编辑器的可以自己改成T和Z。
选了3张我玩得比较多的图练习,其他的图因为懒得破解了,所以没做。
采集32个水晶后会自动重新开始。如果一个地点练得很熟练了,可以重新开始游戏,会随机选个出生点练习。

练习时看看自己点击农民时是经常点过头了,还是不够。前者说明速度快了,后者说明速度慢了。

切换出来打开注册表,这里又分成自带驱动和MouseWare了。

自带驱动(MouseWare安装前也要调节):
路径1中的MouseSensitivity就是速度了。1~11格分别为1、2、4、6、8、10、12、14、16、18、20。
我们要做的就是让这个值改变成最接近自己习惯的速度。
注意最大是20,超过了应该是无效的。这里的细调其实就是原来的半格,还不是很精确。
调整完后注销,重新登录windows,再进行细调,直到满意为止。

MouseWare:
路径2和3中的MouseSpeedX和MouseSpeedY分别是鼠标横向速度和纵向速度。这2个值可以分别修改,但建议还是保持一致的好。
另外,路径3中的值服从路径2中的值,修改路径2才能真正生效。
对于9.73来说,路径1的1~10格分别为9、19、29、38、48、58、69、79、89、100,路径2的第N格为10*N。可以看出,允许有2的偏差。
对于9.80来说,1~11格分别为10、20、25、30、40、50、60、70、80、90、100。这里是一致的。
注意最大是100,超过了应该是无效的。
调整完后重新打开鼠标属性就生效了。接着进入游戏进行调节。

如果点农民已经很熟练了,误差应该在5以内了。什么叫熟练呢?
我能达到的极限是以fastest速度进行游戏,分完农民后能在重新开始前,把所有的矿、基地依次选中2遍,同时选中每个返回的probe。

这个时候连续点2个最远的矿可能还不是很顺利,这就需要继续慢慢地调节速度,直到找到最适合自己的值。
对我来说,能够以最熟悉的节奏和距离准确点击任意2块矿,在手臂不移动的情况下只靠手腕移动到屏幕四周,就是最佳的了。
不过当我横向能很舒服地移动到屏幕边缘时,纵向的移动虽然能最舒服地点到任意的2块矿,但并不能很轻松地到达屏幕边缘。
所以我把移动定格在去掉下面的状态栏的范围内,这样上下左右都很顺利了,要点小地图和移动屏幕的时候稍微移动手臂就行了。
当然也可以把MouseSpeedY增大,但是这样鼠标移动的轨迹就不是很对应光标移动的轨迹了。所以我还是觉得不这么做了。

最后,因为CPI的影响,9.73中的速度值大约是9.80中的一半。比如我在9.73中用48,9.80用24。(好像太低了点)。

说到CPI,就说说我实验的结果吧:

首先要知道1英寸=2.54厘米,所以我用测试加速度的工具,加了根刻度尺,在windows自带的画笔程序上来测量鼠标移动距离和光标移动间的关系。

结果就是自带驱动和MouseWare9.80,当数值不超过总数值的一半时,才是准确的。此时的速度才能计算CPI。

自带驱动在超过10时,将不会每次移动1像素;特别是20的时候,每次都不少于3像素。
而且这个值不是线性的,比如20的速度并不是10的2倍。
当勾上“提高指针精确度”后,移动速度下降,相应的差值也减少了(即不会出现一次最少移动3像素),但会产生加速度。

而MouseWare9.80以上版本在不超过50时是精确的,超过后会出现加速度的问题。
另外,MouseWare9.73的速度是线性的,比如100就是50的2倍;而9.80则在不超过50时是线性的。
顺便说一句,在速度50时,9.80移动1.27厘米时就已经达到800像素了。因为迷你旋貂不可能超过800CPI,所以我肯定这个时候已经是极限了。

由于这个实验的关系,我又想到了一个设置鼠标速度的好办法:
1.安装MouseWare9.73,把鼠标速度设为50。
2.打开画笔,把图像设置为足够你画的大小。(我在1024×768的屏幕分辨率时时,最大也就能显示958×605的图)
3.握住鼠标,移动到画面的中心。按下鼠标左键,向左右和上下移动,分别以最舒服的移动和不移动手臂且不需过于费力能到达的极限位置画线。
4.分析线的端点,舍取和其他相差较大的点,估算出坐标的平均值,将它们的差用于计算鼠标速度。
注意星际的屏幕坐标是640×480,下面的小地图、状态栏和控制栏的高度分别是173、117和148像素。
只要列个比例式,把50的速度代进去,就能计算出你应该设置的鼠标速度了。
因为9.80的CPI是800,所以把这个值除以2,就是9.80中的速度了。不过自带驱动的鼠标速度对9.80的也有影响,这里指的是10(第6格)。

不过因为想到后就有事出去了,现在也没时间去试。有兴趣的自己尝试下吧。

另外,因为平时不是在640×480的分辨率,这个值平时需要更改。如1024×768的分辨率,正好是前者的1.6倍,所以乘以1.6就可以了。

也可以开启加速度,并把“游戏中禁用加速度”勾上。但是这样平时使用时和游戏中就会感觉不一样了。
注意9.86需要MouseWare Advanced Utility才能实现上述功能,而9.80则没有这个bug了。


3.调整双击速度。

直接进入鼠标属性调节就行了,因为没必要很精确。
先看看自己在星际中最慢会以什么速度去双击,然后在右边的框里测试,比这个速度慢一格就行了。
精确的话没什么必要,1毫秒的差别,人根本感觉不到。实在要改看第三部分。


4.调整双击误差。

路径1,DoubleClickHeight和DoubleClickWidth分别为双击高度和宽度误差,单位为像素。默认值是4。
这个误差就是指,连续2次左键的点击的坐标差不超过这个值时,认为是点在同一个点上,即形成一次双击。

这个还是按自己的需求改吧,平时鼠标点得不稳的可以改大点,点得很稳的可以改小点。总之我没改。


5.调整星际中的设置。

进入游戏,按F10-O进行设置。

(1)Speed:
mouse scroll和key scroll分别为鼠标和键盘的卷屏速度。
前者是将鼠标移动到屏幕边缘时屏幕的移动速度;后者是按下光标键或home、end、page up、page down时的移动速度。

当值一样时,鼠标和键盘的卷屏速度也是一样的。
地图大小不同时,一次移动的距离也是不同的,所以也许要根据地图大小调整这个值。

值的设定和个人习惯有关:
有的人不喜欢用这个来移动屏幕,所以基本上是误移。为了减少误移的值,就将其设为最小了。[NC]...Yellow就是都设为最小的。
有的人不喜欢点小地图,只用这个移动屏幕。为了减少移动的时间,就将其设为最大了。
还有的人是喜欢控兵的。控兵时希望屏幕移动速度能最适合兵的移动速度。我在最常见的128×128的地图上设为第5格,这个速度正好能跟上常用单位的速度。

(2)Sound:
为了去掉无关的声音,来提高对重要声音的敏感度,我把music关了,只勾上第1个选项。
这样就只保留了单位攻击和行动的音效(如tank架起和攻击时的轰鸣声)、受到攻击、生产完成、建造完成、升级完成和核弹提示声。


三、快速设置。

(一)准备工作。

1.全部调试完后,打开注册表编辑器,找到路径1、2、3,分别导出为.reg文件。
我这里给个示范,注意我把路径2、3合并为一个文件了。里面还有些注释,提到了一些我没讲到的地方。

MouseSetting.reg:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Mouse]
"ActiveWindowTracking"=dword:00000000
"DoubleClickHeight"="4"
;双击高度误差(像素)
"DoubleClickSpeed"="270"
;双击间隔时间(毫秒)
"DoubleClickWidth"="4"
;双击宽度误差(像素)
"MouseSpeed"="0"
;提高指针精确度开关。1为开启,0为关闭。开启后移动速度下降,且加速度稍微增加。
"MouseThreshold1"="0"
;与MouseSpeed有关。“提高指针精确度”开启后,该值为6。
"SmoothMouseXCurve"=hex:00,00,00,00,00,00,00,00,00,a0,00,00,00,00,00,00,00,40,\
  01,00,00,00,00,00,00,80,02,00,00,00,00,00,00,00,05,00,00,00,00,00
;平滑鼠标横向曲线。原值如下(更改后感觉没什么差异):
;"SmoothMouseXCurve"=hex:00,00,00,00,00,00,00,00,15,6e,00,00,00,00,00,00,00,40,\
;  01,00,00,00,00,00,29,dc,03,00,00,00,00,00,00,00,28,00,00,00,00,00
"SmoothMouseYCurve"=hex:00,00,00,00,00,00,00,00,66,a6,02,00,00,00,00,00,cd,4c,\
  05,00,00,00,00,00,a0,99,0a,00,00,00,00,00,38,33,15,00,00,00,00,00
;平滑鼠标纵向曲线。原值如下(更改后感觉没什么差异):
"SmoothMouseYCurve"=hex:00,00,00,00,00,00,00,00,b8,5e,01,00,00,00,00,00,cd,4c,\
;  05,00,00,00,00,00,cd,4c,18,00,00,00,00,00,00,00,38,02,00,00,00,00
"MouseThreshold2"="0"
;与MouseSpeed有关。“提高指针精确度”开启后,该值为10。
"SnapToDefaultButton"="1"
"SwapMouseButtons"="0"
"MouseTrails"="0"

;"MouseSensitivity"="10"
;鼠标灵敏度,即鼠标速度。1~11格分别为1、2、4、6、8、10、12、14、16、18、20。MouseWare9.73无该项。

;这里的设置注销后重新登录即生效。


MouseWare9.73.reg:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Logitech\MouseWare\CurrentVersion\Control Center\Schemes\.Default\Devices\OpticalMouse10\0001]
[-HKEY_CURRENT_USER\Software\Logitech\MouseWare\CurrentVersion\Control Center\Schemes\.Default\Devices\OpticalMouse10\0001\Usability]

[HKEY_CURRENT_USER\Software\Logitech\MouseWare\CurrentVersion\Control Center\Schemes\.Default\Devices\OpticalMouse10\0001\Usability]
"MotionWUEnable"="2"
;"MouseSpeedX"="48"
;鼠标速度。1~10格分别为9、19、29、38、48、58、69、79、89、100。
;"MouseSpeedY"="48"
"Acceleration"="Off"
;加速度开关。值可为Off、Low、Medium、High。
"DoubleClickTime"="270"
;双击时间(毫秒)。
"Orientation"="0"
"ChordDelay"="0"
"TrailLength"="2"
;光标轨迹长度。值为2~8。
"MouseTrails"="Off"
;光标轨迹开关
"ButtonSwap"="Off"
;左右键切换开关
"SwapButton1"="1"
;左键设置为左键
"SwapButton2"="2"
;右键设置为右键
"NewDevice"="Off"
"DefaultPosition"="0"
"MappingButton1"="10000000"
;按钮映射。一般不要更改。下同。
"PositionButton1"="Top"
"LogicalButton1"="Top"
"MappingButton2"="01000000"
"PositionButton2"="Bottom"
"LogicalButton2"="Bottom"
"MappingButton3"="00100000"
"PositionButton3"="Middle"
"LogicalButton3"="Middle"
"MappingButton4"="00010000"
"PositionButton4"="Left"
"LogicalButton4"="Left"
"MappingButton5"="00001000"
"PositionButton5"="Left"
"LogicalButton5"="Left"
"MappingButton6"="00000100"
"PositionButton6"="Left"
"LogicalButton6"="Left"
"MappingButton7"="00000010"
"PositionButton7"="Left"
"LogicalButton7"="Left"
"MappingButton8"="00000001"
"PositionButton8"="Left"
"LogicalButton8"="Left"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LMouFlt2\Parameters\OpticalMouse10]
[-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LMouFlt2\Parameters\OpticalMouse10\0000]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LMouFlt2\Parameters\OpticalMouse10\0000]
"Acceleration"="Off"
"MappingButton1"="1000"
"MappingButton2"="0100"
"MappingButton3"="0010"
"Orientation"="0"
"MouseSpeedY"="48"
;鼠标速度。服从Usability中的值,只更改这里无效。第N格为10*N,下同。
"MouseSpeedX"="48"
"DoubleClick"="0010"
"ChordDelay"="0"
"DragLock"="0000"
"Disabler"="48"
;中断
"Resolution"="4"
;解析度
"FrameRate"="2"
;帧率

;这里的设置重新打开鼠标属性后即生效。


Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Logitech\MouseWare\CurrentVersion\Control Center\Schemes\.Default\Devices\OpticalMouse10\0001]
[-HKEY_CURRENT_USER\Software\Logitech\MouseWare\CurrentVersion\Control Center\Schemes\.Default\Devices\OpticalMouse10\0001\Usability]

[HKEY_CURRENT_USER\Software\Logitech\MouseWare\CurrentVersion\Control Center\Schemes\.Default\Devices\OpticalMouse10\0001\Usability]
"MotionWUEnable"="2"
"MouseSpeedX"="24"
;鼠标速度。1~11格分别为10、20、25、30、40、50、60、70、80、90、100。
"MouseSpeedY"="24"
"Acceleration"="Off"
"DoubleClickTime"="270"
"Orientation"="0"
"ChordDelay"="0"
"TrailLength"="2"
"MouseTrails"="Off"
"ButtonSwap"="Off"
"SwapButton1"="1"
"SwapButton2"="2"
"NewDevice"="Off"
"DefaultPosition"="0"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LMouFlt2\Parameters\OpticalMouse10]
[-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LMouFlt2\Parameters\OpticalMouse10\0000]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LMouFlt2\Parameters\OpticalMouse10\0000]
"Acceleration"="Off"
"MappingButton1"="1000"
"MappingButton2"="0100"
"MappingButton3"="0010"
"Orientation"="0"
"MouseSpeedY"="24"
;鼠标速度。服从Usability中的值,只更改这里无效。1~11格分别为10、20、25、30、40、50、60、70、80、90、100。
"MouseSpeedX"="24"
"Resolution"="0"
"FrameRate"="2"
"DoubleClick"="0010"
"ChordDelay"="0"
"DragLock"="0000"
"Disabler"="48"

;这里的设置重新打开鼠标属性后即生效。但有时在控制台更改设置后不会更改注册表,导致重启后回到以前的设置。

2.准备好其他的软件。如:mouserate、dx_mouse_timer_dialog、MouMvRec、accelfix、测试地图。
另外,如果需要屏蔽按键的话,可以将以下内容保存为.reg文件:
屏蔽WIN键.reg:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,00,00,5b,e0,00,00,5c,e0,\
  00,00,00,00
;实际上可以去掉后面的4个0,即如下也是有效的:
;"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,00,00,5b,e0,00,00,5c,e0
;也可以把3改掉,如下也是有效的:
;"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,00,00,5b,e0,00,00,5c,e0
;屏蔽左Win键:
;"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,00,00,5B,E0,00,00,00,00
;屏蔽右Win键:
;"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,00,00,5C,E0,00,00,00,00

屏蔽F1键.reg:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,01,00,00,00,00,00,3b,00,00,00,00,00

屏蔽WIN+F1键.reg:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,00,00,3b,00,00,00,5b,e0,\
  00,00,5c,e0,00,00,00,00

撤消屏蔽按键.reg:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=-

注:以上提到的我都放入mouse.rar里面了。

(二)在要用的电脑上进行调试。
1.注销后重新登录,让注册表生效。
2.安装最适合自己的驱动,测试是否有加速度。根据情况选择是否更换驱动,是否使用accelfix。
3.导入需要的.reg文件。如果遇到无法导入的情况,可以和管理员联系。
4.试试测试地图,看看是否符合自己的手感。不符合的话按第二部分内容进行调试。
5.按第二部分内容更改游戏中的设置。

(三)优化其他设置。

进入“控制面板”。

1.键盘:
把“重复延迟”改为最短,“重复率”改为最快,以降低键盘延时。
其实这个也可以导入到注册表,但是我懒得找了,反正容易改。

2.区域和语言设置:
依次点击“语言”标签、“详细信息”按钮和“键设置”按钮,把热键都取消掉,或换成不易错按的键。

3.系统:
依次点击“硬件”标签、“设备管理器”按钮。

(1)如果鼠标是PS/2接口的,找到“鼠标和其他指针设备”,双击查看下面的设备的属性。
在“高级”标签中,把采样速率改为200,鼠标轮检测按照实际情况改为“假设鼠标轮已经存在”或“检测被停用”,输入缓冲区长度设为300,勾上快速初始化。

(2)如果使用了USB设备,找到“通用串行总线控制器”。
找到一个正在使用的USB设备,双击打开属性,在“高级”标签中把“不要通知我USB错误”勾上。


好了,全文到此结束,大家辛苦了。
因为时间仓促,难免还有遗漏或错误,我会补充和更正的。

1条评论 你不来一发么↓ 顺序排列 倒序排列

    向下滚动可载入更多评论,或者点这里禁止自动加载

    想说点什么呢?