Jump to content
Sign in to follow this  
sbsmac

"Schemes" - err, what ?

Recommended Posts

You can map a scheme to a controller by going to Options > Controls > Controller > Customize > Schemes, selecting the desired scheme and pressing 'Map'.

I'm sure this all makes perfect sense if you've been in on the development but I'm afraid it's very unclear what this is for ! :-) Despite presssing 'map' a few times, none of my sensitivity settings changed. Do the schemes control the axis<->action mapping ? And why would my Saitek X52 offer me "TrackIR" as a suitable scheme ?

Yours, confused....

mac

Share this post


Link to post
Share on other sites

== Revision 83450 ==

-Love the new look instruments!

-It's great to have the small GPS back but the elements don't line up. Moving map is partially outside GPS surround graphic? No doubt a temporary problem?

-Like the rest - don't understand the schemes - do we have to use that SaveJoysticks command in a radio trigger?

** Use script command 'SaveJoysticks' to store user-made controller schemes to joysticks.cfg (same folder as the user profile)

Share this post


Link to post
Share on other sites

Schemes are a way of quickly mapping controls to specific types of controllers. The goal is to have people with e.g. a X52 Saitek playing the game as quickly as possible, without needing to map 4 cyclic, 2 collective, 2 pedal, etc. controls manually.

Step #1: we've provided several generic schemes. If you have a separate throttle / collective device and map the corresponding scheme to it, it should map analogue collective controls to it.

#2: we intend to include many more schemes for specific devices. This should cover a large part of the controller market. Players with the X52 simply select the X52 scheme and will have nice defaults mapped (including secondary controls, like throttles or auto-hover).

#3: we're looking at allowing mapping of schemes to all devices in one go, from the Controls options.

#4: user-made schemes can be shared (saveJoysticks currently; a button later).

Share this post


Link to post
Share on other sites
Schemes are a way of quickly mapping controls to specific types of controllers.

Thanks for the explanation - so basically applying a scheme just maps a set of axes to controls. In that case the current placement in the UI is a little confusing since up to now the "Controllers" section is where you have gone to set up sensitivity. I'd suggest moving the scheme system higher in the UI heirarchy since a scheme should logically be applied before starting to tweak individual control assignments.

I'd also suggest that schemes should include sensitivity settings so that different controllers operate sensibly by default.

Share this post


Link to post
Share on other sites

Here is my joystick.cfg (Logitech Wingman Force USB, CH PRO PEDALS USB, and for some reason TrackIR which I don't even use):

My sensitivities are around the middle mark.

#define TRACKIR    0x00080000 //! trackir
#define STICK      0x00020000 //! stick button
#define STICK_AXIS 0x00030000 //! stick axis
#define STICK_POV  0x00040000 //! stick pov switch
#define AXIS_POS  0
#define AXIS_NEG  8
#define AXIS_X    0
#define AXIS_Y    1
#define AXIS_Z    2
#define AXIS_RX   3
#define AXIS_RY   4
#define AXIS_RZ   5
#define AXIS_SLD1 6
#define AXIS_SLD2 7

class Joysticks
{
 class Joystick1
 {
   name = "Logitech WingMan Force USB";
   class ActionsMapping
   {
     keyToggleWeapons[] = {STICK+2};
     keyDefaultAction[] = {STICK+0};
     keyLockTargets[] = {STICK+1};
     keyPrevAction[] = {STICK+6};
     keyNextAction[] = {STICK+7};
     keyAction[] = {STICK+8};
     keyActionContext[] = {STICK+8};
     keyZoomIn[] = {STICK+3};
     keyLookLeftDown[] = {STICK_POV+5};
     keyLookDown[] = {STICK_POV+4};
     keyLookRightDown[] = {STICK_POV+3};
     keyLookLeft[] = {STICK_POV+6};
     keyLookCenter[] = {STICK+1};
     keyLookRight[] = {STICK_POV+2};
     keyLookLeftUp[] = {STICK_POV+7};
     keyLookUp[] = {STICK_POV+0};
     keyLookRightUp[] = {STICK_POV+1};
     keyAirBankLeft[] = {STICK_AXIS+AXIS_NEG+AXIS_X};
     keyAirBankRight[] = {STICK_AXIS+AXIS_X};
     keyHeliForward[] = {STICK_AXIS+AXIS_NEG+AXIS_Y};
     keyHeliBack[] = {STICK_AXIS+AXIS_Y};
     keyHeliCyclicForward[] = {STICK_AXIS+AXIS_NEG+AXIS_Y};
     keyHeliCyclicBack[] = {STICK_AXIS+AXIS_Y};
     keyHeliCyclicLeft[] = {STICK_AXIS+AXIS_NEG+AXIS_X};
     keyHeliCyclicRight[] = {STICK_AXIS+AXIS_X};
     keyHeliCollectiveRaiseCont[] = {STICK_AXIS+AXIS_NEG+AXIS_SLD1};
     keyHeliCollectiveLowerCont[] = {STICK_AXIS+AXIS_SLD1};
     keySeagullUp[] = {STICK_AXIS+AXIS_Y};
     keySeagullDown[] = {STICK_AXIS+AXIS_NEG+AXIS_Y};
     keyCarLeft[] = {STICK_AXIS+AXIS_NEG+AXIS_X};
     keyCarRight[] = {STICK_AXIS+AXIS_NEG+AXIS_Y};
     keyCarForward[] = {STICK_AXIS+AXIS_Y};
     keyCarBack[] = {STICK_AXIS+AXIS_Y};
     keyHelicopterTrimOn[] = {STICK+4};
     keyHelicopterTrimOff[] = {STICK+5};
   };
 };
 class Joystick2
 {
   name = "CH PRO PEDALS USB ";
   class ActionsMapping
   {
     keyHeliRudderLeft[] = {STICK_AXIS+AXIS_NEG+AXIS_Z};
     keyHeliRudderRight[] = {STICK_AXIS+AXIS_Z};
   };
 };
 class Joystick3
 {
   name = "TrackIR";
   class ActionsMapping
   {
     keyLeanLeft[] = {TRACKIR+3};
     keyLeanRight[] = {TRACKIR+9};
     keyZoomContIn[] = {TRACKIR+11};
     keyZoomContOut[] = {TRACKIR+5};
     keyLookLeftCont[] = {TRACKIR+1};
     keyLookRightCont[] = {TRACKIR+7};
     keyLookDownCont[] = {TRACKIR+0};
     keyLookUpCont[] = {TRACKIR+6};
     keyLookShiftLeftCont[] = {TRACKIR+3};
     keyLookShiftRightCont[] = {TRACKIR+9};
     keyLookShiftUpCont[] = {TRACKIR+4};
     keyLookShiftForwardCont[] = {TRACKIR+11};
     keyLookRollLeftCont[] = {TRACKIR+2};
     keyLookRollRightCont[] = {TRACKIR+8};
   };
 };
};

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×