You are on page 1of 7

// Unexplained crashes? Try changing mat_queue_mode to `-1'.

// ---------------------------------------------------------------------------// Chris' highframes config, designed to get you a large performance boost
// v2.008 | 04 December 2011 | fakkelbrigade.eu/chris/configs/
// ---------------------------------------------------------------------------// Problems or questions? Contact me at #christf2 on QuakeNet.
// ---------------------------------------------------------------------------// Launch options:
// IMPORTANT: Remove -dxlevel 81 from the launch options after the first launch!
//
// Fullscreen: -dxlevel 81 -full -w WIDTH -h HEIGHT -console -novid -useforcedmp
arms -noforcemaccel -noforcemspd
// Windowed: -dxlevel 81 -sw -w WIDTH -h HEIGHT -console -noborder -novid -use
forcedmparms -noforcemaccel -noforcemspd
// ---------------------------------------------------------------------------// ---------------------------------------------------------------------------// FPS cap
// ---------------------------------------------------------------------------// The primary benefit of an FPS cap is to make the FPS more stable, other than
// that, it doesn't do a lot. A moderate, consistent framerate is much more
// desirable than a variable but sometimes high framerate. A common
// misconception is that if any more frames are generated than your monitor can
// display, they are useless. This is wrong -- frames are used for much more
// than mere display, and affect the way the game feels well past your
// refresh rate.
//
// This FPS cap should *always* be set to a value higher than `cl_cmdrate' in
// any case, or the discrepancy between clientside frame generation and frames
// to be sent to the server will no doubt cause you many a headache, especially
// when it comes down to hit registration. Other than that, I recommend
// for everyone to use the value `132' (2*66), as long as you can generally
// keep that value stable without regular drops.
// ---------------------------------------------------------------------------cl_showfps 1 // Show unsmoothed FPS meter
//fps_max 132 // Commented due to 2011-09-02 update causing jittering when fps i
s capped for some
fps_max 0
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//

