Most users will never want or need to edit this file by hand. To edit your keymap, click the options button, select the Gameplay Options tab, and click 'Configure Keyboard'.
However it is possible to configure your keyboard by editing this file.
Important notes: AC:TD will generate a brand-new acclient.keymap in your My Documents\Asheron's Call folder if it tries to use one and can't find one. So if you do completely break your keymap, you can start over by deleting this file.
AC:TD writes to the keymap file on shutdown of the client. If you make changes in this file while the client is running, it will overwrite them on shutdown.
If you make changes in the Configure Keyboard options and save them to a new file, that will be the default keymap file the next time AC:TD starts up.
Key bindings can be edited under the 'Bindings' header. There are several key fields.
The first field is the Action. This is defined by the game. To find the name of a particular Action, bind a key to it in the Configure Keyboard menu in the client. Exit the client and you will see the name in the Bindings header.
The second field is the device. Devices are enumerated under the Devices header. Generally device 0 is keyboard, device 1 is mouse, other devices follow.
The third field is the key or action. A full list of available actions for this field can be found in Microsoft's DirectX documentation at http://msdn.microsoft.com.
The fourth field is the subcontrol. It can be used to define positive or negative axis for an X, Y or Z input, as well as other options.
The fifth field is also optional, it defines which metakeys need to be depressed. The metakeys are defined and enumerated under the Metakeys header. The number next to the metakey is a bit, metakeys can be combined.
For example the default for Left Shift (DIK_LSHIFT) is 1, and Left Control (DIK_LCONTROL) is 2. I could bind a key to CTRL-SHIFT-M by using DIK_M 0x00000003.
It is possible to edit the Metakey enumeration but this is not recommended for any but the most advanced computer users.
The sixth, optional field is the activation type. Generally this is only used for mouse buttons and the most common type is MouseDblClick, but there are other options.
Again, more detailed documentation can be found at http://msdn.microsoft.com.
Turbine cannot provide support for advanced keymap editing.