Controller Support

General Enclave discussion

Controller Support

Postby Amran » Thu May 28, 2015 8:43 pm

Enclave can be played using a controller using one of two methods. I would recommend the first option of the two, as it results in the smoothest experience when setting up and playing the game.

The following are suggested controls that are largely based on the original console version of Enclave. Small changes have been made to improve play, or compensate for button layout differences.

    Move - Left Stick
    Look - Right Stick
    Crouch - Left Stick Button
    Jump - Right Stick Button (Also set to the A Button.)

    Attack - Right Trigger
    Attack2 / Use Item - Left Trigger (Also set to the B Button.)

    Change Item - DPad Left/Right
    Change Weapon - DPad Up/Down (Also set to the Left/Right Shoulder Buttons.)
    Change Camera - X Button
    Drink Potion - Y Button

    Open Menu - Start Button

Option 1: External Tools

Tools such as Xpadder or an input wrapper can be used to capture controller inputs for any game, including Enclave. This is currently the more flexible of the methods, and a preset Xpadder config file for Enclave's default controls is available below. (This preset file follows the above recommended control settings.)

Xpadder Config File


Option 2: Config Files

Enclave has functioning controller support, but it has been disabled in the PC release of the game. This can be enabled and modified using the below steps, although there may be issues with certain controllers. (e.g. Triggers and the DPad on a Xbox 360 controller will not function as individual buttons, and the controller will not work for navigating the game menus.)

  • Either replace the controller binds at the top of the Config.mpp file (found in the main Enclave directory), or create a new .mpp file with your bindings. Below is a config that can be used and tweaked further as desired. (Note - Rather than being bound to the Left Trigger, attack2 is instead bound to both the Left Shoulder Button and the B Button.)

    Code: Select all

    void main()
    {
       // -------------------------------------------------------------------
       // Xbox 360 Controller
       // -------------------------------------------------------------------

       // "bind"
       // "bind2"
       // "bindrep"

       // "joy0_axis00" (A Button)
       // "joy0_axis01" (B Button)
       // "joy0_axis02" (X Button)
       // "joy0_axis03" (Y Button)

       // "joy0_axis04" (Left Shoulder Button)
       // "joy0_axis05" (Right Shoulder Button)

       // "joy0_axis06" (Back Button)
       // "joy0_axis07" (Start Button)

       // "joy0_axis08" (Left Stick click)
       // "joy0_axis09" (Right Stick click)

       // "joy0_axis0c" (Left Stick)
       // "joy0_axis0d" (Right Stick)
       // "joy0_axis0e" (Triggers)
       // "joy0_axis0f" (DPad)

       bindrep "joy0_axis0c", "moveright arg1 / 128.0; moveforward (-arg0) / 128.0"; //Move with Left Stick
       bindrep "joy0_axis0d", "lookvelocity0 arg1*0.2, arg0*0.04"; //Look with Right Stick (modify arg1 and arg0 to change horizontal and vertical sensitivity)
       bind2 "joy0_axis08", "press crouch", "release crouch"; //Crouch by pressing Left Stick
       bind2 "joy0_axis09", "moveup 1; press jump", "moveup 0; release jump"; //Jump by pressing Right Stick
       bind2 "joy0_axis00", "moveup 1; press jump", "moveup 0; release jump"; //Jump by pressing A Button

       bindrep "joy0_axis0e", "int a0 = arg0/255.0; if(a0) { press attack } else { release attack }"; //Attack by pressing either Trigger
       bind2 "joy0_axis04", "press attack2", "release attack2"; //Second attack or use item by pressing Left Shoulder Button
       bind2 "joy0_axis01", "press attack2", "release attack2"; //Second attack or use item by pressing B Button

       bind "joy0_axis0f", "int a0 = arg0/255.0; if(a0) { cmd nextitem } int a1 = arg1/255.1; if(a1) { cmd nextweapon }"; //Horizontal DPad changes item, vertical DPad changes weapon
       //bind "joy0_axis04", "cmd prevweapon"; //Previous weapon by pressing Left Shoulder Button
       //bind "joy0_axis05", "cmd nextweapon"; //Next weapon by pressing Right Shoulder Button
       bind "joy0_axis02", "cyclecameramode 0, 1"; //Switch between third and first person by pressing X Button
       bind "joy0_axis03", "activateitem \"0x106\""; //Use potion by pressing Y Button

       bind "joy0_axis07", "releaseall; cl_opengamemenu"; //Open menu with Start Button
    }


  • Open Options.cfg and modify or add the line 'CONFIG=Config.mpp' (without the quotes). The name Config can refer to any file where your specified controller bindings exist, eg DevConfig.mpp, or ControllerXbox.mpp.

  • Voodooman also suggested setting 'CONTROLLER_TYPE=' to 2 in Options.cfg as well, although I'm currently uncertain what this effects.
User avatar
Amran
Ogier-Editor
 
Posts: 21

Return to Enclave General



cron