---------------------------------------------------------------------------Net settings
---------------------------------------------------------------------------Whilst net settings perhaps aren't an integral part of an FPS config, they
are a fact of life in competitive TF2, and as such, they are included here.
A common question I am asked -- what defines whether a good connection is
good or bad? Mostly personal preference. If you're not willing to make the
choice, try both and see which is better for you.
Generally, meeting both of the following conditions would classify it as a
good connection:
- Ping of <80 to the average server you join
- Generally no/negligible choke/loss (can be checked with `net_graph')
There's some pretty good documentation on this here:
http://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking
Uncomment (remove the `//' from) one of the groups if you want to use them.
----------------------------------------------------------------------------

// LAN
//cl_cmdrate 66
//cl_interp 0 // We let cl_interp_ratio do the limiting, this just sets it to
// the minimum available.
//cl_interp_ratio 0
//cl_lagcompensation 0
//cl_pred_optimize 2
//cl_smooth 0
//cl_smoothtime 0.01
//cl_updaterate 66
//rate 60000
// Good connection
//cl_cmdrate 66
//cl_interp 0
//cl_interp_ratio 1
//cl_lagcompensation 1
//cl_pred_optimize 2
//cl_smooth 0
//cl_smoothtime 0.01
//cl_updaterate 66
//rate 60000
// Bad connection
//cl_cmdrate 40
//cl_interp 0
//cl_interp_ratio 2
//cl_lagcompensation 1
//cl_pred_optimize 2
//cl_smooth 0
//cl_smoothtime 0.01
//cl_updaterate 40
//rate 35000
//
//
//
//
//
//

---------------------------------------------------------------------------Sprays
---------------------------------------------------------------------------Bear in mind that these are disabled on war servers due to `sv_pure 2'
anyway, so if you play competitive TF2, this won't help you.
----------------------------------------------------------------------------

// Disable sprays
cl_playerspraydisable 1
r_spray_lifetime 0
// Enable sprays -- uncomment this section if you want these settings
//cl_playerspraydisable 0
//r_spray_lifetime 2
// ---------------------------------------------------------------------------// Shadows
// ---------------------------------------------------------------------------// Disable shadows
mat_shadowstate 0
r_shadowmaxrendered 0
r_shadowrendertotexture 0
r_shadows 0

// Enable shadows -- uncomment


//mat_shadowstate 1
//r_shadowmaxrendered 11
//r_shadowrendertotexture 1 //
//
//
//
//r_shadows 1

this section if you want these settings


Non-blobby shadows. Sometimes turned on by
competitive TF2 players to see opponents standing
near the other side of a wall. You may see some
performance loss from setting this to `1'.

// ---------------------------------------------------------------------------// Facial features


// ---------------------------------------------------------------------------// Disable facial features
r_eyes 0
r_flex 0
r_lod 2
r_rootlod 2
r_teeth 0
// Enable facial features -- uncomment this section if you want these settings
//r_eyes 1
//r_flex 1
//r_lod 1 // Needs to be set to 1, otherwise they will still be disabled.
//r_rootlod 1
//r_teeth 1
//
//
//
//
//

---------------------------------------------------------------------------Ragdolls
---------------------------------------------------------------------------You will have reduced performance on deaths which produce ragdolls.
----------------------------------------------------------------------------

// Disable ragdolls
cl_ragdoll_fade_time 0
cl_ragdoll_forcefade 1
cl_ragdoll_physics_enable 0
g_ragdoll_fadespeed 0
g_ragdoll_lvfadespeed 0
ragdoll_sleepaftertime 0
// Enable ragdolls -- uncomment this section if you want these settings
//cl_ragdoll_fade_time 15
//cl_ragdoll_forcefade 0
//cl_ragdoll_physics_enable 1
//g_ragdoll_fadespeed 600
//g_ragdoll_lvfadespeed 100
//ragdoll_sleepaftertime "5.0f"
//
//
//
//
//

---------------------------------------------------------------------------Gibs
---------------------------------------------------------------------------You will have reduced performance on deaths which produce gibs.
----------------------------------------------------------------------------

// Disable gibs
cl_phys_props_enable 0
cl_phys_props_max 0
props_break_max_pieces 0
r_propsmaxdist 1

violence_agibs 0
violence_hgibs 0
// Enable gibs -- uncomment this section if you want these settings
//cl_phys_props_enable 1
//cl_phys_props_max 128
//props_break_max_pieces -1
//r_propsmaxdist 1000
//violence_agibs 1
//violence_hgibs 1
// ---------------------------------------------------------------------------// Graphical
// ---------------------------------------------------------------------------// Now we come to the main brunt of the config. You probably don't want to mess
// with this.
// ---------------------------------------------------------------------------cl_detaildist 0
cl_detailfade 0
cl_drawmonitors 0
cl_ejectbrass 0
cl_new_impact_effects 0
cl_show_splashes 0
func_break_max_pieces 0
glow_outline_effect_enable 0 // Cart glow effect.
lod_transitiondist 0
mat_antialias 0
mat_bumpmap 0 // Controls bumpmapping. Setting this to 0 on dx9 will cause
// a strange `shine' effect to appear on all players.
mat_colcorrection_disableentities 1
mat_colorcorrection 0
mat_disable_bloom 1
mat_disable_fancy_blending 1
mat_disable_lightwarp 1
mat_envmapsize 8
mat_envmaptgasize 8
mat_filterlightmaps 1
mat_filtertextures 1
mat_forceaniso 1
mat_hdr_level 0
mat_max_worldmesh_vertices 512
mat_monitorgamma 2.0 // Controls brightness, try 1.8 to make it brighter or 2.2
// to get it darker. Only works in fullscreen.
mat_motion_blur_enabled 0
mat_parallaxmap 0
mat_picmip 1 // Higher = more mipmapping. Without `sv_cheats 1', you're looking
// at a range from -1 to 2, -1 being the best quality, 2 being the
// worst.
mat_reducefillrate 1
mat_reduceparticles 1
mat_specular 1 // Controls specularity. Setting this to 0 will make ubers
// non-shiny, and will remove some specular effects from in-game
// entities which support it. Setting this to 1 on dx8 will
// result in some strange `fire' textures replacing their
// appropriate counterparts, especially on medals, and certain
// hats.
mat_trilinear 1
mat_wateroverlaysize 1
mp_decals 9 // `9' is a good value to still see the spread pattern from a
// scattergun without any real performance loss.

r_3dsky 0
r_ambientboost 0
r_ambientfactor 0
r_ambientmin 0
r_avglight 0
r_cheapwaterend 1
r_cheapwaterstart 1
r_decals 9
r_decalstaticprops 0
r_decal_cullsize 15
r_drawdetailprops 0
r_drawmodeldecals 0
r_drawflecks 0
r_dynamic 0
r_flashlightdepthtexture 0
r_forcewaterleaf 1
r_lightaverage 0
r_maxnewsamples 2
r_maxsampledist 1
r_propsmaxdist 0
r_renderoverlayfragment 0
r_staticprop_lod 4
r_waterdrawreflection 0
r_waterdrawrefraction 1
r_waterforceexpensive 0
r_waterforcereflectentities 0
rope_averagelight 0
rope_collide 0
rope_rendersolid 0
rope_shake 0
rope_smooth 0
rope_subdiv 0
rope_wind_dist 0
tf_particles_disable_weather 1 // Disable weather effects on maps supporting
// it, for example, setting this to `1'
// disables rain effects on *_sawmill.
tracer_extra 0
violence_ablood 0
violence_hblood 0
// ---------------------------------------------------------------------------// Misc
// ---------------------------------------------------------------------------in_usekeyboardsampletime 0
mat_clipz 1 // FX card users should set this to 0
mat_forcehardwaresync 0
mat_levelflush 1
//m_rawinput 1 // Turn on raw mouse input. Commented out by default due to
// silly incompatibility with the Xfire overlay. You should use
// it if you can!
mat_vsync 0 // Turn off vsync to avoid nasty I/O latency.
r_fastzreject -1 // Values >1 enable a fast Z rejection algorithm, to be
// performed on the GPU (as opposed to on the CPU). The
// value `-1' autodetects hardware support for this
// feature, which is safer than forcing it.
//
//
//
//

---------------------------------------------------------------------------Sound
---------------------------------------------------------------------------I'd be hesitant to say that you would see a great deal of performance

// improvement from lowering the sound quality, but in my experience as a


// competitive TF2 player, lowering the sound quality makes determination of
// directionality and distance that much easier. You may see a small FPS gain
// with these settings, or you may not, either way will likely have a
// negligible effect on performance.
// ---------------------------------------------------------------------------dsp_enhance_stereo 0
dsp_slow_cpu 1
snd_async_fullyasync 1 // Having the sound run fully asynchronous has been
// helpful in the past, as it seems to (for whatever
// reason) reduce the number of TDRs experienced during
// gameplay. There's some pretty good information on
// TDRs (nerds only) here:
// http://forums.nvidia.com/index.php?showtopic=65161
snd_pitchquality 0
snd_spatialize_roundrobin 1
// ---------------------------------------------------------------------------// Threading
// ---------------------------------------------------------------------------mat_queue_mode 2 // mat_queue mode is another frequently asked about cvar, it
// defines the threading method to be used by the material
// system. It has been unstable to use in the past, but
// nowadays it's generally okay.
//
// Here are the possible values:
//
-2 legacy default
//
-1 default
//
0 synchronous single thread
//
1 queued single thread
//
2 queued multithreaded
//
// If you have problems with the value `2', try setting it to
// `-1'.
//
// As an aside, there are quite a few bugs in the demo system
// that occur when mat_queue_mode is set to a value that is
// not `-1'. If you intend to do work with the demo system,
// maybe you should change this.
cl_threaded_bone_setup 0
cl_threaded_client_leaf_system 0
r_queued_decals 0
r_queued_ropes 1
r_queued_post_processing 0
r_threaded_client_shadow_manager 1
r_threaded_particles 1
r_threaded_renderables 1
// ---------------------------------------------------------------------------// Misc
// ---------------------------------------------------------------------------cl_forcepreload 1 // Force preloading
// ---------------------------------------------------------------------------// Print to console
// ---------------------------------------------------------------------------clear
echo "-------------------------------------------------------"
echo "
Chris' highframes config loaded.
"

echo "-------------------------------------------------------"
echo "Please direct all comments/queries/whatnot to"
echo "#christf2 on QuakeNet."
echo ""
echo "-------------------------------------------------------"
echo "
Memory stats
"
echo "-------------------------------------------------------"
memory
echo ""
echo "-------------------------------------------------------"
echo "
Code support
"
echo "-------------------------------------------------------"
r_3dnow
r_sse2
echo "-------------------------------------------------------"