MarkC 鼠标加速去除补丁!解决加速问题!

    |     2012年5月3日   |   技术   |     0 条评论   |    261

转载,点击查看原文。
在开始之前,我们先来了解一下鼠标的基本概念:
1. 鼠标的分辨率(CPI)

鼠标的分辨率跟Windows的指针移动速度是两个不同的概念,Windows的指针移动速度是由软件决定的,而分辨率是由鼠标本身的传感器决定的。CPI是counts per inch的缩写,表示的是鼠标在桌面上划过1英寸距离,能被鼠标识别的“步数”。如果鼠标每划过一步对应于屏幕上的指针划过一个像素,CPI就等于DPI。DPI是dots per inch的缩写,表示的是鼠标在桌面上划过1英寸距离,在屏幕上划过的像素点数量。例如,一个400 DPI的鼠标,在分辨率为800×600的屏幕上将指针从最左边划到最右边,需要移动800/400=2英寸的距离。如果是800DPI的鼠标,则只需要1英寸。如果是1600×1200的分辨率,则需要1600/400=4英寸。

2. 鼠标回报率(Polling Rate)

鼠标回报率是鼠标每秒钟向Windows发送鼠标位置的次数。回报率的高低由硬件决定,最常见的鼠标回报率是125,表示鼠标每秒钟向windows发送125次鼠标位置信息。这个数值越高,鼠标的移动,尤其是高速移动就越顺畅。比如说我突然间需要大幅度移动鼠标,这时我的鼠标移动速度恰好是每个像素点只需1秒/500=0.002秒=2毫秒,而鼠标每隔1秒/125次=8毫秒才向windows汇报一次我的鼠标位置,那么在鼠标向windows汇报前,我的鼠标已经移动了4个像素点,但是鼠标却只向windows汇报了我第4个点的位置。因此在屏幕上,我看到的鼠标指针是一下子跳到第4个点的。如果我正好需要移动到第1/2/3个点上,那就无能为力了。但是如果我的鼠标回报率是500甚至1000,那么即使再快的移动速度都能被windows捕获。

3. Windows的指针移动速度

由于鼠标诞生初期DPI较低,而屏幕分辨率较高,鼠标指针移动非常缓慢,因此就有人想到利用软件提高鼠标的“速度”。

Windows指针移动速度控制面板>鼠标>指针选项>选择指针移动速度)是由Windows将鼠标的速度“放大”,即原来鼠标在桌面上移动一步,指针就在屏幕上划过1个像素点,移动10步,就划过10个像素点。但是现在经过Windows指针移动速度设置,鼠标在桌面上移动10步,指针在屏幕上有可能移动了12个像素,这说明其中2个像素是被Windows跳过去的,指针实际上是没有移动到这个像素点上的。如果鼠标移动速度设置较高,可能指针在屏幕上直接移动了20个点,也就是说指针是跳着走的,有20个像素是被跳过去的。这样一来,鼠标移动慢的问题是被解决了,但是鼠标的精度却下降了,因为很多像素点是被指针跳过去的,假设你需要将指针移动到某个像素点,就无能为力了。

因此,DPI才是决定鼠标速度的真正因素。

110126145370ee1b7988352cf2 

指针移动速度设置共有11格,代表着不同的“放大”或“缩小”倍率,第6格是windows的默认设置,既不放大,也不缩小,因此这种情况下指针的移动速度完全等于鼠标的移动速度(即DPI)。

4. FPS游戏中的鼠标灵敏度

FPS游戏中的鼠标灵敏度决定着鼠标每在桌面上划过1步,游戏人物在游戏中转过的角度。与在桌面上不同的是,原来的像素被替换成角度。比如游戏鼠标灵敏度是1,鼠标每在桌面上移动一步,游戏中的人物就会转动1度。但是如果你之前更改过Windows指针移动速度,角度也会出现跳跃的现象,即鼠标每在桌面上移动一步,游戏中的人物会转动2度,其中有一度是被跳过去的,如果远处一个敌人的头正好处在被你跳过去的角度,那就杯具了。

5. Windows鼠标加速

刚才提到的Windows指针移动速度,是解决低DPI鼠标移动缓慢的一个办法,而鼠标加速则是另一个。Windows鼠标加速可以通过Windows指针移动速度设置下的提高指针精确度打开或关闭。打开鼠标加速,则Windows会通过鼠标在桌面上移动的快慢来动态调整指针移动速度设置。如果你移动的快,则Windows指针移动速度就会瞬间增大。移动的越快,增大的幅度就越大。如果你移动的慢,则Windows指针移动速度就会瞬间缩小。移动的越慢,缩小的幅度就越大。

这么做的好处是如果临时需要指针移动较长的距离,打开鼠标加速之后就可以在不改变Windows指针移动速度的情况下大大缩短指针移动距离。但是这个功能对于FPS游戏来说不是好事,因为FPS游戏往往需要快速的转动和精确的鼠标反应,如果你突然转身瞄准身后的敌人,开启鼠标加速就很容易把枪甩过头。

然而,并不是说简单地把提高指针精确度前面的勾去掉就可以解决问题了。

6. 鼠标加速bug

