Hey Guys , I Feel That Today Ill Show You Guys The Codes, And The Information To Playing Splitscren Mode In Left4dead Ill Get Everything That You Need To Succesfully Play <TwoPlayers>. Press The Thank button And Leave a Good Comment.

Lets Get Started:
You Can Use A Xbox 360 Controller,Logitech Action Controller, Xbox 1 Controller , Lets Just Say Any Type Of Controller But I Only Got Codes For So Many.

So First Go To Your Left4Dead Path, (C:/ProgramFiles/Common/Left4dead/left4dead/Cfg/ <Inside Look For 360controller.cfg> Open It With a Notepad.

For People Who Download This Game Your Path Is (C:/Programfiles/Left4dead/left4dead/CFG/ <Inside Look For 360controller.cfg Open It with a Notepad.

Ok Now First Backup All The Words Inside The Notepad. <CreateAnExtraCopy> Now. Choose The Codes For With Controller You Are Useing:

For Xbox 360 Controller Replace It With This :

Code:

Code:
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 "L4D 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
bind "0" "slot10"
bind "1" "slot1"
bind "2" "slot2"
bind "3" "slot3"
bind "4" "slot4"
bind "5" "slot5"
bind "6" "slot6"
bind "7" "slot7"
bind "8" "slot8"
bind "9" "slot9"
bind "a" "+moveleft"
bind "c" "+voicerecord"
bind "d" "+moveright"
bind "e" "+use"
bind "f" "impulse 100"
bind "h" "motd"
bind "m" "chooseteam"
bind "q" "lastinv"
bind "r" "+reload"
bind "s" "+back"
bind "t" "impulse 201"
bind "u" "messagemode2"
bind "w" "+forward"
bind "x" "+mouse_menu QA"
bind "y" "messagemode"
bind "z" "+mouse_menu Orders"
bind "`" "toggleconsole"
bind "SPACE" "+jump"
bind "TAB" "+showscores"
bind "ESCAPE" "cancelselect"
bind "SHIFT" "+speed"
bind "CTRL" "+duck"
bind "F1" "Vote Yes"
bind "F2" "Vote No"
bind "F5" "jpeg"
bind "MOUSE1" "+attack"
bind "MOUSE2" "+attack2"
bind "MOUSE3" "+zoom"
bind "MWHEELUP" "invprev"
bind "MWHEELDOWN" "invnext"


// controller2 bindings
cmd2 +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 as a ghost.
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" "pause"				// (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
For Ps2 Controllers Replace It With This

Code:

Code:
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 "L4D 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 2				// z-axis is treated like a button
joy_advaxisr 4				// r-axis controls GAME_AXIS_PITCH (look up and down)
joy_advaxisu 0				// 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_inverty 0
joy_inverty2 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
bind "0" "slot10"
bind "1" "slot1"
bind "2" "slot2"
bind "3" "slot3"
bind "4" "slot4"
bind "5" "slot5"
bind "6" "slot6"
bind "7" "slot7"
bind "8" "slot8"
bind "9" "slot9"
bind "a" "+moveleft"
bind "c" "+voicerecord"
bind "d" "+moveright"
bind "e" "+use"
bind "f" "impulse 100"
bind "h" "motd"
bind "m" "chooseteam"
bind "q" "lastinv"
bind "r" "+reload"
bind "s" "+back"
bind "t" "impulse 201"
bind "u" "messagemode2"
bind "w" "+forward"
bind "x" "+mouse_menu QA"
bind "y" "messagemode"
bind "z" "+mouse_menu Orders"
bind "`" "toggleconsole"
bind "SPACE" "+jump"
bind "TAB" "+showscores"
bind "ESCAPE" "cancelselect"
bind "SHIFT" "+speed"
bind "CTRL" "+duck"
bind "F1" "Vote Yes"
bind "F2" "Vote No"
bind "F5" "jpeg"
bind "MOUSE1" "+attack"
bind "MOUSE2" "+attack2"
bind "MOUSE3" "+zoom"
bind "MWHEELUP" "invprev"
bind "MWHEELDOWN" "invnext"

//controller1 bindings
cmd1 +jlook					// enable joystick look
cmd1 bind "JOY3" "+jump;+menuAccept"		// (A) button - Jump  -menuAccpt allows us to make selections on hud menus
cmd1 bind "JOY2" "+reload"			// (B) button - Reload
cmd1 bind "JOY4" "+use"				// (X) Use
cmd1 bind "JOY1" "lastinv"			// (Y) button - swap pistol/rifle or z_abort -used to respawn as a ghost.
cmd1 bind "JOY6" "+attack"			// RT - Main weapon - Primary trigger
cmd1 bind "JOY5" "+attack2"			// LT - Melee
cmd1 bind "JOY8" "+lookspin"			// RB - Fast 180 spin
cmd1 bind "JOY7" "toggle_duck"			// LB - Duck - is also used to give objects to people.
cmd1 bind "JOY11" "vocalize smartlook"		// LS - vocalize
cmd1 bind "JOY12" "+zoom"				// RS click - Rifle Zoom

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

// controller2 bindings
cmd1 +jlook					// enable joystick look
cmd2 bind "JOY3" "+jump;+menuAccept"		// (A) button - Jump  -menuAccpt allows us to make selections on hud menus
cmd2 bind "JOY2" "+reload"			// (B) button - Reload
cmd2 bind "JOY4" "+use"				// (X) Use
cmd2 bind "JOY1" "lastinv"			// (Y) button - swap pistol/rifle or z_abort -used to respawn as a ghost.
cmd2 bind "JOY6" "+attack"			// RT - Main weapon - Primary trigger
cmd2 bind "JOY5" "+attack2"			// LT - Melee
cmd2 bind "JOY8" "+lookspin"			// RB - Fast 180 spin
cmd2 bind "JOY7" "toggle_duck"			// LB - Duck - is also used to give objects to people.
cmd2 bind "JOY11" "vocalize smartlook"		// LS - vocalize

// Fixed bindings, do not change these across joystick presets
cmd2 bind "JOY9" "togglescores"			// (back) button - scores
cmd2 bind "JOY10" "pause"				// (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
For Logitech Dual Action:

Code:

Code:
// For Logitech RumblePad 2 USB, Dual Action and similar joysticks
joy_name "Logitech RumblePad 2 USB/Dual Action"

joystick 1 // Enable joystick support
joy_advanced 1 // Enable advanced axis support

// Set up joystick axes
joy_advaxisx 3
joy_advaxisy 1
joy_advaxisz 4
joy_advaxisr 2
joy_advaxisu 0
joy_advaxisv 0

// Set up joystick sensitivities for player 2
cmd2 joy_forwardsensitivity -1
cmd2 joy_sidesensitivity 1
cmd2 joy_pitchsensitivity 0.8
cmd2 joy_yawsensitivity -0.8
cmd2 joy_pitchthreshold 0.2
cmd2 joy_yawthreshold 0.2

// Joystick response values
cmd2 joy_autoaimdampenrange 0.85
cmd2 joy_autoaimdampen 0.5
cmd2 joy_lowend 0.65
cmd2 joy_lowmap 0.15
cmd2 joy_accelscale 3.0
cmd2 joy_accelmax 4.0
cmd2 joy_response_move 5
cmd2 joy_response_look 1

// Confirm advanced options
joyadvancedupdate

// Alternate control 1
cmd1 bind "0" "slot10"
cmd1 bind "1" "slot1"
cmd1 bind "2" "slot2"
cmd1 bind "3" "slot3"
cmd1 bind "4" "slot4"
cmd1 bind "5" "slot5"
cmd1 bind "6" "slot6"
cmd1 bind "7" "slot7"
cmd1 bind "8" "slot8"
cmd1 bind "9" "slot9"
cmd1 bind "a" "+moveleft"
cmd1 bind "c" "+voicerecord"
cmd1 bind "d" "+moveright"
cmd1 bind "e" "+use"
cmd1 bind "f" "impulse 100"
cmd1 bind "h" "motd"
cmd1 bind "m" "chooseteam"
cmd1 bind "q" "lastinv"
cmd1 bind "r" "+reload"
cmd1 bind "s" "+back"
cmd1 bind "t" "impulse 201"
cmd1 bind "u" "messagemode2"
cmd1 bind "w" "+forward"
cmd1 bind "x" "+mouse_menu QA"
cmd1 bind "y" "messagemode"
cmd1 bind "z" "+mouse_menu Orders"
cmd1 bind "`" "toggleconsole"
cmd1 bind "SPACE" "+jump"
cmd1 bind "TAB" "+showscores"
cmd1 bind "ESCAPE" "cancelselect"
cmd1 bind "SHIFT" "+speed"
cmd1 bind "CTRL" "+duck"
cmd1 bind "F1" "Vote Yes"
cmd1 bind "F2" "Vote No"
cmd1 bind "F5" "jpeg"
cmd1 bind "MOUSE1" "+attack"
cmd1 bind "MOUSE2" "+attack2"
cmd1 bind "MOUSE3" "+zoom"
cmd1 bind "MWHEELUP" "invprev"
cmd1 bind "MWHEELDOWN" "invnext"

// Controller 2
cmd2 +jlook					// enable joystick look
cmd2 bind "joy1" "+use"				// (X) Use
cmd2 bind "joy2" "+jump;+menuAccept"		// (A) button - Jump  -menuAccpt allows us to make selections on hud menus
cmd2 bind "joy3" "+reload"			// (B) button - Reload
cmd2 bind "joy4" "lastinv"			// (Y) button - swap pistol/rifle or z_abort -used to respawn as a ghost.
cmd2 bind "joy7" "+duck"			// LB - Duck
cmd2 bind "joy8" "+lookspin"			// RB - Fast 180 spin
cmd2 bind "joy5" "+attack2"			// LT - Melee
cmd2 bind "joy6" "+attack"			// RT - Main weapon - Primary trigger
cmd2 bind "joy9" "togglescores"			// (back) button - scores
cmd2 bind "joy10" "gameui_activate"		// (start) button - pause
cmd2 bind "joy11" "vocalize smartlook"		// LS - vocalize
cmd2 bind "joy12" "+zoom"				// RS click - Rifle Zoom

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
For PS3 controller:

Code:

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


// Alternate control 1
bind "0" "slot10"
bind "1" "slot1"
bind "2" "slot2"
bind "3" "slot3"
bind "4" "slot4"
bind "5" "slot5"
bind "6" "slot6"
bind "7" "slot7"
bind "8" "slot8"
bind "9" "slot9"
bind "a" "+moveleft"
bind "c" "+voicerecord"
bind "d" "+moveright"
bind "e" "+use"
bind "f" "impulse 100"
bind "h" "motd"
bind "m" "chooseteam"
bind "q" "lastinv"
bind "r" "+reload"
bind "s" "+back"
bind "t" "impulse 201"
bind "u" "messagemode2"
bind "w" "+forward"
bind "x" "+mouse_menu QA"
bind "y" "messagemode"
bind "z" "+mouse_menu Orders"
bind "`" "toggleconsole"
bind "SPACE" "+jump"
bind "TAB" "+showscores"
bind "ESCAPE" "cancelselect"
bind "SHIFT" "+speed"
bind "CTRL" "+duck"
bind "F1" "Vote Yes"
bind "F2" "Vote No"
bind "F5" "jpeg"
bind "MOUSE1" "+attack"
bind "MOUSE2" "+attack2"
bind "MOUSE3" "+zoom"
bind "MWHEELUP" "invprev"
bind "MWHEELDOWN" "invnext"





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

joy_name "L4D 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 4				// z-axis is treated like a button
joy_advaxisr 2				// r-axis controls GAME_AXIS_PITCH (look up and down)
joy_advaxisu 0				// 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


// controller2 bindings
 +jlook					// enable joystick look
 bind "JOY1" "pause"		// (A) button - Jump  -menuAccpt allows us to make selections on hud menus
 bind "JOY16" "+reload"			// (B) button - Reload
 bind "JOY13" "+use"				// (X) Use
 //bind "JOY6" "lastinv"			// (Y) button - swap pistol/rifle or z_abort -used to respawn as a ghost.
 bind "JOY8" "invprev"
bind "JOY6" "invnext"

bind "JOY12" "+attack"			// RT - Main weapon - Primary trigger
 bind "JOY10" "+attack2"
bind "JOY11" "+attack2"			// LT - Melee
 bind "JOY9" "+lookspin"		// RB - Fast 180 spin
 //bind "BACK" "toggle_duck"			// LB - Duck - is also used to give objects to people.
 bind "STICK1" "vocalize smartlook"		// LS - vocalize
 bind "STICK2" "+zoom"
 				// RS click - Rifle Zoom

bind "JOY14" "toggle_duck"

// Fixed bindings, do not change these across joystick presets
 bind "BACK" "+use"			// (back) button - scores
 bind "JOY15" "+jump;+menuAccept"				// (start) button - pause
 //bind "JOY5" "+menuUp"				// Hud menu Up
 //bind "JOY7" "+menuDown"			// Hud menu Down
 bind "JOY5" "impulse 100"				// DPad Up - Toggle flashlight
 //bind "JOY6" "slot3"					// DPad Left - grenade
 //bind "JOY7" "slot4"				// DPad Right - health
// bind "JOY8" "slot5"					// DPad Down - Pills
For Logitech RumblePad 2 USB/Dual Action:

Code:

Code:
// For Logitech RumblePad 2 USB, Dual Action and similar joysticks
joy_name "Logitech RumblePad 2 USB/Dual Action"

joystick 1 // Enable joystick support
joy_advanced 1 // Enable advanced axis support

// Set up joystick axes
joy_advaxisx 3
joy_advaxisy 1
joy_advaxisz 4
joy_advaxisr 2
joy_advaxisu 0
joy_advaxisv 0

// Set up joystick sensitivities for player 2
cmd2 joy_forwardsensitivity -1
cmd2 joy_sidesensitivity 1
cmd2 joy_pitchsensitivity 0.8
cmd2 joy_yawsensitivity -0.8
cmd2 joy_pitchthreshold 0.2
cmd2 joy_yawthreshold 0.2

// Joystick response values
cmd2 joy_autoaimdampenrange 0.85
cmd2 joy_autoaimdampen 0.5
cmd2 joy_lowend 0.65
cmd2 joy_lowmap 0.15
cmd2 joy_accelscale 3.0
cmd2 joy_accelmax 4.0
cmd2 joy_response_move 5
cmd2 joy_response_look 1

// Confirm advanced options
joyadvancedupdate

// Alternate control 1
cmd1 bind "0" "slot10"
cmd1 bind "1" "slot1"
cmd1 bind "2" "slot2"
cmd1 bind "3" "slot3"
cmd1 bind "4" "slot4"
cmd1 bind "5" "slot5"
cmd1 bind "6" "slot6"
cmd1 bind "7" "slot7"
cmd1 bind "8" "slot8"
cmd1 bind "9" "slot9"
cmd1 bind "a" "+moveleft"
cmd1 bind "c" "+voicerecord"
cmd1 bind "d" "+moveright"
cmd1 bind "e" "+use"
cmd1 bind "f" "impulse 100"
cmd1 bind "h" "motd"
cmd1 bind "m" "chooseteam"
cmd1 bind "q" "lastinv"
cmd1 bind "r" "+reload"
cmd1 bind "s" "+back"
cmd1 bind "t" "impulse 201"
cmd1 bind "u" "messagemode2"
cmd1 bind "w" "+forward"
cmd1 bind "x" "+mouse_menu QA"
cmd1 bind "y" "messagemode"
cmd1 bind "z" "+mouse_menu Orders"
cmd1 bind "`" "toggleconsole"
cmd1 bind "SPACE" "+jump"
cmd1 bind "TAB" "+showscores"
cmd1 bind "ESCAPE" "cancelselect"
cmd1 bind "SHIFT" "+speed"
cmd1 bind "CTRL" "+duck"
cmd1 bind "F1" "Vote Yes"
cmd1 bind "F2" "Vote No"
cmd1 bind "F5" "jpeg"
cmd1 bind "MOUSE1" "+attack"
cmd1 bind "MOUSE2" "+attack2"
cmd1 bind "MOUSE3" "+zoom"
cmd1 bind "MWHEELUP" "invprev"
cmd1 bind "MWHEELDOWN" "invnext"

// Controller 2
cmd2 +jlook					// enable joystick look
cmd2 bind "joy1" "+use"				// (X) Use
cmd2 bind "joy2" "+jump;+menuAccept"		// (A) button - Jump  -menuAccpt allows us to make selections on hud menus
cmd2 bind "joy3" "+reload"			// (B) button - Reload
cmd2 bind "joy4" "lastinv"			// (Y) button - swap pistol/rifle or z_abort -used to respawn as a ghost.
cmd2 bind "joy7" "+duck"			// LB - Duck
cmd2 bind "joy8" "+lookspin"			// RB - Fast 180 spin
cmd2 bind "joy5" "+attack2"			// LT - Melee
cmd2 bind "joy6" "+attack"			// RT - Main weapon - Primary trigger
cmd2 bind "joy9" "togglescores"			// (back) button - scores
cmd2 bind "joy10" "gameui_activate"		// (start) button - pause
cmd2 bind "joy11" "vocalize smartlook"		// LS - vocalize
cmd2 bind "joy12" "+zoom"				// RS click - Rifle Zoom

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
Now You Guys Have All Your Codes Ready For Use . Time For The hard Part For Me Easy.

Download JoyID: RapidShare: 1-CLICK Web hosting - Easy Filehosting

Download PPJoy: RapidShare: 1-CLICK Web hosting - Easy Filehosting

Since Im Nice, And don't have anything better to do. Ill Show You How To Use PPJoy And JoyID:

How To Use JoyID:

So First Install JoyID , After Its Done Installing Open It, It Will Be A .exe File Now Its Running Plug In Your Any Type Of Controller That You Already Set The Code For. It Will Appear In One Of The Boxes In JoyID IF IT IS IN BOX ID:1 CHANGE IT To Box ID:3 Yes. I Said 3 . Now Its In 3. Good Just Leave It Running Now You Will Need It Again.

How To Use PPJoy:

PPjoy Is Differnt From JoyId Just a Little Bit. When It Install It You Will Get a Winrar File. Extract It And Inside Run The Setup.exe After Its Done Installing. Go To <Start> ,<ControlPanel> Then Inside There You Will See A Icon That Says (Parallel Port JoySticks) Double Click On It. A box Will Pop Up Nothing Will be Inside. So Press Add Then In Parallel Port Change It to Virtual JoySticks. Then In Controller number Change It To Controller 2 Now Click Add. Somthing Will Popup Prompting You That You Will Need to Install The Drive Just Keep Clicking Next.

After Thats Done:

Ok Now Since You Still have JoyId Running Make Sure That In The Box PPjoy Virtual joystick 2 is In ID#2 Ok ? And Also Make Sure You Controller Is Still Set To ID#3. Btw. You Do Not Need This Program Running While you Playing Splitscreen Mode.

Launching The Game:

I Hope you Followed Everything That I Said Above This Text ! . Ok Now Open Left4dead. At The Main Screen Where You Choose Everything. Open Up The Devopers Consol : To Get It Enabled Go To Options - Keyboards And Mouse And Click On Enable Developers Consol. To Make It Open Press The (~) Key Which Is Located Right Underneath (ESC) Button. Once You Consol Is Open Type These Codes.

ss_enable 1
ss_splitmode 1 or 2 Vertical And Horizontal.

Launch A Single Player Game. In The Game You Will See You Screen Split In Half. And Player 1 Should be Able To Control P1 And Player 2 Should Be Able To Control P2. If The Keys Are Messed Up. Open Back Up The Consol With The Consol Button (~) Located UnderNeath (ESC) Ok Good Now Type

exec 360controller And Hit Enter

Now Your Buttons Will Be Just How You Wanted It !

Next Step I know You Guys are Going To Ask This: IS THIS ONLINE ?
Well Ohh Yeaa..

How To Play Online

To Play Online Splitscreen Its So Fricken Simple...
Host A Room Online Or Join Someones Room Only P1 Will Be In The Game
So Type In The Consol

ss_connect ( Just Type That And P2 Should Join The Room)

Player 2 Team Selection:
cmd2 jointeam 2 (For The Survivor Team)
cmd2 jointeam 3 (For The Infected Team)

Now You Both Are In The room Have Lots And Lots Of Fun.

Time For The

Can I ? , I Don't Understand ? , SomeoneHelp Questions...

Can I Answers:
Please If There Is Any Questions. Just Ask Someone Who This Worked For Help !. I will Try to Reply ASAP , But IF You Followed The Instuctions There Would Be No Problems Ryte ?

I Don't Understand Answers:
Please If There Is Any Questions. Just Ask Someone Who This Worked For Help !. I will Try to Reply ASAP , But IF You Followed The Instuctions There Would Be No Problems Ryte ?

Someone Help Answers:
Re -Read The Whole Entire Tutorial Or.. Please If There Is Any Questions. Just Ask Someone Who This Worked For Help !. I will Try to Reply ASAP , But IF You Followed The Instuctions There Would Be No Problems Ryte ?

Please Press The Thanks Button. I Gave You Guys Links And Codes. And I HELPED U GUYS Becuase i know that alot of peple saw other peoples Ways And got Player 2 Controls Player 1 This SUCKS OMG. But I Had THe SAme Problem Until I Thanked My Self For My Smart Brain
Remember Leave a Comment Test This Out It Works 100% Took Me 1Hour 30 minutes To Finsh. Ill Be Here For Another 5 Hours Or less To Reply To questions.