WWII ONLINE GUIDE

The Keymapper

Written and Compiled by SgtSpoon

Revised June 27, 2002 (v1.65)

 

 

A New Keymapper

 

The Keymapper is a powerful function in World War II Online, and consequently it is one of the harder functions in the game to understand and use successfully. The versatility is comprehensive: you can map practically any key, axis movement, mouse function, or slider to a key command.  You can even map keys to axis of movement in the game. Even more interesting, you can use an XML-based script to map the game commands outside of the game.

 

This section, thoroughly long, will give you a comprehensive look at what the Keymapper does and how to use it. It can get somewhat repetitive, but it needs to be that way to fully explain certain functions. Like other sections in the OGM the Keymapper guide will be improved and appended to over time, but this is your base start.

 

Finally, we at Playnet are indebted to the time and effort donated by the player SgtSpoon, who wrote and compiled practically the entire section. Though the credit goes all to him, we must take responsibility for any errors or typos that may crop up.

 

Overview

 

Welcome to the new keymapper for World War II Online. This interface will be evolving all the time so be sure to refer to this section if you see a new feature as it will be updated as the keymapper is updated. There are a lot of new features, such as the ability now to either directly input the axis or button, or use the interface to choose the axis or button for a function. If you have troubles with say assessing the diagonal directions on a POV (point-of-view) hat, you can simply choose the supported axis or button from a list and map it that way. You also now have the ability to map once for each type of vehicle using the ALL map function; this becomes the default for every vehicle of that type. Plus, you can also map for each vehicle specifically. ALL basically becomes the default for every vehicle from that category, and then you can just change what you need in a specific vehicles’ keymap instead of totally having to remap. What is in the specific vehicles’ keymap overrides what is listed in ALL.

 

There is now a joystick calibration screen and mouse sensitivity slider. This keymapper also has support for four joysticks each using 8 axes, 32 buttons, and 4 POV hats, a mouse with a scroll wheel and five buttons, and a 101 key/US keyboard making for a total of 36 axes, 128 buttons, and 16 POV hats all being able to be used at the same time. Each function has a secondary method to control it as well.

 

The Main Keymapper Interface

 

 

1. Buttons to switch top display between keyboard/joystick/mouse/keyboard axis and calibration screen.

2. Displays the different screens activated from the buttons above.

3. Drop down box to choose category.

4. Drop down box to choose vehicle.

5. Interface buttons

6. Exit keymapper button.

7. Function list and assignments.

8. Primary button/physical axis.

9. Secondary button/physical axis.

 

Top Window Screens [Top of the Interface]

 

These buttons switch between several screens in the window right below them.

 

 

The Keyboard Screen - Here you will see a representation of a 101 key/US keyboard. If you single click on what you want to map and what it is then mapped to a keyboard key, that key will highlight yellow on this screen (only if this screen is showing, it will not switch automatically). You can also use this screen to input what key you want mapped to a command function as each button can be pressed. See Using the Interface to map a function.

 

 

The Joystick Screen - This screen shows the axes and buttons that World War II Online supports for joysticks. There are four check boxes to display/choose between up to 4 joysticks at one time, with 32 buttons, 4 POV hats, an invert display/choose check box, and 8 full axes and each of their own half-axes. This screen is used similarly to the keyboard screen as it will display what is mapped to the joystick and can be used to input what you want mapped to a command function.  See Using the Interface to map a function.

 

 

The Mouse Screen - This screen shows the axes and buttons World War II Online supports for your mouse. There are 5 buttons, 3 axes (z-axis is the scroll wheel) and their half axes, an invert display/choose check box, and the mouse sensitivity slider. The Mouse screen is used exactly the same way as the keyboard and joystick screen (See Using the Interface to map a function) except for the mouse sensitivity slider. This slider is used to change the acceleration of your mouse if you find it too slow. It is useful if you find turning as infantry takes too great of a movement on your desk. The slider is set at the slowest setting by default.

 

