Metal Gear Solid 2: Dual Shock 2 analogue buttons - Tutorial

Associate
Joined
4 Jul 2009
Posts
1,097
Location
United Kingdom
Before you read on please note that you are required to have either a controller with some kind of analogue input other than the analogue sticks, or an adapter for a DS2 controller to USB that will allow the use of the analogue buttons.

Ok so I thought I would post this as a little tutorial as it were, being a pretty big MGS fan (probably the only games I love to go back to) I was very annoyed that the PC version of MGS2 has such an inelegant way of dealing with the analogue buttons, which could easily have been done better if the controls were not so badly ported over to PC.

For anyone who doesn't know, on the PS2 version of the game when aiming your weapon with the square button, if you were to release the button quickly when using a semi automatic weapon you would pull the trigger. However if you release the button slowly you would instead stop pointing your weapon, allowing you to stay undetected. When using an automatic weapon the ability to do this is even more important as when you push the button hard then you would immediately open fire, but if you pushed it softly then you could aim with the gun without firing.



Anyway down to business.

I bought an adapter for PS2 / Xbox / Gamecube controllers to USB, the drivers to my surprise allowed me to set two of the buttons on the PS2 controller as analogue inputs, by mapping spare axes to the buttons. The adapter is called the 3 in 1 Magic Joy Box and was the only adapter I could get my hands on that did GC, it was not my intention to use my PS2 controller, so if you know other adapters that perhaps allow more analogue inputs please do tell.

So in the controls on MGS2 I found that the button required to simulate the pressure difference on the buttons is called 'Slow', which means that whilst holding fire you then have to push and hold slow before releasing fire to achieve the same effect of a single DS2 button.

When I am talking about the analogue sticks from now on, I am referring to virtual analogue sticks within Xpadder, which can be assigned any axes you want. The reason for using the analogue sticks in Xpadder is to enable us to have up to three button outputs, and we must assign something to the second axis of each stick otherwise the stick is not default in the corner, but is instead to the left/right/top/bottom, meaning we can't get three button outputs.

I opened Xpadder and created a new profile, I then enabled the left analogue stick and set the first axis to my fire button and the second to my spare analogue button. I repeated this for the right analogue stick and clicked ok. I then right clicked the left analogue stick, set it to 8 way and cleared the default bindings, and on the right analogue stick I set it to 8 way and changed the size of the diagonals, making them very small (you should play around with this when done to decide on the most comfortable level of pressure).

If you push the button down slowly now, you can see that the right analogue stick will enter the middle button before the left stick, and at the end of the push after the left stick is on it's third button the right stick will then enter it's third button. These overlapping outputs are what makes this work, so make sure it functions as shown in my pictures.

Now if you set the middle button on the right stick as your 'slow' button in the key config (default: shift) and both the middle and last button on the left stick as your fire button (default: S, C, or U). This will mean that if you push the fire button and release it quickly, the slow button will be skipped on the way back down, meaning that you will pull the trigger. It also works with automatic weapons just as it should on the PS2.

Test this in game and adjust the size of the diagonals until you are comfortable with the pressure you must apply to the button or speed at which you must release it.

I worked this out myself and thought I should post it somewhere, as I couldn't find a suitable solution to this problem. I know this should be possible with any analogue input, such as the triggers on an Xbox 360 controller, however I understand that these function in the same way as a rudder control with both left and right triggers as a single axis, meaning by default the axis is in the centre rather than minimum or maximum value. If you can split these into two axes perhaps using PPJoy or some other method, then you can easily use Xpadder to the same effect. Unfortunately I have not got a 360 controller and only know this because I was trying to talk a friend through this process, so I have not had a chance to work this out myself.



Good luck! If I have brought joy to one MGS fan then it was all worth it :D





These pictures are in order, showing in the Xpadder interface and the controller configuration how varied pressure on the button changes the outputs from Xpadder, and also how the outputs overlap giving the desired effect in the game.
 
Back
Top Bottom