The truth about noforcem commands
-noforcemspd
This makes Counter-Strike use the "Enhance Pointer Precision" setting you have in Windows. If you don't use this or noforcemparms, the game will have "Enhance Pointer Precision" always on.

-noforcemaccel
This makes Counter-Strike use the MouseThresholds that are defined in Windows. This should be irrelevant if you use either noforcemspd or noforcemparms.

-noforcemparms
This is noforcemaccel and noforcemspd combined.

So there is absolutely no sense to use -noforcemspd and -noforcemaccel with -noforcemparms. Use only -noforcemparms.

You can see this things in HL SDK code:

if ( gEngfuncs.CheckParm ("-noforcemspd", NULL ) )
newmouseparms[2] = originalmouseparms[2];

if ( gEngfuncs.CheckParm ("-noforcemaccel", NULL ) )
{
newmouseparms[0] = originalmouseparms[0];
newmouseparms[1] = originalmouseparms[1];
}

if ( gEngfuncs.CheckParm ("-noforcemparms", NULL ) )
{
newmouseparms[0] = originalmouseparms[0];
newmouseparms[1] = originalmouseparms[1];
newmouseparms[2] = originalmouseparms[2];
}


You can also check this on game. With only -noforcemparms the accel is off.

Some additional info you can find there: http://web.archive.org/web/20090923154337/http://www.gotfrag.com/cs/forums/thread/411262
(32 replies)
Created 2013-02-16 14:26 by: ricf0i
Some additional info you can find there http://goo.gl/Pivs7
2013-02-16 14:27:35
Now valve added raw input to CS 1.6. I talking about raw input 2 years ago: http://www.hltv.org/forum/64919-cs-16-addition-of-..

So now you dont need to use any noforcem commands. Just set m_rawinput 1 (if you don't use accel of course).

Post edited 2013-02-16 14:43:38
2013-02-16 14:35:41
by: ssess
#3
what if I use only -noforcemaccel and have enhance pointer precision off?
2013-02-16 14:41:45
When accel is still there (accel is ON).
2013-02-16 14:45:00
"-noforcemspd
This makes Counter-Strike use the "Enhance Pointer Precision" setting you have in Windows. If you don't use this or noforcemparms, the game will have "Enhance Pointer Precision" always on.

-noforcemaccel
This makes Counter-Strike use the MouseThresholds that are defined in Windows. This should be irrelevant if you use either noforcemspd or noforcemparms.

-noforcemparms
This is noforcemaccel and noforcemspd combined. "



WRONG


This is how these options work on the source engine, but NOT in CS 1.6!

The truth:

-noforcemaccel hinders CS to re-activate the windows mouse accelerations (this activation was actually a bug and instead of fixing it and making people who love their mouseaccel angry, they created this launch option).

-noforcemspd hinders CS to bring the basic sense 1 on a new level; in other words: to multiply the WI_input with a certain factor. with his option CS will straight use the WI_input for the ingame sensitivity 1.

-noforcemparms makes CS using the Windows mouse-button settings. this options is completely irrelevant for the crosshair movement.

Post edited 2013-02-16 14:46:52
2013-02-16 14:44:17
In CS 1.6 (at least before update) -noforcemparms or -noforcemspd turn accel OFF (if Enhance Pointer Precision is unchekced).

-noforcemaccel do nothing with accel.

That is reality. Just check it.

If -noforcemparms is just "mouse-button settings" why it turn accel OFF? :)




Post edited 2013-02-16 14:53:49
2013-02-16 14:51:32
it does not. stop spreading bullshit you just found somewhere in the internet.

Post edited 2013-02-16 14:56:07
2013-02-16 14:53:33
Repeat again: are you cheked this things?
2013-02-16 14:55:56
yes.
2013-02-16 14:56:16
I'll install game and check this on last update.

Post edited 2013-02-16 15:29:25
2013-02-16 15:26:07
On current version of CS 1.6 -noforcem commands just didnt work and seems that game always use raw input. On older nonsteam version of game results is:

only "-noforcemaccel" command: accel is ON irrelevant to "Enhance Pointer Precision" box.

only "-noforcemparms" command: accel is OFF if "Enhance Pointer Precision" box is unchecked and ON if "Enhance Pointer Precision" box is checked.

