forum

[Tut] Proper 1-to-1 in-game mouse input

posted
Total Posts
6
Topic Starter
[Sean]
Before I even start, please be aware of the following, and I refuse to take responsibility if you somehow manage to screw things up:

-I did NOT create this. I have been testing it, but the original thread and tutorial comes from another website, ESReality, by the user MarkTheC. Check out the original thread here.
-This is only for Windows 7, Windows 8 and Windows 8.1. If you are using Vista or lower, well, goto that linked thread and read for the Cheesy mouse fix which applies for it. I haven't tested that, so I can't confirm if it works or not.
-This will simulate mouse movement from Windows 95, 98, and 2000. These were the versions before the implementation of it.
-This is simply something I have been messing with myself for months and can confirm a much sharper response using raw input on a driverless mouse with zero mouse acceleration, and can confirm that it indeed works.
-This 1-to-1 is a removal of all mouse-acceleration in regards to Windows. Even with Enhanced Pointer Precision turned off, Windows still emulates some sort of Acceleration. This removes that with a registry key/edit that's pretty easy to do (You physically don't edit something, just open a registry file and click Ok).
-This will only help if you DO NOT HAVE a mouse that can't turn it's mouse acceleration off. A Logitech G9X is a good example of that.
-There are two ways to do this, the more "informed" way which will explain it, and the tl;dr which I recommend you don't do you lazy shit.
-If you are a tablet user, and have no reason to do this but want to make some stupid comment, please refrain from doing so. This is mainly to help mouse users. Congratulations... You went and bought a tablet and use it to play osu!. Some people (such as myself) dislike tablets and/or can't afford them, so they use a mouse. There is absolutely no reason to post anything that does not concern this thread and use of these tools.


Right. We clear? Okay. First, let's do the lengthy version.

MarkTheC wrote:

What is it?

It is a registry file that removes Windows 7 or 8 or 8.1 mouse pointer acceleration. It gives exactly 1-to-1 mouse to pointer response for Windows 7 or Windows 8.x. Exactly 1-to-1 means no discarded or delayed mouse input while game playing.

Why do you need the fix?

If you don't know you need it, then you don't need it!

Some older games, such as Half-Life 1, Counter-Strike 1.x, Quake, Quake 2, Unreal and others, while they are active and running, call a Windows function intending to disable variable mouse acceleration by forcing ALL movement to be accelerated by the same amount (doubled).
On Windows 2000 and earlier, that removed all variable acceleration.
Pointing and aiming in those games was OK, because the mouse response was then linear (all movement was accelerated by the same amount; it was doubled).

In XP, Vista, Windows 7 and Windows 8.x, Microsoft changed how mouse pointer acceleration worked.
Now when those games call the function (asking that all movement be accelerated), Windows enables the mouse 'Enhance pointer precision' feature, which adds mouse acceleration using a varying curve to control the mouse response. (It enables it even if you have it turned off in the Control Panel Mouse settings.)

With 'Enhance pointer precision' enabled, slower mouse movements make the pointer go extra slow and faster mouse movements make the pointer go extra fast. It is not linear and not straightline.

This is annoying, because where you are aiming at depends on how far you move your mouse, and also on how fast you moved the mouse to aim.
I want to add to that last statement by MarkTheC, over at ESReality. osu! does some things to minimize this, but doesn't fully remove this. People can claim what they like, but if it was true 1-to-1, I shouldn't have to re-position my mouse nearly every song as I slide closer and closer to the edge of my desk. Since doing this fix, I've minimized that to nearly complete removal of re-positioning. I say nearly complete, as sliders make me lift the mouse slightly altering it's position. Apart from that, I don't need to reset my movement. This also helps that I don't have a mouse that enforces/uses mouse acceleration. So that's also a plus.

MarkTheC wrote:

How does the fix work?

It redefines the curve used by the 'Enhance pointer precision' feature to be a completely straight line. The slope of the line is tuned so that every on-mouse-pad mouse movement is turned into exactly the same amount of on-screen pointer movement.
Now to the fix!

MarkTheC wrote:

The 'MarkC Windows 8.1 + 8 + 7 Mouse Acceleration Fix' is available at this link:
The MarkC Windows 8.1 + 8 + 7 Mouse Acceleration Fix

How do you use it?

