Jump to content

U J R - Universal Joystick Remapper - Any Stick With Mwo Via Virtual Joysticks


117 replies to this topic

#81 evilC

    Member

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

Posted 28 December 2013 - 06:34 AM

That sounds pretty messed up Loc.
The only issue I have with TS3 is that joystick PTT is quirky - it sees button down events but not button up events sometimes, locking my transmit on.
I have to use a macro to make the PTT button on my stick (A joypad on the floor I hit with my foot) operate a key combination, and all works OK.

However, it is also worth noting that I myself have been seeing some similar weirdness also lately.
I have a G13 gameboard, and have been having cutouts on USB power. I also see lights in room dim, so I guess the power here is not so great. When it happens, my G13 disconnects, then gets put in the default profile, and suddenly all my controls go wrong. Luckily I can manually select the MWO profile using the controls on the G13, but still, it is highly annoying.

Whatever, my suggestion would be to look into that area - your PSU may be struggling (They droop with age) or you may need a mini-UPS or something to smooth your power supply.

Regarding vJoy, yeah, Shaul has been sending me test versions also. I do not see a new packaged version posted up yet, but I guess it is coming shortly.

Thankyou to everyone who contributed - I think requiring Test Mode was putting a lot of potential users off, so with that barrier removed hopefully UJR should be able to realize it's full potential.
It's amazing to think that what began as an app to fix various issues with MWO joystick support is now used by thousands of people (over 1,500 uses of the latest version this month) with a wide variety of games.
With a signed driver, I hope this figure can rise significantly :D

#82 Hammerhai

    Member

  • PipPipPipPipPipPipPip
  • Bad Company
  • Bad Company
  • 998 posts

Posted 03 January 2014 - 03:03 AM

Congratulations on that achievement, evil. Not to be sneezed at for what started as a hack of sorts. and great that all the ppl contributed to the signing fund. Sadly, I missed the announcement until now

#83 evilC

    Member

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

Posted 03 January 2014 - 03:07 AM

Still one last chance, we are $20 short!

#84 Hammerhai

    Member

  • PipPipPipPipPipPipPip
  • Bad Company
  • Bad Company
  • 998 posts

Posted 03 January 2014 - 03:10 AM

Gotcha.

#85 Hammerhai

    Member

  • PipPipPipPipPipPipPip
  • Bad Company
  • Bad Company
  • 998 posts

Posted 03 January 2014 - 03:20 AM

There we go. Donated 25$ just in case. Instruction is to have a beer with the difference <grin>

#86 evilC

    Member

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

Posted 03 January 2014 - 04:53 PM

Awesome Hammer, we hit the target and the signed version of vJoy has been released.
Enjoy!

#87 Loc Nar

    Member

  • PipPipPipPipPipPipPipPip
  • 1,132 posts

Posted 25 January 2014 - 11:02 AM

View PostLoc Nar, on 27 December 2013 - 04:12 PM, said:

Great news, gonna give it another go now. Hopefully ditching Saitek's SST will make my USB's stop catching full blown a i d s as soon as I add Ts3 to the mix >_>

I'm suspect of SST because my problem always begins with my rudder pedals glitching, leaving me in a constant turn until I unplug them. Then all my USB's go out and ts3 proceeds to spam uncontrolled (digitally generated) beeps like some kind of robotic Tourettes fit into the channel till I literally pull the plug on my whole computer.

It disables all interface ability (no mouseclicks even if mouse x/y works, no enter button, no way to affect/pull up menus...). It's beyond annoying, and if anyone has any similar experiences or insight I'd love to hear about it. In the meantime I'm giving this another go since I've long wanted to use merged axes on my pedals but have never bothered to really do it.



