Jump to content

Analog Joystick Support Yet?


13 replies to this topic

#1 Lucinator

    Member

  • PipPipPip
  • Elite Founder
  • Elite Founder
  • 79 posts

Posted 28 January 2013 - 01:08 PM

Have the dev's introduced analog support for the joysticks yet?

#2 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 28 January 2013 - 01:58 PM

No analogue turning yet, no.
This is not a quick fix - it is nothing to do with analogue input, it is because the game engine / netcode has no concept of an analogue turn - you are either turning or not.
Therefore, it requires a re-code of the netcode.

#3 PianoMan

    Member

  • PipPipPip
  • Ace Of Spades
  • Ace Of Spades
  • 73 posts
  • LocationSan Diego, CA

Posted 31 January 2013 - 08:47 PM

Intriguing, evil - I had no idea. Thanks.

Can't wait until they implement - back to MW/2/3/4 days with me. Piloting will feel more like it than the OFF/ON feeling we have now (which still, isn't bad).

#4 willrnlds

    Member

  • PipPip
  • 33 posts

Posted 22 February 2013 - 08:44 AM

View PostevilC, on 28 January 2013 - 01:58 PM, said:

No analogue turning yet, no.
This is not a quick fix - it is nothing to do with analogue input, it is because the game engine / netcode has no concept of an analogue turn - you are either turning or not.
Therefore, it requires a re-code of the netcode.


If they are going to have to rewrite the netcode, why are they wasting time optimizing it?

#5 The Trice

    Member

  • PipPipPipPipPipPip
  • Elite Founder
  • Elite Founder
  • 268 posts
  • LocationBehind You

Posted 22 February 2013 - 08:47 AM

Because we need to make more mechs , mechs , mechs , mechs!!!

#6 Kashaar

    Member

  • PipPipPip
  • Overlord
  • Overlord
  • 75 posts

Posted 22 February 2013 - 12:18 PM

I really want this too. Do it!

#7 Loc Nar

    Member

  • PipPipPipPipPipPipPipPip
  • 1,132 posts

Posted 22 February 2013 - 02:34 PM

Get a Thrustmaster T16000 (<$40), Cougar (>$180), or Warthog (>$350) and problem solved. With TARGET (Thrustmaster's software to run these 3 sticks) you can easily accomplish what the game lacks by default. I have multiple scripts now for these sticks, and once you have a working script it's a simple matter to tune it to your specific preferences assuming you don't like my button mappings. Only 2 lines to .cfg and nothing with .xml, complete control over axes responses (L, center, R deadzones, curve type, and sensitivity) as well as button mapping changes that can be made without even restarting the MWO client... I even have a pulse-width-modulation scheme that yields a variable rate of turning until real analog turning support is in.

If anyone really wants to use a stick to play MWO, seriously consider one of these sticks above, since they are the easiest route to the highest degree of functionality possible, likely even surpassing the capabilities that will one day be available in the form of official support.

However, so long as you are using an airplane joystick to pilot something that moves like a tank, the task is quite difficult even with the best support by PGI. The real challenge is using pitch/roll stick with a spring centering bias and relative inputs to replace the ease and precision of a mouse which moves in the natural direction of the reticule travel and uses absolute inputs.

For pedal users another challenge is using airplane pedals to steer something that turns like a tank, which at the moment relies on 'bump steering' due to the on/off nature of current digital turning. A match requires a lot lot lot of tiny steering inputs at times, and with airplane pedals this requires you to move *both feet to accomplish each input. You will either undercontrol the mech or be constantly be shifting in your chair, which leads to serious fatigue/back problems and is far from comfortable even in the short term. I use pedals that have toebrakes (Saitek Combat pedal post coming shortly!), and just use the toebrakes to generate 'a' and 'd' commands so I only move one foot each time. Big. Difference. This is how you drive a tank BTW, as well as how the original BattleTech Tesla Pods operated but I digress...

It's really a shame no one makes an off the shelf stick that moves in pitch/azimuth with no spring centering and uses absolute inputs. I made my own stick that does just that, and it's very natural/easy to use, although a little (srsly, just a little) more challenging for high precision sniping at long range. It moves in the same directions as the reticule (like a mouse) and firmly stays put in whatever position it is in when my hand is not on it (like a mouse), it uses absolute inputs (like a mouse) and I don't have to choose between control-ability vs reaction speed, unlike a self centering stick using relative inputs. Oh, and I use zero deadzone with my setup, which is another drawback that mouse users don't have to tolerate.

Whenever I die and spectate another stick user, I see why there is so much derision among the general population of mech pilots and terms like Steeringwheel Underhive are coined. Unless you have a stick with a pitch/azimuth gimbal that uses absolute inputs, I can only recommend throttle/mouse/pedals with a clear conscience.

#8 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 23 February 2013 - 02:18 AM

Hey LocNar, any chance you could give me specifics of your pulse-width-modulation technique? I tried to do it but couldn't get it working.
What figures did you use? ie full deflection for 50ms, off for 50ms, full for 25ms, off for 25ms etc...

#9 Kashaar

    Member

  • PipPipPip
  • Overlord
  • Overlord
  • 75 posts

Posted 23 February 2013 - 02:26 AM

Loc Nar, I just read that post and I am completely stunned. I've been meaning to use a Logitech G13, and then I looked at your link, and holy crap. I mean... you built your own joystick. You BUILT YOUR OWN JOYSTICK. You, sir, have outgeeked us all. We are not worthy!

Seriously, awesome post!

Care to share the specifics of your analog turning script?

#10 Loc Nar

    Member

  • PipPipPipPipPipPipPipPip
  • 1,132 posts

Posted 23 February 2013 - 07:50 PM

Quote

any chance you could give me specifics of your pulse-width-modulation technique?


Quote

Care to share the specifics of your analog turning script?


First, thanks for the kind words. This project means a lot to me, and so it does when people like it. ^_^

As to the steering, I hope I didn't make it sound cooler than it is... Due to limitations within the MWO coding, I was only able to obtain 2 *smooth rates of turning that are appreciably slower than the full rate. I was gonna wait and make this stuff it's own post, so I apologize in advance to those of you who wind up seeing most of this again when I make a rudder post. Got more news to post about my new stick script as well, which includes some neat stuff, most notably the automatically scaling of stick sensitivity in accordance with zoom level... :D

As we all know, turning in MWO is digital, so is achieved by holding 'a' or 'd', or assigning an analog axis to do such (this is what happens when you bind an axes to turning in the MWO options menu). When holding a keypress, by default it generates 20keystrokes per second, at 32miliseconds each. My initial tests were done using the standard 32ms pulse, but increasing the delay between them to lower the keystrokes per second. Unfortunately as it turned out, 32ms is juuuust not quite long enough of a keystroke to properly initiate turning before the keystroke is finished. This is not a problem at 20 keystrokes per second, since once enough keystokes are pressed fast enough MWO counts it as a continuous input and turning rate is 100%. I'm not sure exactly where the critical mass mark is set, but it's somewhere around 50% time on/off.

Due to the MWO limitation I mention above, my scheme does not yield turning rates from 0-100%, but rather more like ~65-100%. I could not find any useable rates below ~65%, and all lower speeds than that are simply too ratchety/jerky. I played around with many many combinations of altering keystroke event time and delay, and finally settled on a nice simple 50ms. While it is possible to find smooth rates above 65%, I limited my script to 2 of them for the time being. To achieve full turning rate with 50ms pulses, I use a 50ms delay (fulfilling the 50% req). The next rate down is a 50ms pulse with a 75ms delay, and the next is a 50ms pulse with a 100ms delay. My current prototype scheme has the axis divided into 7 equal zones, with the center being 'x' for all stop.

zone char stroke delay ~rate%
3) 'a' 50ms 50ms =100%
2) 'a' 50ms 75ms ~80%
1) 'a' 50ms 100ms ~65%
0) 'x'
1) 'd' 50ms 100ms ~65%
2) 'd' 50ms 75ms ~80%
3) 'd' 50ms 50ms =100%

