Post by Ultima on Jan 6, 2007 23:24:33 GMT -5

This look familiar to anyone? I've been a tad bit bored the last few days, so I decided to work on something like that for pSX... I started working on it yesterday, and finished it today (no, I wasn't working an entire day straight xD). For the most part, it works fine, but be warned that because it's written in AutoIt (yes, that scripting language again), you should treat it gently (don't go pressing the hotkey like mad -- seriously). Aside from that, I barely put any checks for syntax errors and such, so please, do write your key combinations carefully

The syntax is as follows...
{BUTTON [down/up]}
where BUTTON is any one of the following: Up, Left, Down, Right, Triangle, Square, Cross, Circle, Start, Select, L1, L2, R1, R2, L3, R3
You can string multiple buttons together using the + character, so if you want to press Square, then Triangle, type {Square}+{Triangle} into the Combination field.
If you want to hold Square down, you'd type in {Square down}, and to release, you'd type in {Square up}.
Aside from that, you can also delay in seconds as follows:
{Delay SECONDS}
where SECONDS is the delay time... in seconds. This number can be a decimal.
As an example... In X-Men vs Street Fighter, for Ryu/Ken/Akuma to perform a Hadouken while to the left of the opponent, you'd use the following combination...
{down down}+{delay 0.01}+{right down}+{delay 0.01}+{down up}+{square}+{right up}
Naturally, there can be variations on it, but I just tested that combination quickly, and it appears to work.
"Limitations" and Things to Take Note Of
- There's an extreme lack of overall polish (for example, I didn't bother doing the "read on click" kind of thing like in pSX Frontend when you single-click on a profile)
- At the moment, I'm not sure you should be setting the Key field to use any of the special, non-character and/or modifier keys yet, as they require a special syntax in AutoIt. If you absolutely need to, check this page or this page out. Be warned that I've yet to test key mapping to any key other than n on my keyboard XD
- You can't remove inputed combinations... just disable (uncheck) it
- You NEED to point the tool to a fully set-up psx.ini file, otherwise, it won't be able to grab the correct key to send to pSX [SIDEBAR: It was a TOTAL pain in the arse figuring out what each number in the [Input] section of psx.ini corresponded to on the keyboard... Yes, I had to do that manually ;o].
- I can't use DirectInput in AutoIt, so if you're using a joypad, for example, you need to set the keyboard key for the buttons if you haven't already done so. As a consequence (and quite obviously anyway), the analog sticks can't be used in the key combination.
- Assuming the key bindings are enabled... Even though they are checked, newly added key combinations don't go into effect until you disable/re-enable the key bindings (toggle the big button on the bottom). The same can be said about unchecking combinations -- it doesn't take effect until you disable/re-enable the key bindings.
- It doesn't save settings, so if you like your key combinations, be warned not to exit unless you have everything saved somewhere...
As with whatever little tool I write... if your computer blows up in your face, I take no responsibility xD
All of that said... the download link is here:
hostfile.org/psxkeycombinationeditorv001.rar
Initially, I had planned on integrating this straight into pSX Frontend, but
- I'm not sure whether people even need/want such a feature in the frontend
- I'm not sure how I would integrate this into the frontend and its heavily profile-influenced nature
- I didn't want to mess with the frontend code just yet... these are just concept codes/ideas, after all (and very messy ones at that)
- it feels like it's going to be a semi-pain to save the combinations into an INI without making it too profile/game-specific, or disturbing the current INI (yes, I'd probably save the settings into a separate INI file anyway)
So yeah... as usual, comments, thoughts, ideas, bashing, or whatever's on topic are welcome
