Hard Light Productions Forums

Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: DrGamut on September 13, 2007, 01:29:36 pm

Title: XBOX 360 Controller?
Post by: DrGamut on September 13, 2007, 01:29:36 pm
Trying to get SCP to work with an XBOX 360 Controller. Tried both Microsoft's XInput driver and the XBCD-360 driver.

Problem is the right analog and trigger axes.

XInput: The trigger axis works, but the left trigger accelerates and the right trigger decelerates, I would have preferred it the other way around. XBCD-360: I can swap the triggers but then the axis isn't detected properly in Freespace at all. (It sees the rY axis instead of whatever axis I set it to in XBCD).

XInput: The right analog's axes are switched around. The Y axis on the right analog is detected as X, and the X axis is detected as Y. I wanted to use the right analog for banking in freespace, but it only works with the "rX" axis, which is actually the Y axis. Moving the analog up and down instead of left and right to bank is not desirable.
XBCD-360: The right analog's axes are detected as rX and rZ, and don't seem to work at all.

Anything I can do? Anyone successfully using XBOX 360 Controller with Freespace?
Title: Re: XBOX 360 Controller?
Post by: Nuke on September 13, 2007, 01:41:49 pm
you know you can remap the controls in the game from the options menu :D
Title: Re: XBOX 360 Controller?
Post by: Jeff Vader on September 13, 2007, 01:49:21 pm
Either do that or just forget about the whole controller. Real men play with laptop keyboards.

Despite that,

:welcomegreen:
Title: Re: XBOX 360 Controller?
Post by: Tolwyn on September 13, 2007, 02:21:29 pm
worked fine for me (used it on holiday with my subnotebook)
Title: Re: XBOX 360 Controller?
Post by: DrGamut on September 13, 2007, 05:32:49 pm
you know you can remap the controls in the game from the options menu :D

Yes...that's what I was trying to do. When you input with the gamepad the options menu detects the wrong axes.
Title: Re: XBOX 360 Controller?
Post by: Turey on September 13, 2007, 07:31:38 pm
you know you can remap the controls in the game from the options menu :D

Yes...that's what I was trying to do. When you input with the gamepad the options menu detects the wrong axes.

Does it matter what they're detected as as long as they control the right options?
Title: Re: XBOX 360 Controller?
Post by: DrGamut on September 13, 2007, 07:40:16 pm
Does it matter what they're detected as as long as they control the right options?

It wouldn't, if they did, but they don't. Some axes work and others don't. For example, the up and down axis on the right analog works but the left and right axis doesn't (the latter axis' input is ignored completely ingame regardless of how I configured it in the options). With these drivers and this game it does not seem possible to get the desirable control configuration.
Title: Re: XBOX 360 Controller?
Post by: Nuke on September 13, 2007, 09:22:24 pm
first off to eliminate hardware or driver problems, go to the game controllers control panel and check that all your axes work there. tf they dont then freespace isnt causing the problem, and its a driver/hardware thing. but if but if everything works in the panel, try creating a new pilot file and seeing if you can map the controls properly. i recently corrupted my pilot file and noticed that my controls were botched even when i cloned the pilot (which is how i usually get around the problem of pilot file corruption while testing mods under head builds, sence all i really care about is my control mappings). also make sure youve got an up to date launcher and that your stick is selected properly in the launcher.

you could also try remapping the controller to a virtual controler using ppjoyjoy (a control mixer which comes with ppjoy). it has a limitation of i think 8 axes and 16 buttons. but its usefull for combining multiple sticks into one, but its just as usefull for when a game fails to recognize your controller.
Title: Re: XBOX 360 Controller?
Post by: DrGamut on September 14, 2007, 08:49:33 am
first off to eliminate hardware or driver problems, go to the game controllers control panel and check that all your axes work there. tf they dont then freespace isnt causing the problem, and its a driver/hardware thing. but if but if everything works in the panel, try creating a new pilot file and seeing if you can map the controls properly. i recently corrupted my pilot file and noticed that my controls were botched even when i cloned the pilot (which is how i usually get around the problem of pilot file corruption while testing mods under head builds, sence all i really care about is my control mappings). also make sure youve got an up to date launcher and that your stick is selected properly in the launcher.

you could also try remapping the controller to a virtual controler using ppjoyjoy (a control mixer which comes with ppjoy). it has a limitation of i think 8 axes and 16 buttons. but its usefull for combining multiple sticks into one, but its just as usefull for when a game fails to recognize your controller.

All axes work in the control panel. I made a new pilot file, it didn't make a difference.

I'll look into the ppjoy option.

EDIT: I can't seem to get ppjoy to work with my usb gamepad. I can add a "virtual joystick" but when I go to map axes and stuff, I click scan and send input from the gamepad but it doesn't pick up anything. Isn't this supposed to be for parallel port devices?
Title: Re: XBOX 360 Controller?
Post by: Nuke on September 14, 2007, 03:39:14 pm
well dont create any mappings, clear them and instal a fresh instance of the virtual driver, when it asks you to define the mappings just set the number of axes,buttons,and hats and next your way out of it. the mappings are usually for when youre making an adapter dongle for the parallel or serial port.

theres a utility called ppjoyjoy, which you have to run in the background. i dont think it comes with the usual install of ppjoy so ive attached it, its only 80k. all the dropdown boxes represent a button or axis on the virtual controler. select a control from any real controller on the system to use in each and you can save an ini file. now while its running it will send data to the virtual control driver and will tell it all athe axis and button positions are. be sure to set the virtiual joystick as your primary device in the launcher (you might also have to set it as youre perfered device in the game controlers cp).

[attachment deleted by admin]