It goes without saying that I am looking forward to real analog turning support. In the meantime, the scheme above can be used via TARGET through either a spare axis on any supported stick, or with the Cougar rudder pedals.

I am currently actually using Saitek Combat Pro pedals that are reconfigured, and they no longer operate as airplane pedals. I disassembled the pedals and screwed the pedals to a board, 16" on center (they come 12" on center, way too close together). The center axis does nothing, and all turning is by pressing the toebrakes. The left pedal generates 'a' and the right generates 'd', with deadzones at the beginning. I'm just using Saitek's software to accomplish this simple version, but will soon be repurposing axes from my Cougar so I may control them via TARGET instread, allowing me to use my scheme outlined in this post. In the meantime though, I'm pretty certain that this is the most user-friendly that a pedal setup can be, and it's really easy/intuitive to use in addition to comfortable even after many hours of matches. Post a coming, but here's a tease shot of my pedal test rig:
Posted Image

*rates below ~65% suffer horrible ratcheting effects and IMO are not useable in-game, although entirely possible to make.

#11 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 24 February 2013 - 11:58 AM

Heh, ok, that would explain what I was seeing, I just did not have the commitment to work it all out - I was able to get somewhat analogue turning going, but the small turns seemed to be, as you say, glitchy.
Also, I was having it pulse the stick not hit keys, but I guess the same may hold true.
Armed with this information, I may well have another stab at it, would love to implement something like this in UJR.
Thanks for the info man.

#12 shotokan5

    Member

  • PipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 550 posts
  • Google+: Link
  • Locationvirginia

Posted 26 February 2013 - 06:11 AM

that is one of the last thingss they will do. The reason is the cryengine itself. You cant put the joystick in until they are almost done. It will be done the question is when?

#13 Kashaar

    Member

  • PipPipPip
  • Overlord
  • Overlord
  • 75 posts

Posted 26 February 2013 - 06:17 AM

View Postshotokan5, on 26 February 2013 - 06:11 AM, said:

that is one of the last thingss they will do. The reason is the cryengine itself. You cant put the joystick in until they are almost done. It will be done the question is when?


Do you have any proof or reasoning for that argument?

#14 evilC

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,298 posts
  • LocationLondon, UK

Posted 26 February 2013 - 07:09 AM

Analogue turning in MWO is a netcode issue, not an input one.
The netcode has no concept of an analogue turn, and as such will need to be rewritten to support analogue turning.

This has been stated by the devs.





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users