Just doing a followup to the post above. My problem with TS was indeed from Saitek SST causing some kind of conflict with the drivers. I got UJR/vjoy now running my pedals as an analog merged axis instead of 'a'/'d' and it works quite well. Getting rid of SST solved my ts issue (now if I can only figure out why it's borking my ptt sometimes), and using the pedals analog is rather nice, but now the limitations of Combat Pro pedals' toebrake mechanism is obvious (pots only use 2/3 the available mechanical travel, which is already small to begin with..) but that's another story, and one with mechanical solutions.

#88 evilC

    Member

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

Posted 25 January 2014 - 06:11 PM

View PostLoc Nar, on 25 January 2014 - 11:02 AM, said:

now if I can only figure out why it's borking my ptt sometimes

You using a joystick button for PTT?
It's locking on sometimes right?

It is a bug with TeamSpeak. It misses button up events for sticks.
My solution is to use an AHK macro to remap the joystick button to a key (Use a non-printable character ideally- Media_Play_Pause is a good one.)
Then in TS:
In the Options window, in the Hotkeys section:
At the bottom right is an dropdown - you must set it to "Keyboard and mouse Only".

Hope this helps.

edit: so, in AHK:

For stick 2, button 15:

~*2Joy15::
   Send {Media_Play_Pause down}
   return
 
~*2Joy15 up::
   Send {Media_Play_Pause up}
   return

Edited by evilC, 25 January 2014 - 06:14 PM.


#89 Loc Nar

    Member

  • PipPipPipPipPipPipPipPip
  • 1,132 posts

Posted 25 January 2014 - 08:20 PM

View PostevilC, on 25 January 2014 - 06:11 PM, said:

You using a joystick button for PTT?
It's locking on sometimes right?

It is a bug with TeamSpeak. It misses button up events for sticks.
My solution is to use an AHK macro to remap the joystick button to a key (Use a non-printable character ideally- Media_Play_Pause is a good one.)
Then in TS:
In the Options window, in the Hotkeys section:
At the bottom right is an dropdown - you must set it to "Keyboard and mouse Only".

Hope this helps.

edit: so, in AHK:

For stick 2, button 15:

~*2Joy15::
   Send {Media_Play_Pause down}
   return
 
~*2Joy15 up::
   Send {Media_Play_Pause up}
   return



Heh, Thanks evil, I was going to edit my post to explain why this is very unlikely to be the issue preemptively since on the surface it sounds like the same thing. All my HOTAS buttons produce emulated keyboard keyboard events already however. For my PTT I have chosen the letter 'm' (Mic!). TS recognizes the command and is fully functional (not getting stuck on/off) when I'm just testing it in their GUI without any problems, and it also operates the same whether I am using my actual keyboard or pushing my joy button that generates an 'm'.

I had it working fine the other night for hours, but some parameter reset or broke the next time I restarted TS and I've not been able to reestablish. It's definitely PTT related though, cause auto-detect works. I've run TS as admin and this does not affect it. I've uninstalled and reinstalled, and just 5min ago updated to latest version.

For the sake of eliminating variables, I had already tested eliminating my HOTAS altogether as well though, just in case it was some artifact of TARGET emulation or the stick itself butTS treats native keyboard inputs no differently than the emulated ones.

I just checked the 'activate microphone automatically' and box and my setup works fine on NGNG ts server, but not on comstar/starleage or any ohers I've tried.

#90 Dagg

    Rookie

  • 5 posts
  • LocationFlorida

Posted 28 February 2014 - 03:58 AM

does this support windows 8.1 64 bit ?

#91 evilC

    Member

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

Posted 28 February 2014 - 06:49 AM

View PostDagg, on 28 February 2014 - 03:58 AM, said:

does this support windows 8.1 64 bit ?

In theory, yes.
However, I have heard some reports on the vJoy forum that vjoy behaves strangely under win 8.1 (Only virtual stick 15 and above work?)

#92 Monkeystador

    Member

  • PipPipPipPipPipPip
  • 398 posts

Posted 14 March 2014 - 07:02 AM

Sorry to hijack this but ... anyone know if i can map the Razr Hydra Analog Sticks with this onto vJOY?

#93 evilC

    Member

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

Posted 14 March 2014 - 05:03 PM

If the sticks show up under windows game controllers, then it should work with vjoy and UJR.
So yes, if the hydra was capable of emulating a normal joystick then you can use UJR to tweak with the sensitvity, invert etc.
If UJR works, but does not meet your needs, it should be relatively simple to write an AHK macro to do what you want.

#94 OnLashoc

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,094 posts
  • Google+: Link
  • LocationColumbus, OH

Posted 08 June 2014 - 08:29 AM

I can't even get this program to run correctly.

I extracted to desktop and kept all files and folder structures exactly like the ZIP file and it just repeatedly pops up [VJoy_DeviceErr] Device1 is not ready.

At the top it says Not Available - Add more virtual sticks using the vJoy config app.

Where is this config app?

This is very confusing, I thought ok keep the file structure intact like it is in the ZIP, launch the .exe and I'd be good to go lol.

My gamepad shows in devices and printers, etc. and I am about to calibrate and such, but some reason vJoy shows it as not ready according to this pesky pop up.

Edited by OnLashoc, 08 June 2014 - 08:32 AM.


#95 evilC

    Member

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

Posted 08 June 2014 - 10:25 AM

From the readme.txt that came with UJR:

Installation Instructions:

1) Install vJoy 2.x
http://sourceforge.n...les/Beta%202.x/
Note, if you had UJR 1.x installed, you will need to remove vJoy 1.x and install vJoy 2.x
You will need to reboot to enter Test Mode, then vJoy will install before windows comes back up fully.

OK, so the link is a little out of date - the correct link to use is http://vjoystick.sourceforge.net/
This will be corrected in the next version of UJR.

Edited by evilC, 08 June 2014 - 10:25 AM.


#96 OnLashoc

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,094 posts
  • Google+: Link
  • LocationColumbus, OH

Posted 08 June 2014 - 12:43 PM

Ok so the link you provided installed something completely different from the screenshots here: http://evilc.com/joo...eys-for-dummies

Once I ran the program you linked to me, now the original program here: http://evilc.com/joo...ystick-remapper

Works and recognizes my gamepad...

