VirtualJoystick Server & Client: 2006/01/27
This project is a interesting one for sure. I needed to control a game client, Star Wars Galaxies, on multiple systems - running one input.

First, I have a real joystick on one system and then use a virtual joystick driver on the other systems. Using a client program that connects to the server over TCP/IP, I select the joystick buttons used and then send those button presses to the virtual joystick drivers. This allows me to control all the characters that are logged in from one joystick.

A nice example of this is I was playing as my Jedi, 3 bounty hunters, and one medic all in one group. Then, using one button, I can have all those characters follow the Jedi. I have another button set up to be the assist and yet another button for shooting. I also have a button bound to a hotbar slot that starts an in-game macro to fire off specials as needed, as well as another button to stop those in-game macros.

This was one of the easiest ways I found to complete some instances in order to obtain items I needed, since finding a group wasn't always easy. One time, one of my systems was broken and my friend had his system setup.

The fun part is he lived 35 miles away. He had the virtual joystick drivers installed and ran the joystick client which then connected to my server over the internet. Then, he loaded SWG and he set up the hotbar as I instructed him. After that, he joined group and I was able to control his character without any problems for the instance we were doing.

I will add more information to this section as I have time.