going by memory i thought there was controls there to put in in the ingame menu for this but looks like this isn't so.
How ever it should be possible to do this in at least 1 of 2 ways I can think of, the 2nd one I know for sure would work its just not the best method.
so ye, first off you should be able to hack the controls.con in your profile settings out of game to add this type of control.
now if you dont know your controls.con is located in your profile folder which you can find in your My Docs: My Documents\Battlefield 2\Profiles\
then in there should be a bunch of folders from 0001 upto how many profiles you have on your computer, 0001 is most likly yours depending on the profile you use but if you have a bunch and your unsure go in each and open each Profile.con with notepad until you see the username you use.
Then make a backup of your controls.con in your profile just encase this dont work and it screws it up some how so you can revert to the backup if needed.
anyways once you have done that, open the Controls.con up with notepad, if you look though the settings you will find that there is a:
Code: Select all
ControlMap.addAxisToAxisMapping c_GIMouseLookX IDFMouse IDAxis_0 0 0
ControlMap.addAxisToAxisMapping c_GIMouseLookY IDFMouse IDAxis_1 0 0
this is basically the default of your settings for mouse look.
search for that first line in your control settings.
Now if you look in your profile and look to see what your plane setup with your joystick is should look something like this.
Code: Select all
ControlMap.addAxisToAxisMapping c_PIYaw IDFGameController_0 IDAxis_5 0 1
ControlMap.addAxisToAxisMapping c_PIPitch IDFGameController_0 IDAxis_1 1 0
ControlMap.addAxisToAxisMapping c_PIRoll IDFGameController_0 IDAxis_0 0 0
Now we are really only intrasted in the Pitch and Roll configs so if you go back to the mouse bits you found about in the default settings we can then add our new bits of code in there to look something like this.
Code: Select all
ControlMap.create defaultGameControlMap
ControlMap.addAxisToAxisMapping c_GIMouseLookX IDFMouse IDAxis_0 0 0
ControlMap.addAxisToAxisMapping c_GIMouseLookY IDFMouse IDAxis_1 0 0
[b]ControlMap.addAxisToAxisMapping c_GIMouseLookX IDFGameController_0 IDAxis_0 0 0
ControlMap.addAxisToAxisMapping c_GIMouseLookY IDFGameController_0 IDAxis_1 1 0[/b]
ControlMap.addKeyToTriggerMapping c_GIMenu IDFKeyboard IDKey_Escape 10000 0
ControlMap.addKeyToTriggerMapping c_GIToggleConsole IDFKeyboard IDKey_Grave 10000 0
now you will probaly need to fiddle with this a little since I think the "1 0" or "0 0 " or w/e is on the end of each command means if its inverted or w/e, if you look on the IDAxis_1 of the stick command ive put "1 0" on the end since that is what the plane settings had so not 100% sure if that is correct, you will just have to try it ingame and if its inverted the wrong way, switch it to 0 and just generally have a play around, trial and error till you get it right.
Then once you have done that, save the control.con file up and try it
The other way is to use a profiler, if you have one you get one with all Saitek gaming products these days and force it to have a mouse output axis on the profile and then you load that profile before game but not the best way since you most of the time can't set it up with a clean axis.