Now, trying to follow the instructions on the site and believing I have everything needed to make it work, how do I program my two back buttons to work as an Axis so I can torso twist Left and Right?

You can see my gamepad here: http://mwomercs.com/...ad-torso-twist/

In the drop down options for the individual buttons on the main application it allows me to re-assign to different buttons, but doesn't allow me to assign to axis...... *confused*

#97 evilC

    Member

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

Posted 09 June 2014 - 06:16 AM

Unfortunately UJR does not currently support remapping a button to an axis.

Technically, this is not a difficult problem to solve - it is more an issue of working such an option into the UI.

Not to try and shift responsibility anywhere else, but I feel that I should make you aware of some facts:

1) Using a stick for aiming in MWO is almost pointless. You WILL relegate yourself to the lower Elos by doing this. If you have any aspirations at all of playing MWO even vaguely competitively, abandon stick as an aiming device in favor of mouse. At some point this may change (if PGI add an "Absolute" / "Zero-order" mode for sticks), but this mode would only be useful if you used a stick with a large "throw" (range of movement) - it would be way too inaccurate with the tiny analog sticks on a joypad.

2) Having throttle and leg turning on one analog stick is not gonna work in my experience. You get "bleed-through" - ie it is nigh on impossible to apply input to one axis (eg change speed) without unintentionally applying input to the other axis (eg turning).

3) Game controller analog sticks have a circular "throw" (range of joystick motion), whereas normal PC joysticks have a square throw. So if you use an analog stick for speed and turning, it is impossible to turn AT ALL at full speed, and it is impossible to apply speed changes AT ALL when at full turn. To see what I mean, open the Game Controllers window and preview the output of the joypad. Notice that it is impossible to get the + into any of the corners.
This can be somewhat mitigated using my pad throttle script which warps the input to provide a full range of motion.

#98 OnLashoc

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,094 posts
  • Google+: Link
  • LocationColumbus, OH

Posted 09 June 2014 - 08:39 AM

I understand that argument, however this is about "comfort". As this is no longer 1998 and I am now in my mid 30's, after playing so many games with keyboard and mouse, my hands start to hurt.

In mechwarrior 4 it was never a problem because I used this very same gameplay against mouse and keyboard users and I did pretty damn good. MWO I have never been able to use this gamepad because their joystick / gamepad support was lacking. Now at this stage, it's become bothersome to play for more than a few games.

So I plugged my gamepad in, but I just need to map the torso twist to the back two buttons for left and right. As to the bleed through, I am able view your program to disable the up and down axis, and even lower the sensitivity to the up and down axis (think its pitch, don't quote me im at work and typing this from my phone).

So thanks for the explanation, however I would love to have this capability as I feel I would still do at least as good as I do mouse and keyboard, and not have to suffer while doing so (as I said 13 years playing MWO vs kb & mouse users).

Onnie

#99 evilC

    Member

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

Posted 09 June 2014 - 09:21 AM

I have been playing games for the best part of 25 years myself and know where you are coming from with the wrist issues, but most of that can be mitigated by a good seating position (Many people sit way too low at their desks).

I also played all the previous MW series, and used stick in the past, but MWO is a different beast entirely.
If you are going to use stick for aiming, at least get yourself a full sized stick, ideally with throttle and rudder rocker - joypad really is the worst option of all for MWO.

In order to have your buttons operate as axes, you could probably make quite a simple edit to Pad Throttle to do that for you.

This code will probably work (See here to see line numbers)

Insert this code near the start (About line 22) and edit as desired
axis_list_vjoy := Array("X","Y","Z","RX","RY","RZ","SL0","SL1")
button_axis := 3 ; Set which axis number you wish to use for turning here
left_button := 6 ; Set to button # you wish to use for turning
right_button := 7


Insert this code near the end of the loop, just before the sleep command on line 163
if (GetKeyState(JoyID "Joy" left_button)){
; Left button pressed
val := 0
} else if (GetKeyState(JoyID "Joy" right_button)){
; Right button pressed
val := 32767
} else {
; no button pressed
val := 16384
}
 
ax := axist_list_vjoy[button_axis]
VJoy_SetAxis(val, vjoy_id,  HID_USAGE_%ax%)


Add this code right at the very end before the last return statement, so you can hit CTRL-ALT-B to bind the turn axis in game.


; Waggle turn axis for game binding
*~^!b::
soundbeep
ax := axist_list_vjoy[button_axis]
VJoy_SetAxis(1500, vjoy_id, HID_USAGE_%ax%)
sleep, 50
return



Let me know if it works (I did not test the code), I spose I could probably add this functionality to the project.

Edited by evilC, 09 June 2014 - 09:24 AM.


#100 OnLashoc

    Member

  • PipPipPipPipPipPipPipPip
  • Legendary Founder
  • Legendary Founder
  • 1,094 posts
  • Google+: Link
  • LocationColumbus, OH

Posted 09 June 2014 - 02:05 PM

Thank you, I just got home, will try it out asap and will let you know!





6 user(s) are reading this topic

0 members, 6 guests, 0 anonymous users