- Find the display DPI that you currently use:
Click Start, click Control Panel, select Appearance and Personalization, select Display.
See if you have 100% or 125% or 150% selected.
(On Windows 8.1, if you see a 'Smaller...Larger' slider, then:
- the 1st slider position will be 100%,
- the 2nd slider position will be 125%,
- the 3rd slider position (might not be shown) will be 150%.)

- Open the ZIP file at the link above.
- Select the folder that matches the Windows version you use and Double-click it.
- Select the REG file that matches the DPI% you use and Double-click it.
- Answer Yes, OK to the prompts that appear.
(See below for non-Administrator account use.)
- Reboot or Log off to apply the fix (you have to reboot or Log off).
- Enjoy exactly 1-to-1 mouse to pointer response!
(If you applied one of the Windows 2000 or Windows 98/95 Acceleration fixes, then 'Enhance pointer precision' must be checked ON to enable it.)
Additional Notes:

MarkTheC wrote:

But I don't use the middle 6/11 pointer speed setting?

If you want exact 1-to-1 in-game response when the pointer speed slider is not in the 6/11 position, or you have a custom display DPI, see the MarkC Mouse Fix Builder, which works for Windows 8.x, 7, Vista and XP.
For those older games that turn acceleration on, it gives the same response as position 6/11 does (1-to-1), without having to move the pointer speed slider to 6/11.
The MarkC Windows 8.1 + 8 + 7 + Vista + XP Mouse Acceleration Fix Builder

The MarkC Mouse Fix Builder can also create a fix that emulates Windows 2000 or Windows 98 or Windows 95 acceleration.

MarkTheC wrote:

How do you know the fix is working?

You can test if it is working by temporarily turning on the 'Enhance pointer precision' feature and see how the mouse responds.
(NOTE: Unless you applied one of the Windows 2000 or Windows 98/95 Acceleration fixes, only turn 'Enhance pointer precision' on for testing: it should normally be set OFF.)

If you have 'Enhance pointer precision' OFF, then the fix will not be active (but it will be waiting to be activated when needed).
Just as some games turn it on when you don't want them to, we can turn it on manually to test that the fix is working properly.

- Go to Control Panel, and select Hardware and Sound, then click Mouse. Select 'Pointer options' and check-ON/enable the 'Enhance pointer precision' option.

- See how the mouse responds.

- If you want, you can set the Control Panel 'pointer speed' slider set to the 6th, middle position and run the MouseMovementRecorder.exe program that is included in the ZIP file to see that the mouse and pointer movements are 1-to-1 and always the same.
(The numbers in the MOUSE MOVEMENT column should be the same as the numbers in the POINTER MOVEMENT column. Any differences will appear in green or red.
If you do see differences, also test with 'Enhance pointer precision' OFF, in case the problem is with Windows or MouseMovementRecorder.exe rather than a problem with the fix:
- Press the A key on the keyboard while MouseMovementRecorder is running until EnPtPr Accel is Off. Press A TWICE if EnPtPr is already Off!
- When EnPtPr Accel is OFF, if there is a lot of red and green, press the '+' key on the keyboard and move the mouse.
- Repeat '+' and move the mouse until most of the red and green disappears.
- Press the A key on the keyboard to toggle EnPtPr Accel and move the mouse.
- If the amount of red and green is roughly the same when EnPtPr Accel is ON as when EnPtPr Accel is Off, then the fix is working.)
(NOTE: If you use Windows 8.1 and have too much green and red, see more information below.)
(NOTE: While running a game, you may see many red and green lines.
Games that need a fix usually frequently re-position the pointer and this confuses MouseMovementRecorder.exe but DOES NOT mean acceleration.
)

- Turn the 'Enhance pointer precision' option OFF when you have finished testing.
(If you applied one of the Windows 2000 or Windows 98/95 Acceleration fixes, then leave 'Enhance pointer precision' checked ON to enable it.)

I use Windows 8.1 and see too much green and/or red in MouseMovementRecorder

Windows 8.1 introduced changes to mouse input processing to reduce power used and improve battery life:
Windows 8.1 delays and coalesces (merges) mouse input for programs, causing the effective mouse polling rate to be as low as 62 Hz in some cases (even for gaming mice with a higher polling rate).

