unbindall // Prevent mouse/keyboard control when gamepad is in use (to prevent autoaim exploit)

joystick 1
joy_advanced "1" // use advanced joystick options (allows for multiple axes)

joy_name "(Game Here) Xbox360 Joystick Configuration"
joy_advaxisx 3 // x-axis controls GAME_AXIS_SIDE (strafing left and right)
joy_advaxisy 1 // y-axis controls GAME_AXIS_FORWARD (move forward and back)
joy_advaxisz 0 // z-axis is treated like a button
joy_advaxisr 2 // r-axis controls GAME_AXIS_PITCH (look up and down)
joy_advaxisu 4 // u-axis controls GAME_AXIS_YAW (look left and right)
joy_advaxisv 0 // v-axis is unused
joy_forwardsensitivity -1.0 // movement sensitivity
joy_sidesensitivity 1.0
joy_forwardthreshold 0.1 // movement dead zone settings
joy_sidethreshold 0.1
joy_pitchsensitivity 1.0 // look sensitivity
joy_yawsensitivity -1.5
joy_pitchthreshold 0.1 // look dead zone settings
joy_yawthreshold 0.0

joy_variable_frametime 1
joy_autoaimdampenrange 0.85
joy_autoaimdampen 0.5
joy_lowend 0.65
joy_lowmap 0.15
joy_accelscale 3.0
joy_accelmax 4.0
joy_response_move 5
joy_response_look 1
joy_autoaimdampen 0.3
joy_autoaimdampenrange 0.85
joyadvancedupdate // advanced joystick update allows for analog control of move and look

// Alternate control 1
+jlook // enable joystick look
bind "A_BUTTON" "+jump;+menuAccept" // (A) button - Jump -menuAccpt allows us to make selections on hud menus
bind "B_BUTTON" "+reload" // (B) button - Reload
bind "X_BUTTON" "+use" // (X) Use
bind "Y_BUTTON" "lastinv" // (Y) button - swap pistol/rifle or z_abort -used to respawn in some games
bind "R_TRIGGER" "+attack" // RT - Main weapon - Primary trigger
bind "L_TRIGGER" "+attack2" // LT - Melee
bind "R_SHOULDER" "+lookspin" // RB - Fast 180 spin
bind "L_SHOULDER" "toggle_duck" // LB - Duck
bind "STICK1" "vocalize smartlook" // LS - vocalize
bind "STICK2" "+zoom" // RS click - Rifle Zoom

// Fixed bindings, do not change these across joystick presets
bind "BACK" "togglescores" // (back) button - scores
bind "START" "gameui_activate" // (start) button - pause
bind "S1_UP" "+menuUp" // Hud menu Up
bind "S1_DOWN" "+menuDown" // Hud menu Down
bind "UP" "impulse 100" // DPad Up - Toggle flashlight
bind "LEFT" "slot3" // DPad Left - grenade
bind "RIGHT" "slot4" // DPad Right - health
bind "DOWN" "slot5" // DPad Down - Pills


// controller2 bindings
+jlook // enable joystick look
cmd2 bind "A_BUTTON" "+jump;+menuAccept" // (A) button - Jump -menuAccpt allows us to make selections on hud menus
cmd2 bind "B_BUTTON" "+reload" // (B) button - Reload
cmd2 bind "X_BUTTON" "+use" // (X) Use
cmd2 bind "Y_BUTTON" "lastinv" // (Y) button - swap pistol/rifle or z_abort -used to respawn in some games
cmd2 bind "R_TRIGGER" "+attack" // RT - Main weapon - Primary trigger
cmd2 bind "L_TRIGGER" "+attack2" // LT - Melee
cmd2 bind "R_SHOULDER" "+lookspin" // RB - Fast 180 spin
cmd2 bind "L_SHOULDER" "toggle_duck" // LB - Duck - is also used to give objects to people.
cmd2 bind "STICK1" "vocalize smartlook" // LS - vocalize
cmd2 bind "STICK2" "+zoom" // RS click - Rifle Zoom

// Fixed bindings, do not change these across joystick presets
cmd2 bind "BACK" "togglescores" // (back) button - scores
cmd2 bind "START" "gameui_activate" // (start) button - pause
cmd2 bind "S1_UP" "+menuUp" // Hud menu Up
cmd2 bind "S1_DOWN" "+menuDown" // Hud menu Down
cmd2 bind "UP" "impulse 100" // DPad Up - Toggle flashlight
cmd2 bind "LEFT" "slot3" // DPad Left - grenade
cmd2 bind "RIGHT" "slot4" // DPad Right - health
cmd2 bind "DOWN" "slot5" // DPad Down - Pills


sk_autoaim_mode 2