only "-noforcemspd" command: accel is OFF if "Enhance Pointer Precision" box is unchecked and ON if "Enhance Pointer Precision" box is checked.

How you can explain this reality? If -noforcemparms it's just "Windows mouse-button settings" and "completely irrelevant for the crosshair movement" why it affect accel? I'm waiting for your explanations. ;-)

Post edited 2013-02-16 16:14:33
2013-02-16 16:09:40
all 3 launch options got removed with the last update


before the update it worked exactly how I wrote. what do you think the "accel" in "noforceaccel" stands for? and the "spd" ind "noforcespd"? go figure.

seriously, this is basic knowledge. don't be stupid and pick up every urban legend you find in the internet.


you can't just tap out while playing CS and check the windows mouse settings. if you tap out of CS most (or even all) function of CS which force Windows to something get deactivated (like forcing a different resolution).

let me explain you something: CS is very old. it was built for Windows 98/ME. the programmers of CS coded a function to "deactivate" the variable mouse-acceleration of Windows 98/ME. I wrote "" because it was actually not just a deactivation since a there wasn't an proper/easy way to just deactivate it - they actually programmed a function which forced windows to calculate the acceleration with a new value. Now the things is that in Windows XP/Vista/7 Microsoft completely changed the way the mouse-acceleration works. This caused following problem: Everytime CS calls this function, which should force windows to calculate the mouse-acceleration with a new value (to kill the acceleration as good as possible) the new windows versions misunderstood this command and actually re-activated the deactivated windows-function "Enhance Pointer Precision". Long story short: this CS function, which originally should kill the windows mouse-acceleration as good as possible lead to the exact opposite on newer windows versions: it re-activated the already deactivated windows mouse-acceleration.

Valve never deleted this function (because people with Windows 98/ME would still need it). instead they came up with the new launch option "-noforceaccel", so people with Windows XP could play without mouse-acceleration.


instead of tabing out you could just check the acceleration ingame. you will notice that only noforceaccel deactivates the acceleration, while noforcemparms doesn't change anything at all and noforcemspd changes the sensitivity in a linear way (depends on your windows sens to some part)

Post edited 2013-02-16 17:15:03
2013-02-16 17:06:08
> before the update it worked exactly how I wrote

You are wrong. They work as I wrote and you can check this on older non-steam version of game.


>instead of tabing out you could just check the acceleration ingame. you will notice that only noforceaccel deactivates the acceleration, while noforcemparms doesn't change anything at all and noforcemspd changes the sensitivity in a linear way (depends on your windows sens to some part)

BULLSHIT. I repeat again: before update, "-noforceaccel" DO NOTHING with windows accel regardless to "Enhance Pointer Precision" accel is always ON. I repeat: DO NOTHING. With "-noforcemparms" or "-noforcemspd" command accel is OFF if "Enhance Pointer Precision" box is unchecked and ON if "Enhance Pointer Precision" box is checked. I bet YOU NEVER CHECKED IT. Just check it on older non-steam version of client.

I always played with only -noforcemparms on many computers and accel is always OFF if if "Enhance Pointer Precision" box is unchecked. "-noforceaccel" NEVER TURN OFF ACCEL.

JUST CHECK IT.


Post edited 2013-02-16 17:42:01
2013-02-16 17:35:29
Are you really that dumb?
I just explained you why tapping out of CS and checking the windows settings won't prove anything.


Have you even understood what I just wrote? Read that part again and stop bothering me with your bullshit (founded on some internet urban legends).


"you can't just tap out while playing CS and check the windows mouse settings. if you tap out of CS most (or even all) function of CS which force Windows to something get deactivated (like forcing a different resolution).

let me explain you something: CS is very old. it was built for Windows 98/ME. the programmers of CS coded a function to "deactivate" the variable mouse-acceleration of Windows 98/ME. I wrote "" because it was actually not just a deactivation since a there wasn't an proper/easy way to just deactivate it - they actually programmed a function which forced windows to calculate the acceleration with a new value. Now the things is that in Windows XP/Vista/7 Microsoft completely changed the way the mouse-acceleration works. This caused following problem: Everytime CS calls this function, which should force windows to calculate the mouse-acceleration with a new value (to kill the acceleration as good as possible) the new windows versions misunderstood this command and actually re-activated the deactivated windows-function "Enhance Pointer Precision". Long story short: this CS function, which originally should kill the windows mouse-acceleration as good as possible lead to the exact opposite on newer windows versions: it re-activated the already deactivated windows mouse-acceleration.

