You are not logged in.

#1 2017-02-23 22:50:22

scindix
Member
From: Germany
Registered: 2013-05-07
Posts: 48
Website

Simulate a controller (e.g. via keyboard)

Is there a way to simulate multiple controllers?

I need to test if the performance of a game is good enough on my PC when it is played by four players. Unfortunately in order to do this I need four controllers (XBox or Steam) and I only have one (Steam).
Is there a way to emulate four controllers? I need to press a few buttons like the start button. And it would be best if I could control them via keyboard.

Thanks in advance,
Scindix

Offline

#2 2017-02-23 23:35:08

scindix
Member
From: Germany
Registered: 2013-05-07
Posts: 48
Website

Re: Simulate a controller (e.g. via keyboard)

Another way that may be acceptable is to duplicate the input of the controller three times. As I just want to test how well that works it would be ok if all four controllers that the game sees produce the exact same output.
But I don't know if and how that's doable.

Offline

#3 2017-02-23 23:49:07

Slithery
Administrator
From: Norfolk, UK
Registered: 2013-12-01
Posts: 5,776

Re: Simulate a controller (e.g. via keyboard)

No idea if this would work or not but you could try just creating extra symlinks in /dev/ that point to your current controller.


No, it didn't "fix" anything. It just shifted the brokeness one space to the right. - jasonwryan
Closing -- for deletion; Banning -- for muppetry. - jasonwryan

aur - dotfiles

Offline

#4 2017-02-24 10:18:10

scindix
Member
From: Germany
Registered: 2013-05-07
Posts: 48
Website

Re: Simulate a controller (e.g. via keyboard)

I tried to add a symlink named /dev/input/js1 pointing to /dev/input/js0, but to no avail. The game only sees one Steam Controller.
I tested that /dev/input/js0 is the correct device by using "cat /dev/input/js0", moving the joystick and pressing some buttons and it seems to be the correct one.
Maybe I have to symlink other file descriptors like the usb device as well. I will investigate this further when I'm have more time. But it seems that this is not as easy as I thought it would be.

Offline

#5 2017-02-24 11:00:40

Awebb
Member
Registered: 2010-05-06
Posts: 6,275

Re: Simulate a controller (e.g. via keyboard)

You should have mentioned "Steam Controller" in your initial post, it's a weird beast. How do you handle the controller? Through Steam? If so, no js symlink will help, because Steam is likely to switch to internal input libraries in different scenarios.

Offline

#6 2017-02-24 11:28:12

scindix
Member
From: Germany
Registered: 2013-05-07
Posts: 48
Website

Re: Simulate a controller (e.g. via keyboard)

You should have mentioned "Steam Controller" in your initial post

I did:

Unfortunately in order to do this I need four controllers (XBox or Steam) and I only have one (Steam).

But I admit that I could have made it clearer. Also the game I'm referring to is Rocket League, btw.
Yes, I'm currently using it through Steam. I haven't tried it via sc-xbox.py yet though. Maybe worth a try. I will report back on that.

Offline

#7 2017-02-24 11:53:33

progandy
Member
Registered: 2012-05-17
Posts: 5,184

Re: Simulate a controller (e.g. via keyboard)

You could try to use the evdev mapping of xboxdrv. If you have problems, borrow any three gamepads and map these.
https://wiki.archlinux.org/index.php/Ga … ontrollers


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

Board footer

Powered by FluxBB