Alternative Game Controls

Started by
2 comments, last by Bocasean 16 years, 2 months ago
I'm new here...this is actually my first post. I'm a long-time gamer, but my technical prowess is limited to making one crappy map for Day of Defeat about 4 years ago. I need a push in the right direction, and really have no clue where to start. Basically, how would someone modify the controls of a PC game to work from another, non-traditional source besides a keyboard? Obviously the source code of the game would need to be provided, but I'm not sure what type of difficulty we're looking at. I'm assuming that it's possible, if Nintendo can make the Wii, Cateye can make Game Bike, virtual golf driving ranges exist, Expresso Fitness can make their Spark bikes, and I've seen several "motion-specific" games for boxing, baseball, football, etc. I just don't know where to begin to research this topic, and eventually find some programmers who can help me make it a reality once I find my direction. I appreciate any help.
Advertisement
Quote:Original post by Bocasean
Basically, how would someone modify the controls of a PC game to work from another, non-traditional source besides a keyboard? Obviously the source code of the game would need to be provided, but I'm not sure what type of difficulty we're looking at.


You don’t even need the source code of the game, you just need to write a program that reads the input from your special device and emulates keyboard and mouse input in the game.

Programs like
Pinnacle Game Profiler
, JoyToKey and AutoHotkey use this method to add joystick support to any game.
Essentially it's the same as any peripheral development - you design the hardware, then you write the drivers for it. Assuming you have the hardware experience already, you'll need someone who is capable of writing device drivers. It'll pretty much be the same as any other game controller driver, since you'll most likely be supplying several sets of data, either continuous ranges or discrete values. I think under Windows you'd configure it as a HID (Human Interface Device) which has some standardised routines you'd use on the OS side, but I have no idea how that works more on the hardware side. You might want to look at how people have got the Wii to work under Windows, too.

If you don't have the hardware experience, that's probably going to be a big problem. When I dabbled with the world of writing USB drivers for totally bespoke software back in 2002, getting any information on it was near impossible. You had to negotiate directly with Microsoft to get half of the help and software you needed, and 90% of the documentation for that assumed you were just porting Windows 2000 devices. It's probably better now, but I expect most of the good stuff is in the form of commercial components.

Anyway, if you get past all that and present your hardware to the operating system as a typical controller, then it will Just Work with many games, providing your device supplies the axes and buttons the game requires. (And as Kambiz has added while I was typing this, even if you don't supply the right ones, it may not be a terminal problem, just an inconvenience.)
Hmm...maybe if I had a better understanding of the methodology that's currently being used. For example, the GameBike from Cateye uses the pedal action of the bike to move the vehicles on any racing game from PS2. The steering controls are located on the handle bars.

The steering controls are easy for me to comprehend, but I get confused when trying to figure out how they can modify the speed controls to the point where the speed of pedaling controls the speed of the vehicle in the game.

Since the GameBike works with many different games, they more than likely did not have access to the source code. They basically turned the bike into one giant controller, but I can't figure out how they got the pedal speed to be so interactive.


This topic is closed to new replies.

Advertisement