Home
Downloads
News
Our Products
Purchase
Contact Information
About Us

Nessoft logo

Joystick Macro

News

5/17/2000 - Released version 0.1.1.0. This version now uses a device driver to allow it to work with Everquest under Windows 98. It also works with Windows 2000. Here's a partial list of new features (more documentation is forthcoming, but it's too late tonight to get it all typed up).

  • Now works with Windows 98 and Windows 2000 and can send macro text to Everquest.
  • Now has better support for multi-computer editing/notification. Install on more than one computer, then run on your Everquest machine. Using network drive sharing, use a second computer to run it from the same directory as it's running from on your first computer (you may need to install it on your second computer, but you'll want to run it over the network to your everquest computer).
  • Using networked directories, can inject chat text during pause commands in your script. You can now chat and twist at the same time!
  • Now support recursive "Named" macro pieces. This allows you to change your timing parameters just once and it will affect all macros. (This needs a bit more documentation, but it works now.).
  • Can configure how fast keypresses/key-releases are sent so it doesn't overwhelm the client.

What is it?

Joystick Macro is a little program I wrote that will monitor your joystick buttons, and when you hit one, will send a set of keypresses (that you define) just as though you'd just entered that keyboard sequence in the keyboard.

Where do I get it?

You can download the latest version (version 0.1.1.0) here:

joymacinst.exe (wrapped in the installer, it's about 395 K).

Why did you write it?

I'm a moderately (hehehehe) avid Everquest player. I have a level 48 bard (Gilgrin on Prexus), and one of the things I do a lot is "Twist" songs. This requires a bit of proficiency, and a certain resistance to carpal-tunnel syndrome. A few people on the bard message forums (Backstage) found that you could set up joystick macros using the Microsoft version 4.0 Sidewinder software to help "twist" during downtimes (and possibly during battle as well). "Sounds like it could help!", I think.

So, I went out and bought myself a gamepad with microsoft version 4.0 software (even though I already own a gamepad and 2 joysticks). Only a few of the microsoft joysticks come with the version 4.0 software (most come with version 3.02 - which won't repeat songs) - and version 4.0 isn't available on their web site.

I spent a couple of hours getting everything set up "just so" (it does work), and had the following problems with the Microsoft software:

  • It takes stinking forever to get macros set up. You have to enter keys and it auto-sets the delays based on your key timing. I don't really care about inter-key delay on the "/stop" command.
  • You have to buy a joystick - and they don't let you download new drivers to fix (1).
  • I don't really like rubber banding down my keys. Seems like a lot of work to start/stop a song.
  • You have to quit EQ to program the keys.
  • Macros don't stop when you let go of the button - you have to hit another button to stop the macro from finishing.

It can't be *SO* hard to write something that monitors the joystick and sends keys! So, I whipped up a little app to do that.

Advantages over the Microsoft 4.0 sidewinder sofware

  • It works with the joystick you already own (if it has buttons).
  • You can start a macro by hitting a key, and then stop it by hitting that (or another) key again. No rubber-bands needed (although if you like rubber bands, you can set up the macro to repeat as long as the button is down).
  • Macros stop immediately when button is released (when in that mode) or hit again.
  • You can edit the configuration file over a network - so you can use another computer to edit the macros - and they'll reload immediately for use without quitting EQ.
  • Regular copy/paste works, and you can enter a macro without having to "record" one.
  • Supports shifting/controlling/alting, pausing, function keys. Does not support passing joystick commands through, tho.
  • I wrote it, so I can do cool things with it. I'm planning on making the throttle slider on my gamepad control the delay - so I can tweak the speed/delay based on lag. No clue if this would be useful, but sounds fun.

Disadvantages over the Microsoft 4.0 sidwinder software

  • It's totally non-commercial. It's likely it won't run on your machine, or work with your joystick (since I've tested it on 2 machines with 2 different joysticks only).
  • It has no documentation at the moment (this could change if people want it to...)
  • It's pretty ugly.

FAQ (well, I'm guessing they'd be asked...)

Q) What's the macro sequence to twist 3 song?
A) This seems to work pretty well on my machine (PIII 500, 128 megs, cable modem). Your mileage may vary:
/stop{ENTER}{DELAY 250}1{DELAY 3300}/stop{ENTER}{DELAY 250}2{DELAY 3300}/stop{ENTER}{DELAY 250}3{DELAY 3300}
Q) How do I make a macro repeat?
A) Type "Yes" in the "Repeat" column (or double click it)

Q) How do I make a macro keep running?
A) There are a couple of ways to do this:
  • Hold down the button as long as you want the macro to run/repeat. A rubber band seems to do the trick for a lot of joysticks.
  • Set the "Sticky" flag to "Yes" (by typing "Yes" or double-clicking the field) for the macro.
Q) How does "Sticky" mode work?
A) When you have a macro set up for "Sticky" mode, hitting the button once will start the macro, and hitting that button again will stop the macro. Hitting any *other* button will also stop the macro, but that will also start the macro assigned to the other button (if there is one). If you have "Repeat" mode turned off for this macro, the macro will only execute once. If you have sticky mode turned off, then a macro will only execute as long as you have the button pressed.

Q) How come I get text spitting out that I don't have set in my macros
A) It's possible that you may have other software still running that's doing joystick macroing as well (ie: Sidewinder software). Either shut down macroing with this software, or clear the macros from the keys in that software.

Q) How does editing the file from another machine work?
A) JoystickMacro checks the .INI file in the directory it's running from once every second to see if the file has changed (this seems to be pretty low overhead with only 2 files in that directory). If the file date/time changes, then the macros are re-loaded from the file. You can edit this file manually with a text editor, or run JoystickMacro over the network remotely to edit the macros.

Where to contact me with problems/feedback

My e-mail address is: Gilgrin@nessoft.com. Also, I check the Backstage pretty frequently, so you can post questions there (if you feel others could benefit from hearing the answer) and I'll try to post answers there.


E-mail us