Xbox Controller
This page describes configuring VO to use an Xbox controller as a joypad.
Note that this page was written based on my experience with a Controller-S in Windows XP using the XBCD driver. Users with 3rd party joypads in different OSes using different drivers may find that axis and button IDs differ from what is shown here.
First steps
Get your drivers installed, your controller plugged in and recognised, and login to VO. Hit escape, go to the controller menu, the joystick tab, and check to see if VO detected your joypad.
If it didn't, the rest of this page is useless to you. If it did, you now have a nice new config.ini entry for your controller.
Axis IDs
These are the axis IDs corresponding to the JOYXXX blocks in the first half of the config.ini entry, and to the dropdown menus in the VO joystick config menu.
"No such axis" means that this axis doesn't exist on the Xbox controller, so there's no point in setting any function to them.
RU - No such axis RZ - No such axis RY - right joystick, y axis RX - right joystick, x axis Z - No such axis Y - left joystick, y axis X - left joystick, x axis
Button IDs
These are the button IDs corresponding to the JOYBUTTON numbers in the second half of the config.ini entry.
Though config.ini provides space for up to 23 button configurations per entry, anything above 11 is ignored for the Xbox controller as there are "only" 12 buttons, so there's no point in setting any function to them.
0 - A 1 - B 2 - X 3 - Y 4 - black 5 - white 6 - start 7 - select 8 - left joystick click 9 - right joystick click 10 - left trigger 11 - right trigger
Empty entry
This is an empty config.ini for the Xbox controller.
- Buttons and axes that you can add binds to are marked in bold.
- Nonexistent buttons and axes are crossed out.
It would be nicer to just remove these superfluous bits altogether, but they just get put back automatically if you do. This code block should still be okay to copy/paste, despite all the formatting.
Note that when configuring this, some axes will need to be inverted. However, I'm not sure which controls require inversion on which joysticks, so you'll have to figure that part out for yourself.
[XBCD XBox Gamepad] enabled=1JOYRU=NONE Ruaxisinvert=0 Ruaxiscenter=0 Ruaxismindeadzone=-10 Ruaxisdeadzone=10 Ruaxisminsaturation=-95 Ruaxissaturation=95 JOYRZ=NONE Rzaxisinvert=0 Rzaxiscenter=0 Rzaxismindeadzone=-10 Rzaxisdeadzone=10 Rzaxisminsaturation=-95 Rzaxissaturation=95JOYRY= Ryaxisinvert=0 Ryaxiscenter=0 Ryaxismindeadzone=-10 Ryaxisdeadzone=10 Ryaxisminsaturation=-95 Ryaxissaturation=95 JOYRX= Rxaxisinvert=0 Rxaxiscenter=0 Rxaxismindeadzone=-10 Rxaxisdeadzone=10 Rxaxisminsaturation=-95 Rxaxissaturation=95JOYZ=NONE zaxisinvert=0 zaxiscenter=0 zaxismindeadzone=-10 zaxisdeadzone=10 zaxisminsaturation=-95 zaxissaturation=95JOYY= yaxisinvert=0 yaxiscenter=0 yaxismindeadzone=-10 yaxisdeadzone=10 yaxisminsaturation=-95 yaxissaturation=95 JOYX= xaxisinvert=0 xaxiscenter=0 xaxismindeadzone=-10 xaxisdeadzone=10 xaxisminsaturation=-95 xaxissaturation=95 JOYBUTTON0= JOYBUTTON1= JOYBUTTON2= JOYBUTTON3= JOYBUTTON4= JOYBUTTON5= JOYBUTTON6= JOYBUTTON7= JOYBUTTON8= JOYBUTTON9= JOYBUTTON10= JOYBUTTON11=JOYBUTTON12= JOYBUTTON13= JOYBUTTON14= JOYBUTTON15= JOYBUTTON16= JOYBUTTON17= JOYBUTTON18= JOYBUTTON19= JOYBUTTON20= JOYBUTTON21= JOYBUTTON22= JOYBUTTON23=JOYPOV0UP= JOYPOV0RIGHT= JOYPOV0DOWN= JOYPOV0LEFT=
Sample entry
This is a sample working entry, for instant gratification. It depends on the Variable_zoom_bind and the Turbo_lock_bind. The select button is unmapped, but only because I couldn't think of anything to map to it.
The controls are as follows:
left joystick - vertical and horizontal strafing right joystick - turn and pitch left joystick click - roll left right joystick click - roll right d up - accelerate d down - decelerate d right - toggle flight mode d left - toggle turbo start - brake right trigger - primary weapon left trigger - secondary weapon Y - tertiary weapon X - zoom in B - zoom out A - activate black - target next nearest enemy white - target previous nearest enemy
And here is the entry itself, ready to copy and paste:
[XBCD XBox Gamepad] enabled=1 JOYRU=NONE Ruaxisinvert=0 Ruaxiscenter=0 Ruaxismindeadzone=-10 Ruaxisdeadzone=10 Ruaxisminsaturation=-95 Ruaxissaturation=95 JOYRZ=NONE Rzaxisinvert=0 Rzaxiscenter=0 Rzaxismindeadzone=-10 Rzaxisdeadzone=10 Rzaxisminsaturation=-95 Rzaxissaturation=95 JOYRY=Pitch Ryaxisinvert=1 Ryaxiscenter=0 Ryaxismindeadzone=-10 Ryaxisdeadzone=10 Ryaxisminsaturation=-95 Ryaxissaturation=95 JOYRX=Turn Rxaxisinvert=1 Rxaxiscenter=0 Rxaxismindeadzone=-10 Rxaxisdeadzone=10 Rxaxisminsaturation=-95 Rxaxissaturation=95 JOYZ=NONE zaxisinvert=0 zaxiscenter=0 zaxismindeadzone=-10 zaxisdeadzone=10 zaxisminsaturation=-95 zaxissaturation=95 JOYY=StrafeUD yaxisinvert=1 yaxiscenter=0 yaxismindeadzone=-10 yaxisdeadzone=10 yaxisminsaturation=-95 yaxissaturation=95 JOYX=StrafeLR xaxisinvert=0 xaxiscenter=0 xaxismindeadzone=-10 xaxisdeadzone=10 xaxisminsaturation=-95 xaxissaturation=95 JOYBUTTON0=activate JOYBUTTON1=zoomOut JOYBUTTON2=zoomIn JOYBUTTON3=+Shoot3 JOYBUTTON4=RadarNextNearestEnemy JOYBUTTON5=RadarPrevNearestEnemy JOYBUTTON6=+Brakes JOYBUTTON7= JOYBUTTON8=+RotateCW JOYBUTTON9=+RotateCCW JOYBUTTON10=+Shoot1 JOYBUTTON11=+Shoot2 JOYBUTTON12= JOYBUTTON13= JOYBUTTON14= JOYBUTTON15= JOYBUTTON16= JOYBUTTON17= JOYBUTTON18= JOYBUTTON19= JOYBUTTON20= JOYBUTTON21= JOYBUTTON22= JOYBUTTON23= JOYPOV0UP=+Accelerate JOYPOV0RIGHT=FlyModeToggle JOYPOV0DOWN=+Decelerate JOYPOV0LEFT=ttog
Performance
The learning curve for moving to the Xbox controller from the usual mouse+keyboard combo is quite steep. With flight-assist mode on, it's not too bad. In physics mode, there's something about having to think in full 3D and manage two joysticks at once that kind of overloads your brain.
Be prepared to put in some time flying around your home station, bumping into things and tweaking settings. Moving from FPS controls to flight sim controls makes it feel like a completely different game, which means learning to walk all over again. It's quite fun though, and the extra control and accuracy is well worth the effort, too.
See Also
External Links
- http://www.redcl0ud.com/xbcd.html - XBCD - XBox Controller Driver for Windows 98/2000/XP
- http://www.fury-tech.com/en/Guides/Xbox-Controller-PC-Conversion-Mod - Tutorial on adapting an Xbox controller to standard USB
- http://www.jandaman.com/games.mvc?p=usbxbox&Category_code=XBOX - Premade USB adapter (these are widely available in many online shops, this is just one example, so shop around)