Console Variables

From MechWarrior: Living Legends Wiki
Jump to: navigation, search

Overview

Each Console Variable controls one specific feature of the games graphics, performance or controls. For instance, r_TexResolution controls the texture resolution of assets ingame, and can be set anywhere from 0 (r_TexResolution = 0) for higher; or 4 (r_TexResolution = 4) for lower resolution at your own discretion. A few console variables aren't tied directly to a features, but direct groups of other variables- these Group Console Variables are what you're changing when you change your settings via the ingame Settings menu.

Essentially, Control Variables (cvar) are the hidden, 'Advanced Settings' page to Mechwarrior Living Legends. The ingame settings page serves as an easy to use, but rough method of setting these variables- but fails to explore the full spectrum of possibilities with its simple design. Fine tuning your settings using a user.cfg file opens the door to all of the games console variables and individual control on their adjustment- giving you the ability to run your game with settings customized to matching your tastes for performance and appearance.

Both the extreme high ends of maximum performance, and maximum graphical output are only available using User.cfg files, and many players seeking a middle ground utilize one to find their own personal sweet-spot between the two, homing in on their preferred FPS by reducing visual amenities of their choice.

Beyond fine adjustment to graphics, there are many other features hidden in the Console Variables, with immense flexibility granted by combining the bind and exec functions- players can change other control variables, change batches of variables, or run scripts with the press of a button ingame.

One final note - Make a few Console Adjustments at a time, then test them out in the game. Keep what works. Then a few more and few more until the game runs as well as you like. Remember you are fine tuning the game to match your components so it is going to take several matches to find what works.

The User.cfg File

Usercfghome.png

While the filename user.cfg may seem intimidating- rest assured there's no programming knowledge needed here. Fundamentally, adding a user.cfg file is as easy as placing a text file with a specific name in a specific folder. You can either write your own, download a prebuilt one from this page, or use one that another player has shared with you.

To add your user.cfg file:

  1. Right click on your desktop, and select 'New Text File'
  2. Write, or copy-&-paste the variables and their preferred settings as you wish into the document
  3. Save the file, and then manually rename it to user.cfg (make sure to replace the original extension, a user.cfg.txt file will not work)
  4. Place the file into the MWLL / Client directory. By default its file tree is Documents / My_Games / Crysis_Wars / MWLL / Client

If you downloaded a user.cfg file from here or a friend, you just need to place it in the MWLL / Client folder

Functionally, the user.cfg file is a set of instructions that the game runs whenever it opens. Whatever settings you specify in this file will be set on each launch, and is a reliable method to save your preferred settings- especially for users tired of the bug where the ingame settings menu occasionally resets their preferences between launches.

Prewritten User.cfg Files

The following files are hosted on Discord. Remember to edit the Height and Width console variables to match your preferred screen resolution. See the following section Customizing the user.cfg for more details.

  • Low Visuals/High Performance Preset
    • Recommended for users struggling to maintain usable FPS ingame. From this, you can edit features back in at your discretion to meet your preferences.
  • (Outdated) Low Visuals/High Performance Preset
    • (There are two bugs that affect some users within this file, which can be amended by deleting the line e_particles_quality = 9, or ingame projectiles will become invisible- and the line d3d9_forcesoftware = 1, or the ingame Console and Cbill Transfer Menu will be unusable due to invisible text.)

Writing Your Own User.cfg File


Testing Console Variables