Valve never deleted this function (because people with Windows 98/ME would still need it). instead they came up with the new launch option "-noforceaccel", so people with Windows XP could play without mouse-acceleration."



"I bet YOU NEVER CHECKED IT"

I got 12 years of experience and research. As if I would download some shitty non-steam versions based on a 2003 version of CS 1.6 to disprove your urban legend.

Post edited 2013-02-16 17:58:11
2013-02-16 17:54:13
Just find and download any non-steam client and CHECK. It always worked in that way even on offical client until last update.

Set ONLY -noforcemparms and you will see that accel is OFF if "Enhance Pointer Precision" box is unchecked. Del this command and you will see that accel turned ON. How it possible if it's only "Windows mouse-button settings" and "this options is completely irrelevant for the crosshair movement".

Are you so dumb to check it?

Also download HL SDK and find and explain me code:

if ( gEngfuncs.CheckParm ("-noforcemspd", NULL ) )
newmouseparms[2] = originalmouseparms[2];

if ( gEngfuncs.CheckParm ("-noforcemaccel", NULL ) )
{
newmouseparms[0] = originalmouseparms[0];
newmouseparms[1] = originalmouseparms[1];
}

if ( gEngfuncs.CheckParm ("-noforcemparms", NULL ) )
{
newmouseparms[0] = originalmouseparms[0];
newmouseparms[1] = originalmouseparms[1];
newmouseparms[2] = originalmouseparms[2];
}

Do you see that -noforcemparms is -noforcemspd plus -noforcemacce? If no, I'm sorry you are dumb. Again.

>Have you even understood what I just wrote? Read that part again and stop bothering me with your bullshit (founded on some internet urban legends).

Look that founder of old CS 1.6 site satanion.dk said me:

That information [about noforcem commands on his site] is incorrect, should have actually removed it from the site. I don't know the correct definitions though :<

-mparms affects acceleration, while -accel doesn't :)

http://goo.gl/nF6s6 (find messages from satanioN)


***

What another proofs you need?

Stop writing bullshit, just check it. Or may be you so "smart" that you cant find any non-steam client? I can help you then, my dear little friend.


Post edited 2013-02-16 18:44:34
2013-02-16 18:35:28
Kid, stop dribbling.

Using a non-Steam version (which uses different launch paths and which is based on a outdated 2003 version) and tapping out to check the windows settings DOESN'T prove anything.

Look at that gotfrag thread: The majority of all people in the comments disagree because of their own experiences. For example: Everyone knows that using noforcemspd will lead to a change, even if you're already using noforcemparms.

"-noforcemaccel
This makes Counter-Strike use the MouseThresholds that are defined in Windows. This should be irrelevant if you use either noforcemspd or noforcemparms. "



That's utterly bullshit. I mean come on: Why should someone name a launch option "noforcemaccel" if it has nothing to do with acceleration?
And why the fuck would noforcemaccel be irrelevant if I would use noforcemspd? I mean that guy just explained that noforcemspd turns of the EPP while noforcemaccel make CS use the MouseThresholds that are defined in Windows. Did he even understand what that means?

Everything he wrote was made out of a few code lines he doesn't even understand. Trust me: It's wrong.

I'm really wondering if you're having a problem with reading or English...
Regarding that HLTV thread: Read again the comments from Jonathan. Some of the things he said were wrong but he was right about your broken logic.


From the official Steam wiki:


"Here are the three commandline (launch option) switches you can add to change how HL manages your mouse behavior and properties:

-noforcemparms (use desktop mouse buttons settings)
This setting tells HL to use whatever button assignments you have set in the mouse properties. You have to make sure each button has a letter or function-key assignment appropriate for the game.
Normally HL forces it's own set of button definitions onto the mouse and when you return to the O/S all the buttons return to your operating system setup. This switch turns that off.

