CCMDs:Debug
Jump to navigation
Jump to search
These console commands can be used for cheating or testing new maps.
See the CCMDs article for general information on how to use commands.
Abilities and Items
These commands can allow the player to gain abilities or items they wouldn't normally have, or access areas of the map more quickly or by a different route than intended.
- anubis
- Toggles monster fear on and off. Scared monsters will run away from you and attack less frequently.
- buddha
- Gives you an indestructible hit point: no normal attack can remove that last hit point from you (certain death effects such as telefragging will still kill you). This is a more useful cheat than god mode for testing monsters or levels.
- drop <item>
- Drops one of the given item, if there is at least that much in the player's inventory. Items with the INVENTORY.UNDROPPABLE or INVENTORY.UNTOSSABLE flags cannot be dropped.
- fly
- Toggles fly mode on and off.
- freeze
- Use this command once to freeze gameplay (while still allowing you to move around). Use it again to unfreeze gameplay. This will not work in multiplayer.
- give <item>
- Gives an item to the player. Give understands the following special items:
- all - gives you everything
- everything - gives you everything, including weapons flagged with WEAPON.CHEATNOTWEAPON. (New from 4.14.3)
- backpack - gives you a backpack in Doom, a bag of holding in Heretic and Hexen, and an ammo satchel in Strife.
- health - gives you full health
- weapons - gives you every weapon
- ammo - gives you full ammo
- armor - gives you full armor
- keys - gives you every key
- It also understands the names of individual inventory items. Use the command dumpclasses inventory for a complete list of these.
- god
- Toggles God (Degreelessness) mode on/off. While active, you cannot be hurt by normal attacks (although some things such as telefragging will still kill you). Also known as iddqd.
- iddqd
- The same as god, except it also gives you 100 health.
- morphme [class]
- Transforms you into a chicken in Heretic and a pig in Hexen and Doom (The latter only happens if you have the relevant graphics present). Additionally, if "class" is specified, it will attempt to morph you into the supplied class. This will only work if the target class is inherited from PlayerPawn, and you are not in a state that cannot otherwise morph (i.e. death).
- noclip
- Toggles noclipping mode on/off. With this mode, you can walk through walls and solid actors, and are able to step up by an infinite amount. Basically your horizontal movement will never be restricted. This can be useful for passing through locked doors or quickly accessing later parts of a map.
- notarget
- Toggles notarget mode on/off. While active, monsters will not target you unless you hurt them first. In "modern FPS", monsters "can't find you" when in notarget mode. This is not the case with ZDoom.
- resurrect
- When dead, resurrects the player (brings him back alive and to 100% health). Note - cannot be used when the player is "broken apart" e.g. shattered to pieces after being frozen.
- powerup
- Powers you up in Heretic as if you had used a Tome of Power.
- printinv
- Lists your current inventory to the console.
- take <item> <amount>
- Takes an item away from the player. Amount specifies how many to take away (if applicable). Can be used to damage the player by using "take health X", where X is the amount of damage to do. If the player reaches 0 health this way, he will die. Use the command printinv for a full list of what is in the player's inventory.
- use <item>
- Uses an item of class type <item>, if present in the player's inventory. If the item is not present, nothing happens. For correct activation of Hexen's flechettes from the console, see useflechette below.
- useflechette
- Hexen's flechettes require special handling due to the actual item in the inventory being different depending on the player class picking them up. This command uses a flechette of the type corresponding to the player class, if present in the player's inventory. If the player has no flechettes in their inventory, nothing happens.
- warp <x-coord> <y-coord>
- Sends you to the specified coordinates immediately. This can be used with idmypos to debug problems in a specific area of a map.
Actor control
- summon <class> [angle [TID [special [args... ]]]]
- Spawns a new actor in front of you. A complete list of actors can be obtained with the dumpclasses actor command. For a list of actors limited to those you can place in an editor, use the dumpmapthings command. It is possible to spawn actors from another game with this command, but they will not be visible unless you provide the missing graphics for them.
- By default, the actor spawns facing East. If the optional angle parameter is provided, the actor is spawned at an angle relative to the player's current facing instead. (0 faces away from the player, while 180 faces towards him).
- Additional optional parameters can be used to set the summoned actor's TID, special, and arguments.
- summonfriend <class> [angle [TID [special [args... ]]]]
- Same as summon, but causes monsters created using this command to attack non-friendly monsters instead of you.
- summonfoe <class> [angle [TID [special [args... ]]]]
- Same as summon, but forces monsters created using this command to be hostile to the player, regardless of the actor's FRIENDLY.
- summonmbf <class> [angle]
- Same as summonfriend, but also gives the summoned actor the NOBLOCKMONST flag, allowing them to cross monster-blocking lines like MBF friendly monsters do.
- kill [class]
- Used by itself, this kills the player. Alternatively, you can specify "kill monsters" to kill every monster in the level. Note that this command also prevents actors which normally spawn other actors on death (e.g. the Pain Elemental) from doing so.
- If a class is specified, this kills all actors of that type in the map.
- mdk
- This cheat will kill whatever you are looking at. Use a crosshair to get the exact point of what to kill. This is not available in deathmatch mode, even if sv_cheats is true.
Level control
- changemus [<music> [track]]
- Changes the currently playing music. Music should be the name of a music lump or file on disk (which need not have been specified with the -file command line parameter). If a music lump contains several tracks (MIDI type 2, certain XMI song, and miscellaneous other music formats support this), then optionally a second parameter can be used to specify the track number.
- If no parameters are given, the command will instead log the name of the currently-played lump or file to the console.
- changesky <texture>
- Replaces the default sky texture. This corresponds to the texture defined as sky1 in a MAPINFO map definition.
Map changes
- changemap <lumpname>
- Shows the intermission screen and then warps the player to the specified map, (e.g. "changemap e2m3" or "changemap map27") retaining the player's inventory and health value in the process.
- map <lumpname>
- Immediately warps the player to the specified map, skipping the intermission screen. (e.g. "map e2m3" or "map map27") Also resets the player's inventory and health to their starting values, as if they had started a new game. Use changemap to change to a new map without starting the game over.
- nextmap
- Warps the player to the next map as specified by MAPINFO. Also resets the player's inventory and health as if a new game had been started.
- nextsecret
- Warps the player to the current secret map as specified by MAPINFO, just as if he had found the secret exit in this map. Also resets the player's inventory and health as if a new game had been started.
Testing
These commands can be used to test various ZDoom features directly.
- clearwallcycles
- Used for profiling the wall drawer.
- error <message>
- Simulates an error by killing the current game and falling back to the fullscreen console with the specified message.
- error_fatal <message>
- Simulates a fatal error by exiting the game completely and showing the error-message.
- loopsound <sound>
- Spawns a SpeakerIcon at the player's position and makes it loop constantly the given sound. Like all other sounds in the game, sound must be properly defined in a SNDINFO lump before you can use it. (development version r3350+ only)
- playmovie <filename> (deprecated)
- This command was used to play a movie file using DirectShow under Windows. However, the command has now been removed and will no longer work. Movie playback was never supported under other operating systems.
- playsequence <sequence> [<number>]
- Plays a sound sequence on the local machine. If a number is not given, 0 is used. The sequence must be defined in SNDSEQ.
- playsound <sound>
- Plays a sound on the local machine. Like all other sounds in the game, sound must be properly defined in a SNDINFO lump before you can use it.
- spray <decal>
- Sprays a decal on a nearby wall so you can see what it looks like.
- puke <script> [arg1 [arg2 [arg3]]]
- Executes an ACS script on the current map, optionally passing it up to three numerical arguments. If you try this on multiplayer, sv_cheats must normally be enabled. However, if the script has the "net" keyword, it can be activated by anyone in a multiplayer game.
- If the "script" argument is a negative value, the script will be executed as if it had been called by ACS_ExecuteAlways; otherwise it will be executed as if called by ACS_Execute.
- pukename <script> [always] [arg1 [arg2 [arg3]]] (development version r3365+ only)
- Executes a named script on the current map, optionally passing it up to three numerical arguments. If you try this on multiplayer, sv_cheats must normally be enabled. However, if the script has the "net" keyword, it can be activated by anyone in a multiplayer game.
- If the always keyword is placed after the script name (and before any optional argument), the script will be executed as if it had been called by ACS_NamedExecuteAlways; otherwise it will be executed as if called by ACS_NamedExecute.
- special <special> [arg1 [arg2 [arg3 [arg4 [arg5]]]]] (development version r3088+ only)
- Executes an action special on the current map, optionally passing it up to five numerical arguments.
- testblend <color> <amount>
- Sets the palette blend to a specified color and amount. color can be either a color name defined in the X11R6RGB lump or a color string.amount can be a number between 0.0 and 1.0 inclusive and specifies how much of <color> should be mixed with the palette, with 0.0 being no mixing and 1.0 being full mixing.
- testcolor <color>
- Sets the light color of any sectors using the default light to color. color can be either a color defined in the X11R6RGB lump or a color string.
- testfade <color>
- Temporarily sets the fade color of the current level to color. Most levels fade to black by default, but this can be changed with the MAPINFO lump. color can be either a color defined in the X11R6RGB lump or a color string.
Display
These commands can be used to alter or test various aspects of the game's renderer or game display.
- bumpgamma
- Increases the current gamma level by 0.1. If the new gamma level would be greater than 3.0, it wraps the gamma around to 1.0.
- chase
- fov
- Modifies the FOV.
- r_visibility [amount]
- Without any parameters, displays the current visibility. With a parameter, the visibility is set. Standard visibility for the Doom engine is 8. Visibility determines how quickly light drops off with distance from the viewer. At 0 visibility, there is no change in lighting with depth.
- screenshot [file]
- Dumps a copy of the screen to disk as a PNG or PCX file. If file is not specified, the screenshot filename will be in a set format which include the name of the IWAD being used and the time the shot was taken.
- vid_listmodes
- Lists all resolutions supported by the current display driver.
- vid_setmode <width> <height> [depth]
- Sets the screen mode to width x height with an optional color depth (if your video hardware supports it). Only a depth of 8 is supported. (Verification needed)
- vid_speedtest
- Tests the speed to which video and system memory is written and prints the results to the console.
- vid_currentmode
- Displays the resolution of the current video mode.