//             MAD DOG'S PANTHER XL CONFIG for
//          SOLDIER OF FORTUNE (ADVANCED VERSION)
// 	       FOR SINGLE-PLAYER & DEATHMATCH
// 		       April 22, 2000
//              http://doghouse.gamedesign.net/
// ===========================================================


This file is a (hopefully temporary) addendum to PXL_SoFa_readme.txt. The subject here is the behavior of the SoF "+use" command where a joyaxis is concerned.

To get around that behavior (described below), I made some changes to the configs to allow the "+use" command to share a button with another command anyway. This works, but has a slight bug which if you are aware of it you can correct for it easily.

If you press and hold the "+use" button, then press and hold the "shift" button, then release the "use" button before releasing "shift", you will be stuck in a leaning action. To correct, tap the "use" button again and all will be fine.

Now if you're really interested in all the gory details, read on:

// ===========================================================

In SoF, the "+use" command can be used as a modifier for strafing so as to result in leaning. This is a very cool feature that allows you to shoot from around corners without exposing yourself unduly much. While "+use" modifies strafing input from keyboard just fine, coding the same effect when strafing is done using a joyaxis is much more complicated.

This feature did not work at all with a joyaxis in the SoF Demo. However, when alerted to the problem, Raven promptly fixed it so it *does* work in the Retail game. Unfortunately, the scripting techniques that I'm using in the included PXL_SoFa.cfg set have brought to light an obscure limitation with the "+use" command.

My conjecture is that the game is specifically looking for "-use" before restoring strafing action to a joyaxis. My config aliases both "+use" and "-use" to other commands... and since the command aliased to "-use" is not *specifically* "-use", there the trouble comes up. A simple example below to illustrate what I'm talking about:

	bind [button] +useit
	alias +useit +use
	alias -useit -use

Now you would expect that the "+useit" command would function precisely as "+use" does. If you tried the above using a keyboard, it would. Try it with a joyaxis, and when "+useit" is active, you lean... when the command is cancelled with "-useit", you stop leaning... But you will never regain strafing control. In use you would find the x-axis of the stick to be totally dead. The only way to return the strafing function would be to quit the game and restart.

In the enclosed configs, a hack fix is in place since I'm doubling up "+use" and "reload" on the same button, and from the above you can see I obviously can't alias "+/-use" to anything else. Changes made are as follows:

-BINDS.CFG:
	[bind AUX9 +09]
	is commented out and replaced by 
	[bind AUX9 +use]
-BINDS.CFG:
	[set 2_09 "alias +09 reload;alias -09 -use"]
	is commented out and replaced by
	[set 2_09 "alias +09 reload;alias -09 "]
-PXL_SoFa.CFG:
	[bind AUX9 +use] and [bind AUX9 +09]
	have been added to the ends of the command strings
	[alias shift1] and [alias shift2]
	respectively.

Not only do these modifications create the possible buggy behavior outlined at the beginning of this file, but they also compromise the portability of button assignments that I've written into the config. If you're planning to remap your buttons, and one of them is AUX9, keep this in mind.

-MD
4/22/00
