Microsoft releases Windows 8.1 patch to fix mouse lag while gaming

Call of Duty Ghosts is one of the games supported by the Windows 8.1 mouse update.

After hearing complaints from Windows 8.1 owners that they were experiencing a great amount of lag using some mouse products in a number of PC games, Microsoft has now released a patch for the OS that is supposed to fix these issues.

The Microsoft Support website has launched a page with download links for the update that cover the 32-bit and 64-bit versions of Windows 8.1, along with a download for Windows Server 2012 R2. Microsoft's support site says the patch fixes the problem for the following list of games:

  • Call of Duty: Black Ops
  • Call of Duty: Black Ops - Multiplayer
  • Call of Duty: Black Ops II
  • Call of Duty: Black Ops II - Multiplayer
  • Call of Duty: Black Ops II - Zombies
  • Call of Duty: Ghosts - Multiplayer
  • Call of Duty: MW2
  • Call of Duty: MW2 - Multiplayer
  • Call of Duty: MW3
  • Call of Duty: MW3 - Multiplayer
  • Call of Duty: MW
  • Call of Duty: MW - Multiplayer
  • Counter Strike: Global Offensive
  • Counter Strike: Source
  • Deus Ex : Human Revolution
  • Deus Ex : Human Revolution Director's Cut
  • Hitman Absolution
  • Hitman Sniper Challenge
  • Half Life 2
  • Metro 2033
  • Portal
  • Tomb Raider

In addition, people who download and install the patch can extend it to include other games that are not on the official list which are affected by the same mouse lag. The support page includes the rather complicated procedure to enable this extra support, which involves going into the Windows 8.1 registry.

Source: Microsoft via WinBeta | Image via Activision

Report a problem with article
Previous Story

Thanks to Target, two people got their Xbox One consoles shipped early [Update]

Next Story

Motorola sees a wireless microphone tattooed to your neck as the future

37 Comments

Commenting is disabled on this article.

It's pretty cool that Microsoft stepped up and created a workaround for it. I'm sure many of the games would have patched the problem before long anyway, this just sped things up for the gamers. They got it out pretty quick as well.. I'm glad about that as it was a bit annoying in some games.