This new processing can affect some games (games that don't use Raw Input and don't use DirectInput).
Microsoft have a December 2013 Windows Update Rollup that includes a fix for those games, which will be automatically installed when you have Windows Update set to install updates automatically.
(See here: Mouse pointer stutters or freezes when you play certain games in Windows 8.1.)

If the KB2908279 update fix is installed, MouseMovementRecorder will activate it to give more responsive mouse pointer movement and stop the red and green.

Otherwise, while running MouseMovementRecorder, select it and press the '+' key on the keyboard a until the red and green stops.

If Control Panel, Appearance and Personalization, Display shows a 'Smaller...Larger' slider, high DPI monitors might need a custom size and/or a fix-builder fix to get exact 1-to-1.
See this blog article:
Windows 8.1 DPI Scaling Enhancements @ Extreme Windows Blog
The new multi-monitor DPI scaling in Windows 8.1 is a good thing if you have multiple monitors with different pixels-per-inch values, BUT it might make it harder to find the correct Item Size percentage when choosing which MarkC fix to use to get exact 1-to-1.
Try clicking the 'Let me choose one scaling level for all my displays' checkbox and then find the percentage needed so that your main (gaming) monitor looks the same as it did when using the 'Smaller...Larger' slider (this may require some reboots).
When you have the right percentage value, click '...one scaling level...' OFF (so that you get the benefit of the new Multi-monitor DPI scaling - if you need it) and use the percentage value to choose which fix you need, or to create a Fix-Builder fix.

Loading the fix with a non-Administrator account

When adding the mouse acceleration fix to the registry, you may get this error message:

"Cannot import (filename).reg: Not all data was successfully written to the registry."

This error happens because part of the fix turns off acceleration for the Welcome screen (the log on screen).
If you use the Welcome screen (or the Windows Log in dialog) and acceleration is NOT turned off for the Welcome screen, then the MarkC fixes have a 1 pixel / 1 mouse count error when the mouse changes direction left/right or up/down.

You can remove this 1 mouse count error by any of these methods:

- Run Disable_WelcomeScreen+Login_Accel.CMD as Administrator (Right-click > Run as administrator).
- Add/Merge Disable_WelcomeScreen+Login_Accel.reg to the registry while logged in as an administrator.
- Run RegEdit.exe and edit 'HKEY_USERS\.DEFAULT\Control Panel\Mouse\MouseSpeed' to 0 (zero), while logged in as an administrator.
- Not moving or touching the mouse while using the Welcome screen (use arrow keys to select the user and Enter key to log in).
- Ignoring the 1 mouse count error! It's only a single count: You won't notice it.
REMOVAL

MarkTheC wrote:

How do you remove it?

- Open the ZIP file at the link above.
- If you use Windows 7 or Vista or XP:
Select 'Windows_7+Vista+XP_Default.reg' and Double-click it.
- If you use Windows 8 or Windows 9.1:
Select 'Windows_8.x_Default.reg' and Double-click it.
- Answer Yes, OK to the prompts that appear.
- Reboot or Log off.

That's it. I'm pretty anal with this sort of thing, so I've been testing it with different settings and have pretty much the same results. I use a Zowie FK14 mouse, and out of the 11 mice I have used (Yes. 11. 11 god damn mice), it's the first one that has absolutely ZERO mouse acceleration. Raw Input with this fix produces AMAZING results.


TL;DR
SPOILER
Download this.
Follow steps. (Lol, good luck)
Open the .reg file it creates.
Reboot Computer
Goto Control Pannel - Mouse settings - Pointer options
Turn ON Enhanced Pointer Precision
Enjoy.
Vuelo Eluko
i was expecting something funnier like put your mouse on your monitor and tweak your sens until the cursor stays parallel with the mouse
AmaiHachimitsu
Did you really think that you're the first to suggest this?

And MarkTheC's mousefix is the same as using raw input or ticking the precision off in the windows panel. Long story short - all of the above are useless unless your game forces precision (osu! and most of new games does not)
Topic Starter
[Sean]

AmaiHachimitsu wrote:

Did you really think that you're the first to suggest this?