一些较老的游戏,比如半条命、CS、Quake、Quake2、虚幻等游戏。当他们运行时,会向windows发出指令,企图通过把游戏中所有的鼠标动作全部加速来达到关闭windows鼠标加速的目的(实际上是Windows指针移动速度翻倍)。在Windows 2000以及更早的系统里面,这种方法可以移除所有的鼠标加速。在游戏里鼠标移动很顺滑。

但是在XP,Vista和Win 7中,微软改变了鼠标加速的工作方式。当这些游戏向Windows发出指令(要求所有鼠标动作都被翻倍),windows却打开了鼠标加速功能,使得游戏中的鼠标移动产生加速,即使你已经把提高指针精确度关掉也无济于事。这时,就要用到鼠标加速去除补丁了。

7. 鼠标加速补丁

玩过CS的朋友一定都听说过CPL鼠标加速去除补丁,这是当时CS电竞界流行的补丁。但是当时Vista和Win 7还没发布,因此CPL是为XP制作的。然而即使是CPL的补丁,也不是最完美的。有三张鼠标移动记录器的截图,我们可以很明显的看出孰优孰劣:

11012614583c4b8169034ab7c3 

XP下打过CPL补丁之后的鼠标移动,每一行代表着每一次鼠标回报的鼠标位置情况,以坐标表示,原点是上次回报中鼠标的位置。第一列是鼠标在桌面上的位置信息,第二列是鼠标指针在屏幕上的位置信息。可以看出偏差之大。

Win 7下打过CPL补丁之后的鼠标移动,很XP一样,偏差很大。

1101261458a77034edc1f3d065
只有使用澳大利亚玩家MarkC制作的补丁之后的鼠标移动情况才会完全变好。可以看到鼠标移动和指针移动是一一对应的。

11012614587255da39ad89785a 

除此之外,其他的鼠标加速补丁有个限制,就是Windows指针移动速度必须处在默认的第6格,补丁才能起作用。由于大部分玩家的
Windows指针移动速度都不在第6格,因此每次进入游戏之前和之后还要更改指针速度,很是麻烦。但是MarkC的补丁就解决了这个问题,不论你的指针速度是多少,进入游戏后补丁都能起作用。但我在使用中发现,还是得将设置改成第6格才管用,这个可能和win7 x64系统有关吧。

 


关于鼠标移动记录器

软件包内附有一个最新版本的鼠标移动记录器。打开MouseMovementRecorder_1.6_20100808x.zip将MouseMovementRecorder.exe解压出来双击打开,即可看到上图所示的界面,移动你的鼠标,鼠标移动记录器就会更新鼠标的位置信息和鼠标指针的位置信息(更新频率取决于你的鼠标回报率,即第三列显示的数值),绿色方块则代表该次鼠标移动被windows加速。在打补丁前后使用这个工具进行查看,就可以知道鼠标加速是否已经成功去除。

1. 点击下载MarkC鼠标加速去除补丁

2. 解压到任意位置

3. 双击MarkC_Windows7+Vista+XP_MouseFix_Builder.vbs

4. 这时需要告诉程序一些信息,才能创建针对不同的系统创建不同的补丁。

首先弹出如下对话框:

11012614514df340ce3f15d369 

程序会自动判断你的windows版本,如果程序判断不正确,则在输入框中手动输入你的Windows版本。

如果是XP或Vista,输入  XP+Vista

如果是Win 7,输入 Windows 7

5. 点击确定,弹出第二个对话框:

11012614511354a149c265fa49 

程序会自动判断windows文本分辨率,如果程序判断不正确,则在输入框中手动输入你的windows文本分辨率。如果你不知道windows文本分辨率是什么,就填96。注意,在win7下是按百分比显示,但一般默认就是100%。

6. 点击确定,弹出第三个对话框:

::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::7 

程序会自动判断windows桌面刷新率,如果程序判断不正确,则在输入框中手动输入你的windows桌面刷新率。

7. 点击确定,弹出第四个对话框:

110126145143f09ac5586ba016 

程序会自动判断windows指针移动速度,如果程序判断不正确,则在输入框中手动输入你的windows指针移动速度,第一格写1,第二格写2,以此类推。

8. 点击确定,弹出第五个对话框:

11012614511016d4690e6e149a 

程序会要你输入指针速度放大/缩小值,我们打补丁就是为了鼠标与指针一一对应,因此填上

1-to-1

9. 点击确定,这时程序会要你指定一个位置生成补丁。

选择完成点击确定会弹出第六个对话框:

1101261451050391ef0b902850 

程序要你给补丁文件命名,一般用默认的就行。

10. 点击确定之后程序会提示补丁创建完成,再次点击确定关闭程序。

这时程序会弹出最后一个对话框:

1101261451a745a5fc9088549d 

问你是否现在就执行补丁,点击是,windows会问你是否把信息添加到注册表,点击是,然后会提示成功输入注册表,点击确定关闭。

11. 注销或者重启电脑使补丁生效。

 

如果去除鼠标加速之后觉得无法适应,想重新把加速开启,只要双击运行压缩包内的WindowsDefault.reg注册表文件,然后注销或重启电脑即可。

回复 取消