Developer cheats
TO DO:
- add Notes
- mention and link to Performance Optimizations
The list below contains the frequently used in-game developer cvars used by the Splash Damage level designers. Use the htmlCvars console command to dump an html file containing a full list and description of every cvar in the game..
The console can be accessed in game via pressing the keyboard above TAB on most keyboards (~ on American keyboards, ¬ on most European ones). Sometimes you may need to use ctrlalt~ for non-developer versions of the game. Some console commands also work in the console window of editWorld.
Contents
AAS cvars
aas_locationMemory
- used to remember a particular location, set to 'current' to store the current x,y,z location
- type: string (cheat)
aas_pullPlayer
- pull the player to the specified area
- type: string (cheat)
aas_randomPullPlayer
- pull the player to a random area
- type: int (cheat)
aas_showAreaNumber
- show the specific area number set
- type: int (cheat)
aas_showAreas
- show the areas in the selected aas
- type: int [0, 2] (cheat)
aas_showBadAreas
- show bad AAS areas
- type: int [0, 3] (cheat)
aas_showFuncObstacles
- show the AAS func_obstacles on the map
- type: bool (cheat)
- default: 0 (false)
aas_showManualReachabilities
- show manually placed reachabilities
- type: bool (cheat)
- default: 0 (false)
aas_showPath
- show the path to the walk specified area
- type: string (cheat)
aas_showWallEdges
- show the edges of walls, 2 = project all to same height, 3 = project onscreen
- type: int [0, 3] (cheat)
aas_skipObstacleAvoidance
- ignore all dynamic obstacles along paths
- type: bool (cheat)
- default: 0 (false)
aas_test
- select which AAS to test
- type: string [aas_player, aas_vehicle] (cheat)
Bots cvars
bot_debug
- Debug various bot subsystems. Many bot debugging features are disabled if this is not set to 1
- type: bool (cheat)
- default: 0 (false)
bot_debugMapScript
- Allows you to debug the bot script.
- type: bool (cheat)
- default: 0 (false)
bot_doObjectives
- 0 = bots let the player play the hero, with the bots filling a supporting role, 1 = bots do all the major objectives along with the player
- type: bool
- default: 1 (true)
bot_drawActionDist
- How far away to draw the bot action info. Default is 2048
- type: float (cheat)
bot_drawActionGroupNum
- Filter what action groups to draw with the bot_drawAction cmd. -1 = disabled.
- type: int (cheat)
bot_drawActionNumber
- Draw a specific bot action only. -1 = disable
- type: int (cheat)
bot_drawActionRoutesOnly
- Draw only the bot actions that have the defined route.
- type: int (cheat)
bot_drawActions
- Draw the bot's actions.
- type: bool (cheat)
- default: 0 (false)
bot_drawActionTypeOnly
- Draw only actions that have a gdf/strogg goal number matching the cvar value. Check the bot manual for goal numbers. -1 = disabled.
- type: int (cheat)
bot_drawActionVehicleType
- Draw only the actions that have this vehicleType set. -1 = disable
- type: int (cheat)
bot_drawActionWithClasses
- Draw only actions that have a validClass set to anything other then 0 ( 0 = any class ).
- type: bool (cheat)
- default: 0 (false)
bot_drawActiveActionsOnly
- Draw only active bot actions. 1 = all active actions. 2 = only GDF active actions. 3 = only Strogg active actions. Combo actions, that have both GDF and strogg goals, will still show up.
- type: int (cheat)
bot_drawActiveRoutesOnly
- Only draw the active routes on the map.
- type: bool (cheat)
- default: 0 (false)
bot_drawBadIcarusActions
- Draw actions with an icarus flag, that aren't in a valid vehicle AAS area.
- type: bool (cheat)
- default: 0 (false)
bot_drawClientNumbers
- Draw every clients number above their head
- type: bool (cheat)
- default: 0 (false)
bot_drawDefuseHints
- draw the bot's defuse hints.
- type: bool (cheat)
- default: 0 (false)
bot_drawIcarusActions
- Draw actions with an icarus flag, that appear valid to the AAS.
- type: bool (cheat)
- default: 0 (false)
bot_drawNodeNumber
- draw a specific vehicle path node
- type: int (cheat)
bot_drawNodes
- draw vehicle path nodes
- type: bool (cheat)
- default: 0 (false)
bot_drawObstacles
- Draw the bot's dynamic obstacles in the world
- type: bool (cheat)
- default: 0 (false)
bot_drawRearSpawnLocations
- Draw the rear spawn locations for each team
- type: bool (cheat)
- default: 0 (false)
bot_drawRouteGroupOnly
- Only draw routes that have the groupID specified.
- type: int (cheat)
bot_drawRoutes
- Draw the routes on the map.
- type: bool (cheat)
- default: 0 (false)
bot_followMe
- Have the bots follow you in debug mode
- type: int (cheat)
bot_godMode
- Set to the bot client you want to enter god mode. -1 = disable.
- type: int (cheat)
bot_hud
- Print out the bots debug info onto the players HUD. Set to the clientNum of the bot to debug. 0 = disable. Make sure bot_debug is 1.
- type: int (cheat)
bot_ignoreEnemies
- If set to 1, bots will ignore all enemies. Useful for debugging bot behavior
- type: int (cheat)
bot_ignoreGoals
- If set to 1, bots will ignore all map objectives. Useful for debugging bot behavior
- type: int (cheat)
bot_minClients
- Keep a minimum number of clients on the server with bots and humans. -1 to disable
- type: int [-1, 32]
bot_minClientsMax
- Maximum allowed value of bot_minClients. Only affects the in-game UI.
- type: int [-1, 32] (init)
bot_pause
- Pause the bot's thinking - useful for screenshots/debugging/etc
- type: bool (cheat)
- default: 0 (false)
bot_showPath
- Show the path for the bot's client number. -1 = disable.
- type: int (cheat)
bot_spectateDebug
- If enabled, automatically sets the debug hud to the bot being spectated
- type: bool (cheat)
- default: 0 (false)
bot_testPathToBotAction
- based on which aas type aas_test is set to, will test to see if a path is available from the players current origin, to the bot action in question. You need to join a team for this to work properly! -1 = disabled.
- type: int (cheat)
bot_threading
- enable running the bot AI in a separate thread
- type: bool
- default: 1 (true)
bot_useDeployables
- 0 = bots dont drop deployables of any kind, 1 = bots can drop all deployables
- type: bool
- default: 1 (true)
bot_useVehicles
- 0 = bots dont use vehicles, 1 = bots do use vehicles
- type: bool
- default: 1 (true)
Common cvars
cm_drawColor
- color used to draw the collision models
- type: string (cheat)
cm_drawFilled
- draw filled polygons
- type: bool (cheat)
- default: 0 (false)
cm_drawMask
- collision mask
- type: string [none, solid, opaque, water, playerclip, moveableclip, ikclip, slidemover, body, corpse, trigger, vehicleclip, rendermodel, projectile, explosion, monster, forcefield, crosshair, flyerhive] (cheat)
com_allowConsole
- allow toggling console with the tilde key
- type: bool
- default: 1 (true)
com_gpuSpec
- hardware classification, -1 = not detected, 0 = low quality, 1 = medium quality, 2 = high quality, 3 = ultra quality
- type: int
com_showFPS
- show frames rendered per second
- type: bool
- default: 0 (false)
con_noPrint
- print on the console but not onscreen when console is pulled up
- type: bool
- default: 1 (true)
developer
- developer mode
- type: bool
- default: 1 (true)
g_debugLocations
- type: bool (cheat)
- default: 0 (false)
g_debugMask
- debugs a deployment mask
- type: string (cheat)
g_disableVehicleSpawns
- disables vehicles spawning from construction pads
- type: string (cheat)
g_drawRouteConstraints
- draws lines showing route constraints
- type: int (cheat)
g_maxShowDistance
- type: float (cheat)
g_showCollisionModels
- type: bool (cheat)
- default: 0 (false)
g_showCollisionWorld
- type: int (cheat)
g_showEntityInfo
- type: bool (cheat)
- default: 0 (false)
g_showHud
- draw the hud gui
- type: bool
- default: 1 (true)
g_showTriggers
- draws trigger entities (orange) and their targets (green). disabled triggers are drawn grey.
- type: bool (cheat)
- default: 0 (false)
g_warmup
- Length (in minutes) of warmup period
- type: float
pm_noclipspeed
- speed the player can move while in noclip
- type: float
pm_noclipspeedsprint
- speed the player can move while in noclip and sprinting
- type: float
pm_noclipspeedwalk
- speed the player can move while in noclip and walking
- type: float
pm_spectatespeed
- speed the player can move while spectating
- type: float
pm_spectatespeedsprint
- speed the player can move while spectating and sprinting
- type: float
pm_spectatespeedwalk
- speed the player can move while spectating and walking
- type: float
pm_thirdPerson
- enables third person view
- type: bool (cheat)
- default: 0 (false)
pm_thirdPersonAngle
- direction of camera from player in 3rd person in degrees (0 = behind player, 180 = in front)
- type: float (cheat)
pm_thirdPersonClip
- clip third person view into world space
- type: bool (cheat)
- default: 1 (true)
pm_thirdPersonHeight
- height of camera from normal view height in 3rd person
- type: float (cheat)
pm_thirdPersonRange
- camera distance from player in 3rd person
- type: float (cheat)
r_clear
- force screen clear every frame, 1 = purple, 2 = black, 'r g b' = custom
- type: string (cheat)
r_debugViewEntities
- type: int (cheat)
r_fullscreen
- 0 = windowed, 1 = full screen
- type: bool
- default: 1 (true)
r_lockedView
- type: int (cheat)
r_shadowPass
- enable shadow pass
- type: bool (cheat)
- default: 1 (true)
r_shadows
- enable shadows
- type: bool
- default: 1 (true)
r_showBatches
- draw each batch with a different color
- type: bool (cheat)
- default: 0 (false)
r_showBatchInfo
- report batch counts for various types
- type: int (cheat)
r_showBatchSize
- highlighting of draw batches that fall below the desired polygons per draw call (purple really bad, red bad, yellow moderate, green good), 1 = only draw visible ones, 2 = draw all front facing, 3 = draw all
- type: int [0, 3] (cheat)
r_showLightCount
- 1 = colors surfaces based on light count, 2 = also count everything through walls, 3 = also print overdraw
- type: int [0, 3] (cheat)
r_showLights
- 1 = just print volumes numbers, highlighting ones covering the view, 2 = also draw planes of each volume, 3 = also draw edges of each volume
- type: int [0, 3] (cheat)
r_showMegaTextureSTGrid
- Show megaTexture ST grid
- type: bool (cheat)
- default: 0 (false)
r_showModelTypes
- show model types, red - md5, blue - area, green - lodentity, white - other
- type: int (cheat)
r_showOverDraw
- 1 = geometry overdraw, 2 = light interaction overdraw, 3 = geometry and light interaction overdraw
- type: int [0, 3] (cheat)
r_showPortals
- draw portal outlines in color based on passed / not passed
- type: int (cheat)
r_showPrimitives
- report drawsurf/index/vertex counts
- type: int (cheat)
r_showShadowCount
- colors screen based on shadow volume depth complexity, >= 2 = print overdraw count based on stencil index values, 3 = only show turboshadows, 4 = only show static shadows
- type: int [0, 4] (cheat)
r_showShadows
- 1 = visualize the stencil shadow volumes, 2 = draw filled in
- type: int [0, 4] (cheat)
r_showSurfaceInfo
- show surface material name under crosshair
- type: int (cheat)
r_showTris
- enables wireframe rendering of the world, 1 = only draw visible ones, 2 = draw all front facing, 3 = draw all
- type: int [0, 3] (cheat)
r_skipDiffuse
- 1 = use black for diffuse, 2 = use white for diffuse
- type: int (cheat)
r_skipImposters
- Skip imposter generation and rendering
- type: bool (cheat)
- default: 0 (false)
r_skipInstances
- skip rendering of instances
- type: bool (cheat)
- default: 0 (false)
r_skipSpecular
- use black for specular
- type: bool (cheat)
- default: 0 (false)
r_skipStuff
- Don't draw stuff models
- type: bool
- default: 0 (false)
r_usePortals
- 1 = use portals to perform area culling, otherwise draw everything
- type: bool (cheat)
- default: 1 (true)
r_useScissor
- scissor clip as portals and lights are processed
- type: bool (cheat)
- default: 1 (true)
r_visDistMult
- type: float [0.8, 1.2]
r_visDistOfs
- type: float (cheat)
si_adminStart
- admin required to start the match
- type: string
si_pure
- server is pure and does not allow modified data
- type: bool
- default: 1 (true)
si_rules
- ruleset for game
- type: string
- Note: set this to "sdGameRulesObjective" if you want to test a single map. Other choices include "sdGameRulesCampaign" and "sdGameRulesStopWatch".
timescale
- scales the time
- type: float [0.1, 10]
ui_showGun
- show gun
- type: bool
- default: 1 (true)
win_allowMultipleInstances
- allow multiple instances running concurrently
- type: bool (cheat)
- default: 0 (false)
Common commands
god
- Makes the player invulnerable.
- Note: A GDF player coming into contact with a Strogg energy force field will still die.
give ammo
- Return your ammo to full value.
give health
- Return your health to full value.
give class <classname>
- Switch to a specific class without respawning.
- Replace <classname> with the appropriate class.
- GDF Examples:
- give class solider
- give class medic
- give class engineer
- give class fieldops
- give class covertops
- Strogg Examples:
- give class aggressor
- give class technician
- give class constructor
- give class oppressor
- give class infiltrator
g_maxProficiency
- Set this to "1" and then respawn into the map. You will now have all the campaign unlocks.
- This is usefull for testing a map with the upgraded skill rewards.
- In particular:
- Faster Sprint (test trick jumps and time runs between objectives)
- GDF Grenade Launcher and Strogg Plasma Launcher (test bounces, accessibility)
noclip
- Allows the player to "fly" around the map and through geometry.
notarget
- Enemy bots and Base Defense Turrets will not attack you.
spawn <deployable_name>
- Spawn a deployable into the map where you are standing, facing towards you. The deployable will spawn in with the correct team settings (ie. if you are a Strogg and you spawn a GDF Anti-personnel turret it will shoot at you unless you are in godmode, in which case it will ignore you).
- Replace <deployable_name> with the appropriate deployable.
- GDF Examples:
- spawn deployable_amt_gdf
- Note: This is the Engineer's Artillery Interceptor Turret
- spawn deployable_antipersonnel_gdf
- spawn deployable_antiarmour_gdf
- Note: This is the Engineer's anti-vehicle turret
- spawn deployable_artillery
- spawn deployable_radar
- spawn deployable_rockets
- spawn deployable_ssm
- Note: This is the Field Ops' Hammer Launcher
- spawn deployable_amt_gdf
- Strogg Examples:
- spawn deployable_antipersonnel_strogg
- spawn deployable_antiarmour_strogg
- Note: This is the Constructor's anti-vehicle turret
- spawn deployable_psi
- Note: This is the Infiltrator's Psi Radar
- spawn deployable_railhowitzer
- spawn deployable_shield_generator
- Note: This is the Constructor's Artillery Interceptor Turret
- spawn deployable_ssg
- Note: This is the Oppressor's Dark Matter Cannon
spawn <vehicle_name>
- Spawn a vehicle into the map where you are standing, facing towards you. The vehicle will spawn in as a neutral team so as a developer you can enter any vehicle regardless of your team (ie. if you are Strogg you can spawn a GDF Anansi and fly around).
- Replace <vehicle_name> with the appropriate vehicle.
- GDF Examples:
- spawn vehicle_anansi
- spawn vehicle_badger
- Note: This is the old name for the Armadillo
- spawn vehicle_bumblebee
- spawn vehicle_husky
- spawn vehicle_mcp
- spawn vehicle_platypus
- spawn vehicle_titan
- spawn vehicle_trojan
- Strogg Examples:
- spawn vehicle_desecrator
- spawn vehicle_goliath
- Note: This is the old name for the Cyclops
- spawn vehicle_hog
- spawn vehicle_hornet
- Note: This is the old name for the Tormentor
- spawn vehicle_icarus
Example key binds
MODIFIER and CONTEXT binding
- bind <key> <command> <modifier> <context>
- "modifier" is a key press & hold before the bound key press
- "context" for binds: "default" (on foot), "vehicle" (all vehicles), "menu"
- eg. CTRL+F4 switches between timescale 10 and timescale 1
Examples from nkd_dev.cfg
These are taken from "base/nkd_dev.cfg".
bind a "toggle aas_showAreas 1 0" "SHIFT" "default" bind a "toggle bot_drawActiveActionsOnly 0 1 2 3" "CTRL" "default" bind a "toggle bot_drawActions 1 0; bot_drawActiveActionsOnly 0" "ALT" "default" bind b "toggle aas_showBadAreas 0 1 2 3" "SHIFT" "default" bind b "toggle bot_debug 1 0; toggle bot_debugMapScript 1 0" "ALT" "default" bind c "toggle bot_drawClientNumbers 1 0" "ALT" "default" bind d "toggle bot_drawActionDist 4096 10240 32768 2048" "ALT" "default" bind f "toggle aas_showFuncObstacles 0 1" "ALT" "default" bind f "toggle com_showFPS 0 1" "CTRL" "default" bind g "toggle ui_showGun 0 1" "CTRL" "default" bind h "toggle g_showHud 0 1" "CTRL" "default" bind i "toggle bot_drawIcarusActions 0 1" "CTRL" "default" bind i "toggle bot_drawBadIcarusActions 0 1" "ALT" "default" bind j "toggle bot_canStrafeJump 1 0" "ALT" "default" bind l "toggle r_showlightinfo -1 -2" "ALT" "default" bind n "toggle con_noPrint 1 0" "CTRL" "default" bind n "notarget" "SHIFT" "default" bind n "toggle bot_drawNodes 1 0" "ALT" "default" bind o "toggle bot_drawObstacles" "ALT" "default" bind p "toggle bot_pause 1 0" "ALT" "default" bind q "setLightInfo -1 select" "SHIFT" "default" bind q "setLightInfo -1 toggle" "CTRL" "default" bind q "setLightInfo -1 shadowstoggle" "ALT" "default" bind r "toggle aas_showManualReachabilities 1 0" "SHIFT" "default" bind r "toggle bot_drawActiveRoutesOnly 0 1" "CTRL" "default" bind r "toggle bot_drawRoutes 1 0; bot_drawActiveRoutesOnly 0" "ALT" "default" bind t "toggle bot_threading 1 0" "ALT" "default" bind w "toggle aas_showWallEdges 0 1 2 3" "SHIFT" "default" bind F4 "toggle timescale 10 1" "CTRL" "default" bind F5 "toggle r_showPrimitives 0 1" bind F5 "toggle r_showSurfaceInfo 0 1" "CTRL" "default" bind F5 "toggle g_showEntityInfo 0 1" "SHIFT" "default" bind F5 "toggle r_debugViewEntities 0 1 2" "ALT" "default" bind F6 "toggle r_lockedView 1 0" bind F6 "toggle r_visDistOfs 0 2048 4096 8192 10240 14000 16384 20000" "CTRL" "default" bind F6 "toggle com_gpuSpec 0 3" "ALT" "default" bind F7 "toggle r_showPortals 0 1 2 3" bind F7 "toggle r_usePortals 0 1" "CTRL" "default" bind F7 "sizedown" "SHIFT" "default" bind F7 "sizeup" "ALT" "default" bind F8 "toggle r_showTris 0 1 2 3" bind F8 "toggle r_showOcclusions 0 1" "CTRL" "default" bind F8 "toggle r_showModelTypes 0 1" "SHIFT" "default" bind F9 "toggle r_showLightCount 0 1" bind F9 "toggle r_showLights 0 1 2 3" "CTRL" "default" bind F9 "toggle r_showShadowCount 0 1 2" "SHIFT" "default" bind F9 "toggle r_showShadows 0 1 2 3" "ALT" "default" bind F10 "toggle r_showBatches 0 1" bind F10 "toggle r_showBatchInfo 0 1" "CTRL" "default" bind F10 "toggle r_showBatchSize 0 1 2 3" "SHIFT" "default" bind F11 "toggle r_skipDiffuse 0 1 2" bind F11 "toggle r_skipBump 0 1" "CTRL" "default" bind F11 "toggle r_skipSpecular 0 1" "SHIFT" "default" bind F11 "toggle r_skipImposters 0 1" "ALT" "default" bind F12 "con_noprint 1; com_showfps 0; g_showhud 0; ui_showgun 0; wait; wait; wait; screenshot; toggle con_noprint; toggle com_showfps; toggle g_showhud; toggle ui_showgun" //Note: This is a "clean" screenshot with no hud, gun, or any debug prints onscreen. bind F12 "takeViewNote" "CTRL" "default" //Note: This command pops up a GUI so you can type a brief note onto the screenshot. bind F12 "screenshot" "SHIFT" "default" //Note: This is the regular screenshot command.
Example shorcuts/bat files
EditWorld shortcut
- C:\ETQW\etqw.exe +set win_allowMultipleInstances 1 +set developer 1 +set logfile 2 +set r_fullscreen 0 +editworld
ETQW game devmap shorcut
- C:\ETQW\etqw.exe +set win_allowMultipleInstances 1 +set con_noprint 0 +set developer 1 +set logfile 2 +set r_fullscreen 0 +set g_warmup 0 +set si_readyPercent 0
- Note: This shortcut is intended to load the game in developer mode and allow the level designer to bypass the "Warmup" period of the map.
- Note: Add this to directly load a particular map while you grab a coffee: +devmap area22
ETQW game spawnserver Bot bat file
- etqw.exe +set win_allowMultipleInstances 1 +set con_noprint 0 +set developer 1 +seta logfile 2 +set r_fullscreen 0 +set si_readypercent 0 +set si_minplayers 0 +set bot_minClients -1 +set net_allowCheats 1 +spawnServer area22
- Note: This bat file spawns the a local server with cheats enabled, no warmup, and no bots. Change bot_minClients to a value that is not "-1" and they will then spawn in.
nakedape's bot settings
- Note: I put these into a cfg, base/set_bot_cvars.cfg, and then would exec this cfg once the spawn server was loaded using the above bat file. This allowed me to launch server, get a coffee, and then come back to a loaded map, add the bots and settings in one step, and then begin testing.
set bot_debug 1 set bot_debugMapScript 1 set bot_drawClientNumbers 1 set bot_minClients 17 set bot_noChat 1 set bot_useStrafeJump 1 set g_warmup 1 set net_allowcheats 1 set si_adminStart 0 set si_minPlayers 0 set si_readyPercent 0 set si_timelimit 25