-noforcemaccel (use desktop mouse acceleration settings)
Normally in HL the last thing you want is acceleration. Sometimes the HL no-acceleration control won't work because the mouse or its drivers are too different.
This switch tells HL to bugger off trying to manage the acceleration and whatever you have set in the mouse properties for the desktop is what will happen in the game.

-noforcemspd (use desktop mouse speed settings)
This tells HL to use the speed settings you have set on your desktop. Whatever you set in your mouse properties is how it will behave in HL.
This is separate from the "sensitivity" setting in your mouse properties, think of the sensitivity as an amplifier, it can attenuate the movement, leave it exactly the same or amplify it."



Regarding that code: Do you even understand it? There's no proof in it, that noforcemparms is a combination of noforcemspd and noforcemaccel since you don't even know what newmouseparms stands for.


And if you want to know the "whole truth", learn German and read this:

http://www.readmore.de/index.php?cont=forum/thread&threadid=98474

And don't call me little. I could eat you in 2 seconds.

Post edited 2013-02-17 01:06:17
2013-02-17 00:59:40
-noforcemaccel command alone NEVER. TURN. ACCEL. OFF. NEVER.

You are liar. You NEVER check it. satanatioN check this in 2011 on offical version of CS 1.6 (http://goo.gl/nF6s6) and said:

If you play with -noforceaccel there is acceleration.
If you play with -noforcemparms there is no acceleration.


He just checked it. :) Or you think he is dumb?

Since 2008 I always play with only -noforcemparms on many computers on offical version of CS 1.6 and accel is always OFF (if Enhance Pointer Precision is unchekced). With -noforcemaccel it's always ON. This is reality.

>That's utterly bullshit. I mean come on: Why should someone name a launch option "noforcemaccel" if it has nothing to do with acceleration?

-noforcemaccel change some accel proprties but NEVER TURN IT OFF. -noforcemparms do.

***

You checked this on non-steam version and saw that I was right. :)

Go to beta branch of CS 1.6, set m_rawinput 0 and check it on offical version.

I'm sure that even if CS 1.6 developer say personally to you that you are wrong - you never admit it. You ignore even obvious facts. It's truly retarded behavior.

-noforcemaccel command alone NEVER. TURN. ACCEL. OFF. -noforcemparms DO.

2013-02-17 09:42:02
"You NEVER check it."

Of course I checked it. I checked it like 100 times during the past 10 years.


"You checked this on non-steam version and saw that I was right. :)"

No, I didn't? I don't even use a non-steam version.
Like I already told you 100 times: You can't say anything about the acceleration by tapping out of CS. And it's even more stupid to built up your statement on a non-steam version which uses different launch paths and which is based on a outdated 2003 version of CS 1.6.

"Go to beta branch of CS 1.6, set m_rawinput 0 and check it on offical version."

No need, I still got a not-updated version of CS on my laptop.


"You ignore even obvious facts."

You don't have any facts. It's just hard for you to realize that you were wrong for years.

"-noforcemaccel command alone NEVER. TURN. ACCEL. OFF. -noforcemparms DO."

It doesn't become true just because you're repeating it 100 times.

Post edited 2013-02-17 13:09:56
2013-02-17 13:08:57
>Of course I checked it. I checked it like 100 times during the past 10 years.

Liar. -noforcemaccel do NOTHING since Windows XP. http://goo.gl/jkpAO

>You don't have any facts. It's just hard for you to realize that you were wrong for years.

This is not another facts and proof? :) http://goo.gl/jkpAO

satanatioN, the founder of satanation.dk is wrong? http://www.hltv.org/?pageid=18&threadid=70538#..

MarkC who create famous MarkC mousefix wrong too? :) http://nsbadclan.org/forums/viewtopic.php?p=82318#..

Try to communicate with HL or CS developers. But I think even they cant help you now... But you can try.



Post edited 2013-02-17 13:37:26
2013-02-17 13:29:33
So, genius, try to put only -noforemaccel after last update wich disable rawinput by default. Surprise, accel is here!

And try -noforcemparms only. Ooops! Accel is gone!

Tell me please who is now "spreading bullshit he just found somewhere in the internet"?