And MarkTheC's mousefix is the same as using raw input or ticking the precision off in the windows panel. Long story short - all of the above are useless unless your game forces precision (osu! and most of new games does not)
No. It's not. Raw input is to use the direct input of the mouse. Most mice, and when I say most I literally mean it, use some form of acceleration. Firmware and drivers emulate this. Old microsoft mice manufactured after the release of Windows XP did this. Logitech mice prior to 2012 all have this built into them, and with a fair few, it's impossible to actually disable it, so switching to raw input is actually a bad thing for some people. This is an argument I have with people already, so it's nothing new.

Out of the mice I've used, (I've listed them below with their problems), nearly all of them have that problem. osu! does indeed force a certain amount of precision, but not enough to simulate the 1-to-1 that is desired. This can be seen by having Windows Aero enables, and osu! in borderless fullscreen, to which I have posted in the past about. Due to aero it actually forces pointer precision even though it's disabled and it's frankly a piece of dick. I actually was disabling aero just for osu! and Counter Strike: Source simply to avoid that, since I was playing in amateur league at the time. I'm also a well known Bhopper on CSS so mouse fidelity is another thing that I strive for.

osu! comes close, but unfortunately when other factors come into play... Well... It falls short of the mark. Of the near 5 years of mouse play, using this has given me the 1-to-1 movement I desired. I'm aware people have suggested this, I'm also aware that they haven't been able to provide enough proof or fact sheeting as well. Simply a link and saying "it works" really isn't the way to go about it. I was going to write more but had to leave for a bit. I'll gladly add another 5 paragraphs explaining differences in mice as well as suggestions for users on how they can take advantage of this with their current mouse if you'd like, but it's 10pm and I have work in the morning.


Of the mice, by manufacturer, here are the problems:

Razer:
Deathadder 2012: Unable to flash firmware. Firmware has forced acceleration.
Deathadder 2013: Can flash firmware and disabled acceleration nearly completly. Small amount remains and razer support says this is intended on their part. (I have contacted them multiple times about the issue with different mice)
Imperator 2012: firmware un-flashable, and drivers do not disable acceleration below their "level 1" setting. Razer claims malfunctioning device, Google search turned up same results with multiple cases.
Deathadder 2014: Razer Synapse is a heap of shit. Nothing you do works. Just sayin' (My Kraken 7.1 is balls with it installed, and my BlackWidow 2013 stealth freezes up if I have any sort of macro installed.)

Logitech:
G9 and G9X: The mouse doesn't poll fully at 1000mhz, it sits around 700-750. Freespin wheel's mechanical switch breaks pretty easily.
G100S: Polling rate not desirable 1000mhz, roughly 850mhz.
G90: See G100S. Same model, less durable.

Thermaltake:
BlackElement eSPORTS Edition (2011 model): I used this for the longest period of time. Polling rate remained 1000mhz over the course of use, but it's mouse acceleration was the least out of all mice I had used to date.

Microsoft:
Two different mice I can't name the model of. A small black and large white one. Both had mouse accel. One was 600dpi, the other 800. I use 1150 now, but at the time I wanted 1900+

Current: Zowie FK14
The first mouse I have had with zero mouse acceleration to date. It's driverless, and firmware is very lightweight. I recommend this to anyone I can.


And for what it's worth, I've spent over $800 on mice in the past 4 years. I've tried a fair amount of them.
S h i z u o
so basically the thing is use raw input with the fix, or, i can use the fix without raw input?
TakuMii
I've done a fair bit of testing (with software), and all that the MarkC fix really does is remove acceleration from the 'Enhance Pointer Precision' option. It even says on MarkC's page that it's only useful for old games that call for an outdated acceleration function that has been broken since XP. Running modern games at pointer speed 6/11 with EPP turned off will provide the exact same effect.

Also, don't make assumptions that people (especially high-ranked mouse players like AmaiHachimitsu) don't know anything about the fact most mice have built-in acceleration. Yes, it is true, but the acceleration mainly comes as a result of a flawed sensor and/or firmware (software-based acceleration just makes it worse). The "acceleration" slider within the drivers of most gaming mice, as well as this fix, is only able to disable software-based acceleration, and this is effectively the same as disabling EPP.

In regards to Aero supposedly "forcing acceleration", that is not what you're experiencing. Aero uses double-buffering as well as v-sync, resulting in higher input latency and causing games to feel generally less responsive (most noticeably with mouse movement). I'd still recommend keeping it disabled for games, regardless of what hardware you're using.
Please sign in to reply.

New reply