The KbAxis Screen - This screen is actually detailed later in the manual. It currently works similarly as the other screens but you need to have clicked in the appropriate place (last column next to an axis command function -- to use this screen and it will pop up automatically when this column is clicked upon. See Keyboard Axis for more information.

 

The Calibration Screen - This button displays the calibration screen.  See Calibration Screen for more information.

 

 

Category

 

General – Contains all offline camera functions and command functions that are non-vehicle specific, such as the heads up display (HUD) and exiting a vehicle. All mapping here is global, meaning it works independently from a specific vehicle’s keymap. If you map a joystick button to “show map” here that will be the same button that you use for that function in every vehicle. Be careful not to cross-map these keys in another category and/or another vehicle’s keymap as it will try to execute both commands.

 

Views - Where you map your basic your hat POVs (points of view). Tip: You can use a key combo to set up multiple views for any POV hat, so one hat can handle all up, down, and level views. For example, I used to use CTRL for look up, then CTRL-POV north for look up + forward and ALT for look down, ALT-POV northeast for look down + forward + right. Now I use a Saitek X45 and use the pinky switch for look up and the mouse cursor 4-way hat down for look down. You can use any joystick button as a combo key also, but it is a good idea to use one that you can reach with your other hand (key combo's are further explained below). Note that certain CH Products POV hats that use blending of two view commands for diagonal views are not currently supported.

 

Air - Map aircraft command function lists.

 

Tank - Map tanks command function lists.

 

Atgun - Map anti-tank and anti-air guns command function lists.

 

Truck - Map trucks and half-tracks command function lists.

 

Trooper - Map infantry command function lists.

 

Sea - Map sea vessels command function lists.

 

 

Vehicle

 

This is where you choose which vehicle you want to keymap after choosing a category. Every vehicle that is covered under that category is listed here, including ALL, which is a general keymap for all of the vehicles in that category. ALL is selected by default. Under general or views, it means that these mappings are global to each category and specific vehicle’s keymap.

 

Interface Buttons

 

Here is a description of the middle buttons on the keymapper:

 

 

Default Category - Restore the viewable list to its archived version (default values) while in the ALL list; when in a specific vehicle list this button restores that vehicle’s viewable list to the ALL list.

 

Restore Keymap - Restore the selected function to its previous (not archived, but previously saved) version after you single click on the mapping and it highlights white -- also used when you’re in a specific vehicle’s keymap. It will restore the selected keymap to the ALL list if the function was mapped as NO KEY.

 

Restore Screen - Restore the current viewable list to its previous (not archived, but previously saved) version.

 

Clear Keymap - Clears the key(s) of the selected function after you single click on the mapping and it highlights white. This will also block the default or ALL list mapping by placing code in the CMFL and displaying "no key”. Use the restore keymap function to allow the default or ALL list to be used.

 

Save Screen - Saves the current viewable list.

 

Save All - Saves every category and vehicle.

 

Tips on using the file structure: First, go through and map each vehicle type in ALL first. Map the common buttons and axes that you use for each vehicle of that type. The ALL list will become the new default for each vehicle. Now, if you map the specific vehicle’s keymap, you just need to make small changes, not remap the whole thing. Using Clear Keymap simply assigns nothing to the function; Use Restore Keymap to return it to the default or ALL keymap. If you are having trouble in one vehicle and it is mapped properly in ALL but that function is not working in that vehicle, check its specific keymap and if “no key” is listed next to the function, use the Restore Keymap button to allow the ALL keymap to be used. Remember, what is in a specific vehicle’s keymap overrides ALL. The reason for “no key” is if you want to block a function from being mapped, this is good for making sure you don't have something mis- or cross-mapped. So if you really want to be sure it is cleared and not blocked, click clear Keymap then Restore Keymap while the function is highlighted white.

 

Note on saving: You can go through and change all you want in the keymapper, flipping through categories and vehicles and you only need to save before you leave, in fact it should prompt you to save.

 

 

Exiting the Keymapper

 

Press the big red shiny exit button to return to the interface. Don't worry if you changed something and haven't saved it you will be prompted and asked if you want to save the changes. The Keymapper will save the changes for every category and vehicle.

 

 

The Command Function List

 

 

After choosing a category and/or vehicle keymap, the current command function list for that category and what is mapped to them is listed in the lower screen. The first column lists all the command functions for that category, the second column shows the primary button (key, or key combo) or axis it is mapped to.

 

Tip - Remember to scroll the list to see if there are any more functions.

 

There are two types of command functions. One requires only one button (or key combo) to be mapped to trigger it (“button command function), and one that requires either a physical joystick/mouse axis or a virtual axis using buttons (“axis command function).

 

Button command functions - This type requires only one button (or key combo) to activate the command. These commands are generally on/off or have set parameters that you cannot change. You can also map an alternate key (or key combo) to activate this command. This is so you can have a joystick button and a keyboard button control mapped to the same command. You can also use this for some neat tricks, like mapping the 109's cannons and machineguns to one button and still have separate buttons to control each of them. Be careful about your mappings though, as they can cause conflicts especially with the general and view categories as they are global and work the same for each vehicle. This type of command function uses the two columns next to it for Primary and Secondary mappings, but both control the function in exactly the same way.

 

Axis command functions - This type requires an axis to control this command function. There are two types of axes, physical and virtual:

 

            A physical axis (generally referred to as just an axis) is just that, the actual movement of a real mouse or joystick’s axis in one direction (left/right, up/down). The axis that is mapped appears in the column next to the command function listing. A full physical axis can also be split into two more axes called a half axis, which means it uses just one side of an axis from center (left to center would be a half axis; so would be up to center). More on that later.

 

            A virtual axis (generally referred to as a keyboard axis) uses keyboard or joystick buttons to mimic the effect of a physical axis. This is done on its own separate screen (the kbaxis screen) in the top interface window that is accessible and only functional after clicking on the last column next to the appropriate axis function. Use of this screen is further explained below.

 

If a mapping in both columns are blank or displays “no key”, nothing is mapped to that function with the exception of when it says “keyboard”. To see if anything is mapped here, simply click on the word “keyboard” where it appears next to the function (last column), then the KBaxis screen will appear at the top showing the mapping. If it says “no key” in each box then nothing is mapped. If you then use Restore Keymap at the top of the screen, either the defaults (or ALL mapping) will come up or it will be blank and the word “keyboard” will not appear in the command function list mapped to that function.

 

As you map, depending on where you mapped it, the axis or button that you mapped will appear in a certain color. This is so you don't get lost trying to map as the ALL and vehicle map appear in exactly the same place with the exact same function list and doesn't appear to change unless something is mapped in a specific vehicle. It is for convenience only and does not signify any cross-mapping or error.

 

Colors:

* Dark Gray - Archived version or "default".

* Blue - Category (ALL) change.

* Orange – A vehicle change

 

Tips on mapping - Since each position in a vehicle only controls the command functions available to the crew member manning that position (only the driver can drive and shift gears, only the gunner can move, shoot, or dial in the range for the main gun) you can reuse keys for each position. For example, I have shift up and shift down mapped to joystick buttons two and three, and since I cannot shift gears from the gunner’s position (the buttons would do nothing) I could also map joystick buttons two and three to dial in the range up and down. Just be sure if you do this you don't have the same function in each position. You can also use a key combo to “shift” a function on a button, so that when you press a button one function happens but you can also map it so when you press another button along with pressing that button it will execute a totally different function. This is called a key combo and is further explained below.

 

 

Mapping Your Joystick and Keyboard to a Command Function

 

There are two ways to map your command functions: either by directly moving the axis or pressing the desired key or using the interface at the top to map by choosing the button or axis that you want with your mouse. If one way doesn't seem to work for you, try the other. You map simply by clicking in one of the two columns next to the command function that you want to map. As described under 'The Command Function List' these two columns have different properties depending on the type of command function it is:

 

Single clicking directly in one of the columns will highlight the whole function line white and there will be a thicker boarder of white around the column that you clicked on. Doing this performs a few different functions. First, it will highlight the key, button or axis that the function is mapped to in that column yellow on the top window (only if you have the top window on the correct screen for where that button or axis is located). Second, it will allow you to choose a key or axis from the keyboard, joystick, or mouse top screens. Third, if you click on the last column to an axis function, it will switch the top screen to the kbaxis screen and allow you to input up there on that screen. Also it will, if another key or button is already mapped, allow you to add another key to that column to create a key combo.

 

Double clicking directly in one of the columns will highlight the whole line white and that column will highlight yellow. It will now enter in the next button press or axis movement you make. This is used to directly input from the device you want to control the function. Note: you cannot highlight the last column next to an axis function yellow as all the mapping done there is performed in the top window on the kbaxis screen.

 

Other definitions you will need to know:

 

Key Combos - A key combo is two buttons that have to be pressed together to trigger a command function. This works in two ways: the first way is with a vehicle command function -- you can map one button to two different functions simply by assigning another key to the second function to act as a “shift” key. For example, you map WEP (War Emergency Power) to joystick button 8, and you map gear up/down to LEFT SHIFT, joystick button 8. Now when you press joystick button 8, WEP will activate. If you hit LEFT SHIFT and hold it while hitting joystick button 8, your gear will raise or lower but WEP will not activate. When using this with vehicle functions, make sure you don't have LEFT SHIFT single mapped to any other command function for that position (also check in views or general) or just the function that is single mapped to LEFT SHIFT will happen and not the key combo (but the single mapped button 8 function will happen and WEP will activate). The exception to this is with views; you can single map a look up key and a look down key (look forward and down is look down) then map that same look up key to act as the SHIFT key for the POV hat and of the look up command function (look up + left, look forward + left + up, etc.). When you hit the look up key, hold it, then move the POV hat around it will move the view around as if you craned your head back and turned it from side to side. This can be done with the look forward and down key and all of the look down + functions. A key combo is shown in the function list as two keys in the same column separated by a comma. Only buttons or keys can combined, not an axis.

 

Full Axis - The full range of motion of a joystick or mouse in a left/right or up/down axis through the center (on a mouse it is an invisible "virtual" center).

 

Half Axis - A half axis is just that, half of a joystick or mouse axis. On a joystick, it is one side of a joystick axis from center to full extension in one direction only where a full axis travels through the center to the other side fully extended. On a mouse it is an invisible virtual center. It shows in the interface as a plus or a minus after the axis name; plus means right or up, and a minus means left or down (depending on the axis that you choose). So if I mapped right brake to the right half of my joystick's left/right motion (x-axis) it would read like this in the function list: joystick 1 x-axis+, where a full axis would not have the plus (or a minus). Half axes are generally only needed for left brake, right brake, left clutch and right clutch. You can do some neat advanced stuff with them though.

 

Inverted Axis - An inverted axis is basically an axis that is reversed, so if you move the joystick or mouse to the left, it would go right. This is usually used on an axis that moves towards and away from you or on a slider that just seems to go the wrong way to you. In the function list when an axis is inverted, the symbol (^) shows before the axis that is mapped to. An inverted y axis on joystick one would look like this: ^joystick 1 y-axis. Note: if you single click on the function and are on the appropriate top window, the invert check box will check or uncheck itself to show the state of the axis that is selected. I don't recommend inverting a half axis.

 

 

Direct Input Method

 

To map button command functions directly by pressing the key, simply double click in one of the two columns next to the function you wish to map. The whole function line will highlight white and the column you selected will highlight yellow and clear any previously saved button or key combo. Simply press the key or joystick button you wish to map to that function; the key you pressed will now appear in the column you selected.  You can use the Restore Keymap button to return that keymap to the previous mapping after single clicking on the same place, then hitting the restore Keymap button.

 

To map a key combo to trigger a button command function, simply double click in one of the two columns next to the function you wish to map. The whole function line will highlight white and the column you selected will highlight yellow and clear any previously saved button. Press and hold the first button then press the second. As soon as the second button is pressed, the two buttons will appear in the same column separated by a comma. Tip - I suggest using one button as the shift button for all combos (except view combos) and that it be not mapped to any other command function alone.

 

To map an axis command function to a joystick or mouse full axis, double click only in the column directly next to the function you wish to map. The whole function line will highlight white and the column will highlight yellow and clear any previously saved full or half axis. Simply move the axis along the full motion of its axis a few times. The joystick axis will appear when it is registered. Note: if a + or - appears next to the axis, you did not move the axis the full motion of its axis and a half axis is mapped by mistake.

 

To map an axis command function to a joystick half axis, double click only in the column directly next to the function you wish to map.  The whole function line will highlight white and the column will highlight yellow and clear any previously saved full or half axis. Simply move the axis from the center to one side and back to the center again a few times. The joystick axis will appear with a + or - next to it when it registers. If you do not receive a + or - sign after the axis is displayed you moved the axis past center and it registered as a full axis. Note: a plus sign (+) signifies right or up, while a negative sign (-) signifies left or down. Half axes are generally used only for tank left/right brakes and clutches (they are independently controlled tracks) but they have some other uses also.

 

Mouse half axes can not be mapped by direct input, you must use the interface input method below.

 

To invert an axis, first clear the current keymap for that command function by single clicking on the currently used axis, then using the Clear Keymap key. Choose the appropriate top window button for the controller you are using for that axis at the top of the screen (joystick or mouse), press the invert check box, then double click on the column next to the function you wish to map, and move the axis. The symbol ^ should appear before the axis; this means it is inverted. Be sure to uncheck the inverted box or all of the following axis inputs will be inverted. To revert an axis, single click on the function and press Clear Keymap then re-input the axis.

                       

To map an axis command function to keyboard or joystick buttons instead of a physical axis or as an alternate control to a joystick or mouse axis, refer to the Keyboard Axis section below.

 

Note: If the keymapper doesn't recognize the axis or button at all, or the button is tricky to hit (such as diagonal on POV hats), try the method below.

 

 

Using the Interface to Map a Button or Axis to a Function

 

To use the top interface window to map a button command function, single click directly in one of the two columns next to the function. The whole function line will highlight white and there will be a thicker boarder of white around the column that you clicked on. click on the Clear Keymap button (this is necessary, because if there is a button already mapped it will key combo the two buttons) to clear the mapping, then click on the either the keyboard, joystick, or mouse button at the top of the interface so that the appropriate screen pops up in the top window of the interface. Simply select the key or button in the window at the top of the screen. Now choose another function to map or hit the Save Screen button. Note: This way can be used to remove a key from a mapping also; just single click on the function and press the same key that is mapped.

 

To use the top interface window to map a key combo to a button command function, single click directly in one of the two columns next to the function. The whole function line will highlight white and there will be a thicker boarder of white around the column that you clicked on. Click on the Clear Keymap button (this is necessary, because if there is a button already mapped it will key combo those two buttons, the already mapped one and the one you pressed) to clear the mapping, then click on the either the keyboard, joystick, or mouse button at the top of the interface so that the appropriate screen pops up in the top window of the interface. Select the key or button in the window at the top. Now to add the combo key, simply choose another button from one of the appropriate three screens (by hitting the keyboard, mouse, or joystick button). After the second button is entered the selection will automatically be entered.

 

To add a key to an existing mapped key to create a key combo, single click on the already mapped key; it will highlight as above and choose the top window screen for the button you want to add. Just press the button you want. After the button is entered, the selection will automatically be entered.

 

Tip - I find directly inputting the key I used for look up or look forward down (look down) in views to all of the up and down views (respectively) first, then choosing the joystick screen button at the top, single clicking on each of the view functions, then choosing the appropriate point of view hat direction. This alleviates all the fumbling with the POV hat diagonal directions.

 

To use the top interface window to map a full or half axis on a joystick or mouse to an axis command function, single click directly in the column directly next to the function. The whole function line will highlight white and there will be a thicker boarder of white around that column, then choose the proper top interface window button (joystick or mouse) and click on the appropriate full axis button or one of the two smaller half axis buttons, directly to the left of the full axis button. Remember that when using a half axis the plus sign (+) means right or up, depending on the Axis that you choose, and that the negative sign (-) denotes left or down (also depending on the axis). If the function already has a mapping, press the same axis button twice. The first click will clear the keymap, the second click will enter the axis.

 

To invert an axis using the interface, simply single click on the column next to the axis function that you wish to map, then choose the mouse or joystick button at the top of the interface to call up the appropriate screen. Check the invert box and then the button that corresponds to the axis you wish to invert. If the function already has a mapping, press the axis button twice. The first click will clear the keymap, the second click will enter the inverted axis. To reverse this (or revert an axis), simply follow the above instructions but clear the invert check box by clicking on it and then choosing the same axis. I do not suggest inverting a half axis.

 

To map an axis command function to keyboard or joystick buttons instead of a physical axis or as an alternate control to a joystick or mouse axis, refer to the Keyboard Axis section below.

 

 

The Keyboard Axis Screen

 

 

Note: This screen is still under construction and will probably change to be made more user friendly with certain axis command functions; be sure to check this manual again as we will update it with each new change so that it is current with each patch release.

 

A keyboard axis (also known as a virtual axis) uses joystick or keyboard buttons (or both) to mimic a mouse or joystick physical axis. It can be used, in conjunction with or instead of a physical axis. There are multiple ways to map on this screen and you can even choose more than one way as all of the three different mapping methods will function together if you use different keys. You need to find the one most comfortable for yourself, as every person has different tastes in control. On some functions some ways to map work better than others.

 

To access, view and edit the values for this screen, single click on the LAST column next to the axis command function you wish to map (when you click on that last column, the top window will automatically switch to the kbaxis screen). The rest of the mapping is done with the text boxes on the screen in the top window. Note: unless you choose an axis command function, you will not be able to enter or see any information mapped on this screen.

 

To enter the appropriate keys, or joystick buttons, double click on the appropriate white box next to increase, decrease or any of the percentage boxes (but not the "% per keypress" or "% per second" boxes) and it will highlight yellow. Press the key or button on the joystick you want to map to that setting.

 

Single clicking on one of these white boxes (but not the "% per keypress" or "% per second" boxes) will grey it out and allow you to use the middle interface buttons on that box (such as the clear keymap button).

 

To enter values in the "% per keypress" or "% per second" boxes, single click and type in the number, then single click on a neutral spot on the interface to enter the number or choose another box. Note: if one of the other boxes is greyed out, it will prevent you from entering a number.

 

Other notes: You can freely use the top window interface buttons without losing your keymaps or the ability to enter in the kbaxis screen as long as the axis command function is highlighted in the bottom screen. You cannot currently use key combos and can only directly input the key or button.

 

Now there are three different ways to control each of the (currently) four different axis types with the buttons or keyboard keys. You can use all three methods plus a physical axis to control the axis command function and each will pick up where the last one left off (well, in the case of the joystick it will jump to where the joystick is at when it is moved). First we will go into the different control methods.

 

Note: I don't recommend mapping the same keys between each method of control (such as using the exact same keys for discrete and continuous, this is unsupported). Also remember that some methods will work better on some axis command functions than other axis command functions.

 

 

Discrete Keyboard Axis

 

Discrete is just one keypress per movement and each movement is exactly the same percentage no matter how long you hold the key (unless you use third party software or something similar that allows joystick buttons to be assigned to keyboard commands, and some sort of repeat keypress function is applied by mimicking the pushing of a button several times).

 

Increase Key - Pressing the key you define here adds the percentage defined in the % per keypress box once with each keypress, depending on the direction of the axis you mapped this to, it is either increase, right, or up.

 

Decrease Key - Pressing the key you define here subtracts the percentage defined in the per keypress box once with each keypress, depending on the direction of the axis you mapped this to, it is either decrease, left, or down.

 

% per Keypress - Sets the percentage that the axis moves with each keypress. It is the percentage of the total length of the axis, so 25% would be one/quarter of the whole axis. Note: Not all axes start at 0%, see below.

 

Continuous Keyboard Axis

 

Continuous moves the axis with two modifiers: one is how long you hold the key down for which modifies the percentage you set (which is the other modifier). The percentage is calculated the same as it was with discrete so let’s use 25% again. Continuous will swing the axis 25% of its total length if the button is held for exactly one second. So if you held the button for 2 seconds, it would move 50%.

 

Increase Key - Pressing the key you define here adds the percentage defined in the % per second box for each second that the key is held, depending on the direction of the axis you mapped this to, it is either increase, right, or up.

 

Decrease Key - Pressing the key you define here subtracts the percentage defined in the % per second box for each second that the key is held, depending on the direction of the axis you mapped this to, it is either decrease, left, or down.

 

% per Second - Sets the percentage the axis moves when an increase/decrease key is held for one second. If you press the key for half a second the percentage moved is halved, if held for two seconds the percentage is doubled and so on. This moves the axis smoothly but is hard to center on some axes. Note: Not all axes start at 0%.

 

 

Absolute Keyboard Axis

 

There are three different ways absolute axes work when you press a button defined here. Its properties differ for different axis command functions:

 

Gas, throttle, wing control surfaces, and flaps - The keys defined in the percentage boxes will move the axis to this percentage of the axis instantly and it will remain there when the button is released. Gas, throttle, and flaps start their axes at 0%, meaning this is their “off” or “no effect” state (flaps fully retracted, throttle closed, gas pedal not pressed and 100% means that their effect is fully applied). For wing control surfaces it is different; 50% is their centered or “no effect” state (the surfaces swing in two directions and only when centered do they not effect flight) so 0% and 100% would now represent direction (left, down, right or up) with 50% being center. A surface that swings left to right, such as the rudder (yaw), means 0% represents full left, 50% is centered, and 100% is full right. One that moves up and down, such as the elevator (pitch), means 0% represents full down, 50% is centered, and 100% is full up. the percentages in between 50% and either 0% or 100% represent different positions between the center and fully to one side.

 

Brakes and clutches - The keys defined in the percentage boxes will move the axis to this percentage of the axis instantly and hold it there until you release the button -- it will then no longer apply any effect. Note: This is not currently functional on clutches. Both of these start at 0% which is their “no effect” or “off” state (pedal not pressed at all) and 100% represents their effect fully applied (pedals pressed all the way).

 

Turret elevate/traverse, at gun turn/move, and steering - The keys defined in the percentage boxes will move the axis at different speeds and direction while you hold the button, and stop when you release it. The way this function behaves is similar yet different than wing control surfaces. Because the percentages boxes for wing control surfaces represents direction and where the axis you are controlling is positioned -- for turrets and such -- the percentage boxes mimic a joystick (representing direction and speed of movement in that direction), with 50% being the center of the joystick, and 0% representing moving your joystick all the way left or down (depending on the direction that the axis function moves) and 100% representing moving your joystick all the way right or up (again depending on the direction the function moves). The percentages in-between represent relative speed, sort of like moving your joystick just a bit in either direction. A button mapped in the absolute 60% box to the “turret traverse” function, which turns the turret left and right, would move the turret to the right slowly while that key was held and it would stop when the key was released. If the button were in the 0% box, pressing the button would move the turret as quick as it can go to the left. Note: It's a good idea to keep the two keys you would use for direction on percentage boxes the same percentage distance from 50% but on either side of it, so that they travel the same speed in the other direction. You can map two pairs of keys for different speeds of movement if you want.

 

Note: Currently, releasing the key so that the function stops moving isn't working on the atgun turn/move or steering functions through the interface at the moment.

 

 

Suggestions, Examples, and Further Explanations of the Keyboard Axis

 

Below all of the pertinent axis command functions and how they work are separated into the three different keyboard axis methods:

 

Gas, throttle, and flaps - These functions start as 0% (which would be no throttle, no gas, and flaps fully retracted) and can move in increments to 100% (full throttle/gas, flaps fully extended) in a straight line. You can use all three ways of control (discrete, continuous, and absolute) with these functions except that using continuous doesn't work very well for flaps. On these functions when the key assigned to an absolute percentage box is pressed the axis moves to that percentage open and stays there after the key is released. Pressing a key in the 100% box would extend the flaps to their full position or open the throttle all the way, and pressing a different key mapped in the 0% box would retract the flaps all the way or cut off the throttle or gas. Discrete would extend or open the throttle in percentages per one keypress, while continuous will move smoothly depending on how long you hold the key down.

 

Brakes and clutches - These functions start as 0% (which would be no pressure applied to the brake or clutch pedal) and can move to 100% in a straight line (fully pressing the pedal as far as it would go). All three ways of control will work with these functions but only the 100% key absolute box is really practical (you could use a lesser percentage but that would not give you the full amount of braking, though I suppose you could use another key to at 80% and one at 100% and alternate between the two but that's sort of the same problem with using the other two types of control, or just use the 80% key but in a jam that might not work if you can't brake fast enough). This is due to the fact that you would need to use two keys in the other types of control (discrete and continuous) to brake or clutch like an axis since with those types of control, one key is needed to apply the "force" to the brake (using metaphors here) then remain in the position they were left in when you released the key and the other key applies the opposite direction.

 

When you only need to enter in one key to the absolute box to get a similar effect you hold the button that is mapped, then the pressure is applied to the brake (based on which % box you choose) while you hold the key. When you let go of that key, the pressure is released (only on these functions does absolute behave that way when you release the key it returns the axis to 0%, and it currently is not working on the clutches through the keymapper interface). When you use the absolute boxes if you want you can set up a totally complicated way to brake or clutch that is more precise but uses more buttons, or you can just use one key to get nearly a similar effect by holding and releasing the button. I find that as long as I use the key properly, it works well...

 

Wing control surface functions (such as trim and yaw) - These axes are different from the above axes in the fact that they start out at 50%, which means they are “centered” and at neutral not affecting the flight of the aircraft. They can move 50% in either direction from center (so 0% would be all the way to one side and 100% would be all the way to the other side, with 50% being the center where the axis has no effect). Continuous and discrete work pretty well, but you shouldn't enter in a number over 50% because that's the farthest it can move in one direction from the center. Say you set 25% per keypress (25% of the entire axis which means it would move in quarters), which would just require two keypresses of the increase key to swing the surface to the full right or up (depending on the axis) from where it starts at center, and then would require 4 keypressess of the decrease key to swing the surface to the full left or down (depending on the axis) past the center. This works as starting out at 50%, adding 2 buttons at 25% -- that makes it 50%+ 50% which equals 100% (if center is 50%, then that mean 100% is full right/up) then we subtract 25% 4 times (each keypress of the decrease key), and that brings us to 0% or full left or down. If we had just pressed the decrease key twice from full right/up the axis would be at center.

 

Now with continuous, this action is much smoother because the amount of time that you hold the key also effects how much of the percentage you set as a modifier gets applied, where with discrete it is just one keypress per movement and each movement is exactly the same percentage no matter how long you hold the key. Continuous moves the axis with two modifiers, one is how long you hold the key down, which modifies the percentage you set (which is the other way). The percentage is calculated the same as it was with discrete, so let’s use 25% again. Continuous will swing the axis 25% of its total length if the button is held for exactly one second. If you held the button for 2 seconds, it would move 50%. Since the axis starts out at 50%, in 2 seconds of holding the increase key the axis would hit full right/up (it's pretty fast) and then to get from there to full left/down it would take 4 seconds of pressing the decrease key. Now if we had only held the decrease key for exactly 2 seconds it would return to center but it would have to be really exact to get it to be perfect and not affect your flight in any small way. So what you can do is use the absolute percentage fields to set a third key to center the axis perfectly. Since 50% is the centered position, use the 50% absolute box. This can be used with either discrete or continuous functions as a centering key. The absolute fields work like throttle, gas, and brakes where it will move the axis to that percentage of the axis' position. When you release the key, the axis will hold there, but any percentage above 50% (center or no effect) is to the right/up of center and any percentage below 50% is to the left/down of center (where on the above axes functions like gas and brake 0% is no effect).

 

I haven't found a use for any other percentage box but the 50% box as a centering key. I generally set my trim to 1% per keypress, 2% per second (two different buttons for each keypress) and the same centering key for all three trims so I can “zero” them out in combat situations). If I am not using a joystick axis for yaw (also called rudder) I map two buttons to about 5% per second and also set a third centering key at the 50% percentage box (it gives me the smoothest control and a way to instantly have the rudder apply no effect).

 

To see what percentage works for you, go to offline mode, use the external view mode and position the camera so you can see the rudder swing back and forth clearly when you use the buttons. then experiment with the percentages in the per second field to find something suitable for yourself.

 

Turret elevate/traverse, at gun turn/move, steering - Now these functions react totally different for the most part than the above type. These functions rely on direct joystick style input (which is mimicked with absolute) where the farther you move the mimicked “joystick” axis from the center effects the speed at which it turns or moves in a direction. This is similar to the way that wing control surfaces are used, but 50% here means the “joystick” is centered (no effect), not the turret or such on the tank. Above 50% would still be to the right/up and below 50% would be to the left/down, but the increments above and below do not reflect the position of where the turret is or such but how fast it MOVES in that direction. It’s the same as on a joystick -- you move the joystick a little bit to the right and the turret would move slowly to the right and if you moved the joystick all the way to the right then the turret would move quickly to the right. Now we apply that idea here, and the “joystick” center would be 50%; 60% would be like moving the “joystick” physically 20% from the center to the right*. 100% would be like moving the “joystick” physically all the way from the center to the right. 40% would move the turret slowly to the left/down, and 0% would move the turret as fast as it will go to the left or down (direction depending on the axis function you choose).

 

Now with that firmly in our heads, we can try to map to the keyboard. First off, don't even bother using discrete or continuous, they will simply not function well trying to control these functions. Absolute works differently with these functions than with the above, and it actually sort of works like the brakes do combined with the direction style of wing control surfaces. You press a key mapped to any percentage box besides 50% (no effect) and it will move as long as you hold the button and will stop moving when you let go of it; which percentage box the key is mapped in will determine the speed and direction that the turret travels. You need to map two keys in the absolute percentage boxes and make sure they are of equal percentage away from 50% (if you map the 70% box for one direction, use 30% box for the opposite direction, this just keeps both directions moving at equal speeds). So say you want to map two buttons to turn the turret slowly to the left or right, simply choose the turret traverse axis command function and click on the last column, then in the kbaxis screen that appears in the top interface window, place the key you want to move the turret to the right (say RIGHT ARROW) in the 60% absolute percentage box and the key you want to turn the turret to the left (say LEFT ARROW) in the 40% absolute percentage box. If you wanted it to move quickly, you would use the 0% and 100% absolute boxes. You can also map one set of keys to the 40% and 60% boxes and the other set to 0% and 100% boxes. Don't forget to set the UP and DOWN keys in the “turret elevate” axis command function as well. Note: Currently atgun turn/move and steering cannot be set properly through the interface. Mapping anything to 50% just means that button will stop the turret from moving.

 

 

* I know that's confusing, but since you are dealing with only one direction here you don't start counting the percentage the physical axis at 50%, you start center at 0% and count to 100%. To accurately reflect where the joystick axis is in relation to the center from one side, you double it. So adding 5% to 50% (no effect) is the same as moving the joystick 10% to the right/up from where the joystick is centered to full right. The scale is halved with the percentage box, because all axes start from 0% to 100% with 50% being the center, where normally a joystick would start at -100% (left/down) and go to 0% (center) then to +100% (right/up) but in the scale provided to you by the code, it goes from 0% (left/down) to 50% (center) to 100% (right/up), so you need to halve it for the code. To select a 10% movement, you add/subtract 5% from 50%.

 

 

The Calibration Screen

 

 

The graphic above shows a movable cursor for joystick sensitivity. The user moves this cursor with the mouse.

The left boundary of the cursor (the dead band) is where the input for the joystick will take effect. The right boundary (the full band) is where the input for the joystick will end. The joystick values are -1000 to 1000. We are displaying 0 - 1000, but this is mirrored on the negative side as well. So, a dead band set at 50 will also be set for -50.

 

Since joystick input is updated continuously, even at rest, a dead band is set as a limit to reach before providing joystick input to the game. The top slider will set this dead band. Likewise, the lower slider will provide the full band, where input will be maxed out. Both dead band and full band settings are displayed in the text boxes associated with each slider.

 

The curve created by moving the joystick sensitivity cursor shows how the joystick inputs will be emphasized based on the current input.

 

World War II Online allows these settings for up to 4 separate joysticks and for each axis control. A user can specify a particular joystick dead band/full band/sensitivity for one axis, and change this for another axis.

 

The reset button will reset all values for each joystick/axis to 0.

 

 

REVISION HISTORY

 

·          June 27, 2002 (v1.65) – Versioning corrected.

·          June 6, 2002 (v1.64) – New section added.