Duke4.net Forums: Can you add joystick support to BloodGDX ? - Duke4.net Forums

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Can you add joystick support to BloodGDX ?

User is offline   aybe0 

#1

It would allow us to not have to rely on external mappers such as Pinnacle Game Profiler and so on, and in the meantime we'd get analog movement.

Thank you !
0

User is offline   Zaxx 

  • Banned

#2

Yep, I'd love to see how the game behaves with controller support.
0

User is offline   m210® 

#3

I planning add it, but it's need to include addition library
0

User is offline   Elwood89 

#4

Yes, it would be great with analog support for both walking and aiming.
0

User is offline   aybe0 

#5

View PostM210, on 16 August 2017 - 07:14 PM, said:

I planning add it, but it's need to include addition library


Alright, whatever it takes :thumbsup:

Thanks !
0

#6

I'd just like to throw in my 2 cents, that I would love to see joystick support, in particular for the xbox one/360 controller.
Using this method , I am able to get Bloodgdx working on Steam. I have a steam link on my big screen tv and it would just be a thrill to play Blood using a controller without lugging a keyboard and mouse to the couch.
0

User is offline   J432 

#7

View PostWookiestick, on 18 August 2017 - 10:28 AM, said:

I'd just like to throw in my 2 cents, that I would love to see joystick support...


Me too.
0

User is offline   aybe0 

#8

Bump, it's been more than 6 months and still no joystick support :dukecigar:
0

User is offline   m210® 

#9

I think I will make it soon
0

User is offline   aybe0 

#10

View PostM210, on 26 February 2018 - 12:10 PM, said:

I think I will make it soon



Alright, thank you :dukecigar:
0

User is offline   Devon 

#11

Using a Xbox one controller would be very nice indeed.
0

User is offline   m210® 

#12

Im tested library with chinese dualshock3 controller, but I think it will working with xbox controller too

This post has been edited by M210: 02 March 2018 - 12:42 PM

1

User is offline   aybe0 

#13

@M210

While you're at it, make sure you implement:
  • a deadzone so the game will filter unwanted input from within the deadzone
  • a non-linear response, because it's naturally harder for the thumbs to aim when around that deadzone


The concept and an implementation example I wrote for Quake 1:

https://msdn.microso....aspx#dead_zone

https://github.com/a.../in_win.c#L1203

In my example I show:
  • the implementation of the deadzone
  • a power to N response, this has many benefits : when power is 1.0 then effect is disabled, anything else like a common value of 3.0 greatly improves usage


Make sure you expose both settings in game options so one can configure them at will !

Last thing, not all joystick libraries are equal when it comes to supporting XBox Controller for Windows:

  • old software see triggers as a single axis, resulting in the impossibility to use them
  • either the game will not react to any, or will see one as always pushed
  • in fact, at rest, this axis value is 0.5 (or anything else) instead of 0.0


A picture is going to explain the problem probably much better than me:

  • this is the joystick panel for XB1 controller on Windows 10
  • in fact this returns DirectInput driver, for compatibility issues with older apps (newer apps are recommended to use XInput)


Posted Image

Triggers share Z Axis and you see the problem:

  • you need to know its real value at rest
  • you need to track which trigger is pressed first so that if user presses the other trigger at the same time, you can know it and execute both actions in game


And we will test and report feedback :)

PS if somehow you could also implement vibration that would really rock !

This post has been edited by aybe0: 03 March 2018 - 10:47 AM

0

User is offline   aybe0 

#14

Please disregard my suggestion about tracking triggers when an axis is shared between triggers, it is simply impossible ... I've crafted a small test application to try do this but it turned out it's just impossible as the program has no way to know whether the user has released the trigger or it is the opposite trigger that is modifying the axis value (don't know what I had in mind !) :)

To sum it up, you need a library such as https://github.com/wheerdam/linuxjoy which specifies that XInput is used for Windows platform (this behavior is peculiar to Windows ...).

But my suggestions about deadzone and non-linear response definitely applies as these are a must for any decent joystick support. B)
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options