Joystick 2 object

Welcome to our brand new Clickteam Community Hub! We hope you will enjoy using the new features, which we will be further expanding in the coming months.

A few features including Passport are unavailable initially whilst we monitor stability of the new platform, we hope to bring these online very soon. Small issues will crop up following the import from our old system, including some message formatting, translation accuracy and other things.

Thank you for your patience whilst we've worked on this and we look forward to more exciting community developments soon!

Clickteam.
  • I'm pretty sure it's already supported. I remember being able to use it, including rumble support.

    My Please login to see this link. (which I actually use), my Please login to see this link. (which I mostly don't use), and my Please login to see this link. (which I don't use anymore pretty much at all really). If there are awards for "'highest number of long forum posts", then I'd have probably won at least 1 by now. XD

  • Everything's supported except the rumble effects (not sure if this is because of the extension or the Xbox 360 controller). The force feedback does work on the Xbox 360 controller.

    The reason I say this is not because I believe you're mistaken but because I find it extremely unlikely that anyone will ever update this object. Someone will hopefully create a successor sooner or later, but there's nothing in development that I'm aware of.

  • Ah, the force feedback works on the Xbox 360 controller but nothing else, got it. That's the controller I've been using to test my games, which is why I thought it supported force feedback still.

    My Please login to see this link. (which I actually use), my Please login to see this link. (which I mostly don't use), and my Please login to see this link. (which I don't use anymore pretty much at all really). If there are awards for "'highest number of long forum posts", then I'd have probably won at least 1 by now. XD

  • No, that isn't at all what I said. Force feedback should work on all controllers (I don't have an F710, for instance, to confirm this belief). Rumble effects will not work on the XBox 360 controller, and I don't know if they'll still work on other controllers.

  • Oh, okay. I guess I completely misunderstood what you said in the other post. I think the part that threw me off was this:

    Quote

    The force feedback does work on the Xbox 360 controller.

    Which implies that force feedback, well, does work on the Xbox 360 controller. I guess you meant to say "doesn't" instead of "does".

    Anyway, sorry for misunderstanding. :(

    My Please login to see this link. (which I actually use), my Please login to see this link. (which I mostly don't use), and my Please login to see this link. (which I don't use anymore pretty much at all really). If there are awards for "'highest number of long forum posts", then I'd have probably won at least 1 by now. XD

  • Again, that isn't what I said or meant. :D I never said that "force feedback works on the Xbox 360 controller but nothing else." Here's a list of what works and what doesn't:


    Force feedback support:
    Xbox controllers
    Logitech controllers
    etc.


    Rumble effect support:
    ?
    Maybe some controllers somewhere?


    I'm realizing where this may be getting confusing. There are two sets of actions in the Joystick 2 object: "Rumble effects" (not supported on Xbox 360 controllers) and "Force feedback" (supported on Xbox 360 controllers and I believe every other controller with motors).

    Sorry for the confusion!

  • AH! Okay, got it. That is rather confusing. Thanks for clarifying! I personally always used force feedback instead of rumble, if I remember correctly, so that would explain things a lot.

    My Please login to see this link. (which I actually use), my Please login to see this link. (which I mostly don't use), and my Please login to see this link. (which I don't use anymore pretty much at all really). If there are awards for "'highest number of long forum posts", then I'd have probably won at least 1 by now. XD

  • I am editing this post because I asked a question about how do we make a difference between the triggers on an xbox 360 wireless controllers but found the response in another thread.

    Snail replied in this thread explaining how the triggers work. It is not an issue with Clickteam but with the XBox 360 wireless controllers drivers.
    Please login to see this link.

    Thanks!

  • Just FYI, I did lot of work once to unify the various outputs of the Joystick 2 object, and coax some extra functionality out of it ( customisable deadzones). I released the result as VACCiNE (in my sig). It makes all major gamepads work out of the box, exactly the same way, and considerably simplifies the process of reading their inputs.

    Please login to see this link.
    My Fusion Tools: Please login to see this link. | Please login to see this link. | Please login to see this link.

  • I was curious about this object, so I did some performance tests. And they weren't great.

    I tested the X-axis data as reported by the following 4 extension objects:

    • Analog Joystick Object
    • Joystick 2 Object
    • XBOX Gamepad Object
    • Gamepad Object

    I created a quick program to test the accuracy of axis data reporting from the device to Clickteam Fusion. I then recorded that data, exported it, and graphed it for visual comparison with the other controller device objects.

    Please login to see this picture.

    Here are my findings:

    Performance: Please login to see this picture.

    Analog Joystick Object:
    Good:

    • Its RAW AXIS data is actually accurate raw data (0 to 65535 max), which is good.
    • No unchangeable hard-coded deadzone.
    • Joysticks respond accurately and timely.
    • Joysticks feel smooth and responsive.


    Bad:

    • Only seems to support 1 joystick. No multiplayer.



    Joypad Object:
    Good:

    • Joystick is exactly as accurate as the Analog Joystick Object. It reports the same exact data in 99.9% of events.


    Bad:

    • Glaring problem: the Joypad Object noticeably reduces an app's framerate down to 14 fps! Even when its in its own blank frame alone. I could not find a way around this at all. Memory leak or something?



    Joystick 2 Object:
    Good:

    • Access to a very high amount of buttons, axes, and joysticks.
    • Seems to be compatible with many different styles of device.
    • Can report all sorts of info on the joystick device.


    Bad:

    • Its RAW AXIS data is not actually RAW data. It seems to make up a number between -1000 and 1000. I'm not sure why, since the "Percent" values also give a value of -100 to 100 (same value range divided by 10). Its not possible to actually get the RAW AXIS data, only these two (nearly identical) interpreted numbers. This massively reduces the available sensitivity of a device. For an extension which gives you access to so much joystick data, it seems strange that you can not actually access the RAW axis values. Especially considering the older Joypad object did have this feature.
    • Seems to have an 8% deadzone hard-coded into the object. Switching past the center-point of a joystick "sticks" a little, and is not smooth. So until the player pushes the stick past 8%, this extension reports as 0%, as shown here:
      Please login to see this picture.
    • This hard-coded deadzone is not calculated as circular. Instead, there is a linear dead-zone for each axis. What this means is that (for example) if you point the joystick at 0 degrees and 100%, and then push it up by 2 degrees, you'll likely still be in the Y-axis' deadzone. This means that the joystick also "sticks" to the 90 degree angles, and doesn't provide a smooth circular rotation. Very bad.
    • In all cases, there seems to be a definite input delay as well. Running an app at 30 fps, the input from a joystick is delayed by 2 whole frames. That's game-breaking for any fast paced game such as a racing, action, or fighting genre. At 60 fps the input delay seemed around 1 to 2 frames still. The lower the frame rate, the more obvious the input delay. At 5 fps, you can actually watch the yellow bar (for joystick 2's X-axis) move in the opposite direction of your physical joystick due to the input lag being so far off. This is also evidenced in the graphs I created comparing the outputs of the various extensions. You can see this input delay very clearly here (the Joystick 2 Object's orange line sends an UP/DOWN signal 2 frames after the other objects):
      Please login to see this picture.
    • It seems that the hard-coded 8% deadzone is "adjusted for" by the extension, which is likely why the joystick distance/percent isn't accurate. At 8%, the Joystick 2 Object outputs "1%" and scales up from there. This is in contrast to the XBOX object's hard-coded deadzone, which just instantly jumps from 0% to 25% with no gradation. Regardless, this objects 8% hard-coded deadzone is still bad, and actually narrows the sensitivity available from a joystick. This was really noticeable on my Flight-stick, which is intentionally designed to be very sensitive for minute movements. You can see the Distance/Percent discrepancy here:
      Please login to see this picture.
    • Not only is there an input delay, but there seems to be "output shelves" on RAW AXIS data. If you look at a lot of the graphs, you'll notice that the other extensions report smooth data every frame, while the Joystick 2 Object often reports the same AXIS data two frames in a row. In effect, this causes jerky movement, as the joystick output data jumps and stalls in roughly 10% intervals. You can see these jerky "shelves" best here:
      Please login to see this picture.
    • Conclusion: The doubling of axis data on multiple game loops (frames) as well as a 2 frame input lag, hard-coded deadzone, and inaccurate joystick distance reporting, kind of makes this object unusable for anything requiring sensitivity or accuracy. At best, you can only get gross movements, which is only suited for non-action games (or games that only use the analog sticks as digital inputs). Add onto that other people reporting Please login to see this link. and I can't say I could recommend this object.


    I don't recall having these problems with this extension in the past, so its possible that the major problem is likely due to Microsoft Updates which made changes to the DirectInput drivers or something, as I know Microsoft is trying to push XINPUT as a replacement to deprecate DIRECTINPUT.


    XBOX Gamepad Object:
    Good:

    • XBOX Gamepad object is the only extension which seems to allow the Left/Right Trigger their own axis values. That's a plus I guess.
    • General setup and use is pretty simple, especially for XBOX style controllers.


    Bad:

    • Does not allow access to actual RAW axis data. Only reports values of -1000 to 1000. (Still manages to report joystick Axis data accurately though, as it matches the percent/sensitivity of the Joypad object and Analog Joystick Object in terms of accuracy.)
    • Seems to be a noticeable 1 frame input delay in joysticks. You can see this on the various graphs. Despite the Axis data being accurate, the XBOX object inputs always lag behind the Joypad Object and Analog Joystick Object. A serious flaw for any action games.
    • Massive glaring flaw: There seems to be a very large 25% hard-coded deadzone in the object. Not only does this make 25% of your joystick range unusable, the XBOX Gamepad object does not even adjust for this. The object will output a huge leap from 0% to 25%, and then gently move from there forward in 1% intervals. This would make any "tip-toeing" or subtle joystick movements impossible., as this data can not be read from the device. See the 25% deadzone here:
      Please login to see this picture.
    • XBOX Gamepad object does not detect flight-sticks, or any NON-XBOX styled controller, at all. From what I understand, this is forced deprecation move from Microsoft to replace DirectInput drivers with XInput (basically making 3rd party devices "legacy"). Boo for monopolies.

    In Conclusion:
    There's some major problems with the way Joystick 2 Object is implemented, which is likely causing lots of problems for players. And the XBOX Gamepad alternative leaves a lot to be desired. The Joypad Object is pretty accurate and good, but literally drags the framerate to the ground.

    There's basically no good way to use a joystick/controller in Fusion right now. :/

    Its possible that I'm the only one experiencing this problem... But I would say that its always good practice to err on the side of "If one person is experiencing a bug, its likely others are too." Not to mention I tested with two different devices, and also don't experience any sort of input lag on any of the other games and software that I use.

    Regardless, I'm curious what other's have noticed. I'm gonna release the performance-test-app that I made to see what other people report.

    You can see some of the other graphs I made at this link:
    Please login to see this link.

    ~ James O.

    Edited 2 times, last by JimJam: added link (April 8, 2018 at 4:18 AM).

  • Great data you provided here! And it unfortunately confirms and illustrates very well the sub-par gamepad support in Fusion. I personally don’t mind the input lag and dead zones, but I’m sure there are players who will.

    Please login to see this link.
    Please login to see this link. | Please login to see this link. | Please login to see this link. | Please login to see this link.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!