It isn't exactly fair to blame all of the game developers here for not using WM_INPUT (raw input) or DirectInput. Sure the newer games should have used WM_INPUT, but for older games such as HL2/Portal/SourceEngine Games this wasn't necessarily a good idea. These were released in a time when DirectInput was already deprecated (after 2002) and were designed to work with even pre-XP versions of Windows which did not support WM_INPUT (in fact Valve didn't remove Windows 98 support from Steam until 2007). At the time, ensuring maximum compatibility required using WM_MOUSEMOVE. Moreover, it is important to keep in mind that there weren't any practical downsides to using this in video games at the time. So it was a win-win in that day. Historical context goes a long way.

See here for the different methods of input:
http://msdn.microsoft.com/en-u...ktop/ee418864(v=vs.85).aspx

snaphat (Myles Landwehr) said,
It isn't exactly fair to blame all of the game developers here for not using WM_INPUT (raw input) or DirectInput. Sure the newer games should have used WM_INPUT, but for older games such as HL2/Portal/SourceEngine Games this wasn't necessarily a good idea. These were released in a time when DirectInput was already deprecated (after 2002) and were designed to work with even pre-XP versions of Windows which did not support WM_INPUT (in fact Valve didn't remove Windows 98 support from Steam until 2007). At the time, ensuring maximum compatibility required using WM_MOUSEMOVE. Moreover, it is important to keep in mind that there weren't any practical downsides to using this in video games at the time. So it was a win-win in that day. Historical context goes a long way.

See here for the different methods of input:
http://msdn.microsoft.com/en-u...ktop/ee418864(v=vs.85).aspx

some of the affected games are less than 2 years old and had no reason to continue using an api compatible with pre XP OSes.

if there are dedicated APIs to read raw input, there is no excuse to continue to use a hack like WM_MOUSEMOVE events which were not designed for that.

snaphat (Myles Landwehr) said,
It isn't exactly fair to blame all of the game developers here for not using WM_INPUT (raw input) or DirectInput. Sure the newer games should have used WM_INPUT, but for older games such as HL2/Portal/SourceEngine Games this wasn't necessarily a good idea. These were released in a time when DirectInput was already deprecated (after 2002) and were designed to work with even pre-XP versions of Windows which did not support WM_INPUT (in fact Valve didn't remove Windows 98 support from Steam until 2007). At the time, ensuring maximum compatibility required using WM_MOUSEMOVE. Moreover, it is important to keep in mind that there weren't any practical downsides to using this in video games at the time. So it was a win-win in that day. Historical context goes a long way.

See here for the different methods of input:
http://msdn.microsoft.com/en-u...ktop/ee418864(v=vs.85).aspx

Developers rolling over old input libraries and using older engines that haven't been updated are problematic.

Valve is a classic example of a developer that used the quick and dirty and then later tried to use their 'failed' progression of their code to pretend that Direct3D/X was slower. What they did was take their existing engine code from the early 00s that was barely DX9 and then compare it to a newer redesigned engine based on OpenGL 4.x and proclaim Windows and Direct3D was slower.

Sadly too many libraries and old input methods were 'allowed' to continue, and Microsoft even tried to get developers to fix them back in the days of Vista. (Not only input, but sound libraries using the XP model and video kludges to use GUI on top of OpenGL for UI rendering, etc.)

Everyone blamed Vista when Microsoft FORCED the deprecation of GDI cursor rendering, and that was a tiny tiny change.

Windows has to continue to advance and be efficient, and there are ways that these developers could be issuing their own patches to fix the problem, but they won't. So once it again it falls on Microsoft to clean up crap code and they don't have a complete database of every game in the past 20 years that are still using old code. The ones they were aware of were fixed through the OS level compatibility compensation layers.

This fix is just extending the various compensations to the main games getting attention that are using crap code. As more games are identified, Microsoft will probably provide more comprehensive updates to the compatibility database for Windows 8.

Microsoft could not just turn back the feature changes overall or it would significantly impact the performance and power consumption features Windows 8.1 uses.

Even on older systems, with dynamic cooling, notice your fans are running less or slower. We even have test old P4 systems that would need near jet like cooling that can run 90% of the time with passive cooling on Windows 8.1.


Mobius:
All of that about valve may or may not be true, but it isn't really relevant to the compatibility of old source engine games. You really can't expect game companies to switch the input method for older games that are 5+ years old and break compatibility with older systems. It is analogous to telling computational scientists that they have to switch languages and migrate legacy code because it won't work on new exascale systems -- it simply isn't a realistic expectation. That isn't to say that MS shouldn't continue to advance/try to for more efficiency or that MS is even to blame here. They should just provide a workaround for older games as is being done here and newer games should use WM_INPUT.

And of course developers aren't going to migrate when they can continue to use the tools/methods they know that work from the past. That is always an issue and the best you can do is mitigate the issue. And It wouldn't exactly be fair to say allowing backwards compatibility is bad thing, fragmentation of support and breaking things encourages people to migrate elsewhere. Most users expect things to just work and are resistant to change because that means they have to learn an alternative way of doing something they already know how to do. They want things to work without the OS/System getting in the way and could care less what the actual implementation is. People mock Vista primarily because it was a rocky transition period in which lots of things that previously worked had gotchas or were outright broken -- especially in terms of hardware support. Vista could have been the greatest OS ever made, but without the rest of the market caught up in terms of hardware/software compatibility it was doomed to viewed as less than stellar. Anyone can argue until their face is blue, but it is safe to say had vista landed in a market full of hardware and software that already worked with it, it would have been seen with much less distain.

Finally, It is worth noting that Valve added WM_INPUT support into newer iterations of the source engine which is why none of the their newer games are listed on the compatibility list.

link6502:
Let's be honest and factual here: WM_MOUSEMOVE isn't a hack. It is a supported winAPI. What it is is a poor method for game input because transformations are applied to it. And sure, some of the games listed aren't very old, but I covered that in my original post. I believe I made clear in my original post that you can't blame the developers for older games for the issue. Pointing fingers simply means you don't appreciate the historical context of why this issue exists.

In all honesty, for the newer games though, the real reason they probably use WM_MOUSEMOVEMENT is probably because they borrowed legacy code from older game engines that worked fine previously and now don't. Legacy code is really par for the course in any sort of development. Rarely do you want to reinvent the wheel simply for the sake of reinventing the wheel.

Had mouse lag despite the fact not playing any games. Installed the patch. Fixed the issue. So it my view it is not only game related.
Anyway all fine now. Overall 8.1 works great once one got used to the new way of using the system.

Just one indication of what happens when an Operating System was designed for touch-centric devices and now has to be "fixed" to work with mice and keyboards.

TsarNikky said,
Just one indication of what happens when an Operating System was designed for touch-centric devices and now has to be "fixed" to work with mice and keyboards.

Yeah, make a blind (and INCORRECT) assumption. Makes you look cool.

The change that broke these ****ty coded games is for better MOUSE support in high res displays (and multimon diff res displays). It has nothing to do with TOUCH.

Crimson Rain said,

Yeah, make a blind (and INCORRECT) assumption.

Exactly, it's because of improvements to the desktop DPI scaling and mouse support. I've pointed that out before. But these kind of people ignore facts and just make up stuff in their small minds to suit their stupid views. It's starting to seem like most people who have issues with Win 8 are never exactly intelligent people...

NoClipMode said,

Exactly, it's because of improvements to the desktop DPI scaling and mouse support. I've pointed that out before. But these kind of people ignore facts and just make up stuff in their small minds to suit their stupid views. It's starting to seem like most people who have issues with Win 8 are never exactly intelligent people...

They also seem like people who've never actually used the OS.

On the contrary. When one looks at the commercials and reads the ads for Windows--8; almost all are showing 20-something dancing and prancing around with their tablets showing the Metro UI. Clearly, touch-centric marketing. Where was Windows-8 on a tablet shown using a mouse and keyboard doing work--not gaming?

TsarNikky said,
On the contrary. When one looks at the commercials and reads the ads for Windows--8; almost all are showing 20-something dancing and prancing around with their tablets showing the Metro UI. Clearly, touch-centric marketing. Where was Windows-8 on a tablet shown using a mouse and keyboard doing work--not gaming?

lol. You got owned and were wrong. Just *admit* it instead of trying a comeback with lame points.

There were plenty of ads/youtube vids from MS showing off touch, kb, mouse usages in tablet, desktop, AIO form factors.

And what does showing w8 using kb/m has to do with "now has to be "fixed" to work with mice and keyboards." ??? Are you high?

Not high. Just a small business owner, struggling to make a profit to pay my employees. Part of that process is to maximize my investment in hardware and software. Having just finished the agony of moving from XP to Windows-7 (except for one machine that has to remain with XP to run some critical applications); I have no intention of going through that process any time soon. Maybe, by Windows-9 or Windows-10, Microsoft will have have compelling reasons for us mice/keyboard users.

TsarNikky said,
Not high. Just a small business owner, struggling to make a profit to pay my employees. Part of that process is to maximize my investment in hardware and software. Having just finished the agony of moving from XP to Windows-7 (except for one machine that has to remain with XP to run some critical applications); I have no intention of going through that process any time soon. Maybe, by Windows-9 or Windows-10, Microsoft will have have compelling reasons for us mice/keyboard users.

I still don't understand how Windows 8 prevents you from using either. I use Windows 8 daily, and have had no troubles using my devices. Metro doesn't change a thing on traditional setups.

King Joffrey said,
In some games its still not working i guess i was to fast and upgraded to Windows 8.1 to soon full of bugs!

The "bug" is in those games.

This fix can also be applied by making a compatibility shim with the Microsoft Application Compatibility Toolkit--all GUI, no registry editing required. The hotfix has to be installed first to add NoDTToDITMouseBatch as an option.

mrp04 said,
What? Why don't they fix whatever the problem is?

Because it's Microsoft. That's why. They broke NTLM proxy authentication in 8 so computers at our work wouldn't connect to windows updates. Their idea of a fix? "Wait for 8.1" Funny thing is you couldn't download 8.1 because of the issue to begin with! This is the kind of company you are dealing with.

I don't think they can actually fix it.

Because the problem is caused by changes to how mouse input works in 8.1 and also by the new high DPI scaling options. MS cant fix the issue without reverting the 8.1 changes which they obviously don't want to do, as these changes were made in the first place to address other issues.

HoochieMamma said,

Because it's Microsoft. That's why. They broke NTLM proxy authentication in 8 so computers at our work wouldn't connect to windows updates. Their idea of a fix? "Wait for 8.1" Funny thing is you couldn't download 8.1 because of the issue to begin with! This is the kind of company you are dealing with.

Which error are you referring to specifically. The primary couple of issues I know about are easily bypassed with a registry setting to adjust the policy.

mrp04 said,
What? Why don't they fix whatever the problem is?

because the problem doesn't lie in windows, but in the way these games poll the mouse looking for movements which is unsupported.

it's actually these games that should require a patch to make them use the proper APIs to get mouse movements.

link8506 said,

because the problem doesn't lie in windows, but in the way these games poll the mouse looking for movements which is unsupported.

it's actually these games that should require a patch to make them use the proper APIs to get mouse movements.

I'm not sure if you are tolling or not.

DixieNormus said,

I'm not sure if you are tolling or not.

are all games affected by this bug? The answer is no.

most of the time, when a new version of windows breaks some applications, that's because developers didn't follow the best development practices, or use APIs to achieve something despite the fact that the API was not designed for that.

games which use the proper way to get mouse position data are not affected. Games which use the unsupported way are affected. Of course, it's easier to blame Microsoft...

DixieNormus said,

I'm not sure if you are tolling or not.


May be you should stop trolling instead or just learn a few things and then talk?

The issue is the affected games. They are not reading mouse movement as they are supposed to do (dinput or raw), at least, not by default. For example, you can enable raw input in CSS/CSGO and the issue wont be there.

Very easy to blame everything on MS...right?

Some things:
(1) They are using WM_MOUSEMOVE -- this is a supported Windows API. It just isn't a good one for video games in 2013 because it is affected by mouse acceleration.
(2) DirectInput was deprecated in 2002 so post-2002 games shouldn't have used it.
(3) RawInput was added in XP so games supporting older OSs (older source engine games for example) couldn't use it. See my post further down on this article for an explanation of why it isn't fair to blame all game developers here.

Crimson Rain said,

May be you should stop trolling instead or just learn a few things and then talk?

The issue is the affected games. They are not reading mouse movement as they are supposed to do (dinput or raw), at least, not by default. For example, you can enable raw input in CSS/CSGO and the issue wont be there.

Very easy to blame everything on MS...right?

I blame Windows 8 Developers, not Microsoft. Older Games were not designed for W8. W8 Made a change that broke the older games. Developers are to blame.

I'ts ok though, I'll just wait for 8.2.

DixieNormus said,

I blame Windows 8 Developers, not Microsoft. Older Games were not designed for W8. W8 Made a change that broke the older games. Developers are to blame.

I'ts ok though, I'll just wait for 8.2.

it won't be fixed in windows 8.2 because it is NOT a bug.

at best, Microsoft can publish a compatibility update that extends the number of games for which the compatibility hack must be applied.

like i always said, its a DELIBERATE Incompatibility.
Something that Microsoft loves to do.

Of course to mask it up for sales/propaganda purposes, MSFT said:
"Anything that works on Windows 7 will works on Windows 8(.1)"