Post edited 2013-02-26 11:16:59
2013-02-26 11:11:06
After you check this command in offical beta version with m_rawinpiut 0, read this very carefully and SHUT UP:

http://goo.gl/jkpAO

Read messages from meb2. Also read comments from MarkC who create famous MarkC mousefix.

Hope we're done?




Post edited 2013-02-17 11:30:03
2013-02-17 11:18:44

] m_rawinput 1
Unknown command: m_rawinp
2013-02-16 15:12:34
:(
2013-02-16 15:15:43
Command will work after next update. Now ot's work only on beta version. Also current version use raw input by default.
2013-02-16 16:52:34
and what will do this command ?
2013-02-16 18:02:34
With m_rawinput 1 windows mouse settings is bypassed and mouse communicate with game directly.
2013-02-16 18:57:34
so no need for noforce commands?
2013-02-16 20:49:41
Yep. They useless on current version of game.

But after new update things can change. Developers turn off raw input in beta version by default.
2013-02-16 21:57:11
i feel better with using -noforcemspd
2013-02-16 17:30:10
+1
2013-02-16 18:02:09
by: th3W
#23
what ever I use nfaccel and nfparms and there is no prob
2013-02-16 19:17:22
Some even more accurate info with proofs you can find here: http://nsbadclan.org/forums/viewtopic.php?printert..


MarkC (who made MarkC mousefix) said:

I would only add that the MouseThreshold1 and MouseThreshold2 settings are not used anymore for Windows XP/Vista/7, which is why -noforcemaccel doesn't affect anything.
(They control acceleration on Windows 95/98/ME/2000, but XP+ uses a curve stored in SmoothMouseXCurve and SmoothMouseYCurve instead of simple threshholds.)




And quotes from meb2:


ok fuck it I just wrote a C++ program that figured out just what HL was getting when it called SystemParametersInfo. Now I can tell you EVERYTHING, EVERYTHING!

Behavior in HL and Windows 7:

Adding -noforcemspd will cause HL to use the mouse value "MouseSpeed" located at registry key HKEY_CURRENT_USER\Control Panel\Mouse

Adding -noforcemaccel will cause HL to use the mouse values "MouseThreshold1" and "MouseThreshold2" at registry key HKEY_CURRENT_USER\Control Panel\Mouse

Adding -noforcemparms = -noforcemspd + -noforcemaccel

Checking 'Enhance Pointer Precision' in your mouse settings sets:

MouseThreshold1 to 6
MouseThreshold2 to 10
MouseSpeed to 1

Unchecking 'Enhance Pointer Precision' in your mouse settings sets:

MouseThreshold1 to 0
MouseThreshold2 to 0
MouseSpeed to 0

Default HL behavior (no -noforce commands in launch options):

MouseThreshold1 value HL uses by default is 0
MouseThreshold2 value HL uses by default is 0
MouseSpeed value HL uses by default is 1

I underlined the MouseSpeed default because that's what's causing HL's accel problem. To remove this acceleration, uncheck 'Enhance Pointer Precision' in your pointer settings and put -noforcemspd in your launch options.

MouseThreshold1 and MouseThreshold2 appear to only matter when MouseSpeed is not zero, so you can safely omit -noforcemaccel and -noforcemparms from your launch options. Alternatively, you can run MarkC's Windows 7 fix and put nothing in your launch options for the same effect.

Hope that helps clear up some of the confusion

***

I forgot to post a TL;DR from all that poop I posted...

1) mouse accel sucks for FPS gaming, and it's worth the extra effort in removing it completely and learning to play without it

2) most explanations of the -noforce commands are wrong and should be ignored

3) you don't need the CPL mouse fix, Cheesy fix, or MarkC fix to remove acceleration in NS or any other games that use the half-life or source engine

4) if you do not want mouse accel in HL based games like NS:

- uncheck 'Enhance Pointer Precision' in your Windows mouse settings
- make sure to add -noforcemspd in your Half-Life and NS launch options

5) if you do not want mouse accel in Source based games like TF2 or Portal:

- uncheck 'Enhance Pointer Precision' in your Windows mouse settings


Post edited 2013-02-17 13:12:54
2013-02-17 13:08:22

Login or register to add your comment to the discussion.