Joystick Ramping
Is there a variable to set to remove joystick ramping?
While it makes sense to ramp keyboard turning, it's terrible for joystick turning.
When I immediately twist from full right to full left (or vice versa) the turning will at first be slow, then fast a few hundred milliseconds later.
This is with 1.8.6. Perhaps later versions already disable joystick ramping?
Thanks for your consideration, and the awesome engine!
While it makes sense to ramp keyboard turning, it's terrible for joystick turning.
When I immediately twist from full right to full left (or vice versa) the turning will at first be slow, then fast a few hundred milliseconds later.
This is with 1.8.6. Perhaps later versions already disable joystick ramping?
Thanks for your consideration, and the awesome engine!
Comments
I found the ramping code in file: g_controls.c function: G_UpdateCmdControls right under this comment line:
// Use two stage accelerative turning on the keyboard and joystick.
To bind a joystick axis without staged turning do not add the "-staged" modifier to the binding e.g.: Each axis also has the following cvars: The code you found is the old code that 1.8.6 used for joysticks which is now mostly dead. We are in the process of transitioning the player input to the new system.
Quick question, where does the new beta versions look for user config files?
In 1.8.6 it was Doomsday\Run\jDoom for Doom.
Thanks!
Nevermind, just found it at C:\Users\%USERNAME%\Documents\Doomsday Frontend\runtime\
However I couldn't find a joy-rx joy-ry joy-rz
Are they labeled differently in the beta?
Thanks
EDIT: Whoops! I made a mistake... It was joys X - Z where I found that, on my controller, W and Z were the right stick axes and X and Y were for the left stick!
I forgot to try auto-complete earlier, or I wasn't paying attention.
I assume w, x, y, z correspond to axis01, axis02, axis03, axis04
Then the rest are axis05 to axis 32.
Is this using the DIJOYSTATE2 structure? That's alot of axis!
http://msdn.microsoft.com/en-us/library ... 85%29.aspx
I assume that 1.8.6 used the DIJOYSTATE structure for 8 axis?
http://msdn.microsoft.com/en-us/library ... 85%29.aspx
Thanks for the info, time for me to start experimenting with the axis.
From experimenting I've discovered the following mapping:
joy-x <-> X
joy-y <-> Y
joy-z <-> Z
joy-w <-> Rx
axis05 <-> Ry
axis06 <-> Rz
Thanks again for the assistance!
How can you adjust it so you can turn fast with joystick, like you can with the mouse?
I already did ctl-run 1, but I need faster turning speed with joystick.
Scale adjust sensitivity but not speed.
There are joysticks out there that have very short throws (millimeters) which can easily handle fast turning.
One more thing:
input-joy-x-scale seems to be bugged
if I set it to 0.0000000000001 I still get alot of movement
if I set input-joy-y-scale to that value I don't get any noticable movement.
Thanks again for the help!
A scale of near-zero would not increase your range of movement, it would decrease it. You need to set a larger than default scale to do that. Attempting to set the scale to such a small value will result in it being clamped to zero, thus when its multiplied with your axis delta you'll get no movement at all.
About the scale thing:
What I meant was that for example you set all axis scales to 0.0000000000001
You shouldn't get much movement if any at all.
This is true for all axis, except joy-x for some reason.
It seems that input-joy-x-scale is ignored. Stuck at some value.
Since it's first on the list, perhaps its because of a loop starting at 1 instead of starting at 0?