Contents

Previous

Next

Last

Basic Map Programming Techniques

This section covers the basic techniques for creating a new Control Manager map and discusses some of the things that need to be considered when creating a map.

Map Types

Before beginning a new map, you'll need to decide which type of map you need to created. Maps generally fall into one of two categories, "Direct" or "Combined". The type you'll need to use is usually dictated by the game for which the map is intended.

"Direct" Maps

In a "Direct" map, each of your controllers will have a corresponding Control Manager Device in the Windows Game Controllers Applet. The Control Manager Device will have the same axes and buttons as the actual controller and there will be a one-for-one relationship between them. This type of map is suitable for games that can recognize more than a single controller. Many later games have this capability.

When a game does support using multiple controllers, the Direct map is generally preferred as it allows maximum utilization of in-game functions by allowing all of the axes and buttons on all of your controllers to be seen by the game. This reduces the amount of programming required to produce the map, with some games no further programming in the map is required, the buttons and axes can be assigned in the game itself.

Using a Direct map is very similar to running the Control Manager in Direct Mode with no map at all. In its simplest form, the most obvious difference is that the devices that Windows sees will be Control Manager Devices rather than being shown under their normal names (FighterStick, Yoke LE, etc.).

It does have other advantages, though. First, it give you control over which Control Manager Device will be "Joystick #1", which will be "Joystick #2", etc. In Direct Mode, the ordering will be determined by Windows based on how the devices show up at Windows start and that can create problems for some games.

Using a Direct map also gives you access to all three program Modes and the Shift Button functions, so you can increase the number of assignable controls in the game. For example, if you're using a Flightsim Yoke USB, you can set aside one buttons as the Shift button, then assign the unshifted side of the other eleven buttons on the yoke to the first eleven buttons on the Control Manager device and the shifted side of those same 11 buttons to buttons 12 through 22 on the Control Manager device. This gives you 22 available buttons in the game as opposed to the 12 available in Direct Mode.

"Combined" Maps

The second type of map is one in which several devices are combined to form a single virtual controller in Game Controllers. This is the type of map that's necessary for games that only support Joystick #1 and you want to combine your primary controller with a throttle and/or pedals to get full functionality from your control system.

In this type of map, all assignments are made to a control on "CM Device 1" regardless of which controller they're on. Buttons that aren't assigned to "CM Device 1" are either programmed to send characters or to do nothing at all.

For example, if you have a FighterStick, ProThrottle, and ProPedals, you can combine them into a "Control Manager Device 1" that includes the X and Y axes from the stick, the Z (throttle) axis from the ProThrottle, and the R (rudder) axis from the ProPedals resulting in a basic 4-Axis controller that will work with virtually any game.

Combined Maps are most easily created by using the Map Wizard to create the map in the first place, or by using the Controller Wizard to combine the devices manually. While you can certainly create a combined map by manually assigning all the controls on your controllers, if you use the one of the Wizards it will make the most common assignments for you. It will also set unused axes and buttons to Programmed Mode (but not programmed to do anything). This saves a lot of switching of modes when it comes time to fill in the functions that can't be mapped through directly.

Control Manager Scripting

As noted earlier, the Control Manager includes a scripting facility (CMS) that advanced users can access to create complex functions that can't be achieved using only the GUI. The CMS requires some basic understanding of programming concepts and a good understanding of how the Control Manager itself functions. If you're just starting out with Control Manager maps, it's recommended that put off the scripting until you have a good understanding of how the system operates. In most cases you'll find that you can accomplish what you want without the CMS.

If you do decide you need to use the CMS, be sure to read the section on CMS Scripting for complete descriptions of the functions available.

Basic Map Creation

Once you've decided which type of map you need to create and whether you want to use the CMS, you're ready to begin the map creation process. The first step is to create the basic map itself. By far, the easiest way to do this is to use the Map Wizard. It will lead you through the creation process requiring only a few mouse clicks and when it's done you'll have a basic working map to start from.

You can also create the map manually by repeatedly using the Add Button to add each of your controllers to the map. If you want to create a Combined map, you can use the Controller Wizard once the devices have been added to make the basic assignments automatically. Again, the end result will be a basic working map to start from.

Assigning Functions

Beyond the creation of the basic map, what the controls will do is up to you. Regardless of whether you created a Direct or a Combined map, any of the axes and buttons on your controllers can be assigned or reassigned to do whatever it is you want to do. Nothing is "cast in stone" as a result of the initial creation. If you've used one of the Wizards to create the map and don't care for the assignments that it made, you can manually move them around, assign characters to them, even move them to different Control Manager Devices if necessary. It's entirely up to you. Simply select the controller and the specific control in the Selection Pane, then make whatever assignment you want to in the Dialog Pane.