Each Console Variable can be tested ingame from the Console. You can use this to test how individual variables affect your games appearance, or performance- in real time.

  1. Open the Console by pressing the ~ or ` key ingame. This both opens, and closes the console- where you can check the status of, and change Console Variables.
  2. To view a readout of your FPS, type r_displayinfo = 1 and press enter. This enables the variable that will give a real-time readout of your FPS in the upper right hand corner. This can be removed by going into the console again, and typing r_displayinfo = 0
  3. You can see the current status of any Console Variable by entering its name without a value (typing in just r_TexResolution will return a statement with its current value)
  4. You can set the value of any unlocked Console Variable by entering its name with a value (you can set r_TexResolution to 2 by entering r_TexResolution = 2 )

Using the Console Variables, and their descriptions below- you can test different variables affects on your games performance and appearance together, and then record them into a user.cfg file for your game to remember them. 'Console Variables entered in the console are NOT saved between sessions, and are reset to whatever is written in your user.cfg, or the games default values- every launch.

FPS is only an indirect measurement of Frame Time, a more direct unit of your game's performance. You can instead see and measure your Frame Time with r_displayinfo = 2, which will be a more accurate depiction of your machines load - Lower Frame Time is better; with 16ms corresponding to 60 FPS, and 33ms to 30. Optimizing for Frame Time instead of FPS may yield a more stable, smooth experience

Customizing Your User.cfg File

If you're writing your own User.cfg from scratch, there are some important settings to include in every user.cfg file.

con_restricted = 0
This is required for the user.cfg file to be considered by your game. Without this, the rest of the file will be ignored. Activating this will make your game start with the console open. It can be closed with the ~ key.
sys_DeactivateConsole = 1
This, in turn, will start your game with the console closed. It can still be opened with the ~ key.
r_Height = ...
r_Width = ...
This specifies the Height and Width your game will run in, and should be set to your tastes. Its easiest to experiment with these from the ingame menu, and then record it here for consistency on launches. Higher resolution will look better, but lower resolution will perform better.
r_fullscreen = ...
[0 for windowed mode, 1 for fullscreen]
Some players experience better performance in windowed mode. Here is where you would set it to always run in windowed mode, if that were the case.

Variables

The Mechwarrior: Living Legends mod is built in Cryengine- which was renowned in its time for its incredible graphics. Each release in the Crysis series has been used by hobbiest computer builders as a benchmark for performance. In addition, Cryengine developers built a very durable Console Variable system- which allows for control over your graphics and performance at a fidelity that puts most modern games to shame.

LOD - Level Of Detail - cryengine takes a lot of consideration just how detailed an object is drawn in the game engine - moreover - the artist alone can make 3 (or more) gradually simpler objects for the engine to pick from - massively important on vegetation or in cities.

View Distance - the artist (map maker) and the engine compete just when the switchover of various LODs will happen - some is left to the tweaker of the config files we discuss here.

Ray Cast - the engine uses a straight line between view-port camera ("player's eye") and the object to determine if it is visible or whatever.

Occluder - the map maker can place a plane (called occlusion plane) that cuts (culls) any visual raycasts and thus speeds up the view-port drawing time significantly - one special occluder is the maximum view distance one - it "travels" with us.

quality levels - there are few: 0 - automatic, 1 - low, 2 - medium, 3 - high, 4 - maximum; Note - below 3 only LOD 1 and onward (LOD 2, LOD 3...) are rendered - to ever see LOD 0 designs one has to set quality to high ie 3 or better.

There are a comical number of Console Variables integrated with Cryengine. The following list is a subset of them, cutting variables that are holdovers from unrelated titles (settings pertaining to ingame AI behavior, hair rendering, facial animation, etc) and the variables that have been locked by the Mechwarrior: Living Legends development in order to ensure no one abuses the Console Variables into having an unfair advantage (clouds, rain, fog, some vegetation variables cannot be disabled).

Graphics


sys_spec_ObjectDetail
Default: 4
help: Console variable group to apply settings to multiple variables

sys_spec_ObjectDetail [1/2/3/4/x]:
... ca_AttachmentCullingRation = 100/120/160/200/200
... ca_DrawFaceAttachments = 0/1/1/1/1
... ca_useDecals = 0/1/1/1/1
... e_cbuffer_resolution = 128/128/256/256/256
... e_decals_allow_game_decals = 0/1/1/1/1
... e_decals_life_time_scale = 0.5/1/2/2/2
... e_detail_materials_view_dist_xy = 64/2048/2048/2048/2048
... e_detail_materials_view_dist_z = 64/128/128/128/128
... e_dissolve = 0/0/1/1/1
... e_lod_min = 2/1/0/0/0
... e_lod_ratio = 3/4/6/6/6
... e_lods = 1/1/1/1/1
... e_max_view_dst_spec_lerp = 0/0.5/1/1/1
... e_obj_quality = 1/2/3/4/4
... e_proc_vegetation = 0/1/1/1/1
... e_terrain_occlusion_culling_max_dist = 100/130/200/200/200
... e_vegetation_bending = 1/2/2/2/2
... e_vegetation_min_size = 1.0/0.5/0/0/0
... e_vegetation_sprites_distance_custom_ratio_min = 0.5/0.75/1/1/1
... e_vegetation_sprites_distance_ratio = 1/1/1/1.5/1.5
... e_view_dist_ratio = 40/60/60/60/60
... e_view_dist_ratio_detail = 15/19/24/30/30
... e_view_dist_ratio_vegetation = 15/21/31/45/45
... es_DebrisLifetimeScale = 0.3/0.6/0.8/1/1
... i_rejecteffects = 0/1/1/1/1
... sys_flash_curve_tess_error = 8/4/2/2/2

sys_spec_Full
Default: 4
Help: Console variable group to apply settings to multiple variables
sys_spec_Full [1/2/3/4/x]:
... sys_spec_GameEffects = 1/2/3/4/4
... sys_spec_MotionBlur = 1/2/3/4/4
... sys_spec_ObjectDetail = 1/2/3/4/4
... sys_spec_Particles = 1/2/3/4/4
... sys_spec_Physics = 1/2/3/4/4
... sys_spec_PostProcessing = 1/2/3/4/4
... sys_spec_Shading = 1/2/3/4/4
... sys_spec_Shadows = 1/2/3/4/4
... sys_spec_Sound = 1/2/3/4/4
... sys_spec_Texture = 1/2/3/4/4
... sys_spec_VolumetricEffects = 1/2/3/4/4
... sys_spec_Water = 1/2/3/4/4

r_VSync
Default: 0
Help: Toggles vertical sync, a setting used to prevent Screen Tearing, disabling can improve performance.
Usage: r_VSync [0/1]

sys_spec
Default: 0
Help: Tells the system cfg spec. (0=custom, 1=low, 2=med, 3=high, 4=veryhigh)

cl_motionBlur
Default: 2
Help: motion blur type (0=off, 1=accumulation-based, 2=velocity-based)

e_dissolve
Default: 0
Help: Objects alphatest_noise_fading out on distance

e_dissolve_transition_threshold
Default: 0.05
Help: Controls disabling of smooth transition if camera moves too fast

e_dissolve_transition_time
Default: 0.3
Help: Lod switch duration

r_ColorBits
Default: 32
Help: Sets the color resolution, in bits per pixel. Default is 32.
Usage: r_ColorBits [32/24/16/8]

r_ColorGrading
Default: 1
Help: Enables color grading.
Usage: r_ColorGrading [0/1]

r_ColorGradingDof
Default: 1
Help: Enables color grading dof control.
Usage: r_ColorGradingDof [0/1]

r_ColorGradingFilters
Default: 1
Help: Enables color grading.
Usage: r_ColorGradingFilters [0/1]

r_ColorGradingLevels
Default: 1
Help: Enables color grading.
Usage: r_ColorGradingLevels [0/1]

r_ColorGradingSelectiveColor
Default: 1
Help: Enables color grading.
Usage: r_ColorGradingSelectiveColor [0/1]

r_CoronaColorScale
Default: 1
Help:

r_CoronaFade
Default: 0.5
Help: Time fading factor of the light coronas.
Usage: r_CoronaFade 0.5Default is 0.5.
r_Coronas
Default: 0
Help: Toggles light coronas around light sources.
Usage: r_Coronas [0/1]Default is 1 (on).

r_CoronaSizeScale
Default: 1
Help:

r_MotionBlur
Default: 3
Help: Enables per object and screen motion blur.
Usage: r_MotionBlur [0/1/2/3/4/101/102/103/104]
Default is 1 (screen motion blur on). 1 enables screen motion blur. 2 enables screen and object motion blur.
3 all motion blur and freezing. 4. only per object; modes above 100 also enable motion blur in multiplayer

r_SSAO
Default: 0
Help: Enable ambient occlusion

r_SSAO_blur
Default: 4
Help: SSAO mask blur

r_SSAO_darkening
Default: 0.075
Help: Controls how much SSAO darkens flat open surfaces

r_SSAO_downscale_ztarget
Default: 1
Help: Use downscaled version of z-target

r_SSAO_quality
Default: 2
Help: SSAO shader quality

r_UseEdgeAA
Default: 2
Help: Toggles edge blurring/antialiasing
Usage: r_UseEdgeAA [0/1/2]
Default is 1 (edge blurring)
1 = activate edge blurring mode
2 = activate edge antialiasing mode (previous version)

r_UsePOM
Default: 0
Help: Enables Parallax Occlusion Mapping.
Usage: r_UsePOM [0/1]

q_Renderer
Default: 0
Help: Defines the quality of Renderer
Usage: q_Renderer 0=low/1=med/2=high/3=very high (default)

Shadows


sys_spec_Shadows
Default: 0
Help: Console variable group to apply settings to multiple variables
sys_spec_Shadows [1/2/3/4/x]:
... e_gsm_cache = 1/1/1/0/0
... e_gsm_lods_num = 3/4/5/5/5
... e_gsm_range = 4/3/3/3/3
... e_shadows = 0/1/1/1/1
... e_shadows_cast_view_dist_ratio = 0.25/0.45/0.53/0.8/0.8
... e_shadows_from_terrain_in_all_lods = 0/0/1/1/1
... e_shadows_max_texture_size = 256/512/1024/1024/1024
... e_shadows_on_alpha_blended = 0/0/1/1/1
... r_ShadowBlur = 0/0/3/3/3
... r_ShadowJittering = 0/1/1/2.5/2.5
... r_ShadowsMaskResolution = 0/0/0/0/0

e_volobj_shadow_strength
Default: 0.4
Help: Self shadow intensity of volume objects [0..1].

e_gsm_cache
Default: 1
Help: Cache sun shadows maps over several frames 0=off, 1=on if MultiGPU is deactivated

e_gsm_cache_lod_offset
Default: 3
Help: Makes first X GSM lods not cached

e_gsm_combined
Default: 0
Help: Variable to tweak the performace of directional shadow maps
0=individual textures are used for each GSM level, 1=texture are combined into one texture

e_gsm_depth_bounds_debug
Default: 0
Help: Debug GSM bounds regions calculation

e_gsm_lods_num
Default: 5
Help: Number of GSM lods (0..5)

e_gsm_range
Default: 3
Help: Size of LOD 0 GSM area (in meters)

e_gsm_range_step
Default: 3
Help: Range of next GSM lod is previous range multiplied by step

e_gsm_range_step_terrain
Default: 16
Help: gsm_range_step for last gsm lod containg terrain

e_gsm_scatter_lod_dist
Default: 70
Help: Size of Scattering LOD GSM in meters

e_gsm_stats
Default: 0
Help: Show GSM statistics 0=off, 1=enable debug to the screens

e_gsm_view_space
Default: 0
Help: 0=world axis aligned GSM layout, 1=Rotate GSM frustums depending on view camera

e_shadows
Default: 0
Help: Activates drawing of shadows

e_shadows_cast_view_dist_ratio
Default: 0.8
Help: View dist ratio for shadow maps
e_shadows_clouds
Default: 1
Help: Cloud shadows

e_shadows_debug
Default: 0
Help: 0=off, 2=visualize shadow maps on the screen

e_shadows_from_terrain_in_all_lods
Default: 1
Help: Enable shadows from terrain

e_shadows_frustums
Default: 0
Help: Debug

e_shadows_max_texture_size
Default: 1024
Help: Set maximum resolution of shadow map
256(faster), 512(medium), 1024(better quality)

e_shadows_occ_check
Default: 0
Help: Enable/disable shadow-caster test against the occlusion buffer

e_shadows_occ_cutCaster
Default: 0
Help: Clips the caster extrusion to the zoro height.

e_shadows_on_alpha_blended
Default: 1
Help: Enable shadows on aplhablended

e_shadows_slope_bias
Default: 4
Help: Shadows slope bias for shadowgen

e_shadows_water
Default: 0
Help: Enable/disable shadows on water

r_ShadowBlur
Default: 3
Help: Selected shadow map screenspace blurring technique.
Usage: r_ShadowBlur [0=no blurring(fastest)/1=blur/2=blur/3=blur without leaking(slower)]

r_ShadowBluriness
Default: 1
Help: Select shadow map bluriness if r_ShadowBlur is activated.
Usage: r_ShadowBluriness [0.1 - 16]

r_ShadowGen
Default: 1
Help: 0=disable shadow map updates, 1=enable shadow map updates

r_ShadowJittering
Default: 2.5
Help: Activate shadow map jittering.
Usage: r_ShadowJittering [0=off, 1=on]

r_ShadowPass
Default: 1
Help: Process shadow pass
r_ShadowsBias
Default: 8e-005
Help: Select shadow map bluriness if r_ShadowsBias is activated.
Usage: r_ShadowsBias [0.1 - 16]

r_ShadowsDeferredMode
Default: 1
Help: 0=Quad light bounds
1=Use light volumes
Usage: r_ShadowsDeferredMode [0/1]

r_ShadowsDepthBoundN
Default: 0
Help: 1=use NDepth Bound extension
Usage: CV_r_ShadowsDepthBoundN
[0/1]

r_ShadowsForwardPass
Default: 1
Help: 1=use Forward prepare depth maps pass
Usage: CV_r_ShadowsForwardPass [0/1]

r_ShadowsGridAligned
Default: 1
Help: Selects algorithm to use for shadow mask generation:
0 - Disable shadows snapping
1 - Enable shadows snapping

r_ShadowsMaskDownScale
Default: 0
Help: Saves video memory by using lower resolution for shadow masks except first one
0=per pixel shadow mask
1=half resolution shadow mask
Usage: r_ShadowsMaskDownScale [0/1]

r_ShadowsMaskResolution
Default: 0
Help: 0=per pixel shadow mask
1=horizontal half resolution shadow mask
2=horizontal and vertical half resolution shadow mask
Usage: r_ShadowsMaskResolution [0/1/2]

r_ShadowsSlopeScaleBias
Default: 1.8
Help: Select shadow map bluriness if r_ShadowBlur is activated.
Usage: r_ShadowBluriness [0.1 - 16]

r_ShadowsStencilPrePass
Default: 1
Help: 1=Use Stencil pre-pass for shadows
Usage: r_ShadowsStencilPrePass [0/1]

r_ShadowTexFormat
Default: 4
Help: 0=use R16G16 texture format for depth map, 1=try to use R16 format if supported as render target
2=use R32F texture format for depth map
3=use ATI's DF24 texture format for depth map
4=use NVIDIA's D24S8 texture format for depth map
5=use NVIDIA's D16 texture format for depth map
Usage: r_ShadowTexFormat [0-5]

r_VarianceShadowMapBlurAmount
Default: 1
Help: Activate shadow map blur.
Usage: r_VarianceShadowMapBlurAmount [0=deactivate, >0 to specify blur amount (1=normal)]

Shaders


sys_spec_Shading
Default: 4
Help: Console variable group to apply settings to multiple variables
sys_spec_Shading [1/2/3/4/x]:
... e_max_entity_lights = 4/7/11/16/16
... e_particles_lights = 0/0/1/1/1
... e_ram_maps = 0/1/1/1/1
... e_sky_type = 0/1/1/1/1
... e_sky_update_rate = 0.12/0.5/1/1/1
... e_terrain_ao = 0/0/1/1/1
... e_terrain_normal_map = 0/0/1/1/1
... e_vegetation_use_terrain_color = 0/1/1/1/1
... r_DetailDistance = 0/4/8/8/8
... r_DetailNumLayers = 0/1/1/2/2
... r_DetailTextures = 0/1/1/1/1
... r_EnvTexUpdateInterval = 0.1/0.075/0.05/0.05/0.05
... r_FillLights = 0/0/14/14/14
... r_HDRRendering = 0/0/2/2/2
... r_HairSortingQuality = 0/0/1/1/1
... r_SSAO = 0/0/1/1/1
... r_SSAO_quality = 1/1/1/2/2
... r_SSAO_radius = 1/1/1/2/2
... r_TexturesFilteringQuality = 2/1/0/0/0
... r_UsePom = 0/0/0/1/1
... r_rain = 0/1/1/1/1
... r_refraction = 1/1/1/1/1
... sys_flash_edgeaa = 0/1/1/1/1
... sys_spec_Quality = 1/2/3/4/4

sys_spec_Quality
Default: 1
help: Console variable group to apply settings to multiple variables
sys_spec_Quality [1/2/3/4/x]:
... q_Renderer = 0/1/2/3/3
... q_ShaderFX = 0/1/2/3/3
... q_ShaderGeneral = 0/1/2/3/3
... q_ShaderGlass = 0/1/2/3/3
... q_ShaderHDR = 0/1/2/3/3
... q_ShaderIce = 0/1/2/3/3
... q_ShaderMetal = 0/1/2/3/3
... q_ShaderPostProcess = 0/1/2/3/3
... q_ShaderShadow = 0/1/2/3/3
... q_ShaderSky = 0/1/2/3/3
... q_ShaderTerrain = 0/1/2/3/3
... q_ShaderVegetation = 0/1/2/3/3
... r_LightsSinglePass = 1/0/0/0/0
r_ShadersAsyncCompiling
Default: 1
Help: Enable asynchronous shader compiling
Usage: r_ShadersAsyncCompiling [0/1]
0 = off, (stalling) shadering compiling
1 = on, shaders are compiled in parallel, missing shaders are rendered in yellow
2 = on, shaders are compiled in parallel, missing shaders are not rendered

r_MergeShaders
script:
Help:

r_OptimiseShaders
script:
Help:

r_PrecacheShaderList
script:
Help:

r_PrecacheShaders
script:
Help:

q_ShaderFX
Default: 0
Help: Defines the shader quality of FX
Usage: q_ShaderFX 0=low/1=med/2=high/3=very high (default)

q_ShaderGeneral
Default: 0
Help: Defines the shader quality of General
Usage: q_ShaderGeneral 0=low/1=med/2=high/3=very high (default)

q_ShaderGlass
Default: 0
Help: Defines the shader quality of Glass
Usage: q_ShaderGlass 0=low/1=med/2=high/3=very high (default)

q_ShaderHDR
Default: 0
Help: Defines the shader quality of HDR
Usage: q_ShaderHDR 0=low/1=med/2=high/3=very high (default)
q_ShaderIce
Default: 0
Help: Defines the shader quality of Ice
Usage: q_ShaderIce 0=low/1=med/2=high/3=very high (default)

q_ShaderMetal
Default: 0
Help: Defines the shader quality of Metal
Usage: q_ShaderMetal 0=low/1=med/2=high/3=very high (default)

q_ShaderPostProcess
Default: 0
Help: Defines the shader quality of PostProcess
Usage: q_ShaderPostProcess 0=low/1=med/2=high/3=very high (default)

q_ShaderShadow
Default: 0
Help: Defines the shader quality of Shadow
Usage: q_ShaderShadow 0=low/1=med/2=high/3=very high (default)

q_ShaderSky
Default: 0
Help: Defines the shader quality of Sky
Usage: q_ShaderSky 0=low/1=med/2=high/3=very high (default)

q_ShaderTerrain
Default: 0
Help: Defines the shader quality of Terrain
Usage: q_ShaderTerrain 0=low/1=med/2=high/3=very high (default)

q_ShaderVegetation
Default: 0
Help: Defines the shader quality of Vegetation
Usage: q_ShaderVegetation 0=low/1=med/2=high/3=very high (default)

q_ShaderWater
Default: 2
Help: Defines the shader quality of Water
Usage: q_ShaderWater 0=low/1=med/2=high/3=very high (default)

r_HDRRendering
Default: 2
Help: Enables, or Disables HDR Rendering
Usage: r_HDRRendering 0=off/1=on/2=on
Note: Disabling HDR Rendering will generally improve performance, with the exception of maps with dense vegetation (Harvest, Tukayyid). It's worth leaving HDR enabled for these two maps alone, since the effect on performance is already so low, and that the two maps are almost unplayable without it.

Particles


sys_spec_Particles
Default: 4
Help: Console variable group to apply settings to multiple variables
sys_spec_Particles [1/2/3/4/x]:
... e_particles_lod = 0.75/1/1/1/1
... e_particles_max_emitter_draw_screen = 4/8/16/32/32
... e_particles_object_collisions = 0/1/1/1/1
... e_particles_quality = 1/2/3/4/4
... e_water_ocean_soft_particles = 0/1/1/1/1
... r_UseSoftParticles = 0/1/1/1/1

r_UseParticlesGlow
Default: 1
Help: Enables glow particles.
Usage: CV_r_useparticles_glow [0/1]

r_UseParticlesRefraction
Default: 1
Help: Enables refractive particles.
Usage: r_UseParticlesRefraction [0/1]
r_UseSoftParticles
Default: 0
Help: Enables soft particles.
Usage: r_UseSoftParticles [0/1]

e_particles_lights
Default: 1
Help: Allows to have simple light source attached to every article

e_particles_lod
Default: 0
Help: Multiplier to particle count

e_particles_max_emitter_draw_screen
Default: 0
Help: Max screen fill per emitter -- fade out earlier
Warning: Setting this to 0 is bugged, and will instead act as if it's set to Max. For lowering the e_particles_max_emitter_draw_screen effect (Laser glare, Gauss fog, etc.) the lowest value set should be 4

e_particles_min_draw_pixels
Default: 1
Help: Pixel size cutoff for rendering particles -- fade out earlier
e_particles_object_collisions
Default: 1
Help: Enable particle/object collisions for SimpleCollision

e_particles_preload
Default: 1
Help: Enable preloading of all particle effects at the begining

e_particles_quality
Default: 4
Help: Current particles detail quality

e_particles_thread
Default: 1
Help: Enable particle threading

g_breakage_particles_limit
Default: 200
Help: Imposes a limit on particles generated during 2d surfaces breaking


Postprocessing


sys_spec_PostProcessing
Default: 4
Help: Console variable group to apply settings to multiple variables
sys_spec_PostProcessing [1/2/3/4/x]:
... r_Coronas = 1/1/1/1/1
... r_DepthOfField = 0/1/1/2/2
... r_Flares = 1/1/1/1/1
... r_GlowScreenMultiplier = 0.2/0.2/0.2/0.2/0.2
... r_UseEdgeAA = 0/0/1/1/1
... r_colorgrading = 0/1/0/1/1
... r_sunshafts = 0/0/0/1/1
sys_spec_GameEffects
Default: 4
Help: Console variable group to apply settings to multiple variables
sys_spec_GameEffects [1/2/3/4/x]:
... g_battleDust_enable = 0/0/0/1/1
... g_ragdollDistance = 10.0/20.0/30.0/40.0/40.0
... g_ragdollMinTime = 5.0/8.0/13.0/15.0/15.0
... g_ragdollUnseenTime = 2/2/2/2/2
... i_lighteffects = 0/0/0/0/0
r_refraction
Default: 0
Help: Enables refraction.
Usage: r_refraction [0/1]
Default is 1 (on). Set to 0 to disable.

Physics


These variables control the behavior of physics-bound objects such as destroyed trees, concrete, and fallen Battle Armor. All of these variables can be set to their minimum threshold for some improvements in performance, while having little noticeable effect on ingame visuals.

sys_spec_Physics
Default: 4
Help: Console variable group to apply settings to multiple variables
sys_spec_Physics [1/2/3/4/x]:
... e_cull_veg_activation = 20/30/50/50/50
... e_foliage_wind_activation_dist = 0/10/20/25/25
... e_phys_foliage = 1/2/2/2/2
... e_phys_ocean_cell = 0/1/0.5/0.5/0.5
... es_MaxPhysDist = 50/100/200/200/200
... es_MaxPhysDistInvisible = 10/15/25/25/25
... g_breakage_particles_limit = 80/130/200/250/250
... g_joint_breaking = 0/1/1/1/1
... g_tree_cut_reuse_dist = 0.7/0.35/0/0/0
... p_max_MC_iters = 4000/5000/6000/6000/6000
... p_max_object_splashes = 3/3/3/3/3
ca_UsePhysics
Default: 1
Help: the physics is not applied (effectively, no IK)

es_OnDemandPhysics
Default: 0
Help:
Usage: es_OnDemandPhysics [0/1]
Default is 1 (on).

g_ragdollDistance
Default: 40
Help: distance in meters that the player has to be away from the ragdoll before it can disappear
g_ragdollMinTime
Default: 15
Help: minimum time in seconds that a ragdoll will be visible

g_ragdollPollTime
Default: 0.5
Help: time in seconds where 'unseen' polling is done

g_ragdollUnseenTime
Default: 2
Help: time in seconds that the player has to look away from the ragdoll before it disappears

gpu_particle_physics
Default: 1
Help: Enable GPU physics if available (0=off / 1=enabled).

Textures


These are the graphics that illustrate 'Mechs, level terrain, and the various buildings, vehicles and vegetation within the game. If you can see it, it's textured. Compared to other variables, these have a relatively small impact on ingame performance, with some players finding no noticable effect at all.

sys_spec_Texture
Default: 4
Help: Console variable group to apply settings to multiple variables
sys_spec_Texture [1/2/3/4/x]:
... r_DynTexAtlasCloudsMaxSize = 24/24/32/32/32
... r_DynTexAtlasSpritesMaxSize = 16/16/24/32/32
... r_DynTexMaxSize = 50/60/80/80/80
... r_EnvCMResolution = 0/1/2/2/2
... r_EnvTexResolution = 1/2/3/3/3
... r_ImposterRatio = 2/1.5/1/1/1
... r_TexAtlasSize = 512/1024/1024/2048/2048
... r_TexSkyResolution = 1/0/0/0/0
... r_TexturesStreaming = 0/0/2/2/2
... r_VegetationSpritesTexRes = 64/64/64/64/64
... sys_LowSpecPak = 1/1/0/0/0

sys_LowSpecPak
Default: 0
Help: use low resolution textures from special pak file or emulate if no such pak exists
0=don't use lowspec.pak (full texture quality)
1=use lowspec.pak (faster loading of textures, reduced texture quality)
Usage: sys_LowSpecPak 0/1

r_DetailDistance
Default: 0
Help: Distance used for per-pixel detail layers blending.
Usage: r_DetailDistance (1-20)
Default is 6.

r_DetailNumLayers
Default: 0
Help: Sets the number of detail layers per surface.
Usage: r_DetailNumLayers 2
Default is 2.

r_DetailTextures
Default: 0
Help: Toggles detail texture overlays.
Usage: r_DetailTextures [0/1]
Default is 1 (detail textures on).

r_TexBumpResolution
Default: 2
Help: Reduces texture resolution.
Usage: r_TexBumpResolution [0/1/2/3/4]
When 0 texture resolution is unaffected, 1 halves, 2 quarters etc. (max 4)
This variable controls the clarity of the edges on Mech and other models, gradually rounding / softening models at higher settings as polygons are reduced.

r_TexNoAniso
Default: 0
Help: Anisothropic filter

r_TexNormalMapType
Default: 1
Help:

r_TexResolution
Default: 2
Help: Reduces texture resolution.
Usage: r_TexResolution [0/1/2/3/4]
When 0 (default) model texture resolution is unaffected, 1 halves, 2 quarters etc.

r_TextureCompressor
Default: 1
Help: Defines which texture compressor is used (fallback is DirectX)
Usage: r_TextureCompressor [0/1]
0 uses nvDXT, 1 uses Squish if possible

r_TexturesFilteringQuality
Default: 9
Help: Configures texture filtering adjusting.
Usage: r_TexturesFilteringQuality [#]
where # represents:
0: Highest quality
1: Medium quality
2: Low quality

r_TexturesStreaming
Default: 0
Help: Enables direct streaming of textures from disk during game.
Usage: r_TexturesStreaming [0/1]
Default is 0 (off). All textures save in native format with mips in a
cache file. Textures are then loaded into texture memory from the cache.

r_TexturesStreamingMaxAsync
Default: 0.25
Help:

r_TexturesStreamingNoUpload
Default: 0
Help:

r_TexturesStreamingOnlyVideo
Default: 0
Help:

r_TexturesStreamingSync
Default: 0
Help:

r_TexturesStreamPoolSize
Default: 128
Help:

Decals


Decals are the bullet holes, laser burns, scuffs. concrete stains and roads ingame. A lot of realism is lost in disabling them outright, however many see a dramatic boost in performance in their absence. With the many options to specify their behavior, a comfortable middleground is easy to achieve.

ca_UseDecals
Default: 0
Help: if set to 0, effectively disables creation of decals on characters
2 - alternative method of calculating/building the decals
Ingame Roads are considered decals, and become invisible if disabled.

e_decals
Default: 0
Help: Activates drawing of decals (game decals and hand-placed)

e_decals_allow_game_decals
Default: 0
Help: Allows creation of decals by game (like weapon bullets marks)

e_decals_clip
Default: 1
Help: Clip decal geometry by decal bbox


e_decals_hit_cache
Default: 1
Help: Use smart hit cacheing for bullet hits (may cause no decals in some cases)

e_decals_life_time_scale
Default: 0
Help: Allows to increase or reduce decals life time for different specs

e_decals_merge
Default: 1
Help: Combine pieces of decals into one render call

e_decals_neighbor_max_life_time
Default: 4
Help: If not zero - new decals will force old decals to fade in X seconds

e_decals_overlapping
Default: 0
Help: If zero - new decals will not be spawned if the distance to nearest decals less than X

e_decals_precreate
Default: 1
Help: Pre-create decals at load time


e_decals_range
Default: 20
Help: Less precision for decals outside this range

e_decals_wrap_around_min_size
Default: 0.05
Help: Controls usage of wrapping around objects feature. When decal radius is smaller than X - simple quad decal is used

e_foliage_wind_activation_dist
Default: 25
Help: If the wind is sufficiently strong, visible foliage in this view dist will be forcefully activated

e_lod_max
Default: 6
Help: Max LOD for objects

e_lod_min
Default: 0
Help: Min LOD for objects

e_lod_min_tris
Default: 300
Help: LODs with less triangles will not be used

e_lod_ratio
Default: 6
Help: LOD distance ratio for objects

e_lods
Default: 1
Help: Load and use LOD models for static geometry


e_lowspec_mode
Default: 0
Help: Enables lowspec mode

e_materials
Default: 1
Help: Activates material support for non animated objects

e_max_view_dst_spec_lerp
Default: 0
Help: 1 - use max view distance set by designer for very high spec
0 - for very low spec
Values between 0 and 1 - will lerp between high and low spec max view distances

e_precache_level
Default: 0
Help: Pre-render objects right after level loading

Lighting


sys_spec_VolumetricEffects
Default: 4
Help: Console variable group to apply settings to multiple variables
sys_spec_VolumetricEffects [1/2/3/4/x]:
... e_Clouds = 0/1/1/1/1
... r_Beams = 4/3/3/3/3
... r_BeamsDistFactor = 1/0.5/0.5/0.05/0.05
... r_BeamsMaxSlices = 16/32/64/200/200
... r_CloudsUpdateAlways = 0/0/0/0/0

r_Beams
Default: 0
Help: Toggles light beams.
Usage: r_Beams [0/1/2/3]
Default is 3 (optimized beams with glow support). Set to 0 to disable beams or 2 to
use fake beams. Set 1 for real beams, full resolution (slower). Set to 3 to use
optimized and with glow support beams.
r_BeamsDistFactor
Default: 0.05
Help: Distance between slices.
Usage: r_BeamsDistFactor [fValue]
Default is 0.01 (0.01 meters between slices).

r_BeamsMaxSlices
Default: 4
Help: Number of volumetric slices allowed per light beam.
Usage: r_BeamsMaxSlices [1-300]
Default is 200 (high-spec).

r_FillLights
Default: 0
Help: Activate simple differed light sources usage
r_FillLightsMode
Default: 14
Help: Fill lights mode

r_Flares
Default: 0
Help: Toggles sunlight lens flare effect.
Usage: r_Flares [0/1]
Default is 1 (on).

r_sunshafts
Default: 0
Help: Enables sun shafts.
Usage: r_sunshafts [0/1]
Default is 1 (on). Set to 0 to disable

e_max_entity_lights
Default: 16
Help: Set maximum number of lights affecting object

Environment


Terrain

r_TerrainAO
Default: 7
Help: 7=Activate terrain AO deferred passes

r_TerrainAO_FadeDist
Default: 8
Help: Controls sky light fading in tree canopy in Z direction

e_detail_materials
Default: 1
Help: Activates drawing of detail materials on terrain ground

e_detail_materials_view_dist_xy
Default: 50
Help: Max view distance of terrain XY materials

e_detail_materials_view_dist_z
Default: 100
Help: Max view distance of terrain Z materials
e_on_demand_maxsize
Default: 20
Help: Specifies the maximum size of vegetation objects that are physicalized on-demand

e_on_demand_physics
Default: 1
Help: Turns on on-demand vegetation physicalization

e_phys_foliage
Default: 2
Help: Enables physicalized foliage (1 - only for dynamic objects, 2 - for static and dynamic)

e_proc_vegetation
Default: 0
Help: Show procedurally distributed vegetation

e_render
Default: 1
Help: Enable engine rendering
e_stream_areas
Default: 0
Help: Stream content of terrain and indoor sectors

e_vegetation_use_terrain_color
Default: 1
Help: Allow blend with terrain color for vegetations

e_view_dist_ratio_detail
Default: 30
Help: View distance ratio for detail objects

es_VisCheckForUpdate
Default: 1
Help:
Usage: es_VisCheckForUpdate [0/1]
Default is 1 (on).

Sky

r_CloudsUpdateAlways
Default: 0
Help: Toggles updating of clouds each frame.
Usage: r_CloudsUpdateAlways [0/1] Default is 0 (off)

r_TexSkyResolution
Default: 2
Help:
e_sky_type
Default: 0
Help: Type of sky used: 0 (static), 1 (dynamic).
e_sky_update_rate
Default: 1
Help: Percentage of a full dynamic sky update calculated per frame (0..100].

Water

sys_spec_Water
Default: 4
Help: Console variable group to apply settings to multiple variables
sys_spec_Water [1/2/3/4/x]:
... e_water_ocean_fft = 0/0/0/1/1
... e_water_tesselation_amount = 1/6/7/10/10
... e_water_tesselation_swath_width = 5/10/10/10/10
... q_ShaderWater = 0/1/2/2/2
... r_WaterCaustics = 0/1/1/1/1
... r_WaterReflections = 1/1/1/1/1
... r_WaterReflectionsMinVisiblePixelsUpdate = 0.05/0.05/0.05/0.05/0.05
... r_WaterReflectionsQuality = 0/1/2/4/4
... r_WaterRefractions = 0/0/1/1/1
... r_WaterUpdateDistance = 0.2/1/1/0.2/0.2
... r_WaterUpdateFactor = 0.5/0.1/0.05/0.05/0.05

e_hw_occlusion_culling_water
Default: 1
Help: Activates usage of HW occlusion test for ocean

e_water_ocean
Default: 1
Help: Activates drawing of ocean

e_water_ocean_bottom
Default: 1
Help: Activates drawing bottom of ocean

e_water_ocean_fft
Default: 1
Help: Activates fft based ocean

e_water_ocean_soft_particles
Default: 0
Help: Enables ocean soft particles

e_water_tesselation_amount
Default: 0
Help: Set tesselation amount

e_water_tesselation_swath_width
Default: 10
Help: Set the swath width for the boustrophedonic mesh stripping

e_water_volumes
Default: 1
Help: Activates drawing of water volumes

e_water_waves
Default: 0
Help: Activates drawing of water waves
e_water_waves_tesselation_amount
Default: 5
Help: Sets water waves tesselation amount

r_WaterCaustics
Default: 0
Help: Toggles under water caustics.
Usage: r_WaterCaustics [0/1]
Default is 1 (enabled).

r_WaterGodRays
Default: 0
Help: Enables under water god rays.
Usage: r_WaterGodRays [0/1]
Default is 1 (enabled).

r_WaterReflections
Default: 0
Help: Toggles water reflections.
Usage: r_WaterReflections [0/1]
Default is 1 (water reflects).

r_WaterReflectionsMGPU
Default: 1
Help: Toggles water reflections.multi-gpu support
Usage: r_WaterReflectionsMGPU [0/1/2]
Default is 0 (single render update), 1 (multiple render updates)

r_WaterReflectionsMinVisiblePixelsUpdate
Default: 0.05
Help: Activates water reflections if visible pixels above a certain threshold.

r_WaterReflectionsMinVisUpdateDistanceMul
Default: 10
Help: Activates update distance multiplier when water mostly occluded.

r_WaterReflectionsMinVisUpdateFactorMul
Default: 20
Help: Activates update factor multiplier when water mostly occluded.

r_WaterReflectionsQuality
Default: 4
Help: Activates water reflections quality setting.
Usage: r_WaterReflectionsQuality [0/1/2/3]
Default is 0 (terrain only), 1 (terrain + particles), 2 (terrain + particles + brushes), 3 (everything)
r_WaterReflectionsUseMinOffset
Default: 1
Help: Activates water reflections use min distance offset.

r_WaterRefractions
Default: 0
Help: Toggles water refractions.
Usage: r_WaterRefractions [0/1]
Default is 1 (water refracts).

r_WaterUpdateDistance
Default: 0.2
Help:

r_WaterUpdateFactor
Default: 0.05
Help: Distance factor for water reflected texture updating.
Usage: r_WaterUpdateFactor 0.01
Default is 0.01. 0 means update every frame

r_OceanLodDist
Default: 100
Help:

r_OceanMaxSplashes
Default: 8
Help:

r_OceanRendType
Default: 0
Help:

r_OceanSectorSize
Default: 128
Help:

r_OceanSplashScale
Default: 1
Help:

r_OceanTexUpdate
Default: 1
Help:

e_phys_ocean_cell
Default: 0.5
Help: Cell size for ocean approximation in physics, 0 assumes flat plane

Misc


Controls


The following settings have no effect on the games processing, as much as its performance in terms of user input. There are no variables that will significantly improve or reduce FPS here.

exec
script:
Help: executes a batch file of console commands

Bind
script:
Help:

toggleIntCvar
script:
Help: toggleIntCvar cvarName [value1 value2] - toggles an int cvar between 1 and 0 or, if set, value1 and value2 to ease keybindings. E.g.:
"bind f4 toggleIntCvar cl_hud"
"bind f5 toggleIntCvar profile 6 0"

aln_debug_filter
Default:
Help:

cl_controllersensitivity
Default: 45
Help: Set controller sensitivity!

cl_crouchToggle
Default: 0
Help: To make the crouch key work as a toggle

cl_free_reticle_independent
Default: 0
Help: if 1 the reticle is freed from the torso

cl_invertController
Default: 0
Help: Controller Look Up-Down invert
cl_invertMouse
Default: 0
Help: mouse invert?

cl_sensitivity
Default: 100
Help: Set mouse sensitivity!

cl_sensitivityAerospace
Default: 45
Help: Set joystick sensitivity for aerospace!

cl_sensitivityZeroG
Default: 70
Help: Set mouse sensitivity in ZeroG!

cl_turretsensitivity
Default: 1
Help: Mouse sensitivity multiplier for turret aiming

hud_ctrl_Coeff_X
Default: 12.25
Help: Analog controller X rotation scale

hud_ctrl_Coeff_Z
Default: 25
Help: Analog controller Z rotation scale

hud_ctrl_Curve_X
Default: 3
Help: Analog controller X rotation curve

hud_ctrl_Curve_Z
Default: 3
Help: Analog controller Z rotation curve
i_mouse_accel
Default: 0
Help: Set mouse acceleration, 0.0 means no acceleration.
Usage: i_mouse_accel [float number] (usually a small number, 0.1 is a good one)
Default is 0.0 (off)

i_mouse_accel_max
Default: 100
Help: Set mouse max mouse delta when using acceleration.
Usage: i_mouse_accel_max [float number]
Default is 100.0

i_mouse_buffered
Default: 0
Help: Toggles mouse input buffering.
Usage: i_mouse_buffered [0/1]
Default is 0 (off). Set to 1 to process buffered mouse input.

i_mouse_inertia
Default: 0
Help: Set mouse inertia. It is disabled (0.0) by default.
Usage: i_mouse_inertia [float number]
Default is 0.0

i_mouse_smooth
Default: 0
Help: Set mouse smoothing value, also if 0 (disabled) there will be a simple average between the old and the actual input.
Usage: i_mouse_smooth [float number] (1.0 = very very smooth, 30 = almost istant)
Default is 0.0

Customization


name
script:

cl_hud
Default: 1
Help: Show/Hide the HUD

r_Fullscreen
Default: 0
Help: Toggles fullscreen mode. Default is 1 in normal game and 0 in DevMode.
Usage: r_Fullscreen [0=window/1=fullscreen]

hud_chDamageIndicator
Default: 1
Help: Switch crosshair-damage indicator... (1 on, 0 off)

hud_colorLine
Default: 4481854
Help: HUD line color.
hud_colorOver
Default: 14125840
Help: HUD hovered color.

hud_colorText
Default: 12386209
Help: HUD text color.

hud_showAllOnScreenObjectives
Default: 0
Help: Show all on screen objectives, not only the active one.

r_Brightness
Default: 0.5
Help: Sets the display brightness.
Usage: r_Brightness 0.5
Default is 0.5.
r_Contrast
Default: 0.5
Help: Sets the display contrast.
Usage: r_Contrast 0.5
Default is 0.5.

r_DisplayInfo
Default: 1
Help: Toggles debugging information display.
Usage: r_DisplayInfo [0=off/1=show/2=enhanced]
Along with other info: 1 shows FPS, 2 shows FrameTime

r_Gamma
Default: 1
Help: Adjusts the graphics card gamma correction (fast, needs hardware support, affects also HUD and desktop)
Usage: r_Gamma 1.0
1 off (default), try values like 1.6 or 2.2

r_MultiGPU
Default: 2
Help: 0 = disabled, 1 = extra overhead to allow SLI(NVidia) or Crossfire(ATI), 2 = automatic detection (currently SLI only, means off for ATI). Should be activated before rendering on systems mounting multiple compatible GPU's.

Sounds


sys_spec_Sound
Default: 4
Help: Console variable group to apply settings to multiple variables
sys_spec_Sound [1/2/3/4/x]:
... s_CacheSize = 50/60/70/80/80
... s_FormatSampleRate = 44100/48000/48000/48000/48000
... s_MPEGDecoders = 16/24/32/32/32
... s_Obstruction = 2/2/1/1/1
... s_ObstructionAccuracy = 0/1/1/1/1
... s_ObstructionUpdate = 1.0/0.5/0.2/0.1/0.1
... s_ReverbType = 0/2/2/2/2
... s_SoundMoodsDSP = 0/1/1/1/1
... s_VariationLimiter = 0.3/0.6/1.0/1.0/1.0

s_DialogVolume
Default: 1
Help: Sets the volume of all dialog sounds.
Usage: s_DialogVolume 0.5
Default is 1, which is full volume.

s_Doppler
Default: 1
Help: Toggles Doppler effect on and off.
Usage: s_Doppler [0/1]
Default is 1 (on).
s_DopplerScale
Default: 1
Help: Sets the strength of the Doppler effect.
Usage: s_DopplerValue 1.0Default is 1.0. This multiplier affects the sound velocity.

s_GameDialogVolume
Default: 1
Help: Controls the dialog volume for game use.
Usage: s_GameDialogVolume 0.5
Default is 1, which is full volume.

s_GameMusicVolume
Default: 1
Help: Controls the music volume for game use.
Usage: s_GameMusicVolume 0.2
Default is 1.0

s_GameSFXVolume
Default: 1
Help: Controls the sfx volume for game use.
Usage: s_GameSFXVolume 0.5
Default is 1, which is full volume.

s_MusicEnable
Default: 1
Help: enable/disable music
s_MusicVolume
Default: 0.6
Help: Sets the music volume from 0 to 1 in the games option.
Usage: s_MusicVolume 0.2
Default is 0.5

s_SpeakerConfig
Default: 0
Help: Sets up the preferred speaker configuration.
Usage: s_SpeakerConfig #
where # is a number between 0 and 7 representing
0: Control Panel Settings
1: Mono
2: Stereo
3: Headphone
4: 4Point1
5: 5Point1
6: Prologic
7: 7Point1
Default is 0 (Control Panel Setting).

Using Exec and Bind Console Variables

In combination, the exec and bind functions can be used for a number of interesting CVar goals. From conditionally changing your graphics, binding a suicide button or swapping between control schemes for Mech, Aircraft or Vehicles- it's all done from here.

The bind Console Variable

  • TODO


The exec Console Variable

The exec console variable allows you to run a .cfg file of console variables from within the game itself.

  1. Write a batch of console variables you wish to execute
  2. Save it as a .cfg file (of any name, but we're assuming example.cfg for this next step)
  3. Place it in the correct folder
  4. Run it by typing exec example.cfg in the console

Using the User.cfg File to Ensure Setting Consistency

For players that want to circumvent the bug that resets their settings between sessions- the following variables control the ingame sound and display settings.

s_DialogVolume = ...
s_GameDialogVolume = ...
s_GameMusicVolume = ...
s_gameSFXVolume = ...
r_contrast = ...
r_brightness = ...
r_gamma = ...

Remember, typing the variable alone without a value will prompt the system to tell you its current state. After setting the brightness, sound, and other associated settings using the sliders to your preference- you can read their values from the console, and set them permanently in the user.cfg.