Difference between revisions of "Xbox Controller"

From Vendetta Online Wiki
Jump to: navigation, search
m
 
(10 intermediate revisions by one other user not shown)
Line 1: Line 1:
This page describes using an Xbox controller as a joypad for Vendetta Online.
+
This page describes configuring VO to use an Xbox controller as a joypad.
'''THIS PAGE IS VERY MUCH A WORK IN PROGRESS'''
+
  
== Button Numbers ==
+
Note that this page was written based on my experience with a [http://en.wikipedia.org/wiki/Xbox#Controllers_and_removable_storage Controller-S] in Windows XP using the [http://www.redcl0ud.com/xbcd.html 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.
These are the button numbers corresponding to the ''JOYBUTTON'' numbers in the config.ini entry.
+
0  A
+
1  B
+
2  X
+
3  Y
+
4  black
+
5  white
+
6  start
+
7  select
+
8  left joypad click
+
9  right joypad click
+
10 left trigger
+
11 right trigger
+
  
== config.ini: ==
+
== First steps ==
This is a decent starting config.ini entry for the controller. It's very bare, the intention being for you to try it out and populate it with your personal preferences.
+
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=1
 +
<strike>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</strike>
 +
'''JOYRY='''
 +
Ryaxisinvert=0
 +
Ryaxiscenter=0
 +
Ryaxismindeadzone=-10
 +
Ryaxisdeadzone=10
 +
Ryaxisminsaturation=-95
 +
Ryaxissaturation=95
 +
'''JOYRX='''
 +
Rxaxisinvert=0
 +
Rxaxiscenter=0
 +
Rxaxismindeadzone=-10
 +
Rxaxisdeadzone=10
 +
Rxaxisminsaturation=-95
 +
Rxaxissaturation=95
 +
<strike>JOYZ=NONE
 +
zaxisinvert=0
 +
zaxiscenter=0
 +
zaxismindeadzone=-10
 +
zaxisdeadzone=10
 +
zaxisminsaturation=-95
 +
zaxissaturation=95</strike>
 +
'''JOYY='''
 +
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='''
 +
<strike>JOYBUTTON12=
 +
JOYBUTTON13=
 +
JOYBUTTON14=
 +
JOYBUTTON15=
 +
JOYBUTTON16=
 +
JOYBUTTON17=
 +
JOYBUTTON18=
 +
JOYBUTTON19=
 +
JOYBUTTON20=
 +
JOYBUTTON21=
 +
JOYBUTTON22=
 +
JOYBUTTON23=</strike>
 +
'''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]
 
  [XBCD XBox Gamepad]
 
  enabled=1
 
  enabled=1
Line 28: Line 157:
 
  Ruaxisminsaturation=-95
 
  Ruaxisminsaturation=-95
 
  Ruaxissaturation=95
 
  Ruaxissaturation=95
  JOYRZ=Accel
+
  JOYRZ=NONE
 
  Rzaxisinvert=0
 
  Rzaxisinvert=0
 
  Rzaxiscenter=0
 
  Rzaxiscenter=0
Line 56: Line 185:
 
  zaxisminsaturation=-95
 
  zaxisminsaturation=-95
 
  zaxissaturation=95
 
  zaxissaturation=95
  JOYY=Accel
+
  JOYY=StrafeUD
 
  yaxisinvert=1
 
  yaxisinvert=1
 
  yaxiscenter=0
 
  yaxiscenter=0
Line 70: Line 199:
 
  xaxisminsaturation=-95
 
  xaxisminsaturation=-95
 
  xaxissaturation=95
 
  xaxissaturation=95
  JOYBUTTON0=+Shoot2
+
  JOYBUTTON0=activate
  JOYBUTTON1=+Shoot1
+
  JOYBUTTON1=zoomOut
  JOYBUTTON2=+Shoot3
+
  JOYBUTTON2=zoomIn
  JOYBUTTON3=+Turbo
+
  JOYBUTTON3=+Shoot3
  JOYBUTTON4=
+
  JOYBUTTON4=RadarNextNearestEnemy
  JOYBUTTON5=
+
  JOYBUTTON5=RadarPrevNearestEnemy
  JOYBUTTON6=
+
  JOYBUTTON6=+Brakes
 
  JOYBUTTON7=
 
  JOYBUTTON7=
  JOYBUTTON8=
+
  JOYBUTTON8=+RotateCW
  JOYBUTTON9=
+
  JOYBUTTON9=+RotateCCW
  JOYBUTTON10=
+
  JOYBUTTON10=+Shoot1
  JOYBUTTON11=
+
  JOYBUTTON11=+Shoot2
 
  JOYBUTTON12=
 
  JOYBUTTON12=
 
  JOYBUTTON13=
 
  JOYBUTTON13=
Line 94: Line 223:
 
  JOYBUTTON22=
 
  JOYBUTTON22=
 
  JOYBUTTON23=
 
  JOYBUTTON23=
  JOYPOV0UP=
+
  JOYPOV0UP=+Accelerate
  JOYPOV0RIGHT=
+
  JOYPOV0RIGHT=FlyModeToggle
  JOYPOV0DOWN=
+
  JOYPOV0DOWN=+Decelerate
  JOYPOV0LEFT=
+
  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 ==
 +
* [[Binds]]
 +
 
 +
== External Links ==
 +
* [http://www.redcl0ud.com/xbcd.html 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 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 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)
 +
 
 +
[[Category:Binds]]

Latest revision as of 17:27, 23 June 2007

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=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=
Ryaxisinvert=0
Ryaxiscenter=0
Ryaxismindeadzone=-10
Ryaxisdeadzone=10
Ryaxisminsaturation=-95
Ryaxissaturation=95
JOYRX=
Rxaxisinvert=0
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=
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