Binds are commands which 'bind' a specific game action to a certain keystroke. All game controls are binds, such as bind "mouse1" "+attack", which tells DoD:S that you want to shoot your gun when you press the left mouse button. You can create your own binds by editing your configuration files, which allows you to do all sorts of useful things at the tap of a button.
You'll need to access your config files, which can be located in your Steam install folder:
....\Steam\SteamApps\<username>\day of defeat source\dod\cfg
In this folder, there will be a file called 'config.cfg'; this contains all of your current settings and is overwritten whenever you change them. To set up your own custom config, you'll want to create a userconfig.cfg - use notepad, save as type 'all files' (not 'text document') and remember the .cfg extension. You'll also need to create an 'autoexec.cfg' file.
In your newly-created autoexec.cfg file, enter the line "exec userconfig.cfg" and save it. Then the fun begins in your userconfig file.
Basically each line in your cfg files is a command which you would type in the console, you're just setting DoD:S to do it automatically each time you start the game. The general format for a bind is:
bind "<key>" "<command>"
where key is whichever key you want to perform the action, such as "e" or "ENTER" (list of non-character codes), and command is what you want the bind to do. A section of a cfg file might look like:
bind "y" "voice_yessir"
bind "~" "toggleconsole"
bind "ENTER" "voice_grenade;say_team Look out! Grenade at %l"
You can create your own custom binds by creating lines like this in your userconfig.cfg file. There are all sorts of uses you might want binds for; I'll list the more common ones here and you can Google for any others you might need.
Format: bind "(KEY)" "say xxxxxxxx" / bind "(KEY)" "say_team xxxxxxxxx"
These are chat commands, say is for normal chat, say_team is... go on, guess. So "say PH34R TEH SPADEAGE" would result in everyone recieving a message saying 'PH34R TEH SPADEAGE' whereas "say_team I need ammo!" would result in your teammates getting a message saying 'I need ammo!' Simple.
To make these chat binds more useful, there are a number of special symbols you can use which the game will substitute with appropriate text depending on your situation. These are:
You can combine these for greater effect, for example "%c requesting backup at %l" tells your teammates who you are and where you need backup. Try to resist the temptation to go the whole hog and say something like "Hey %i, I'm a %c with %h health and I need backup at %l", and promptly get shot for taking up half the screen.
Format: bind "(KEY)" "name xxxxxxxxxxx"
This changes your nick. If you change your name regularly you might want to have a couple of binds to switch between your names, for example I have binds for all of "name Lamsey|Spade Maniac", "name Lamsey|Knife Maniac", and "name Lamsey|KABOOM Maniac" depending on what class I'm playing. Note that unlike DoD v1.3, spaces are supported here.
Format: bind "(KEY)" "voice_xxxxxxxxxxx" / bind "(KEY)" "signal_xxxxxxxxxxx"
Some of the most useful binds are voice commands; they give your teammates around you a better idea of what's going on because they can hear it coming from your character, not just in the chat text. By far the most useful one is voice_grenade - this makes your character shout "GRENADE!" and it's a good habit to hit your key for this whenever you see an inbound nade (whilst scarpering in the opposite direction, of course). If you want to be more stealthy the hand signals can be effective too; a list of the codes follows later.
Format: bind "(KEY)" "use weapon_xxxxxxx"
Weapon switching is something that you want to be able to do quickly; in the middle of a heated firefight you don't want to be fumbling around to select your pistol. An easy way to do this is to use the command "hud_fastswitch 1", which makes DoD:S switch weapons without you having to press fire. However an even better way is to have keys bound to your preferred weaponry.
Unlike the elegant slot-based solution in DoD v1.3, the weapon selection commands in DoD:S are rather complicated, with a seperate command for every single weapon. A list of these commands follows later. You'll generally want to combine these, for example a melee bind would have to read "bind KEY use weapon_spade; use weapon_amerknife".
Format: bind "(KEY)" "record xxxxxxx.dem" / bind "(KEY)" "stop"
Another command bind that might be handy is for recording demos. If you see someone cheating in spec, or if you come across an enemy spawncamping, or if you're about to knife someone rather spectacularly, whatever, you might want to record evidence of it quickly. The commands you need are "record filename.dem" and "stop" - these start and end recording respectively.
In addition to the above, of course, there are all the other commands you're accustomed to using such as "reload", "+forward", etc. I'll list these too later on as it is actually useful to know them, as you're about to see.
If you want really complex binds, you can combine several commands into one bind by separating them with semicolons. Be careful with these as it's quite easy to think "coool, i'll do a bind so every time i reload i request cover" - this is a good way to piss off your teammates by screaming for cover every twenty seconds. A good use of composite binds is to perform a voice command at the same time as a chat command; the voice gives immediate feedback to people around you and the chat message can give precise details. Examples:
| Voice Command | Hand Signal |
|---|---|
| voice_areaclear | signal_areaclear |
| voice_attack | signal_moveout |
| voice_backup | signal_backup |
| voice_bazookaspotted | |
| voice_ceasefire | |
| voice_cover | signal_coveringfire |
| voice_coverflanks | |
| voice_displace | |
| voice_dropweapons | |
| voice_enemyahead | signal_enemyspotted |
| voice_enemybehind | |
| voice_fallback | signal_fallback |
| voice_fireleft | signal_enemyleft |
| voice_fireright | signal_enemyright |
| voice_fireinhole | |
| voice_gogogo | |
| voice_grenade | signal_grenade |
| voice_hold | signal_holdposition |
| voice_left | signal_flankleft |
| voice_medic | |
| voice_mgahead | |
| voice_moveupmg | |
| voice_movewithtank | |
| voice_needammo | |
| voice_negative | signal_no |
| voice_niceshot | |
| voice_right | signal_flankright |
| voice_sniper | signal_sniper |
| voice_sticktogether | signal_sticktogether |
| voice_takeammo | |
| voice_tank | |
| voice_thanks | |
| voice_usebazooka | |
| voice_usegrens | |
| voice_usesmoke | |
| voice_wegothim | |
| voice_wtf | |
| voice_yessir | signal_yes |
| Class | Primary Weapon | Secondary Weapons |
|---|---|---|
| US Rifleman | weapon_garand | weapon_riflegren_us weapon_amerknife |
| US Assault | weapon_thompson | weapon_colt weapon_frag_us weapon_smoke_us |
| US Support | weapon_bar | weapon_frag_us weapon_amerknife |
| US Sniper | weapon_spring | weapon_colt weapon_amerknife |
| US Gunner | weapon_30cal | weapon_colt weapon_amerknife |
| US Rocket | weapon_bazooka | weapon_m1carbine weapon_amerknife |
| Axis Rifleman | weapon_k98 | weapon_riflegren_ger weapon_spade |
| Axis Assault | weapon_mp40 | weapon_p38 weapon_frag_ger weapon_smoke_ger |
| Axis Support | weapon_mp44 | weapon_frag_ger weapon_spade |
| Axis Sniper | weapon_k98_scoped | weapon_p38 weapon_spade |
| Axis Gunner | weapon_mg42 | weapon_p38 weapon_spade |
| Axis Rocket | weapon_pshreck | weapon_c96 weapon_spade |
| Sample Cross-class Weapon-switching Commands | |
|---|---|
| Weapon | Command |
| Primary | "use weapon_garand; use weapon_k98; use weapon_thompson; use weapon_mp40; use weapon_bar; use weapon_mp44; use weapon_spring; use weapon_k98_scoped; use weapon_30cal; use weapon_mg42; use weapon_bazooka; use weapon_pschreck" |
| Pistol | "use weapon_colt; use weapon_p38; use weapon_m1carbine; use weapon_c96" |
| Grenade | "use weapon_frag_us; use weapon_frag_ger; use weapon_riflegren_us; use weapon_riflegren_ger" |
| Melee | "use weapon_amerknife; use weapon_spade" |
| Command | Notes |
|---|---|
| +attack | Shoot / slash |
| +attack2 | Deploy, ROF, scope, etc |
| +back | |
| cancelselect | Main menu |
| changeclass | |
| changeteam | |
| drop | Drop weapon |
| dropammo | Drop ammo box |
| dropobject | Drop objective item |
| +duck | |
| +forward | |
| invnext | Next weapon |
| invprev | Last weapon |
| +jump | |
| lastinv | Quick-switch; selects last-used weapon |
| impulse 100 | Flashlight |
| impulse 201 | Spray logo |
| map | Opens / closes map |
| mapzoom | Toggles map zoom |
| say | Chat |
| say_team | Team chat |
| +moveleft | |
| +moveright | |
| alt1 | prone |
| +reload | |
| +showscores | |
| screenshot | Take screenshot |
| +speed | Sprint |
| toggleconsole | |
| +use | Use / pick up grenades |
| +voicerecord | Voice comms |
| Arrows / Keypad | Others |
|---|---|
| UPARROW | ESCAPE |
| DOWNARROW | F1 - F12 |
| LEFTARROW | TAB |
| RIGHTARROW | SHIFT |
| KP_HOME | CTRL |
| KP_UPARROW | ALT |
| KP_PGUP | SPACE |
| KP_LEFTARROW | ENTER |
| KP_5 | BACKSPACE |
| KP_RIGHTARROW | DEL |
| KP_END | PGDN |
| KP_DOWNARROW | PGUP |
| KP_PGDN | END |
| KP_INS | HOME |
| KP_DEL | INS |
| KP_ENTER | MWHEELDOWN |
| KP_PLUS | MWHEELUP |
| KP_MINUS | MOUSE1 |
| KP_SLASH | MOUSE2 |
(note the keypad * key is just '*', not 'KP_*')