Absolute/zero-Order Control - How To?
#1
Posted 15 June 2014 - 05:14 AM
It seems a few of you have had good success using TARGET, however I'm unfamiliar with it and still face the challenge of programming Saitek rudders with it. I realize I may have to mod my rudders' USB connector into a Serial connector so I can plug into the HOTAS like my old Elite RCS. Can anyone help me out with how to do this? Is there any kind of guide out there that my google-fu has failed to find?
#2
Posted 15 June 2014 - 07:52 AM
I have a Cougar I customized specifically for zero-order control and use TARGET to achieve absolute inputs, and it's really easy. Likely Foxy can do it as well, but currently the ONLY way to have absolute inputs for a zero-order scheme is absolute mouse emulation, but as not all emulators are created equal, and TARGET is known to work and you have a support specific group -us. No matter what emulator you use, you need to scale the sensitivity way way way way back before it's controllable. In TARGET for instance, I use minus 12 on the y axis and minus 11 on the x axis at my normal gain setting.
For some reason, sensitivity is higher on the y than the x so it takes a little bit more toning down to keep it in scale. I've transitioned others to TARGET and can give you pointers to make it easy if you like (it's way less convoluted than Foxy actually), and beyond that I have Cougar specific scripts that have been refined over 6500 matches that I'd be happy to share.
Really useful things like on-the-fly sensitivity changing, sensitivity automatically scaling with advanced zoom, logical/intuitive button grouping/mapping with a shift layer as well, etc. I also have visual diagrams of the layout to make it easy to learn them...
There is a ray of light here too, that we will soon (no, really) have actual native absolute inputs, which will be glorious. Currently if you are using mouse emulation this way, it interferes with TrackIR making it unusable
I also use pedals plugged into the gameport of my Cougar (which is under control of TARGET) and it's super easy, but you can only do it with RCS pedals unless you want to do a little converting to other pedals. It's not hard to convert any pedals to work however, if you aren't scared to re-wire the pot. The only weird thing is that it runs in resistive mode so only has 2 wires going to the pot (pots normally take 3 wires so has 1 tab without a wire). Here's the wiring diagram to make one:
http://cougar.flyfox...udder_large.jpg
You can use the rudder pedals as well, but to make them active you need to get into the Cougar Control Panel and reassign the active 8 axes to include the toebrakes, however then you lose the ministick (worthwhile tradeoff cause there's nothing useful you can do with it in MWO anyhow...). I see RCS pedals on the cheap on ebay all the time (paid $50 after shipping for mine...), and it's hard to beat plug-n-play functionality. I was less than impressed with the centering mechanism and made my own for them, and also now have my Saitek Combat Pedals mounted to them.
For MWO I only use the toebrakes for left/right turning. Using a central pivot axis for turning is way too much footwork for the type of driving I do, which is almost exclusively in lights so I have to vigorously maneuver to stay alive. I currently use evilC's UJR application to merge the 2 axes into a single output that I can actually bind to the game, and works like a champ.
MWO is good about accepting more than 1 controller, so don't feel you have to limit yourself to TARGET compatible pedals. Also with analog turning implemented as well as it is, there is no real reason to even use TARGET to manipulate them and normal binding is just fine.
tl;dr: switch to TARGET and I got you covered...
#3
Posted 15 June 2014 - 10:21 AM
And as weird as it sounds, I've trained myself to use absolute rudder for torso-twist. Hence my current predicament. Ironically I'm running TARGET for my MFDs. I guess it's time I learn to work it for the HOTAS too. The sensitivity-scaling you've described sounds phenomenal.
#4
Posted 15 June 2014 - 11:07 AM
Stock would have been more of a pain cause the negative interaction when crossing the center, but the simple mod I did makes crossing that region smooth. http://mwomercs.com/...ost__p__3193310
As to TARGET scripts (just forget about the GUI, it's a toy), as I said if you want I'll gladly send you a copy of my current MWO Cougar script. From there it's easy cut/paste modify to your liking, but you would already have the framework for several commands that req a bit more coding than the regular mapping.
#5
Posted 15 June 2014 - 03:29 PM
#6
Posted 15 June 2014 - 03:50 PM
Joysticks, flight sticks, etc., don't have any advertisements saying what order they are.
#7
Posted 16 June 2014 - 09:20 AM
"zero order" as far as a marketing term isn't really a thing. It is more the way the controller interacts with the game.
In the case of MWO, your mouse is a zero order controller.
In the case of a flight sim, a joystick is a zero order controller.
#8
Posted 16 June 2014 - 08:42 PM
Foust, on 16 June 2014 - 09:20 AM, said:
"zero order" as far as a marketing term isn't really a thing. It is more the way the controller interacts with the game.
In the case of MWO, your mouse is a zero order controller.
In the case of a flight sim, a joystick is a zero order controller.
Sigh.. that started out ok, but went off the tracks by the end The only zero-order control you will find in a flight sim is head tracking, and the assignment of these terms is not based on what controller you are using, but rather the specific behavior of the axes you're controlling.
Simply put, the game/sim determines the control-order, and within that the controller chosen determines how effective your manipulation of these axes will be depending on what it was designed to be good at vs how you are using it. MWO's problems come from mixed orders being used, since these systems of control are not even close to being on even footing.
Two aspects to this:
I: Controllers are not assigned control-orders (sorry Koniving, it's not that easy!). There is no such thing as a 'zero-order joystick' a 'first-order joystick' or even a 'zero-order mouse' for that matter. What makes those devices different from each other, is how each input device may be mechanically optimized for their *intended task (defined by control-order), which generally leaves them good at that one, but at the expense of others. The reason joystick manufactures don't list what control order they are is because it's a non sequitur use of the term.
Controls applications (games, sims, etc) is where control-order is applied. Individual axes are assigned control-orders, or rather expressed as them to define their behavior. Control-order is standardized terminology used to simplify expressing the mathematical model underlying how inputs are being resolved into vehicular/system commands. You don't need to know the math, but you should know the difference between how they act.
There are only 3 types of control-orders we really need to consider in games, or flight, or even space flight. Whether real or modeled, it doesn't matter -the same terminology is used to represent the same mathematical modeling. They are engineering terms used for expressing controls, to reduce them to their specific unique implied behavior.
Zero-order: direct positioning (ex: reticule aim with mouse)
First-order: velocity (ex: analog throttle)
Second-order: acceleration (ex: 'w' and 's' throttle)
II: The other aspect to consider is what happens when an application allows mixed control orders for the input types. MWO is a perfect example to illustrate the problem, because it uses zero-order positioning for the mouse, however joysticks are only currently supported with first-order inputs.
Using first-order inputs while others are using zero-order positioning has a predictable outcome; the old 'joystick in a shooter' trope. With a regular joystick, you will be extremely outclassed and will never fight on even footing so long as you are using velocity commands to indirectly change position the reticule while others can directly do that with a mouse or other positioning device. Once an application accepts zero-order positioning, all hope is lost for the ability for first-order/velocity inputs to be viable.
A joystick is not a first-order controller, but so long as MWO only accepts relative inputs for joysticks they they are limited to that role. Once native absolute positioning is able to be used, all the sudden ANY joystick will be able to operate in zero-order and it's as simple as that. Currently the only way to achieve zero-order control for a joystick in MWO is to use mouse emulation (sorry Alpha One, your zero-order rudder scheme won't work unless they implement absolute inputs on turning as well), since this is the only workaround to achieve absolute inputs. Thrustmaster's TARGET makes this easy to do, but there are other emulators that can do it.
What makes my stick different than a 'normal' joystick which makes me refer to it at times as a 'zero-order controller' is that I built an new gimbal specifically optimized for positioning, which of course is at the expense of its ability to be good at velocity like it's brethren. Conversely, optimization for velocity leaves you with a very poor positioning device, even if a game supports absolute inputs. They are not limited to the roles they are optimized for, but they're only good at those.
Unfortunately the only known example of a native positioning joystick not intended for industrial applications (and hence thousands of dollars...) is the right stick of the Steel Battalion controller. Any joystick *can be used for positioning, but if you want it to be good at it you have to make or mod one cause mechanically it's a different beast...
#9
Posted 17 June 2014 - 05:38 AM
We each came to different ends in our controllers. Locnar has built an incredible stick that as close as possible emulates the movement of the mech, that is yaw (rotation) to turn the torso and pitch (forward and back) to move the torso up and down. I was unwilling to reprogram myself to use yaw for the torso, so I stayed with pitch and roll.
Another difference in our setups is that I have a spring centered stick, where Locnar's stick uses friction joints to stay where he puts it. When I first built my pit I modded a T16000M to have a friction gimbal as well. My friction disc self destructed, so I elected to put the spring back in and give it a go. I liked it, so I kept.
Really though, the most important aspect of how to make a joystick viable is using mouse emulation to get the desired absolute positioning. Even with that the other catch is the scaling. TARGET is really the only solution that I found to work in this regard and I went through every joystick to mouse emulator that I could find.
Have we sufficiently derailed this thread? It was about rudder controls for torso twist right?
Re reading the original post, I think your going to be in the same boat as we are with the full range of motion vs accurate re centering. My stick (and I believe Locnar's) have what Ill refer to as edge behavior such that depending on the mechs available torso traversal and arm traversal we will either not achieve full rotation (think catapults) and have accurate centering, or exceed full rotation (think stalkers) and not re center properly. I wont even get into how much arm lock screws with this. This is a function of the limited range of a axis used to emulate a mouse, where a mouse has effectively an infinite range available to it.
Personally, I think it would be really difficult to use the rudders for the torso since that is a key component for aiming. Personally I use the rudders for leg direction.
#10
Posted 17 June 2014 - 07:17 AM
Mind you, I've had so much difficulty getting this set-up to work right that I've been experimenting with other control schemes. Because I've trained myself to use rudders for torso twist I can't seem to get a handle on using the stick for twist and rudders for turning. The muscle-memory is working against me there. I get a lot more precision from a mouse+throttle+rudder setup, except for the sudden lack of buttons. Even with my Naga Hex I've lost at least 4 functions off my stick. And the axis-to-button emulation in Saitek's SMART program sucks. I tried using the toe brakes as jump jets and TeamSpeak PTT but it's incredibly unresponsive. Either the command doesn't happen or it gets stuck. Seems like no matter what I try I keep hitting a wall, and until I get the software side of things straightened out I want to avoid physical mods.
#11
Posted 25 June 2014 - 11:59 AM
Quote
There are some controller tweaks coming to ensure the mouse wheel binds correctly, and to enable absolute inputs for Joystick users along with some other work like allowing you to move while the Battlegrid is up, for example. These are also in test and if approved will be in the July 15th patch.
http://mwomercs.com/...79#entry3499179
#12
Posted 02 June 2015 - 12:22 PM
How exactly do you set up an off the shelf joystick (particularly a T1600m) to be absolute zero order control?
#13
Posted 06 June 2015 - 04:54 AM
Yes there is a option now to enable absolute positioning in the game. The problem is that it is bad. For some reason there is a enforced deadzone on the stick and instead of starting movement once you clear that deadzone, it jumps to the position that is reported by the stick past that deadzone. Meaning there is a area around center that you just cant put your sights on.
You cant 'exactly' make a zero order stick out of a T16000M, but you can get close-ish. The main thing is using mouse emulation and scaling down the movement. For example, when I have my stick in "pilot mode" the mouse cursor in windows will only move over a very small area in the center of the screen. When I have the stick in "mouse mode" the mouse cursor will move to each corner of the screen with full deflection of both axis. You could remove the spring from the stick as well but I found that the T16000M was such a light spring anyway that I actually liked having the resistance and the centering. Locnar disagrees. :-)
#14
Posted 08 June 2015 - 08:00 AM
Foust, on 06 June 2015 - 04:54 AM, said:
Yes there is a option now to enable absolute positioning in the game. The problem is that it is bad. For some reason there is a enforced deadzone on the stick and instead of starting movement once you clear that deadzone, it jumps to the position that is reported by the stick past that deadzone. Meaning there is a area around center that you just cant put your sights on.
You cant 'exactly' make a zero order stick out of a T16000M, but you can get close-ish. The main thing is using mouse emulation and scaling down the movement. For example, when I have my stick in "pilot mode" the mouse cursor in windows will only move over a very small area in the center of the screen. When I have the stick in "mouse mode" the mouse cursor will move to each corner of the screen with full deflection of both axis. You could remove the spring from the stick as well but I found that the T16000M was such a light spring anyway that I actually liked having the resistance and the centering. Locnar disagrees. :-)
Well, although not perfect, it does sound like there’s some hope for my preferred control scheme. I do plan on doing the spring ziptie mod, but have no clue how to set the settings to get the stick to behave like that. Would you be able to walk this novice through the procedure?
#17
Posted 18 June 2015 - 03:02 PM
#18
Posted 20 June 2015 - 10:52 AM
I'm making one to use a G502 mouse's sensor using a section of a 3.5" aluminum hemisphere as the 'mousepad', for experimentation in Star Citizen (mouse emulation currently not working), which is an experiment I almost conducted in 2012 here but opted for discrete pots/mouse emulation for my mech stick. ...Had I used the damn mouse sensor, it sure would have been a lot easier to explain how my stick works differently than a normal joystick though!
Not sure if I'll be making drawings of this gimbal (based off a really simple stick that came out of an ultralight aircraft), but I'll sure take some pics to share once I get cutting...
#19
Posted 27 June 2015 - 02:17 PM
Foust, on 18 June 2015 - 03:02 PM, said:
Thank you Foust! So I finally got a chance to sit down, plug in your TARGET code and play. Right off the bat, X and Y felt great, although not getting the full range of motion on the torso twist ( only about 90* each side), as well as I'm so used to aircraft pitch controls (ie pull back on the stick to nose up) that even after giving it a fair shot I think I'm going to need to change the code to accommodate what I'm used to.
I couldn't get throttle and leg turn to work on the single stick though, which I think has to do with my existing keybindings, and isnt a big deal as I wanted to run twin sticks anyway. I attempted to splice in some code from a twin stick TARGET profile that I've messed with in the past in order to map turn and throttle to my left t16000m, but no luck. Well, I'll be honest, luck didnt have anything to do with it as I have a very limited understanding of the TARGET coding. I wont dare share the butchered code here, but if you guys could lend a hand in getting a TARGET profile setup that is set up like the pic below, and of course with a bit of guidance (ok, maybe a lot of guidance), I'm hopeful that even my novice abilities could get it working.
And just a disclaimer, the reason I'm choosing to go twin t16s is I am going to also use them in Star Citizen with an as close to similar configuration. Just to minimize having to re-train myself each time when I switch back and forth between the games. Otherwise I'd just use a throttle in my left hand for MWO.
Btw, the video you posted looks great! After a TON of practice we'll see if I can compare...
Edited by Faolan65, 27 June 2015 - 02:18 PM.
#20
Posted 27 June 2015 - 02:34 PM
Even after reloading your profile, it's still acting like that. Not sure what I lost in the reset that made it quit working so great.
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users