Should I Buy Throttle Or Rudder Pedals
#61
Posted 19 March 2016 - 10:21 AM
I haven't tested it yet in the game because I had time only to find X/Y ratios for desktop usage (2600, 1650 -> 1920x1200), so that is next, maybe tomorrow. After that I'm planning to find good enough ratios for several of my mechs and assing a key to change between those. After all I'd rather start playing again instead of pouring all of my free time to calibration logic which in the end may or may not work.
One question though: Does the 10ms limit that Sleep has also affect Settimer, and even if it doesn't, is there any benefit do the calculations faster than every 10ms? I know that I could remove the sleep altogether, but then the loop would consume too much CPU power.
Oh, and another one: Is there any difference in AHK script performance between using Loop with 10ms Sleep, and Settimer with 10ms interval? I was thinking about enable/disable button that could turn timer off, but implementing it when using loop requires an additinal conditional check that has to be done every round...
I know this is premature optimizations and such, but it is in my nature to think these things when coding
And sorry about all these questions, many of which is probably answered somewhere in AHK forums, but I have read a lot and it seems it is sometimes difficult to find answers to specific problems.
#62
Posted 20 March 2016 - 09:54 PM
Does anybody know if the field-of-view setting has any effect in the needed axis ratios? I mean if I change my ingame FOV, is it probable that I have to scale the ratios accordingly?
#63
Posted 21 March 2016 - 11:16 AM
The FOV setting will have no impact on how much your torso can twist, as a mech's torso twist value governs what angle the *center* of the screen will be at when at max deflection, which is nothing to do with FOV.
#64
Posted 22 March 2016 - 05:30 AM
To turn the mech I use the small thumb joystick from a logitech G13. It can also be used for forward and backward but I mostly use the pedals for it. On the G13 I have some weapon groups and I will configure more buttons to in the future. It's a nice piece of hardware.
I have a CH trottle but it's an old gameport version. Sadly it can't be make to work under the more modern windows versions because of a lack of gameport support. The CH hardware is robust as hell and it did survive a lot of windows versions and PCs. The same goes for my old CH flightstick. It still works but it's unusable because of lack of gameport support.
#65
Posted 22 March 2016 - 11:01 AM
The CH software would no longer work, but as long as all the buttons / axes are mapped, it may work. You could then use software such as my UCR util to remap the buttons to keyboard.
Failing that, you could by a board such as a Teensy or a Leo Bodnar board and replace the main circuit board with that.
#66
Posted 22 March 2016 - 11:07 PM
So I either have to find X/Y ratios manually and switch them as needed, or make up some kind of calibration function. I tested that my current X ratio of 2600 that covers the whole width of my 1920px Windows desktop is about 57° twist inside mech, so I can calculate the rest using ratio 1° = 45.6. Only drawback is that those max twist ranges will change when I get more X Twist skill, so calibration routine would be better solution.
But I thing those few degrees do not matter before I relearn aim with joystick. That is if I ever will.
Thanks Ziraks about the tip, I may well consider those pedals after I get my other gear in working condition. Although they cost pretty much considering they are only on/off type.
#67
Posted 23 March 2016 - 01:06 AM
evilC, on 22 March 2016 - 11:01 AM, said:
The CH software would no longer work, but as long as all the buttons / axes are mapped, it may work. You could then use software such as my UCR util to remap the buttons to keyboard.
Failing that, you could by a board such as a Teensy or a Leo Bodnar board and replace the main circuit board with that.
Adapters don't work well with that CH hardware. Some buttons or coolie hats normaly don't work. But I'am thinking about to rewire them with another board.
#68
Posted 23 March 2016 - 01:33 AM
Joysticks can be used but you will struggle with fine control and sniping.
I have to use a joystick and throttle, for medical reasons, and have done since closed beta, but I also have a keypad and mouse set up for ranged playing. if I ever found a lefty throttle with buttons, unless you can make one, or have one made you won't find one, I would stop using a joystick and go with throttle and mouse hybrid in seconds.
You will find a big difference
Edited by Cathy, 23 March 2016 - 01:36 AM.
#69
Posted 23 March 2016 - 06:52 AM
Cathy, on 23 March 2016 - 01:33 AM, said:
Joysticks can be used but you will struggle with fine control and sniping.
I have to use a joystick and throttle, for medical reasons, and have done since closed beta, but I also have a keypad and mouse set up for ranged playing. if I ever found a lefty throttle with buttons, unless you can make one, or have one made you won't find one, I would stop using a joystick and go with throttle and mouse hybrid in seconds.
You will find a big difference
Thrustmaster has started selling separately their Warthog throttle.
#70
Posted 23 March 2016 - 11:05 AM
mclang, on 22 March 2016 - 11:07 PM, said:
So I either have to find X/Y ratios manually and switch them as needed, or make up some kind of calibration function. I tested that my current X ratio of 2600 that covers the whole width of my 1920px Windows desktop is about 57° twist inside mech, so I can calculate the rest using ratio 1° = 45.6. Only drawback is that those max twist ranges will change when I get more X Twist skill, so calibration routine would be better solution.
The HUD compass indicator looks like it would be accurate enough - the bit with the horizontal line connecting the two triangular indicators.
Center torso, then go into a loop where you issue a mouse move 1 unit left, check the x coordinate of the left-most orange pixel, and if it did not change since last loop then break.
That would give you the twist range of any mech in mouse units.
I dunno tho if there is still the issue with MWO where mech efficiencies do not take effect in Testing Grounds, but we could get the code working in testing grounds and then I reckon it would only take ~10 seconds or less to find that value, so could easily be done at the start of a match. Hell, as long as you don't touch the torso controls, you could even be moving and turning legs while it was doing it.
#71
Posted 23 March 2016 - 11:13 AM
Mystere, on 23 March 2016 - 06:52 AM, said:
The warthog lacks a rudder rocker. The Hotas X is better for MWO.
There is a new version of the Hotas X out called the "Hotas 4", and apparently it has a much smaller deadzone.
You could also remove the deadzone by swapping out the circuit board for something like a Leo Bodnar board, and probably wouldn't even need to replace the pots or wiring. The cost of a Hotas X plus a replacement board would still probably be half what a Warthog costs.
Once I get some time I am gonna finish off my Hall Sensor mod on my Hotas X, but to be honest the rudder rocker dz is not the problem - the problem is MWO's massive deadzone that you can do nothing about.
#72
Posted 23 March 2016 - 11:45 AM
evilC, on 23 March 2016 - 11:13 AM, said:
There is a new version of the Hotas X out called the "Hotas 4", and apparently it has a much smaller deadzone.
You could also remove the deadzone by swapping out the circuit board for something like a Leo Bodnar board, and probably wouldn't even need to replace the pots or wiring. The cost of a Hotas X plus a replacement board would still probably be half what a Warthog costs.
For MWO, I am starting to use the Warthog throttle's analog mouse hat for turning and jump jets. It's almost a breeze to use in that manner. It works much better than using the mini-stick on the G13 for turning and jumping. On the other hand, the Warthog stick is a pain to tune properly for aiming in MWO. I'm still much better off using a mouse on the right hand. But maybe more practice will eventually fix that.
I also miss the old HOTAS Cougar's rotary switch on the throttle. I used that for torso twist in previous MW games.
As for the new HOTAS X, is that still using potentiometers? If so, I'll take a pass. I tend to wear them off rather quickly.
Finally, for MWO, I'm looking into pairing the Warthog's throttle with a T16000M for the latter's twisting stick. It is inexpensive enough for me to experiment with to see if I would like the combo.
evilC, on 23 March 2016 - 11:13 AM, said:
Amem to that! And what's up with that anyway? Why is it even there?
Edited by Mystere, 23 March 2016 - 11:46 AM.
#73
Posted 24 March 2016 - 04:55 AM
Having a larger throw (Range of motion in the stick) alleviates this somewhat, but you still cannot change from moving your aim to the left to moving your aim to the right quickly enough (You have to move the stick through the center point to change direction).
The only way stick aiming could possibly compete is with "Absolute" stick input, which PGI tried to implement but failed epically.
Myself and others are trying to implement this in code, but it is not simple and even then you would probably need to remove the spring from your stick to make it comfortable to use.
Yes, the Hotas X has pots, but I have started to convert one of mine to hall sensors, and it isn't terribly hard.
Mystere, on 23 March 2016 - 11:45 AM, said:
A combination of catering to the lowest common denominator, incompetence and simply not caring about joystick input. Hell, analog throttle still cuts out when you open the chat box (But using keyboard for throttle doesnt). Just look at the promised "Absolute" input mode: It took ages to be delivered, didn't work (Didn't properly account for differences in torso twist range, still a massive dz that made it useless), and once you enabled it, it stopped mouse input from working. That was years ago, they never bothered to finish it.
Edited by evilC, 24 March 2016 - 04:56 AM.
#74
Posted 24 March 2016 - 06:45 AM
Now my warthog feels really great, even with the big stock spring in place. Previously I tried also to play without the spring (easy to remove), but using extension is SO much better!
I will create a new thread that shows the parts needed for the extension first thing when I have time. And I thing the absolute aim, calibration and other such things belong to there also.
#75
Posted 24 March 2016 - 07:33 AM
evilC, on 24 March 2016 - 04:55 AM, said:
Yes, PGI not accounting for torso twist differences and those darned deadzones make using sticks "challenging" (to put things ever so mildly).
#76
Posted 24 March 2016 - 01:04 PM
I did some experiments with mouse_event DLL calls, and it seems that the crosshair is in effect a readout telling you how fast you are twisting. When you are at 100% twist rate, the crosshair does not move any further - it is at this point that mouse movement is "thrown away" and your script has basically no chance of staying perfectly in synch.
Using mouse_event, as long as i issued move commands sufficiently small such that the max twist rate was never exceeded, then I could issue a +100 move, then a -100 move, then hit C and the view did not change.
So... given this information and a little thought, I have some fresh ideas for ways to tackle this problem.
Gonna tinker with some code, will let you know if I come up with anything.
#77
Posted 24 March 2016 - 02:30 PM
- You need to know the max amount of mouse units that a given mech can twist.
- You need to know the max mouse units / ms that a given mech can twist at.
Ideally, you want the highest values as possible, but I have found some that are pretty darned close for my test mech and it never, seems to go out of synch, although I did not play a match as I found it unusable for the following reasons:
The "coordinate space" (ie the range of coordinates that can be acheived for both axes) for a joystick is square.
The coordinate space for the mech is a wide rectangle.
This means that if you map the joystick directly to the mouse, your X and Y sensitivities can be quite different, making it difficult to aim.
Also, the only flightstick I have is the Hotas X, and it is very low resolution, so it is quite unsuitable for stick aiming in MWO.
I think the X/Y ratio thing could be sorted out - you could make the Y axis match the X axis sensitivity, and "clip" it. It would mean that only the middle part of your Y axis would do anything, but at least it would be even.
Could anyone with a high accuracy stick try this out and see what they think?
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases. #SingleInstance force ; User configurables ; For all [arrays], the first value is X, the second is Y MOUSE_UNITS_RANGE := [5000, 1000] ; The total range of movement, in mouse units, for each axis. MAX_TWIST_RATE := 25 ; The max twist rate, in mouse units STICK_ID := 2 ; The ID of the stick to take input from STICK_AXES := ["X", "Y"] ; The axes on the stick to take input from ; Internal vars MAX_JOYSTICK_RANGE := 100 JOYSTICK_OFFSET := MAX_JOYSTICK_RANGE / 2 JOYSTICK_MOUSE_RATIOS := [MOUSE_UNITS_RANGE[1] / MAX_JOYSTICK_RANGE, MOUSE_UNITS_RANGE[2] / MAX_JOYSTICK_RANGE] AXIS_NAMES := [STICK_ID "Joy" STICK_AXES[1], STICK_ID "Joy" STICK_AXES[2]] current_values := [0,0] Loop { ; Reset the move amount delta_move := [0, 0] ; Work out how much we want to move in X and Y Loop 2 { ; Get state of axis axis_in := GetKeyState(AXIS_NAMES[A_Index]) ; Work out at what mouse "coordinate" that the stick position equates to desired_value := round((axis_in - JOYSTICK_OFFSET) * JOYSTICK_MOUSE_RATIOS[A_Index]) ; Do we need to generate mouse input? if (desired_value != current_values[A_Index]){ ; Find out how much we want to move the mouse by delta_move[A_Index] := desired_value - current_values[A_Index] ; Limit the amount of movement for this tick to the MAX_TWIST_RATE delta_move[A_Index] := abs(delta_move[A_Index]) > MAX_TWIST_RATE ? MAX_TWIST_RATE * sgn(delta_move[A_Index]) : delta_move[A_Index] ; Update current value current_values[A_Index] += delta_move[A_Index] } } ; Generate mouse input for both axes at once DllCall("user32.dll\mouse_event", "UInt", 0x0001, "Int", delta_move[1], "Int", delta_move[2], "UInt", 0, "UPtr", 0) Sleep 10 } ; Returns -1 if value is negative, or +1 if 0 or positive sgn(val){ if (val >= 0) return 1 else return -1 }
#78
Posted 25 March 2016 - 07:56 AM
Good points about the difference between X and Y axis ranges, haven't thought about that! That is probable why my tests with aiming felt so,ewhat strange... I think that the right solution is to use same ratio for both axises (axes?) and like you said clip it.
I promised to create thread about the Warthog extension I made, so here it is. I think further absolute aim development belongs to there, because this thread was originally only about throttle versus pedals
#79
Posted 26 March 2016 - 06:50 AM
I also created a new thread for this script, it is here: http://mwomercs.com/...s/topic/225233-
#80
Posted 28 March 2016 - 09:56 PM
I hope at least!
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users