Hi all,
I recently found out via these forums that there was no Xbox 360 controller support in Bioshock 2. I find this more than a little disheartening considering the original game supported the controller out of the box and there exists an Xbox 360 version of this game. Yes I know, mouse and keyboard are more precise, etc. but some of us enjoy using the controller as the comfort vs. precision tradeoff is one we're willing to accept.
According to 2K, native gamepad support will never be added to the game. As unfortunate as this decision is, there is certainly a workaround to be had!
The solution is mouse and keyboard emulation through a program called JoyToKey. This program is free to download and use. It is only about 380KB in size, so even users with very slow internet connections should have no problem obtaining it. You'll need a custom config to use it with Bioshock 2, but I'll be providing that further down below. To get Xbox 360 controller support via JoyToKey, complete the following:
1. Download the JoyToKey Version 3.79 program from the following link: http://www.idiombox.com/oneswitch/JoyToKey_(v3_79).zip
Note that this website is not within the 2K webspace, nor is it a website that I personally run or maintain. I have downloaded and used this program myself and can assure that the file linked was free of viruses and spyware when I obtained it. Nevertheless, you should always test files you download from the Internet with your own tools.
2. The JoyToKey_(v3_79).zip file is compressed, so you will need to extract it into a folder. In Windows XP, Vista or 7, you can simply right click on the file, left click the "Extract All..." option, and follow the prompts to extract the contents into a folder on your hard drive. No installation is necessary.
3. Navigate to the same folder that you extracted the zip file to (where the JoyToKey.exe file resides) and create a new text file. You can do this by right clicking anywhere in the whitespace of the folder, hovering the mouse cursor over the "New" selection, and left clicking "Text Document" from the options presented. Name the file you're creating "Bioshock2.cfg" (without the quotes).
4. Open the Bioshock2.cfg file in Notepad. To do this, click Start - All Programs - Accessories - Notepad. In Notepad, click File, then Open, and navigate to the folder where the Bioshock2.cfg file resides. Change the file view option near the bottom from "Text Documents" to "All Files" and double click on the Bioshock2.cfg file to open it. It should be blank.
5. Highlight and copy the following information below and paste it into the open Bioshock2.cfg file in Notepad:
***File Copy Begins Below. Do NOT copy this line***
[General]
FileVersion=37
NumberOfJoysticks=1
Use8Axes=1
UseDiagonalInput=0
UsePOV=1
Threshold=0
KeySendMode=0
[Joystick 1]
Axis1n=1, 41:00:00, 0
Axis1p=1, 44:00:00, 0
Axis2n=1, 57:00:00, 0
Axis2p=1, 53:00:00, 0
Axis3n=2, 0, 0, 0, 1, 0, 0, 0
Axis3p=2, 0, 0, 0, 0, 0, 1, 0
Axis4n=2, -50, 0, 0, 0, 0, 0, 0
Axis4p=2, 50, 0, 0, 0, 0, 0, 0
Axis5n=2, 0, -50, 0, 0, 0, 0, 0
Axis5p=2, 0, 50, 0, 0, 0, 0, 0
Axis6n=1, 33:00:00, 0
Axis6p=1, 34:00:00, 0
Axis7n=0
Axis7p=0
Axis8n=0
Axis8p=0
POV1-1=1, 31:00:00, 0
POV1-2=1, 33:00:00, 0
POV1-3=1, 34:00:00, 0
POV1-4=1, 32:00:00, 0
POV2-1=0
POV2-2=0
POV2-3=0
POV2-4=0
Up-Right=0
Up- Left=0
Dn- Left=0
Dn-Right=0
Button01=1, 20:00:00, 0
Button02=1, 51:00:00, 0
Button03=1, 46:00:00, 0
Button04=1, 45:00:00, 0
Button05=2, 0, 0, 20, 0, 0, 0, 0
Button06=2, 0, 0, -20, 0, 0, 0, 0
Button07=1, 09:00:00, 0
Button08=1, 1B:00:00, 0
Button09=1, 43:00:00, 0
Button10=1, 11:00:00, 0
Button11=0
Button12=0
Button13=0
Button14=0
Button15=0
Button16=0
Button17=0
Button18=0
Button19=0
Button20=0
Button21=0
Button22=0
Button23=0
Button24=0
Button25=0
Button26=0
Button27=0
Button28=0
Button29=0
Button30=0
Button31=0
Button32=0
***File Copy Ends Above. Do NOT copy this line***
6. Save the file in Notepad by clicking File, Save and then close Notepad. Now, plug in your Xbox 360 controller. Start JoyToKey by double clicking the executable in the folder you extracted to.
IF YOU ARE RUNNING VISTA, make sure to set the compatability mode to Windows XP SP2 by right clicking on the JoyToKey executable, left clicking Properties, Compatability, check the "Run this program in compatibility mode for" checkbox and select "Windows XP Service Pack 2" from the dropdown." Click Apply then Ok. XP and Windows 7 seem to work "out of the box."
In the left pane of JoyToKey, you should see an entry labeled Bioshock2. Left click this once and then minimize JoyToKey. Start the game. You should now be able to use the Xbox 360 controller to move, shoot, and do all the other functions that the keyboard and mouse would normally supply.
I've set the configuration file up how I like the Xbox 360 controller to work in the game. That said, there's nothing stopping you from manipulating the provided configuration using the functions provided by the JoyToKey program. Note that JoyToKey MUST be running for the Xbox 360 controller to work in the game. Note that the program will drop down to the task tray when minimized.
Here is a quick rundown of how I've set the buttons/analog sticks up using the default control configuration on a U.S. keyboard and what they do:
Left stick: Move (W,A,S,D)
Click Left Stick: Toggle Crouch (C)
Right stick: Look (simulates mouse movements)
Click Right Stick: Melee (Shift)
A button: Action (F)
B button: Jump (spacebar)
X button: Reload (R)
Y button: Gather Adam / Harvest / Quick Hack (B)
Left Trigger: Use Plasmid (Right mouse button)
Left Bumper: Switch Plasmid (Q)
Right Trigger: Use Weapon (Left mouse button)
Right Bumper: Switch Weapon (Mouse scroll down)
Back button: Maps / Messages / Goals / Help (M)
Start button: Main Menu / Cancel / Pause (Esc)
D-Pad Up: Use First Aid Kit (Ctrl)
D-Pad Left: Iron Sights / Zoom (T)
D-Pad Right: Exit Scout Mode (J)
D-Pad Down: Play Newest Unread Diary (L)
Please note that JoyToKey provides mouse/keyboard emulation, not native gamepad support. This means that everything in the configuration file above is emulated keyboard strokes and mouse clicks. It was created using the default keyboard/mouse setup on Bioshock 2 without any changes or modifications to the default control scheme in the game. Additionally, this configuration file was created for use on a U.S. Keyboard. Other regions can and probably will vary. If the controls seem to not work correctly or do different things than stated above, chances are you have either modified the default keyboard/mouse mappings or you are using a non-U.S. layout keyboard. In either case, it will be necessary to go into the JoyToKey program itself and remap the the button presses to the correct keyboard keys for your specific control layout / region. It will probably help to use the above mappings as a guide.
Also note that this solution is far from perfect and is merely a workaround. Limitations of using JoyToKey for keyboard/mouse emulation in Bioshock 2 include:
1. The left control stick (move) tends to drift a bit to the left sometimes when moving. This seems to be an issue when using the Xbox 360 controller on games that were not designed for it. Need For Speed: Most Wanted on PC also had this problem.
2. The right control stick (look) also suffers from a similar issue. It's not game breaking, but it does tend to annoy even a patient player.
3. Moving via the left control stick still remains a hard W,A,S, or D movement. In other words, there is no concept of walking, sprinting, running, etc. depending on how much you move the stick in one direction. Moving it a little bit is exactly the same as moving it to its bounds.
4. The Xbox home button is not mappable via JoyToKey. Reports suggest that it will still bring down the Games For Windows Live menu as intended.
5. Rumble support cannot be emulated via JoyToKey, not that the game currently supports it anyway
I hope this helps all you guys and gals out there that are looking for a Xbox 360 controller fix. Happy gaming :-)




Reply With Quote
. What did 2K think??
