Friday, April 23, 2010

Fix Inverted Controls: Batman Arkham Asylum (PC Version)

For anyone who has attempted to play Batman: Arkham Asylum on their PC with a gamepad:

You may have ran into an problem where the character walks forward while you press down on the left analog stick and walks backward when you press up on the analog stick. Also, if you are used to the normal XBOX/XBOX360 controller layout, you may notice the X/Y and A/B control bindings are backwards as well. This issue can be quite annoying as most all attempts to correct this through any software outside of the game itself seem to be disregarded.

NOTE: These instructions are for specific use with an original XBOX S controller with the USB mod!! If you would like this to work with another gamepad, you need to figure out what binding your PC is using to reference that specific controller first.

Below I have posted instructions on how this issue can be easily fixed.

1) Browse to the "\BmGame\Config\" directory where the game is installed. For example:"C:\Program Files (x86)\Eidos\Batman Arkham Asylum\BmGame\Config"

2) Right click on the "DefaultInput.ini" file and select Properties.

3) Verify that the "Read-only" option is not selected.

4) Next, right click the "DefaultInput.ini" file again and select "Open with..." then choose Notepad.

5) Locate the following entry within the file:
.Bindings=(Name="XboxTypeS_LeftY",Command="Axis aBaseY Speed=1.0 DeadZone=0.3 | Axis aRawLHJoyUp Speed=1.0 DeadZone=0.0" )

6) Within the entry find the 2 variables that say "Speed", change both from '1.0' to '-1.0'

7) It should now look like:
.Bindings=(Name="XboxTypeS_LeftY",Command="Axis aBaseY Speed=-1.0 DeadZone=0.3 | Axis aRawLHJoyUp Speed=-1.0 DeadZone=0.0" )

8) Thats it! Simply save the file then test out the game.

Follow these next steps ONLY if you would like to swap the X/Y and A/B controller buttons within the game.

9) Locate the following entries:
.Bindings=(Name="XboxTypeS_A",Command="DebugCamSingleFrameStep | Run | ContextSensitive |CapeGlide | AcceptConversation | Evade | DebugMenuSelectA | CancelBatarangCamera")
.Bindings=(Name="XboxTypeS_
B",Command="HangFromVantagePoint | BlockBreaker | DebugCamMoreSpeed | OnRelease DebugCamNormalSpeed | ExitAgilityMode | SkipCutscene | CancelGadget | DebugMenuSelectB | CancelBatarangCamera")

.Bindings=(Name="XboxTypeS_
X",Command="QuickStrike | AttackSilentFinish | DebugMenuSelectX | CancelBatarangCamera")

.Bindings=(Name="XboxTypeS_
Y",Command="Grab | ActivateNoise | AttackFearFinish | DebugMenuSelectY | SpecialMoveCheat | CancelBatarangCamera")

10) Simply change the letters (A, B, X, Y) in each entry to swap the default button controls.
a. Change "XboxTypeS_A" to "XboxTypeS_B"
b. Change "XboxTypeS_B" to "XboxTypeS_A"
c. Change "XboxTypeS_X" to "XboxTypeS_Y"
d. Change "XboxTypeS_Y" to "XboxTypeS_X"


11) Lastly, save the file and test it out!



Enjoy!


UPDATE: Some people have also reported success also using the method found here:

-TanthT

12 comments:

  1. omg wen i found this i was sooo relieved and thankful!!...till i did it and it didnt work at all! -_-

    ReplyDelete
  2. Same, sadly it did not work for me either.

    Nor did an emulator. Even watched the test emulator work ok outside game, but not in.

    ReplyDelete
  3. Note: This fix worked perfectly when used with an original XBox controller with a USB port mod.

    -TanthT

    ReplyDelete
  4. Thanks it does work, you just need to follow the instructions correctly. Thanks Tanth T.

    ReplyDelete
  5. by changing the following points u mentioned,will the game work with a xbox joystick or will it work with any normal joystick??

    ReplyDelete
  6. stallone

    This will change the bindings for the Xbox controllers only. If you need to adjust the bindings for some reason for a different type of controller you would need to locate the correct binding profile in the "DefaultInput.ini" file.

    -TanthT

    ReplyDelete
  7. i did all the steps and it sais access is denied when i save the changed file. can someone plz help me!?

    ReplyDelete
  8. Troollolol-
    Make sue you did not skip step #3. Let me know if you get it to work.

    -TanthT

    ReplyDelete
    Replies
    1. I have the same issue and the read only is unchecked...

      Delete
  9. does not work for me either. i have a ps2 controller and an adapter. does anyone know which settings to change in order to achieve the inversion?
    I uploaded my config here: http://pastebin.com/eM7avw3Y
    thank you!

    ReplyDelete
  10. master pi-
    Note that these instructions are for the original xbox controller. So the bindings I modified correspond to the respective "XboxTypeS" configuration. To fix the controls for a PS2 controller, you will have to determine what binding set the game is using for the PS2 controller and modify those.

    Good Luck!

    -TanthT

    ReplyDelete