ValveSoftware / halflife

Half-Life 1 engine based games
Other
3.7k stars 624 forks source link

Implement -useforcedmparms like CSGO #3249

Open djdallmann opened 2 years ago

djdallmann commented 2 years ago

In general players don't want the game to modify Windows MouseThreshold1,MouseThreshold2,MouseSpeed unless asked to.

halflife/cl_dll/inputw32.cpp
static int  originalmouseparms[3], newmouseparms[3] = {0, 0, 1};

The logic to fix this would for be for halflife to get the current values and only modify them if -useforcedmparms is specified. SystemParametersInfo (SPI_GETMOUSE, 0, originalmouseparms, 0);

Main issue is that this creates an inconsistent experience, no acceleration on desktop but you enter the game and it's automatically enabled. It also seems like Windows is processing both regular input and raw input (m_rawinput 1) which changes the input a bit. No current proof of this but you can easily tell there's a change while moving/shooting when m_rawinput 1 and EPP is on behind the scenes, imo.

Steven20102 commented 2 years ago

It also seems like Windows is processing both regular input and raw input (m_rawinput 1) which changes the input a bit.

This is also an issue in csgo

djdallmann commented 2 years ago

It also seems like Windows is processing both regular input and raw input (m_rawinput 1) which changes the input a bit.

This is also an issue in csgo

Yep, I have an issue for that here as well.

https://github.com/ValveSoftware/halflife/issues/2087

Steven20102 commented 2 years ago

https://github.com/ValveSoftware/Source-1-Games/issues/3864#issue-1160447472

I also add this thread if you interessted

Steven20102 commented 1 year ago

bro i lurked the full forum here and the issues are going back to 2013. I dont think they will fix it. Only way to play normal cs is download non steam version, -noforcemparms -noforcemaccel and use rinput cause somehow without rinput you will get random accel.