DooM LEGACY Release v1.40, September 2002. Last Updated: September 2002 Original game & sources by: Id Software. Additions: (c)1998 by: Fabrice Denis & Boris Pereira (c)1999 by: Fabrice Denis, Boris Pereira & Thierry Van Elsuwe (c)2000 by: Boris Pereira & Thierry Van Elsuwe (c)2001-2002 by: Doom Legacy Team Special thanks to Steven McGranahan, Robert Bäuml and Bell Kin for their large contribution and to others Legacy Team members. Web site: http://legacy.newdoom.com e-mail: legacy@newdoom.com ----------------------------------------------------------------------- CONSOLE DOCUMENTATION ----------------------------------------------------------------------- Make sure you read this! You will discover a lot of goodies available in Legacy! Be a doom 'power-user' ! Skip to section 2, and browse through the list of commands if you're in a hurry! -------- CONTENTS -------- [0] What's new? [1] Console basics [1-1] Console usage [1-2] Console input [1-3] Commands and variables [1-4] Config.cfg file [1-5] Autoexec.cfg file [1-6] Script files | [1-7] Menu note [2] Commands and Variables [2-1] Basic script commands [2-2] Console setup [2-3] Player setup [2-4] Game controls [2-5] Game options [2-6] Video [2-7] Multiplayer [2-8] Demos [2-9] Miscellaneous [2-10] Sound [2-11] Unfinished [2-12] OpenGL IMPORTANT NETWORK NOTE: Unless specified otherwise, all commands are working in multiplayer. If a command does not seem to work in multiplayer, it is a *bug*, not an unfinished feature :), so please mail us! --------------- [0] What's new? --------------- Changes from 1.30 to 1.40 ========================= - section [2-4] : updated overlay, added joystickfreelook - section [2-6] : added scalestatusbar - section [2-12]: added gr_coronasize, defauilt value of gr_fogcolor set to 0 - added section [1-7]: Menu note Changes from 1.29 to 1.30 ========================= - section [2-4] : added mousemove - section [2-5] : added restartlevel - section [2-6] : added scr_depth, scr_height, scr_width - section [2-7] : added allowmlook, allowrocketjump - section [2-11] : added connect, fullscreen Changes from 1.28 to 1.29 ========================= - section [2-7] : updated map, added allowturbo, allowexitlevel sv_maxplayers, sv_allownewplayer - section [2-2] : changed con_size to con_height (like it was in the code) - section [2-6] : added translucency, splats, screenlink - section [2-4] : added controlperkey, use_mouse2, alwaysmlook2, mousesens2, mlooksens2, mouse2port - section [2-5] : added splitscreen - section [2-9] : update help, added netstat - section [2-11]: update bloodtime - section [2-12]: added OpenGL/Glide commands Changes from 1.27 to 1.28 ========================= - section [2-4] : updated 'use_joystick' - section [2-4] : updated 'overlay' - section [2-5] : 'fastmonsters','cam_height','cam_dist', 'cam_speed' - section [2-7] : updated 'map' - section [2-7] : 'timelimit' - section [2-8] : 'playdemospeed' - section [2-9] : 'addfile' Changes from 1.25 to 1.27 ========================= - section [2-7] : 'sayteam','sayto','fraglimit' - section [2-4] : 'bind' - section [2-9] : 'screenshot','vid_ticrate', 'saveconfig','loadconfig','changeconfig' - section [2-5] : 'save','load','exitlevel' - section [2-11]: updated 'map' - section [2-8] : 'timedemo' - section [2-9] : 'addfile' Changes from 1.24 to 1.25 ========================= - section [2-5] : 'viewheight' - section [2-7] : 'skin','teamplay','teamdamage','frags','teamfrags' - section [2-9] : 'memfree','help' Changes from 1.22 to 1.24 ========================= - section [2-10] : 'cd', 'cd_update', 'cd_volume'. - section [2-11] : 'map' command now works in multiplayer, only the server can change it (note: make sure everybody use the same maps). - section [2-7] : 'gravity' command. ------------------ [1] Console basics ------------------ [1-1]: Console usage ==================== With Doom Legacy's console, you will be able to change a lot of parameters from the game, and customise the game to your preferences. The console is simply a command prompt, where you can enter commands and change the value of game variables. Since the first console we know of was from IdSoftware's game 'Quake', we have been inspired by this console, and have tried to use the same functionality for the Quake-Doom fans. To bring the console, press the '`' tilde key. You can set the console key at the Setup Controls menu. To exit the console, either press again the console key, or press ESC. ESC will bring the menu, and shut the console. The console displays all messages from the game. You can go back in the messages with key 'PAGE UP', and go down with the key 'PAGE DOWN'. Press the key 'HOME' to jump to the oldest message in the console text buffer, and key 'END' to jump to the last output message (the most recent). The last lines of the console text buffer are displayed at the top of the screen, when the console is off. That is, you can see 5 lines of messages instead of only 1 in the original Doom. You can change the duration of display of the messages with the console variable 'con_hudtime', see the commands section for more. [1-2]: Console input ==================== While the console is on, you can type any key to enter a command. Press 'BACKSPACE' to delete the last character. Press 'ENTER' to execute the command. For convenience, you have an history of the last 32 commands entered. Press 'UP ARROW' to go back in the commands history, 'DOWN ARROW' to go forward. Another very useful key is the 'TAB' key : it completes the command or variable name that has not been fully entered. This is a very good way to check for the existing commands : just enter any letter, then press 'TAB' several times to see what commands are available. Example: the variables to customize the console itself usually start with 'con_', thus typing 'con' and pressing the 'TAB' key several times will display the following console variables : 'con_height', 'con_speed', 'con_hudtime', 'con_backpic'... You can also press 'SHIFT-TAB', which will complete the command line, but in reverse order. [1-3]: Commands and Variables ============================= Basically, a command does not have a value, and is not saved to the configuration file. A variable always have an associated value, for example the variable 'name' holds your name as a player. Entering a command without any parameters, will usually tell you the command syntax. Example: entering 'map' will show: map <mapname[.wad]> : warp to map, load external map Entering a variable without any parameter, will tell you the current value of the variable. Example: entering 'name' will show: "name" is "gi joe" When a parameter has blanks in it, use "" around it. Example: to enter your name as 'dj fab' type: name "dj fab" Most variables that are either true or false use '0' as false, and any other value which is not zero is true. [1-4]: Configuration file ========================= Most variables are automatically saved to the default configuration file 'config.cfg'. Like in the original Doom, the -config parameter will set explicitly the configuration file to use. Example: legacy -config fab.cfg Thus, you can have default settings for different persons, using different configuration files. While the configuration file supports any command, and is executed like a script, you should not edit it, because it is always overwritten when the game exits. [1-5]: Autoexec.cfg file ======================== The autoexec.cfg file is a text 'script' file which is automatically executed at the game startup, if it is found. You can edit the autoexec.cfg file to set the values of those variables that are not automatically saved to 'config.cfg'. You can also add commands that will be executed one after another, just like a script. Comments starts with '//'. Each line of the autoexec.cfg file is like a line that you would have typed at the console. Here's some examples: This sample 'autoexec.cfg' will warp you to map 01 as soon as the game is loaded: ----------autoexec.cfg example 1----------------- // start always with map1, without waiting at the menu map map01 echo "welcome to map 01" //useless comment ------------------------------------------------- Another example, here we set the variables that are not saved to the config.cfg, because they are not considered like 'standard' parameters: ----------autoexec.cfg example 2----------------- // set my preferred weird game mode bloodtime 5 // blood lasts 5 seconds solidcorpse 1 turbo 150 map map07 echo "bigjim's weird mode active" ------------------------------------------------- In the last example, each time you start the game, it will set the variables like 'bloodtime' that are not normally saved to config.cfg. Just look at config.cfg to know which variables are saved. [1-6]: Script files =================== The config.cfg, and autoexec.cfg are script files. It means they contain commands and variables that are executed in sequence. You can create any number of script files, and execute them with the 'EXEC' command. For example, to start a script named 'blood.cfg' just enter exec blood.cfg |[1-7]: Menu note |================ | |Most of variable are now changable in the menu directely. So you are |not forced to retain varaible name and value. If a varaiable isn't in the |menu it is probabnly because this is verry technical varaible and is not |for common use so make attention when you modify it. -------------------------- [2] Commands and variables -------------------------- Please note that the most common options are changeable at the menus, and will set the corresponding variables. You will need to use the console only if you want to customise the game more to your needs. [2-1] Basic script commands =========================== Here are the basic commands for script execution, they have the same usage and functionality as in the game 'Quake'. You can use ; to separate several commands in the same line. alias <aliasname> <command> When you will type 'aliasname', it will do like if you had entered 'command'. Let's better have an example: :) alias silence "soundvolume 0;music volume 0" Further, when you will type 'silence', it will execute the corresponding command. In this example, we have given two commands as one, inside " ", and using the ; as a separator for commands. echo <"text to output"> Just echoes text to the console. Like 'print' in Basic :) exec <script file name> Execute a script file. A script file is just a text file containing a sequence of commands or variables. Script files usually have an '.cfg' extension. Example: exec autoexec.cfg will execute all the commands in autoexec.cfg cls Just clear the console text buffer. wait [<frames>] Wait a given amount of time. The unit is per 35th of second. Example: this will wait 5 seconds, then display 'ok!' wait 175;echo "ok!" WARNING: when the wait command is executed, all the following commands are delayed until wait has finished. Eg: if you enter 'wait 126000' (35 * 60seconds * 60 minutes), you will have to wait one hour before other commands can be excuted!!! toggle <varibale_name> [<value>] Without value parameter this toggle a varaible. Technicaly it put variable to the next possible value. With value parmeter this add value to the varible. This command is very usefull for use with bind. ex: bind ">" "toggle gr_fogdensity" bind "<" "toggle gr_fogdensity -1" so you can modify fogdensity without going in the console or menu ! [2-2] Console setup =================== con_backpic <0|1> 1 : use a console background picture, like in Quake. The background is opaque, thus it doesn't slowdown the display because the part of the view under the console is not drawn. 0 : use translucency for the console background : this one looks much better, somewhat like a LCD translucent screen. The drawback is that it is slower than the first method. con_height <0-100> Set how many %percent% of the total screen height the console will use. eg: con_height 50 (the default), will use half the screen height for displaying the console. con_speed <1-???> Set the speed at which the console comes down or moves out of the screen, when you press the console toggle key. The number is given as screen lines. con_hudtime <0-???> Set the number of seconds that the messages stay on the top of the screen. They are 5 message lines that scroll as soon as new messages arrive. eg: con_hudtime 5, which is the default, will make the messages stay for 5 seconds before disappearing. Set this to 0, and you will never see any messages out of the console (hud means heads-up messages). showmessages <0-2> This is like in the Options Menu, with one more setting: '0' means never show any messages on the screen, '1' means always show the messages, which is the default. There is one more setting, '2' that can only be entered at the console, it will show all messages except most of the 'picked up ...' style messages. Useful if you are tired of the 'picked up ammo', 'picked up health bonus', ect. messages. [2-3] Player setup ================== name2 Same as name but for splitscreen player. name <your name> Enter your name as a player, for network games. Your name will be seen when you send a message (chat key), and is displayed in the deathmatch rankings. Use "" if the name contains spaces, eg: name "dj fabbe" The name can be entered in the Multiplayer menu. color2 Same as color but for splitscreen player. color <0-10> Choose your color, for multiplayer games. The color can be entered in the Multiplayer menu. chatmacro <0-9> <"your chat message"> This very useful command allows to change the chat messages at any time during the game. They are saved to the config too! You can now quickly setup some circumstance messages at the start of a game. Press the chat key, then ALT plus a number key from 0 to 9 to send one of the chat messages. Well, just like it has always been for Doom. [2-4] Game controls =================== use_mouse2 <0|1> Enable/Desable use of the secondary mouse. You must read the legacy.txt before use this. use_mouse <0|1> Setting 'use_mouse' to '0' will disable the mouse. The next time you start the game, the mouse won't be detected. Set 'use_mouse' to '1' to search for a mouse, and activate it. use_joystick <0-xx> Enable joystick support with any value other than '0'. '0' will disable the joystick. Go to the Setup Controls menu, to set the joystick buttons to game controls (just press enter on a control, then push any joystick button). DOS VERSION: Type "help use_joystick" at the console for the list of supported joystick types (gamepad, analogic, Wingman Extreme, etc..) WIN32 VERSION: Type "use_joystick" alone to see the list of connected joysticks, type a number to choose one of them. Doom Legacy Launcher passes the full name of the joystick device instead of a number. |joystickfreelook <0|1> | Enable or desable freelook with the joystick. invertmouse2 <0|1> Same as invertmouse but for splitscreen player. invertmouse <0|1> Just like in the Options menu Set invertmouse to 1 to inverse the mouse y (up and down) axis. This is for freelook only, you will look up, when moving the mouse down (backward), and look down when moving mouse forward. autorun <0|1> Just like in the Options menu Set this to 1, to lock the 'run' key. You will always be running, without the need of pushing a key. alwaysmlook2 <0|1> like alwaysmlook but for splitscreenplayer alwaysmlook <0|1> Just like in the Options menu You can use the 'freelook' (ability to look up and down) in two modes : permanent or temporary. Setting 'alwaysmlook' to '1' will set the freelook permanent. When 'alwaysmlook' is '0', you will need to keep the 'freelook' key while moving the mouse up and down. When releasing the key, the view will always re-center. This is useful if you keep firing rockets at your feets. mousesens2 <0-???> Same as mousesens but for splitscreen player. mousesens <0-???> The Options menu allows a range of 0-39 values. If you are one of those people that used to change the mouse sensitivity in the game config because you felt it was not enough, you can now set it at the console to any value you like! mlooksens2 <0-???> Same as mlooksens2 but for splitscreen player. mlooksens <0-???> The Options menu allows a range of 0-39 values. Same note as the mousesens value. mousemove <0|1> Enable/Disable mouse Y-axis for forward/backward. crosshair <0-3> Just like in the Options menu. Choose whether to use a crosshair (1-3), or not (0). The values are 1,2,3 for white cross, green angle, and red point. originalweaponswitch <0|1> Choose whether to use the original weapon change method (1), or the new Preferred Weapons Order (0), see 'weaponpref' for more. With the original weapon switch, whenever you walk on a weapon, it will switch to that weapon, even if it is not as powerful as the one you are carrying. That can be sometimes very annoying, especially in fast deathmatches. weaponpref <"014576328"> The Preferred Weapons Order (tm) :) This works only if you have set 'originalweaponswitch' to '0'. You give a priority to each of the weapons, with a number digit from '0' to '9'. Several weapons can have the same priority. When you pickup a weapon that you don't already have, you will switch to that weapon ONLY AND ONLY IF that weapon's priority is greater that the one you are carrying. If you already had the weapon, you will pickup the ammo as usual, without changing weapon. The numbers are priority values, for each of the weapons, in the following order: Fist, Gun, Shotgun, Chaingun, Rocket launcher, Plasma, BFG, Chainsaw, Super Shotgun. Thus 'weaponpref "014576328"' means that the super shotgun has the highest priority (8), while the fist is lowest priority (0). After the double shotgun, in decreasing priority you have the rocket launcher (7), plasma gun (6), chaingun (5), shotgun (4), BFG (3), chainsaw (2), gun (1). Let's have another interesting example : 'weaponpref 333333333' Since all weapons have the same priority in this last example, you will in fact NEVER change weapon automatically, because no weapon has a priority higher than any other one. You might consider this as the 'manual' weapon change. autoaim <0|1> Just like in the Options menu. The original Doom used autoaiming for up and down, and a very little aim adjustment on left and right. Now that you can shoot up and down with the freelook, you can play like a 'pro' and set autoaim off (0). Note that the autoaim has been enhanced : if you are not aiming at something right in front of you, you will be able to shoot at any angle with the freelook. If something is to be aimed just in front of you, then the autoaim will adjust your shots like in the original Doom. This means that you can to some extent, predict a target's path, and shoot ahead, while in autoaim mode. NETWORK NOTE: in a multiplayer game, the SERVER can force the autoaim off for all players with the command 'allowautoaim', use with caution (don't get your friends angry :) And remember: you can have more control now with the enhanced Autoaim so it might not be necessary to force everybody to autoaim off. setcontrol2 <controlname> <keyname> [<2nd keyname>] same as setcontrol but for player 2 (splitscreen player). setcontrol <controlname> <keyname> [<2nd keyname>] Using the Setup Controls menu will be much simpler! This command associates a key/joystick/mouse button, to a game control (forward, fire, use ...). The second keyname is optional. You can set it, and have two keys attached to one game control. eg: have 'ARROW UP' and 'MOUSE2' for 'forward'. When a key does not have a name, it uses a name of the form 'KEYxxx' where xxx is the key code. To know the name of the keys/joystick/mouse buttons, look for them at the Setup Controls menu. The control names are "forward","backward","strafe", "straferight","strafeleft","speed","turnleft","turnright", "fire","use","lookup","lookdown","centerview","mouseaiming", "weapon1","weapon2", ... "weapon8","talkkey","scores", "jump","console". Note: some key names have spaces in it, use the "" around. Example: setcontrol forward "keypad 7" "up arrow" The following will use the windows95 'menu' key to toggle the console: setcontrol console menu controlperkey <1|2> When set to 2 (several) you can put more than one control per key else seting a key to a control will remove the key from other assignation. This option was introduise since from the begining we support several control per key, but everyone don't want it. overlay <"fhmak"> : status bar overlay Choose which information to show when in full screen mode. Each letter represent a type of information that will be shown. 'f' : show frags (only in deathmatch) 'h' : show health 'm' : show armor 'a' : show current weapon ammo 'k' : show keys | 'e' : show monsters kill | 's' : show secret found count | The default is 'fhmakes' which shows all kind of information | on the status bar overlay. Note that the ammo icon displays a graphics of the current weapon's type of ammo, so that if you play with 'playersprites' off, you know what weapon you have ready. We're still not happy with the statusbar overlay : there should (and will) be more arrangements of the overlay icons, to suit different people's likes (eg: not everyone might want the frags displayed on the top right..) Plus we will add other useful | information like owned weapons.. bind <keyname> <"command"> Bind commands to a key. Each time you push the key, the commands will be executed. Example : > bind s screenshot (each time you push the 's' key it will make a screenshot) mouse2port <1|2|3|4> Choose the port nomber of the secondary mouse for the splitscreenplayer between COM1 to COM4. [2-5] Game options ================== viewheight <16-56> Set the height of the view (the height of the eyes above the floor). The normal value for the Doom marine is 41. We have limited the range into acceptable values, to prevent cheating. turbo <10-255> : set turbo speed This is like the original -turbo game parameter, you can now set it anytime you want during the game. respawnitem <0|1> Choose whether items respawn or not. 'respawnitem 0' is like old deathmatch, it is set 'true' automatically when in Deathmatch 2 NOTE: it is considered cheating to allow respawning of items when in single player mode ! :) respawnitemtime <0-???> Set the respawn item time in secondes. The time between th moment you pickup the item, and the moment it reappears. The default is 30 seconds, from the original Doom. respawnmonsters <0|1> Choose if monsters can respawn. 'respawnmonsters 1' is like the -respawn command-line option of the original Doom. fastmonsters <0|1> Choose if monster are "fast" like original -fastparm respawnmonsterstime <0-???> Choose the time of respawn for the monsters, in seconds. The default is 12, from the original Doom. save <slot_number> <"description"> Save the game in the given slot, with chosen description. load <slot_number> Loads a previously saved game. exitlevel Exits current level and go to the intermision screen. restartlevel Restart the current level. chasecam <0|1> Enable/disable chasecam. Sorry but the chasecam still be in devleppement so it can be stuck. cam_height <float value> Sets the chasecam height. cam_dist <float value> Sets the distance between the chasecam and player. cam_speed <float value> Sets the speed of the chasecam, the default value is 0.25 splitscreen <0|1> Enable/Desable the split screen, If needed this spaw the secondary player. If you want to join a network game with two players you can use -splitscreen or +splitscren 1 parametters. Or, join the game and set this varaible to 1. Also when viewing demo with more than one player you can turn this one. And see the seconde player view. [2-6] Video =========== vid_nummodes Tells how many different video modes are available. vid_modelist List all available video modes, like they are shown in the Video Options menu. Each video mode has an associated number, so you can set it with the following command... vid_mode <mode number> Set the given video mode. Give one of the numbers displayed by the 'vid_modelist' command. vid_modeinfo [<mode number>] Shows information about the current video mode (no parameters), or the given video mode number. vid_ticrate <0|1> Show a graph of the framerate per time base. It is very usefull to know what part of a level is more slow in framerate value. playersprites <0|1> Choose whether to show the player weapon sprites (1), which is the default, or not to draw it (0). When 'playersprites' is '0', you can aim simply because your shots always go to the center of the screen, and the current weapon type is shown in the status bar, or by the ammo icon of the status bar overlay. Don't laugh! Sometimes I like to play with playersprites off. usegamma <0-4> Choose the gamma level (brightness). Just like in the Options menu. viewsize <3-11> Choose the size of the view window. '3' is the smallest view window. '10' is the normal full view window, with the status bar. '11' is the full screen mode, without status bar. scr_depth <8|16|24|32> scr_height <0-???> scr_width <0-???> This varaible are only used to save the starting video mode. So you are not uspposed to change it. scr_depth is only used in OpneGl splats <0|1> Enable/Disable bloodsplat and bullet hole on walls. Is recommended to desable it on slow computer like 486. translucency <0|1> Enable/Disable transparent sprite. Is recommended to desable it on slow computer like 486. sceenlink <0|1|2> Allow to change the screen link between : 0 - none 1 - the normal wipe melt 2 - the new color melt (it was in the original code, we just enabled it) |scalestatusbar <0|1> | Set to 1, this draw status bar in large mode. Else it draw | status bar as this original size so in big resolution it is smaller [2-7] Multiplayer ================= skin2 <skinname> Same as skin but for player 2 (split screen player). skin <skinname> Change your skin, provided skins are loaded (adding skins wads after the -file on the command line). The skin name is the one shown on the multiplayer->setup menu. The default marine skin name is 'marine'. Of course, it's easier to use the multiplayer setup menu. teamplay <0|1|2> You can change the deathmatch mode while in a multiplayer game. 0 : no teams, usual deathmatch 1 : teamplay, using color to identify teams, players of the same color will be in the same team, the team name will be like 'red team' or 'yellow team' 2 : teamskin, using skins to identify teams, players who use the same skin will be in the same team, the team name will show as 'leprechaun team' or 'terminator team', according to the name of the skin teamdamage <0|1> Decide whether people of the same team can hurt themselves or not. Note that the armor is always damaged. NOTE! teamdamage works for cooperative! So you can now have a cooperative mode where your partners don't get damage. 0 : damage is off, players of the same team can't kill each other, you'll know of this because blood won't show, and the player who is hit won't see his screen go red 1 : damage is on, like in original Doom cooperative, players of the same team can hurt, and kill each other. If they kill members of the same team, they fill score a negative frag. frags Shows the frags table, like in the original Doom intermission. It shows the frags count for each player, against each other player. teamfrags Just like 'frags', but for teams, so it shows the frags count for each team, against each other team. gravity <0.0 ... ???> Changes the gravity, only the server changes it, for all the players. Note : this value is a 'float' type, for example 0.5 is half the normal gravity. Note2: you can't walk/move while in mid air. The default gravity is '1'. getplayernum This command tells the number, node and name of the present players. You can then use the number for the 'kick' command, instead of the player name, if a player has a complicated name or long one to type! :) kick <"playername"|playernum> One of the rare pleasure of being a server : kick out somebody from your game!! The 'kicked' person will be brought back to the title screen. You can give either the name (using "" if it contains spaces), or a player number from the 'getplayernum' command. NOTE: this will work only for the server of the game, see legacy documentation for more about who is the server. allowjump <0|1> Choose whether jump is allowed or not. For those of you who comes from planet 'NoJump' or have a limited sensory system and couldn't survive a jump in the 3rd axis of our world, you can disable the jump in single player too. Only the server can set this variable. NOTE: not saved automatically, put it in autoexec.cfg allowautoaim <0|1> Disable autoaiming for all players... make sure everyone is ok before getting your friends angry. Only the server can set this variable. NOTE: not saved automatically, put it in autoexec.cfg allowturbo <0|1> Enable/Disable turbo for all players. Only the server can set this variable. allowexitlevel <0|1> Enable/Disable the exit level way. This is only usefull in multiplayer So the only whay to exit the level is to reach the timelimit or fraglimit or the exitlevel command typed by the server. Only the server can set this variable. allowmlook <0|1> Enable/Disable usage of look up/look down for all players in the game. allowrocketjump <0|1> Enable/Disable emulation of QuakeI bug of rocket Jump. sv_allownewplayers <0|1> In a netgame allow everyone to join the current game using the partial Join-in-game (I remind you that the joined player will wait the next map chnage). Default is true so don't worry about it. sv_maxplayers <1|32> Set a limit of new players for a net game. Default is 32 so don't worry about it. fraglimit <0 - 1000> When the limit is reached, exits the level and goes to intermission. 0 to disable timelimit <0 - ???> Exit level and goes to intermission after xx minutes, 0 to disable. say <message> Sends a message to all players. It is recorded with demos. sayto <"playername"|playernum> <message> Sends a message to specified player. sayteam <message> Sends a message to your own team. map <mapname | wadfile.WAD> [-skill <1..5>] [-monsters <0/1>] [-noresetplayer] To play an original map of Doom1, enter a mapname of the form ExMy where x is the episode and y the map number eg: 'map E2M3'. For Doom2, enter a map name of the form MAPxx where xx is the map number from 01 to 32. The command can also run external maps, it will load new flat textures, sprites, sounds, AND wall textures. Example: 'map waterlab.wad' It can also change the skill value from 1 to 5. From baby to Nightmare. The -monsters parameter allow you change if there monster on the map or not. Note : the engine remembers this parameter use it only if you want to change it. The parameter -noresetplayer is to keep your equipment. Else you loos all weapon and ammunition. |servername <name> | This is your server name. this is displayed on other cumputers | screen when there are searching for a server. | |masterserver <master_server_address> | This cvar is used by legacy when it search server to connect to, | on internet we are running a master server at address | "doomlegacy.dhs.org:28910" (the default value) it collect all server | running and send list of server runnig to legacy when you are | searching for a server. It is not recommended to change it unless | you ave recompiled the masterserver and run it somewhere else. | |internetserver <0|1> | This cvar is used only when you make a server, when set to "yes" or 1 | it connect to the master server to tell that your server is public | and everone can join it. When set to "no" or "0" it do not coonect to | master server and only player that are on local network can join it. | | When you are not connected to internet it is recommended to set it to | false, else legacy will try to connect to master server and it can take | some time to detect that this one is unreachable. [2-8] Demos =========== NOTE: 'playdemo' command doesn't seem to work very well, sometimes the demos don't playback properly. In such case, until we fix it, use the -playdemo command line parm. It usually seem to work better. When we will have found that damn bug, we will add the 'record' command. playdemo <demoname[.lmp]> You can now play a demo at any time during the game: playdemo demo3 This will start the internal game demo 'demo3'. If an internal resource by the same name is not found, it will add '.lmp' and search for an external demo of the same name. You may add '.lmp' to ask explicitly for an external demo, example: playdemo cave001.lmp Will start an external demo, of file name 'cave001.lmp', that you would have started with the -playdemo parameter in the original Doom. stopdemo Stops right away the current playing demo. Very useful. timedemo <demoname[.lmp]> Play a demo like playdemo but run at fast as he can, rendering all frames. It is used to measure the speed of the engine. At the and of the demo it will show : gametics : the numbers of frame rendered. realtics : number of tics (1/35 second) taken to render all the frames seconde : the time take to render all frames. avg fps : average frame per seconde. (gametic/seconde) playdemospeed <0 - ???> Allow you to change the speed of the playback of a demo. [2-9] Miscellaneous =================== memfree Show the amount of heap, virtual and physical types of memory available. The heap is the memory allocated for the game, and you can change it using the '-mb' command line parameter (see legacy.txt) help Show a list of all the console commands and variables. |help <variable> | Show all possible value for the variable. | ex: help teamdamage | 0 : Off | 1 : On version Show the game version and last date of compilation. quit Just quits the game, without confirmation. Beavis: "- hey Butthead, why does Legacy always exits as soon as it has finished loading ??" Butthead: "- because I have put 'quit' in your autoexec.cfg.. uh.. uh ehehehe.. uh !!" screenshot Take a screenshot like the F1 key in devparm mode. saveconfig <filename[.cfg]> Save the current config in the specified file. This is always done when you exit Legacy. loadconfig <filename[.cfg]> Load a config file like at the begining of legacy. For the pro : this is a simple exec command with ".cfg" default. changeconfig <filename[.cfg]> Do a 'savegame currentconfigfilename' then a 'loadconfig filename'. The following commands might be helpful when you are playing a 'dehacked' game, and the cheat codes have been changed, damn! :) noclip Like the cheat code 'idclip'. god God mode. Just like 'iddad'. gimme [health] [ammo] [weapons] [armor] [keys] [chainsaw] [shotgun] [chaingun] [supershotgun] [rocket] [plasma] [bfg] [berserk] | [map] [fullmap] Each of the paramater is optional, just add anything you want to be added. This is a cheat 'a-la-carte' : for those like me that likes to cheat 'half'. You can ask only for one weapon, or just 100% health, or just an item.. NOTE: this was added as a last minute, the other items need to be added (goggles, invuln., invisibility...) addfile <wadfile.WAD> This command loads wads at run time. The difference with the 'map' command is that: - it won't automatically start a map - it doesn't work in multiplayer (clients won't load the file) It will give some info about sprites/musics/sounds that were replaced. Note to wad authors: it will be possible to put any number of maps in a wad file, using any resource name instead of the 'MAPxx' and simply typing 'map START' for example. Actually it will need to edit the wad file, and rename the 'MAPxx' markers. |netstat <0|1> | Show netstat at the screen, this include : | upstream byte per seconde | downstream byte per seconde | system packet lost ratio | game packet lost ratio | | This is mainly for devloppers and curious [2-10] Sound ============ soundvolume <0-31> Just like in the Sounds menu. musicvolume <0-31> Just like in the Sounds menu. cd_volume <0-31> Just like in the Sounds menu. snd_channels <0-???> Choose how many sound channels will be used. Usually you will set a value from 8 to 16, which is plenty enough. precachesound <0|1> Set it to 1 (true), so that all the sounds are loaded at the game startup. If 0, it will load the sounds while in the game, only when they are needed. stereoreverse <0|1> Set 'stereoreverse' to '1' to swap the stereo, if you hear the the sound of fireballs coming from the left, output from the speaker to the right... cd <on|off|remap|reset|play <track>|loop <track>|info|stop|resume|open> The CD Audio music is available only when the MSCDEX driver version 2.0 or later is found. NOTE! Always do a 'cd reset' when you have changed the cd in the drive, else it will say 'cd not ready'. Here's a description of the cd commands: cd on : enable cd music, game will use cd music. cd off : disable cd music, if you don't want to hear the cd music. cd open : open cd door. cd reset : reset the cd driver, check for a new cd. Do this if you have changed the cd, to make the new cd's tracks available. cd info : display the list of tracks, with time per track, and total time. The track being played is printed in white. cd play <track> : play a cd track, at the end, go to next track. cd loop <track> : loop a cd track, at the end, restart it. cd stop : stop/pause cd audio, use 'cd resume' to continue. If you really want the cd drive to stop 'turning', use 'cd off'. cd resume : continue playing after a 'cd stop' cd remap : remap cd tracks. Normally, the game uses the map number as the track number, for Doom1, it takes (episode*9)+ map number as track number. This command is useful to adapt your favorite cd music to Doom's levels, let's have an example: cd remap 5 3 1 4 2 This remaps cd tracks as follows: 1 becomes 5, 2 becomes 3, 3 becomes 1, 4 becomes 4 (does not change), 5 becomes 2. So, at map 1, it will play track 5, because track 1 was remapped to track 5. If you have a great music which is track 8 and you want it at map 3 and 6 : cd remap 1 2 8 4 5 8 ... ^ ^ tracks 3 and 6 become 8 TIP A: this is very useful, if you have a cd with 'data' tracks, a pc cd-rom game with some audio tracks, usually the first track is a data track, that won't play. Use remap to skip the first track like this: cd remap 2 3 4 5 6 7 8 9 2 3 4 5 6 7 .. So track 1 is never used. TIP B: you can do some aliases for your favorites CD's, and save it to autoexec.cfg, example : alias fsol cd remap 4 5 2 9 3 so you can just type 'fsol' to get your favorite track list. cd_update <0|1> By default, cd Update is enabled. If you feel some serious slowdown while the cd is playing, set cd_update to 0. The cd will no more move to the next track, neither loop the current track automatically. Another solution is to get the latest version of your cd driver (a better one). [2-11] Unfinished ================= solidcorpse <0|1> The sneak preview option of Legacy v1.12 became a console command, but is still not finished. Note that this option works for solo play too. Setting solidcorpse other than 0, makes the dead corpses (monsters/marines) solid. The corpses thus stack one on top of another, and you walk over them. Sometimes you can even reach ledges where you couldn't go by climbing on corpses! This option is there for fun in deathmatch, and so that you can test easily the new improved height collision method! bloodtime <0-???> Choose how many seconds blood will stay on the floor. In the original Doom the blood stayed no more than 1 second. This can be fun for deathmatches, setting 'bloodtime' to '60', for example, will make the blood drops stay 1 minute on the floor before disappearing. Useful for tracking down your preys :) default falue is now 20 connect <server_ip | server_address | ANY | SELF > This command connect to a server to play a netgame. Unfortunately, it can't be used if legacy was not started in network (-connect or -server). So you may use it only when reconnecting to a server. fullscreen <0|1> switch between fullscreen or windowed, work only under Linux and win32 opengl [2-12] OpenGL/Glide =================== note: Those variables are only available in the Linux and Win32 version. All those variable's names start with the gr_ prefix. Not all those variables are effective in Glide mode. gr_coronas <On|Off> Enable or disable coronas around lights and rocket. gr_coronasize <positive float value> Adjust light coronas size on the screen, coronas is in the reality caused by despertion of light in the eye the size of a coronas depand on your screen size and your distance of your eye to screen. So you can adjust it the get the more realistic effect or just to see more bigger coronas :). gr_dynamiclighting <On|Off> Dynamic lighting is way to render (on walls and planes) lights emit by missiles or BFG balls. Be aware it can be slow on low end PC. See also gr_mblighting. gr_fog <On|Off> Enable or disable the fog, default is On. gr_fogcolor <rrggbb> Change the RGB (in hexadecimal format) value of the fog. The | default is set to 000000 (black, looks like the original doom fog). For a grey fog, set the value to 707070 (for example). gr_fogdensity <1-?> Change the fog density. The default value is 500. I suggest you to try different values to see the changes. gr_fov <1-179> FOV means Field Of View. If you set a value above 90 and gr_mlook (see below) is "Off", then DooM Legacy set automatically gr_mlook to "On". This is because FOV, with a value higher than 90 degrees, needs this mode to work properly. You can use it for zooming: Mandeep/FlynnT tips for zooming (see other commands/variables) alias psprites_on "playersprites 1" alias psprites_off "playersprites 0" alias zoom_in "set_zoom_out; psprites_off; gr_fov 80; wait 1; gr_fov 71; wait 1; gr_fov 62; wait 1; gr_fov 54; wait 1; gr_fov 46; wait 1; gr_fov 39; wait 1; gr_fov 32; wait 1; gr_fov 26; wait 1; gr_fov 20; wait 1; gr_fov 15; wait 1; gr_fov 10" alias set_zoom_out "bind n zoom_out" alias zoom_out "set_zoom_in; gr_fov 15; wait 1; gr_fov 20; wait 1; gr_fov 26; wait 1; gr_fov 32; wait 1; gr_fov 39; wait 1; gr_fov 46; wait 1; gr_fov 54; wait 1; gr_fov 62; wait 1; gr_fov 71; wait 1; gr_fov 80; psprites_on; wait 1; gr_fov 90" alias set_zoom_in "bind n zoom_in" bind n zoom_in I suggest you to put this in the autoexec.cfg file. It allows you to use the 'n' key for zooming in and out. gr_gammaxxx (where xxx = red|green|blue) <0-255> Those variables are used for changing the intensity of red, green or blue. You can use them to make DooM Legacy brighter or darker if you change all those variables with the same smaller or higher value. gr_mblighting <On|Off> It's the same as dynamic lighting, except it shows the lights emit by balls throw by monsters. gr_mlook <Off|On|Full> gr_mlook command is there for fixing the "mlook" bug (when you look up and down). The default value is On. - The "Off" (or 0) should only use if you don't use full mlook. - The "On" (or 1) is fast and fix most of the mlook bug, but walls behind you can be hidden if you look at nearly 90° (up or down). It shouldn't be a big issue for most of you and it's the recommended mode for low end pc. - The "Full" (or 2) is exactly the same as "On" but it fix all the bugs and is a little slower for angle > 45 degree. The gr_mlook command has been "optimized" recently. That's why, when you're aiming at an angle of 0, it acts like if gr_mlook was Off, even if gr_mlook is set to On or Full, and thus it's faster. There is something similar with angle less than 45: if you use gr_mlook Full, it act like gr_mlook On. gr_staticlighting <On|Off> This is an experimental variable for now since it's not yet optimized. I don't recommend you to use it, except if you have the cream of the cream PC. It's ok for some maps, though.