Ubuntu – How to make Xbox joypad work with Bastion

gamesmono

I have an XBox joypad:

Bus 005 Device 004: ID 045e:0289 Microsoft Corp. Xbox Controller S

When I start Bastion from the terminal the following is output:

Number of joysticks: 1

Number of buttons for joystick: 0 – 10

Number of axes for joystick: 0 – 6

Number of PovHats for joystick: 0 – 1

When I load up the game it displays a message "press any key" and at this point, if I press a button on the joypad it advances to the main menu. However, the up/down/left/right controls do not work and the button will not operate the menu. When I enter the control configuration, the joypad section is disabled and displays a message "joypad not detected." If I enter the control customization and try to reconfigure one of the controls, noises can be heard when pressing joypad buttons, but the input is otherwise ignored.


Further information which may or may not be relevant:

  • My controller is an original Xbox controller, not a 360 controller. XNA games on Windows apparently only work with Xbox360 controllers because they use xinput rather than direct input, see eg here.

  • My controller works (almost) properly with MonoGame trunk samples, but Bastion uses a modified MonoGame and crashes when run against trunk, so I can't add debugging to see where the problem is.

  • Bug can also be reproduced with a Xbox 360 wired controller.

Best Answer

This is fixed in the latest package from the Software Centre.

Related Question