We’ve talked about Glovepie multiple times here before and have covered how to install and use it, but one question I’ve been asked repeatedly is how to slow down or speed up your mouse in game a mouse pointer using it. Med5   It should be pointed out that using Windows this is possible already and that some games will include this as a setting.  In Windows go to the Control Panel Mouse section and adjust the ‘Motion Pointer Speed’.  If the program you are using runs normally on the Windows desktop or usually even in a Windowed mode this will  almost certainly work.

However if you are running a full screen game without the ingame option or are using a script to translate another input to a mouse movement Glovepie can help. There are two scenarios we can talk about.  First if we just wish to slow the mouse down.  Assuming your system only has one mouse (a trackpad does not count) the following script should work.

mouse.X = mouse.DirectInputX – 1*mouse.DirectInputX mouse.Y = mouse.DirectInputY + 1*mouse.DirectInputY

This should produce no obvious change in the mouse behaviour.  Change the number ‘1’ up to say ‘1.5’ and your mouse cursor will slow down.  Decrease it to ‘.5’ and it will speed up.  The exact amount will depend on your system and mouse but with a little experimentation you should be able to get a speed that works for you.

The second scenario is the more likely one that we are translating to or from a mouse and the cursor ends up being too twitchy or sensitive.  This is hard to give exact information on because it depends so much on what you are trying to translate but if we use the below script designed to allow use of an Xbox controller in a game that does not support it the crucial lines are for the mouse stick.

//Left Stick – Movement

keyboard.W = XInput1.Joy1Y > 0.2
keyboard.S = XInput1.Joy1Y < -0.2
keyboard.A = XInput1.Joy1X < -0.2
keyboard.D = XInput1.Joy1X > 0.2

// Right Stick – Mouse Pointer

Mouse.DirectInputX = 1*(Mouse.DirectInputX + 10*deadzone(XInput1.Joy2X))
Mouse.DirectInputY = 1*(Mouse.DirectInputY – 10*deadzone(XInput1.Joy2Y))

// 360 Bumpers

keyboard.PgUp = XInput1.LeftShoulder
keyboard.PgDn = XInput1.RightShoulder

//360 Triggers

keyboard.Q = XInput1.RightTrigger
keyboard.P = XInput1.LeftTrigger

//360 Buttons ABXY = XInput1.A
keyboard.F = XInput1.Y
Mouse.LeftButton = XInput1.B
Mouse.RightButton = XInput1.X

//360 dPad

keyboard.1 = Xinput1.Up
keyboard.2 = Xinput1.Right
keyboard.3 = Xinput1.Down
keyboard.4 = Xinput1.Left

//360 Start and Select

keyboard.esc = XInput1.start = XInput1.back

//360 Stick Clicks

Key.R = XInput1.LeftThumb

The trick is to add a multiplier to the mouse.  This means that if you have the 1 that is there currently it times itself by 1 with no change.  Adjust the 1 up or down and you get a faster or slower reaction time.  If you are really ambitious or it would help you in game there is no reason why you could not have different speeds on the X or Y axis.

These scripts were written and tested using the most up to date version of Glovepie, .45, on a Windows 8 machine. Your script may need tweaking if you are using a different version or system as Glovepie is not perfectly compatible from version to version.


  1. Guillaume 24/11/2014 at 7:41 pm - Reply

    Thanks for your work. The first script doesn’t work for me. I don’t know why. Can you check this ?

    • Chris 25/11/2014 at 9:37 am Reply

      Hi, That can be difficult to be sure about. Check that you’ve changed the numbers and try a much higher or lower number if you have not already. If that doesn’t work its possible that its getting confused with other usb devices reporting as mice. Try unplugging everything you don’t need and try again.
      If no luck there – check you’re on the right version of glovepie. That script works in .45 but I would not be shocked if it did not work in older or newer versions.
      Let me know if none of those suggestions work and I’ll see what else I can think of.

Leave a Reply