Skip to content

Instantly share code, notes, and snippets.

@mastercoms
Last active May 20, 2017 16:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mastercoms/2db9ecc40a2b419126d0222d61815414 to your computer and use it in GitHub Desktop.
Save mastercoms/2db9ecc40a2b419126d0222d61815414 to your computer and use it in GitHub Desktop.
tf2cfg3 rc4
// ~~~~ Mastercoms's TF2 Config ~~~~
// --- Network ---
// send to server at this many times per second
cl_cmdrate 66
// get from server at this many times per second
cl_updaterate 66
// reduce delay between entity interpolation to minimum,
// set to 2 for some room for error
cl_interp_ratio 1
// adjust delay between interpolating entities, set to 0 to use interp ratio
cl_interp 0
// smooth out entities to their new position after a prediction error
// prediction errors are often large and making entities jump instantly
// to their correct location is disorienting and makes it harder for you
// the server will still accept hits on an entity that is being smoothed,
// so there isn't much benefit to turning this off
cl_smooth 1
// time over which to smooth entities
cl_smoothtime 0.15
// server times out players after 65 seconds
// so why not wait until the server kicks you out?
cl_timeout 65
// compress packets save bytes, at the cost of extra cpu usage.
// if you have a fast enough network, this is recommended.
net_compresspackets 0
// how many packets we can split per frame
net_splitrate 3
// scaled rate for how many packets we are sending
// each packet can be a max size of 1260 bytes
// we can send up to 132 packets per second
rate 167580
// packet level ping control
net_maxcleartime 0.5
net_maxpacketdrop 100
// allow for split packets at the higher rate
net_splitpacket_maxrate 167581
// max out file upload size for extra content
net_maxfilesize 64
// always thread packets on a separate thread.
// very demanding of your computer, and the network system
net_queued_packet_thread 581304
// --- Render ---
// -- Threading
// These settings will boost your performance on a 4 core CPU
// loop through the leaf asynchronously
cl_threaded_client_leaf_system 1
// matsys queue in multithreaded mode
mat_queue_mode 2
// use a threaded game logic loop
host_thread_mode 1
// do some rendering on a separate thread. rarely buggy.
r_threaded_renderables 1
// queue decals to matsys
// disabled in this config by default because of crashes
// you may want to try to see if it works on your system
r_queued_decals 0
// usually doesn't render a texture for post processing effects, due to timing
// issues. better to disable it by default. it might work for your driver.
//r_queued_post_processing 1
// queue some rope rendering to matsys
r_queued_ropes 1
// -- Optimization
// These settings don't affect quality that much and improve performance
// don't do smoothing on ropes
rope_smooth 0
// don't do memory flushes
host_flush_threshold 0
// don't store a useless frame time variable
r_norefresh 1
// force using occluders
r_occludermincount 2
// autodetect is broken for fast z rejects, so make it available.
// if it's not supported, it just won't be used
// this setting is usually good to be enabled, but
// if you have a weak CPU and strong CPU, disable this by setting it to 0
// basically, what this does it renders the first pass of a
// scene with a z buffer on the CPU
// then this allows the GPU to quickly render the scene, as the visible parts
// of the scene have already been calculated
r_fastzreject 1
// renders textures dynamically
// but it's very buggy and flashes textures most of the time
//disp_dynamic 1
// use optimized fog rendering
fast_fogvolume 1
// use a pixel shader for fog if possible
r_pixelfog 1
// prevent a possible memory leak with fps_max 0 by setting it to a large value
fps_max 300
// don't limit performance when the engine is not focused.
// the focus detection can be buggy on some systems and may
// throttle your game, without you knowing
engine_no_focus_sleep 0
// fade out fake LOD objects at the minimum possible distance
lod_TransitionDist -5000
// clips entity rendering according to a plane determined at each entity run
// improves render performance at the cost of CPU
// should pretty much always be kept on
r_entityclips 1
// cull on world draw
r_frustumcullworld 1
// cache some world rendering
r_worldlistcache 1
// clamps the highest lod to the set lod for models
// 0 - high; 1 - medium; 2 - maximum performance
r_rootlod 1
r_lod -1
// clear each frame before drawing the next one - optimization for tile based
// rendering, found in NVIDIA Maxwell series (GTX700) and above
//gl_clear 1
// simplify shading
mat_reducefillrate 1
// -- Anti Aliasing
// don't do software based AA
mat_software_aa_strength 0
// don't do software based AA on the HUD
mat_software_aa_strength_vgui 0
// don't do software based AA
mat_software_aa_blur_one_pixel_lines 0
// -- View --
// see more of the battlefield. more to render. decrease for ABSOLUTE POTATOS
fov_desired 90
// draw your weapon model, increases performnace if disabled
// also provides a vision advantage
r_drawviewmodel 1
// -- Lighting --
// disable if you absolutely need a CPU boost
r_ambientboost 1
// tweak lighting a bit to make characters stand out more
// if you want realistic darkness on characters, use 0.2
// default is 0.3
// no performance impact
r_ambientmin 0.4
// disable the light around model edges, slightly better perf and better looks
r_rimlight 0
// don't do this inefficient high cost lighting job that is barely noticeable
r_lightaverage 0
// dynamic lighting (muzzle flashes, explosions and other lighted effects)
// disabled for increased performance
r_dynamic 0
// reduce maximum dynamic lights that can be active in a frame
// TF2 won't hit this limit often
r_maxdlights 9
// don't render insignificant world lighting
r_worldlightmin 0.0008
// max lights applied to a vertex. 2 is a boost from the default 4
// and isn't a noticeable drop in quality
// you can set this to 0 to disable world lighting for maximum performance
r_worldlights 2
// don't try pixelvis, which is used for halos and pretty lights
r_dopixelvisibility 0
// don't use pixelvis in rendering
r_drawpixelvisibility 0
// don't use a costly precise pixelvis algorithm
r_pixelvisibility_partial 0
// allocate light maps in the hunk
// should be fine, unless you use really big lightmaps
r_hunkalloclightmaps 1
// a light cache, this probably isn't working and will just waste memory
r_lightcache_zbuffercache 1
// --- Shadows ---
// disable shadows, big performance hit if you enable
r_shadows 0
// render shadows using two materials for each texture
// makes shadows look better but uses a lot of memory
r_shadowrendertotexture 0
// don't do a second shadow render pass for sharper shadows
cl_blobbyshadows 1
// threaded shadow manager, not used by default in source 2013
r_threaded_client_shadow_manager 1
// the resolution of the shadow depth texture
// this makes shadows more sharp and detailed the higher it is
// shadows are fine at 32 or 64 though
// this only works if depth texturing is enabled
r_flashlightdepthres 32
// depth texturing for shadows: these shadow calcuations are done mostly
// on the CPU and have a big performance hit
r_flashlightdepthtexture 0
// disable shading/lighting useless performance hit
r_flashlightmodels 0
r_flashlightrender 0
// don't render shadows far away (nextbot system)
nb_shadow_dist 300
// don't render more shadows than needed
r_shadowmaxrendered 17
// -- Bloom --
// Tints for bloom (0 to 1)
// red tint for bloom
r_bloomtintr 0.3
// green tint for bloom
r_bloomtintg 0.59
// blue tint for bloom
r_bloomtintb 0.11
// the coefficient for bloom effect
r_bloomtintexponent 2.2
// -- Effects --
// muzzle flashes
muzzleflash_light 0
// add extra fluff to bullet lines
// low performance impact, disable for max performance
tracer_extra 1
// don't draw bullet tracers when you're in first person
// low performance impact, disable for maximum performance
r_drawtracers_firstperson 1
// disable shell ejection from pistols, shotgun and minigun
cl_ejectbrass 0
// every 20 frames, check for a temporary entity collision
// syringes, some effects are temp ents
cl_fasttempentcollision 20
// disable muzzle flashes in first person
cl_muzzleflash_dlight_1st 0
// disable water splashes
cl_show_splashes 0
// don't do the costly "xray" outline, used for intel, payload and spawn xray
//glow_outline_effect_enable 0
// -- Particles --
// do particles on a separate thread
r_threaded_particles 1
// if the thread pool is not available, use this many cores for particle jobs
particle_sim_alt_cores 2
// batch particles
cl_particle_batch_mode 2
// reduce particles, but it only helps a little bit because
// the real performance impact comes from creating particle systems
mat_reduceparticles 1
// use the new particle system for creating new particles
cl_new_impact_effects 1
// don't create particle systems when things hit surfaces, perf and distracting
r_drawflecks 0
// -- Water --
// the distance at which fully cheap water starts
// water does not reflect or refract entities, nor can you see through it
// set to 1 for max performance
r_cheapwaterend 1000
// the distance at which transitionary cheap water starts
// water is less reflective after this distance
// set to 0 for max performance
r_cheapwaterstart 400
// water reflections disabled for more performance
r_WaterDrawReflection 0
// don't force expensive water
r_waterforceexpensive 0
// don't force water reflections for entities
// performance loss, so enable it if you have enough FPS
r_waterforcereflectentities 0
// draw half of the leaf for water to optimize culls
r_ForceWaterLeaf 1
// --- Characters ---
// threshold for expression optimization (0.152 = 1/66)
ai_expression_frametime 0.0152
// enable expression optimization
ai_expression_optimization 1
// disable 3-way animation blending
anim_3wayblend 0
// duration of an eye blink (do not set to 0, or else TF2 will divide by 0)
blink_duration 0.0304
// enable or disable facial animations
// requires more bones to be setup on the CPU
// but a lot of the personality of TF2 comes from character expression
// so disable this if you want the performance boost
r_flex 1
flex_rules 1
// don't smooth facial animations
flex_smooth 0
// control if character eyes should move
// really doesn't affect performance
r_eyemove 1
tf_clientsideeye_lookats 1
// draw characters' eyes, is a performance hit
r_eyes 1
// shift eye position. no performance impact
//r_eyeshift_x 0
//r_eyeshift_y 0
//r_eyeshift_z 0
// control eye pupil size
//r_eyesize 0
// offload eye glinting to the CPU, using the same method as in DX8
// if you have a slow GPU, enable this
r_glint_procedural 0
// render teeth, small performance boost if disabled
r_teeth 1
// -- Ropes --
// Sets the colors for festive ropes during Smissmas
// 0 to 3 is the lightbulb position in the cycle
//r_ropes_holiday_light_color [0 to 3] Red Green Blue
// render ropes
// enable for maximum performance
r_ropetranslucent 0
// --- Gibs --
// disable burning gibs. this is a big performance hit
cl_burninggibs 0
// keep this enabled. if disabled, it will use silly gibs, which are worse for FPS
violence_hgibs 1
// blood. disable for a little performance boost
violence_hblood 1
// -- Props
// draw detail props, like grass
// set to 0 to disable, or 2 to draw using wireframes
r_drawdetailprops 1
// draw detail props up to this distance
cl_detaildist 1000
// disable clientside physics props
cl_phys_props_enable 0
// draw clientside props up to this distance
r_propsmaxdist 1000
// fade in detail props across this distance, 0 to disable fading
cl_detailfade 0
// limit the count of clientside physics props to a sane limit for TF2
cl_phys_props_max 20
// do not spawn props until we can see them
cl_phys_props_respawndist 1000
// delay in seconds before the client will respawn applicable props
cl_phys_props_respawnrate 120
// don't break props into smaller pieces
func_break_max_pieces 0
// the LOD on static props
// -1 automatic; 0 - high; 1 - medium; 2 - low; 3 - maximum performance
r_staticprop_lod 3
// use static lighting on props
// disabling this decreases performance by
// requiring additional lighting calculations
r_PhysPropStaticLighting 1
// --- Misc ---
// don't draw monitors
cl_drawmonitors 0
// disable jigglebones if we are under the optimal framerate
// set to 0 to disable jigglebones always
cl_jiggle_bone_framerate_cutoff 66
// --- Decals ---
// maximum decals in a map
// lower to 0 for max performance
// 9 or 18 is a good value if you want to see spread
// and get a minor boost performance
r_decals 32
mp_decals 32
// batching decals places them together on one mesh
// this saves memory, but is more taxing on the CPU
// when the max decal count is so low anyway, the memory
// savings are not worth it
r_drawbatchdecals 0
// freshen up the walls by clearing sprays every round
r_spray_lifetime 1
// disable player sprays, not a big performance boost
//cl_playerspraydisable 1
// if decals are almost fully covered by this many decals, remove them
r_decal_cover_count 2
// if decals are smaller than this on screen in pixels, don't render them
r_decal_cullsize 20
// if decals are covered by other decals this much or more, remove them
r_decal_overlap_area 0.5
// all the other decal rules are fine. don't do this heavy impact check.
r_decal_overlap_count 0
// don't use ambient lighting for props,
// it's heavy and does pratically nothing
r_decalstaticprops 0
// blood decals on bodies, hurts performance
r_drawmodeldecals 0
// optimized model decal count if you happen to enable it
r_maxmodeldecal 10
// fading overlays causes performance issues
// maps can already have their own fading rules
r_overlayfadeenable 0
// optimize overlay fades if you happen to enable it
r_overlayfademax 1000
// optimize overlay fades if you happen to enable it
r_overlayfademin 745
// render overlays, pretty minor impact
// disable it for max performance
r_renderoverlayfragment 1
// --- Crosshairs ---
// disable crosshair translucency
cl_crosshairalpha 255
// --- Console ---
// console transparency
con_nprint_bgalpha 255
// console border, disable on potatos
con_nprint_bgborder 1
// --- Ragdolls ---
// disable ragdoll collisions, which are disabled anyway in the code
cl_ragdoll_collide 0
// duration of the fade out effect of ragdolls, 0 instantly removes
cl_ragdoll_fade_time 5
// start fading ragdolls without delay, even if the player is looking at them
cl_ragdoll_forcefade 1
// disable ragdoll physics
// huge performance hit
cl_ragdoll_physics_enable 0
// how fast a ragdoll fades out
g_ragdoll_fadespeed 10000
// how fast a ragdoll fades out in low violence mode
g_ragdoll_lvfadespeed 10000
// ragdolls are irrelevant once they've settled
ragdoll_sleepaftertime 1
// --- HUD ---
// adjust the translucency of the killstreak banner, 255 for solid
cl_hud_killstreak_display_alpha 255
// set how long the killstreak banner stays, 0 to disable banner
cl_hud_killstreak_display_time 0
// minimize clutter in HUD
cl_hud_minmode 1
// disable live player model in HUD
cl_hud_playerclass_use_playermodel 0
// achievements tracked at once
hud_achievement_tracker 0
// time kill record stays on screen
hud_deathnotice_time 4
// targeting recticle transparency
hud_reticle_minalpha 255
// show useful information when you're fighting robots
cl_mvm_wave_status_visible_during_wave 1
// don't crowd up my game with notifications!
cl_notifications_max_num_visible 1
// make notifications leave faster
cl_notifications_move_time 0.1
// glow achievements for a little while shorter
hud_achievement_glowtime 1
// fade chat a bit faster
hud_saytext_time 8
// --- Bug Reporter ---
// upload bug reporter attachments without blocking
bugreporter_uploadasync 1
// --- Memory ---
// size of the data cache, used for some values
datacachesize 512
// keep the LZMA compression system in memory so it doesn't have to be
// started every time
lzma_persistent_buffer 1
// minimum memory used by heap
mem_min_heapsize 512
// maximum memory used by heap
mem_max_heapsize 768
// maximum memory used by heap if you have 256MB to 512MB memory
mem_max_heapsize_dedicated 196
// free up some memory
mem_compact
// --- Filesystem ---
// keep files up to 32KB away in buffer
filesystem_buffer_size 131072
// maximum number of file reads
// increase to 128 if you have an ssd
filesystem_max_stdio_read 64
// use native filesystem calls
filesystem_native 1
// do not use unbuffered IO
filesystem_unbuffered_io 0
// load game data async
mod_load_anims_async 1
mod_load_mesh_async 1
mod_load_vcollide_async 1
// since we're loading async, we don't need to load everything at once
mod_forcedata 0
mod_forcetouchdata 0
mod_touchalldata 0
// --- Sound ---
// disable spatial
dsp_enhance_stereo 0
// disable room FX mixers
dsp_slow_cpu 1
// disable auto dsp
dsp_room 0
// improve sounds that the player is facing away from
// if you need to maximize performance, set this to 0
dsp_facingaway 30
// DSP for the Announcer
// use 0 to disable DSP effects for the Announcer
//dsp_speaker 0
// DSP for positional audio
// use 0 to disable DSP effects for this
//dsp_spatial 0
// DSP for water muffling effect
// use 0 to disable this effect
// 14 to enable
//dsp_water 0
// play sounds independently of main engine work
snd_async_fullyasync 1
// wait until 64K of audio file has been loaded
snd_async_minsize 65536
// have the sound mixer run asynchronously
snd_mix_async 1
// keep sounds for 80 millis and mix them
snd_mixahead 0.08
// an extra delay on sounds
// it helps if your sounds are desynced, which normally happens if your CPU
// is too slow to keep pace with the sound system
// so increase this value to 0.1 if needed
// then adjust phonemedelay accordingly
snd_delay_sound_shift 0.01
// a lot of extra work goes into finding duplicates
snd_cull_duplicates 0
// skips spatiazation traces until the next frame
snd_defer_trace 1
// enable interpolated mixers, which is slightly slower than linear
// for increase in sound quality, it's worth it to keep this setting
// enabled except if you absolutely need maximize performance
snd_pitchquality 1
// spatialize sound every 8 frames (2 ^ 3)
snd_spatialize_roundrobin 3
// disables lowering volume of less important sounds when one with priority plays
// performance benefit, but you can turn off disabling ducking if you want the
// better mixing effects
snd_disable_mixer_duck 1
// don't update sounds twice
snd_noextraupdate 1
// sounds are delayed for 0.15 (mixahead) + 0.02 (sound shift) seconds
phonemedelay 0.09
// don't render extra phonemes on even higher LODs
phonemesnap 1
// buffer voice stream for better quality, at a slight delay
voice_buffer_ms 200
// decreases other sounds by 20% when voice comms are played
//voice_overdrive 1.25
// fade time for other sounds when voice comms start playing
//voice_overdrivefadetime 0.25
// reuse unimportant sound channels, increases perf and quality
voice_steal 2
// disable voice
//voice_modenable 0
//voice_enable 0
// record voice to file
//voice_recordtofile record.wav
// play voice from file
//voice_inputfromfile voice.wav
// increase your voice volume
//voice_scale 1
// force using your mic, if your mic doesn't work, might be worth looking into
//voice_forcemicrecord 1
// --- Input ---
// don't smooth keyboard input over frames
in_usekeyboardsampletime 0
// disable Windows mouse acceleration
m_mousespeed 0
// use raw input from mouse
m_rawinput 1
// don't filter out mouse input over frames
m_filter 0
// may recover faster to center point from flinching
cl_idealpitchscale 1.3
// --- Backpack ---
// alphabetically sort loadout options
//tf_item_selection_panel_sort_type 1
// decrease button delay for moving items
tf_backpack_page_button_delay 0.25
// time spent per frame for loading item panels
tf_time_loading_item_panels 0.0001
// --- OpenGL ---
// Optimizations that only affect Linux and Mac
// allows for page flipping, which skips a two step render process
//gl_can_resolve_flipped 1
// batch texture creation and removal to reduce calls
gl_batch_tex_creates 1
gl_batch_tex_destroys 1
// minimize textures
gl_minimize_rt_tex 1
// flushes TOF, which makes the game smoother, at the cost of a bit of performance
// if you're showing off how many frames this config can pump out, disable it
// but this seriously makes the game feel like it's running faster
gl_mtglflush_at_tof 1
// disable debug messages
gl_debug_output 0
// disable outdated workaround
gl_radar7954721_workaround_mixed 0
// use fastest resolve mode when up scaling too
gl_magnify_resolve_mode 1
// increase shader pair cache size
gl_paircache_rows_lg2 15
gl_paircache_ways_lg2 10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment