Advertisement
Guest User

Chairfaces broken tf2 config

a guest
May 4th, 2015
349
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 60.29 KB | None | 0 0
  1. sv_cheats 1 // TheGreenSpy - 12/26/14
  2. // Launch options stated here. Copy these into TF2's launch options, and remove -dxlevel 90 after the first launch,
  3. // or else your graphics settings will keep reverting if you modify them.
  4. // Fullscreen: -dxlevel 81 -full -w 1920 -h 1080-console -high -refresh (Place hz here) -heapsize (RAM in GB*1024*1024/2) -novid -useforcedmparms -noforcemaccel -noforcemspd
  5. // Windowed: -dxlevel 81 -sw -w -console -high -refresh (Place hz here) -heapsize (RAM in GB*1024*1024/2) -noborder -novid -useforcedmparms -noforcemaccel -noforcemaccel -noforcemspd
  6.  
  7. // >> PLEASE NOTE
  8. // All of these settings, besides the Graphical and Miscellaneous section, can be changed in-game with commands.
  9. // These changes will persist through restarts, since allof them are commented in this autoexec. Only edit/uncomment
  10. // commented lines if you don't intend to use the console commands, since it's really not needed otherwise.
  11.  
  12. sv_cheats 1 // Turn sv_cheats on so we can mess with certain convars at startup
  13. con_filter_enable 1 // Filter out the text below so that we can make changing settings in-game as concise as possible
  14. con_filter_text_out "Host_WriteConfiguration"
  15.  
  16. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  17. // FPS display options
  18. // Show your current FPS or limit your maximum frames to make the game smoother and less jittery.
  19.  
  20. cl_showfps 1 // Show unsmoothed FPS meter.
  21. fps_max 0 // Set the FPS cap to an amount that you typically max out at to prevent jittering. Should be higher than 60.
  22. alias "+ScoreDisplay" "+showscores; net_graph 1" // Makes netgraph show info, but only when viewing scoreboard. Comment this line to get rid of the netgraph on the scoreboard.
  23. alias "-ScoreDisplay" "-showscores; net_graph 0" // Comment this line to get rid of the netgraph on the scoreboard.
  24. //net_graphproportionalfont 0 // Makes netgraph font size proportional to your screen's current resolution. On smaller displays, it's larger than it needs to be and fills up the scoreboard. Comment or set to 1 if you still want it.
  25. net_graphpos 2 // Modify the location of the netgraph. 0 = left edge, 1 = right edge, 2 = centered, 3 or higher specifies the X co-ordinate of the graph's left edge
  26. //net_graphheight 64 // Modify the height of your netgraph for fine modification.
  27.  
  28. // showsbgraph
  29. alias "showsbgraph" "bind "TAB" "+ScoreDisplay"; echo Scoreboard netgraph enabled.;host_writeconfig"
  30.  
  31. // hidesbgraph
  32. alias "hidesbgraph" "bind TAB +showscores;echo Scoreboard netgraph disabled.;host_writeconfig"
  33. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  34.  
  35. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  36. // Network settings
  37. // Uncomment Bad connection and comment Good connection if you tend to get a ping over 80 on nearby servers.
  38.  
  39. // Good connection
  40. //cl_cmdrate 66
  41. //cl_interp 0
  42. //cl_interp_ratio 1
  43. //cl_lagcompensation 1
  44. //cl_pred_optimize 2
  45. //cl_smooth 0
  46. //cl_smoothtime 0.01
  47. //cl_updaterate 66
  48. //rate 60000
  49.  
  50. // Bad connection
  51. //cl_cmdrate 40
  52. //cl_interp 0
  53. //cl_interp_ratio 2
  54. //cl_lagcompensation 1
  55. //cl_pred_optimize 2
  56. //cl_smooth 0
  57. //cl_smoothtime 0.01
  58. //cl_updaterate 40
  59. //rate 35000
  60.  
  61. net_queue_trace 1 // Seems to optimize net code, not sure
  62.  
  63. // goodconnection
  64. alias "goodconnection" "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;echo Network settings changed to Good Connection.;host_writeconfig"
  65.  
  66. // badconnection
  67. alias "badconnection" "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;echo Network settings changed to Bad Connection.;host_writeconfig"
  68. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  69.  
  70. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  71. // Sprays
  72. // No/negligible performance benefit. Only useful to disable if you're annoyed by them.
  73.  
  74. cl_playerspraydisable 0 // Set to 1 to disable.
  75. r_spray_lifetime 2 // Set to 0 to disable.
  76.  
  77. // enablesprays
  78. alias "enablesprays" "cl_playerspraydisable 0;r_spray_lifetime 2;echo Sprays enabled.;host_writeconfig"
  79.  
  80. // disablesprays
  81. alias "disablesprays" "cl_playerspraydisable 1;r_spray_lifetime 0;echo Sprays disabled.;host_writeconfig"
  82. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  83.  
  84. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  85. // Shadows
  86. // Shadows can provide a tactical advantage, but at the same time can lower FPS, especially in busy areas.
  87.  
  88. //mat_shadowstate 0 // Set to 1 to enable.
  89. //r_shadowmaxrendered 0 // Set to 11 to enable.
  90. //r_shadowrendertotexture 0 // Set to 1 to enable, but can cause lag; 0 is the recommended setting either way.
  91. //r_shadows 0 // Set to 1 to enable.
  92. //nb_shadow_dist 400 // Distance from which shadows are visible. Uncomment to modify.
  93.  
  94. // enableshadows
  95. alias "enableshadows" "mat_shadowstate 1;r_shadowmaxrendered 11;r_shadowrendertotexture 0;r_shadows 1;cl_blobbyshadows 1;echo Shadows enabled.;host_writeconfig"
  96.  
  97. // enableshadows_noblob
  98. alias "enableshadows_noblob" "mat_shadowstate 1;r_shadowmaxrendered 11;r_shadowrendertotexture 1;r shadows 1;cl_blobbyshadows 0;echo Non-blobby shadows enabled.;host_writeconfig"
  99.  
  100. // disableshadows
  101. alias "disableshadows" "mat_shadowstate 0;r_shadowmaxrendered 0;r_shadowrendertotexture 0;r_shadows 0;echo Shadows disabled.;host_writeconfig"
  102. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  103.  
  104. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  105. // Facial features
  106. // Disables facial features such as eyes moving and blinking, and mouths opening.
  107.  
  108. //r_eyes 0 // Set to 1 to enable.
  109. //r_flex 0 // Set to 1 to enable.
  110. //r_lod 2 // Needs to be set to 1, or else facial features will be disabled regardless.
  111. //r_rootlod 2 // Set to 1 to enable.
  112. //r_teeth 0 // Set to 1 to enable.
  113. //mp_usehwmmodels -1 // disables improved facial expressions (problems with multicore, for some reason), added for completeness even though the cvar is technically non-functioning since 3/15/14
  114. //mp_usehwmvcds -1 // disables improved facial expressions, added for completeness even though the cvar is technically non-functioning since 3/15/14
  115.  
  116. // Extra settings for if you want to enable facial features but still have a performance benefit. Only uncomment if you have facial features turned on.
  117. //r_eyegloss 0
  118. //r_eyemove 0
  119. //r_eyeshift_x 0
  120. //r_eyeshift_y 0
  121. //r_eyeshift_z 0
  122. //r_eyesize 0
  123. //blink_duration 0 // Default is 0.2
  124.  
  125. // enablefeatures
  126. alias "enablefeatures" "r_eyes 1;r_flex 1;r_lod 1;r_rootlod 1;r_teeth 1;r_eyegloss 1;r_eyemove 1;r_eyeshift_x 0;r_eyeshift_y 0;r_eyeshift_z 0;r_eyesize 0;blink_duration 0.2;echo Facial features enabled.;host_writeconfig"
  127.  
  128. // enablefeatures_low
  129. alias "enablefeatures_low" "r_eyes 1;r_flex 1;r_lod 1;r_rootlod 1;r_teeth 1;r_eyegloss 0;r_eyemove 0;r_eyeshift_x 1;r_eyeshift_y 1;r_eyeshift_z 1;r_eyesize 1;blink_duration 0;echo Low-quality facial features enabled.;host_writeconfig"
  130.  
  131. // disablefeatures
  132. alias "disablefeatures" "r_eyes 0;r_flex 0;r_lod 2;r_rootlod 2;r_teeth 0;echo Facial features disabled.;host_writeconfig"
  133. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  134.  
  135. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  136. // Ragdolls
  137. // Ragdolls can provide significant FPS loss when interacted with on older computers.
  138.  
  139.  
  140. //cl_ragdoll_fade_time 0 // Sets how long until ragdolls fade, in seconds. Default is 15.
  141. //cl_ragdoll_forcefade 1 // Set to 0 to enable.
  142. //cl_ragdoll_physics_enable 0 // Sets whether bullets, explosives, or attacks will interact with the body. Default is 1.
  143. //g_ragdoll_fadespeed 0 // Sets how fast the fading effect is. Default is 600.
  144. //g_ragdoll_lvfadespeed 0 // Set to 100 to enable. Convar isn't documented.
  145. //ragdoll_sleepaftertime 0 // Set to "5.0f" to enable.
  146.  
  147. // enableragdolls
  148. alias "enableragdolls" "cl_ragdoll_fade_time 3;cl_ragdoll_forcefade 0;cl_ragdoll_physics_enable 1;g_ragdoll_fadespeed 600;ragdoll_sleepaftertime 4.0f;echo Ragdolls enabled.;host_writeconfig"
  149.  
  150. // disableragdolls
  151. alias "disableragdolls" "cl_ragdoll_fade_time 0;cl_ragdoll_forcefade 1;cl_ragdoll_physics_enable 0;g_ragdoll_fadespeed 0;ragdoll_sleepaftertime 0;echo Ragdolls disabled.;host_writeconfig"
  152. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  153.  
  154. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  155. // Gibs
  156. // Gibs spawn if a player is killed by an explosion or has a Bombinomicon equip. These can cause FPS to drop.
  157.  
  158. //cl_phys_props_enable 0 // Disables clientside props being affected by physics. Set to 1 to enable.
  159. //cl_phys_props_max 0 // Sets the maximum amount of clientside props your client can have at once. Default is 128.
  160. //props_break_max_pieces 0 // Sets the amount of pieces props can break into. Default is -1 (model default).
  161. //r_propsmaxdist 1 // Sets the maximum visible distance from which you can see clientside props. Default is 1000.
  162. //violence_agibs 0 // Sets whether you can see gibs from the 'alien' team (a source engine default name for one team. Set to 1 to enable.
  163. //violence_hgibs 0 // Sets whether you can see gibs from the 'human' team (a source engine default name for one team. Set to 1 to enable.
  164. cl_burninggibs 0 // Disables burning gibs
  165.  
  166. // enablegibs
  167. alias "enablegibs" "cl_phys_props_enable 1;cl_phys_props_max 128;props_break_max_pieces -1;r_propsmaxdist 1000;violence_agibs 1;violence_hgibs 1;echo Gibs enabled.;host_writeconfig"
  168.  
  169. // disablegibs
  170. alias "disablegibs" "cl_phys_props_enable 0;cl_phys_props_max 0;props_break_max_pieces 0;r_propsmaxdist 1;violence_agibs 0;violence_hgibs 0;echo Gibs disabled.;host_writeconfig"
  171. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  172.  
  173. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  174. // Audio
  175. // Audio settings generally don't increase performance, but can have a positive effect on stability.
  176.  
  177. //dsp_enhance_stereo 0 // Provides you with a neat positional audio effect, but can have a negative effect on performance in some cases.
  178. //dsp_slow_cpu 0 // If set to 1, reduces the quality of DSP effects. Negligible performance gain.
  179. //snd_async_fullyasync 1 // Runs the audio fully asynchronous, and, for some reason, reduces the number of TDRs (https://forums.geforce.com/default/topic/389688/geforce-drivers/nvidia-statement-on-tdr-errors-display-driver-nvlddmkm-stopped-/)
  180. //snd_pitchquality 1 // Helps determine what to set the audio quality at. More info a few lines down.
  181. //snd_spatialize_roundrobin 1 // Lowend optimization: if nonzero, spatialize only a fraction of sound channels each frame. 1/2^x of channels will be spatialized
  182. //snd_mixahead 0.05 // Sets how long it takes until attack sounds play. By default the setting is 0.1, or 100ms, which is 1/10 of a second. That means that the current value plays it 50ms after attacking. Sounds usually start to glitch at lower values, so play around with this and see how low you can get!
  183.  
  184. // dsp_slow_cpu and snd_pitchquality determine what your audio quality is set to in the Options menu.
  185. // High: snd_pitchquality 1; dsp_slow_cpu 0
  186. // Medium: snd_pitchquality 0; dsp_slow_cpu 0
  187. // Low: snd_pitchqualiy 0; dsp_slow_cpu 1
  188. // Note: for snd_pitchqualiy 1; dsp_slow_cpu 1 options menu still displays "Low". I'm not sure if this actually makes the sound quality even lower.
  189. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  190.  
  191.  
  192. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  193. // Graphical
  194. // Main brunt of the config, this is where the magic happens. I've documented what I can so you know what
  195. // everything does and can disable/modify it if you wish.
  196.  
  197. cl_hud_playerclass_use_playermodel 0 // Potential FPS gain, we'll see after more thorough testing
  198. mat_phong 0 // Disables phonging on all models. Also achieved by enabling DX8. Disables lightwarps. Can make some models appear black.
  199. cl_detaildist 0 // Distance at which the detailed parts of props are no longer visible (lower LODs)
  200. cl_detailfade 0 // Distance across which detail props fade in
  201. cl_drawmonitors 0 // Disables the rendering of in-game "monitors" which contain 3D rendered images. Mostly, if not completely unused in TF2.
  202. cl_ejectbrass 0 // Disables brass ejection
  203. cl_muzzleflash_dlight_1st 0 //
  204. cl_predict 1 //
  205. cl_predictweapons 1 //
  206. cl_jiggle_bone_framerate_cutoff 0 // Turns off jigglebones, although I recommend keeping them on at all times by setting them to 1, since their performance impact is generally none/negligible.
  207. cl_new_impact_effects 0 // Disables new impact effects
  208. cl_show_splashes 0 // Disables water splashes
  209. func_break_max_pieces 0 // Undocumented, but probably the same as props_break_max_pieces
  210. glow_outline_effect_enable 0 // Cart glow effect. Performance loss with this is generally negligible, however, so I recommend enabling it simply because of how useful it is.
  211. lod_transitiondist 0 // Sets how far you have to be from someone to make them go to their next LOD. Setting this to 0 forces the lowest LOD.
  212. mat_antialias 0 // Sets lowest antialiasing value.
  213. mat_bumpmap 0 // Controls bumpmapping. Has a weird effect if not used on DX9, so it's set to 1. (Set to 0 on dx8)
  214. mat_bumpbasis 0 //
  215. mat_colcorrection_disableentities 1 // Disables color-correcting entities.
  216. mat_colorcorrection 0 // Disables color-correction.
  217. mat_disable_bloom 1 // Disables the bloom effect that allows light to reflect off of a surface, and the HDR effect.
  218. mat_disable_fancy_blending 1 // Disables fancy texture blending.
  219. mat_disable_lightwarp 1 // Disables lightwarps, which partially determine shading for players, entities, and the map. mat_phong also does this.
  220. mat_envmapsize 8 // Changes envmap size.
  221. mat_envmaptgasize 8 // Messes around with size of sprayed textures
  222. mat_disable_ps_patch 1 //
  223. mat_filterlightmaps 0 // Filters lightmaps.
  224. mat_filtertextures 0 // Filters textures.
  225. mat_forceaniso 1 // Forces anisotropic filtering level
  226. mat_hdr_level 0 // Sets HDR level.
  227. mat_max_worldmesh_vertices 512 // Not even going to try to guess, sorry. :(
  228. mat_monitorgamma 2.0 // Controls brightness, try 1.8 to make it brighter or 2.2 to get it darker. Only works in fullscreen.
  229. mat_motion_blur_enabled 0 // Disables motion blur.
  230. mat_parallaxmap 0 // Disables parallax mapping.
  231. mat_picmip 2 // 2 for lowest detail; 1 for medium detail; -1 for extraordinary detail.
  232. mat_mipmaptextures 1 // Control mipmapping
  233. mat_reducefillrate 1 // Reduces the fillrate when the game is run in DX8.
  234. mat_reduceparticles 1 // Reduces particle count.
  235. mat_softwarelighting 0 // Disables rendering of lights by the software.
  236. mat_autoexposure_max 0 //
  237. mat_autoexposure_min 0 //
  238. mat_alphacoverage 0 //
  239. mat_diffuse 1 //
  240. mat_non_hdr_bloom_scalefactor 0 //
  241. mat_bloomscale 0 // More assurance that bloom stays off
  242. mat_bloomamount_rate 0.05f //
  243. mat_bloom_scalefactor_scalar 0 //
  244. mat_specular 0 // Controls specularity. Setting this to 0 will make ubers non-shiny, and will remove some specular effects from in-game entities which support it. (Set to 0 on dx8)
  245. mat_fastspecular 0 // Fast specularity. (Set to 0 on dx8)
  246. mat_fastnobump 0 //
  247. mat_forcemanagedtextureintohardware 0
  248. mat_framebuffercopyoverlaysize 0 //
  249. mat_trilinear 0 // Sets trlinear mode.
  250. mat_viewportscale 1 // Almost no performance gain from viewport upscaling.
  251. mat_viewportupscale 1 //
  252. mat_wateroverlaysize 1 // Water overlay size.
  253. mp_decals 1 // `9' is a good value to still see the spread pattern from a scattergun without any real performance loss. Needs to be changed with r_decals.
  254. r_3dsky 0 // Disables 3D skies. This makes maps like koth_wubwubwub much, much less spectacular, so you need to compromise.
  255. //r_3dnow 0 // Disables 3DNow, but it doesn't take arguments in TF2
  256. r_ambientboost 0 // Controls ambient lights
  257. r_ambientfactor 0 // Controls ambient lights
  258. r_ambientfraction 0.1 // Controls ambient lights
  259. r_ambientmin 0 // Controls ambient lights
  260. r_avglight 0 // Controls average lighting on objects
  261. r_avglightmap 0 // Controls Average Lighting on objects
  262. r_lightaverage 0 //
  263. r_lightcache_numambientsamples 162 //
  264. r_lighstyle 0 //
  265. r_worldlights 0 //
  266. r_worldlightsmin 0 //
  267. r_maxdlights 32 //
  268. r_radiosity //
  269. r_cheapwaterend 1 // Activates cheap water
  270. r_cheapwaterstart 1 // Activates cheap water
  271. r_decals 9 // Controls decal amount. Needs to be changed with mp_decals.
  272. r_maxmodeldecal 9 // Controls how many decals can be on a model at once
  273. r_decalstaticprops 0 // Enables whether decals can be seen on props.
  274. r_decal_cullsize 15 // Controls the cull size of decals.
  275. r_drawdetailprops 0 // Controls whether details on props should be drawn at all.
  276. r_drawmodeldecals 0 // Controls whether decals should be seeable on a model.
  277. r_drawflecks 0 // Controls whether particles upon hitting a surface with a bullet should be rendered.
  278. r_dynamic 0 // Disables dynamic lighting.
  279. r_maxdlights 0 // Determines the maximum number of dynamic lights visible on the screen.
  280. r_physpropstaticlighting 0 // Dtermines if there should be static lighting on props
  281. r_occlusion 0 // Use occlussion from Source engine?
  282. r_worldlights 1 // Number of world lights to use per vertex
  283. r_flashlightdepthtexture 0 // Specifies how detailed the flashlight light should be. Useless in TF2.
  284. r_forcewaterleaf 1 // Optimization to water - considers view in leaf under water for purposes of culling.
  285. r_lightaverage 0 // Disables average lighting.
  286. r_dopixelvisibility 0 //
  287. r_maxnewsamples 0 // Undocumented.
  288. r_maxsampledist 1 // Undocumented.
  289. r_sse2 1 //
  290. r_propsmaxdist 0 // Max visible distance for props.
  291. r_renderoverlayfragment 0 // Leaves a marking underneath health kits and ammo kits.
  292. r_staticprop_lod 4 // Sets the default LOD for static props.
  293. r_waterdrawreflection 0 // Controls as to whether reflections should be drawn on the surface of water.
  294. r_waterdrawrefraction 0 // Controls as to whether to calculate refractions when in water.
  295. r_waterforceexpensive 0 // Forces expensive water.
  296. r_waterforcereflectentities 0 // Forces as to whether entities should be reflected into water even if r_waterdrawreflection is 0.
  297. rope_averagelight 0 // Makes ropes use average of cubemap lighting instead of max intensity.
  298. rope_collide 0 // Collide rope with the world.
  299. rope_rendersolid 0 // Disables rendering ropes/cables at all.
  300. rope_shake 0 // Controls whether ropes should shake as if there's wind.
  301. rope_smooth 0 // Controls as to whether there should be an antialiasing effect on ropes.
  302. rope_subdiv 0 // Rope subdivision amount.
  303. rope_wind_dist 0 // If a rope is this far away, don't simulate wind on them.
  304. tf_particles_disable_weather 1 // Disable weather effects on maps supporting it. For example, setting this to `1' disables rain effects on *_sawmill.
  305. tracer_extra 0 // Undocumented.
  306. violence_ablood 1 // Setting ablood/hblood to 1 actually improves perf usually
  307. violence_hblood 1 //
  308.  
  309. // Control antialiasing quality to a better extent
  310. mat_software_aa_quality 0 // was 9
  311. mat_software_aa_strength 0
  312. mat_software_aa_strength_vgui -1
  313. mat_software_aa_blur_one_pixel_lines 0
  314. mat_software_aa_edge_threshold 9
  315. mat_software_aa_tap_offset "1"
  316. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  317.  
  318. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  319. // Miscellaneous
  320. // Some miscellaneous improvements that don't quite fit into any of the above categories.
  321.  
  322. flex_smooth 1
  323. in_usekeyboardsampletime 0
  324. mat_clipz 1 // FX card users should set this to 0
  325. mat_forcehardwaresync 0
  326. mat_levelflush 1
  327. m_rawinput 1 // Turn on raw mouse input.
  328. mat_vsync 0 // Turn off vsync to avoid nasty I/O latency.
  329. 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.
  330. mat_queue_mode 2 // mat_queue mode is another frequently asked about cvar, it
  331. // defines the threading method to be used by the material
  332. // system. It has been unstable to use in the past, but
  333. // nowadays it's generally okay.
  334. //
  335. // Here are the possible values:
  336. // -2 legacy default
  337. // -1 default
  338. // 0 synchronous single thread
  339. // 1 queued single thread
  340. // 2 queued multithreaded
  341. //
  342. // If you have problems with the value `2', try setting it to
  343. // `-1'.
  344. //
  345. // As an aside, there are quite a few bugs in the demo system
  346. // that occur when mat_queue_mode is set to a value that is
  347. // not `-1'. If you intend to do work with the demo system,
  348. // maybe you should change this.
  349.  
  350. //cl_threaded_bone_setup 1 // Causes crashes on systems with less than four cores
  351. cl_threaded_client_leaf_system 0
  352. //r_queued_decals 1 // Causes crashes on systems with less than four cores
  353. r_queued_ropes 1
  354. r_queued_post_processing 0
  355. r_threaded_client_shadow_manager 1
  356. r_threaded_particles 1
  357. r_threaded_renderables 1
  358. cl_forcepreload 1 // Forces preloading sounds and such to make it lag less when in-game.
  359. //mat_viewportupscale 1 // for terrible GPU's only
  360. //mat_viewportscale 0.5 // for terrible GPU's only
  361. cl_software_cursor 0 // fixes Windows cursor appearing on screen bug, but breaks on Mac/Linux and prevents looking up in some cases when set to 1
  362. //studio_queue_mode 0 // default "1". Can give a major FPS boost, but causes crashes. For some reason it is stable when viewing demos, so feel free to set to "1" when not in multiplayer
  363. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  364.  
  365. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  366. // Experimental
  367. // Disable these if you experience crashes
  368.  
  369. cl_localnetworkbackdoor 0 // Network optimizations for Singleplayer, disabling has about a 1-2% fps boost
  370. cl_cloud_settings 0 // Disables cloud syncing of configs, should decrease FPS variance. Disable if you want to.
  371. sys_minidumpspewlines 1 // Basically the number of lines saved to a log file from console. No FPS boost but 15% lower FPS variance
  372. cl_loadondemand_default 0 // Forces items to be loaded at startup instead of on demand. Theoretically makes startup longer but prevents freezing
  373. ai_expression_optimization 1 // Disables NPC expressions when you can't see them, not sure if it works on regular players in TF2, but that's why it's experimental.
  374. //r_pixelfog 1 // Supposedly increases FPS via fog, but it doesn't seem like it. Feel free to play with it to test. I'll run benchmarks later.
  375. fast_fogvolume 1 // Undocumented but I didn't experience any FPS loss with it enabled, will run benchmarks later.
  376. filesystem_native 0 // I think there's an FPS gain with this, anyway.
  377. host_thread_mode 0 // Prevents buggy singleplayer, set to 1 for benefits
  378. // makes local servers unplayable, so disabled by default
  379. mod_load_anims_async 1 // // // Load model vcollide async
  380.  
  381. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  382.  
  383. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  384. // Other improvements
  385. // Other non-performance improvements that you may like. Feel free to remove them if you don't, of course.
  386.  
  387. // General
  388. //cl_showbattery 1 // Indicates if we're on battery power or plugged in. Not useful if you're not using a laptop.
  389. //cl_mvm_wave_status_visible_during_wave 1 // Extremely useful convar to show bots remaining without having to view scoreboard
  390. //cl_use_tournament_specgui 1 // Shows your teammate's health in tournament mode and in MvM when you're dead.
  391. //cl_ask_blacklist_opt_out 1 // Disables the game annoyingly asking you if you want to blacklist a server that you spend a low amount of time on.
  392. //cl_ask_favorite_opt_out 1 // Disables the game annoyingly asking you if you want to favorite a server that you spend a long amount of time on.
  393. //hud_combattext_batching 1 // Batches together damage text. Useful for Pyro, Heavy, and the Engineer's Sentry in particular.
  394.  
  395. // Disable Tutorials
  396. cl_ask_blacklist_opt_out "1"
  397. cl_ask_favorite_opt_out "1"
  398. sb_dontshow_maxplayer_warning "1"
  399. tf_explanations_backpackpanel "1"
  400. tf_explanations_charinfo_armory_panel "1"
  401. tf_explanations_charinfopanel "1"
  402. tf_explanations_craftingpanel "1"
  403. tf_explanations_discardpanel "1"
  404. tf_explanations_store "1"
  405. tf_training_has_prompted_for_forums "1"
  406. tf_training_has_prompted_for_loadout "1"
  407. tf_training_has_prompted_for_offline_practice "1"
  408. tf_training_has_prompted_for_options "1"
  409. tf_training_has_prompted_for_training "1"
  410.  
  411. // Toggle viewmodels
  412. //Reload graphics and sound to fix glitches.
  413. //bind "f8" "record temp; stop; snd_restart; hud_reloadscheme;heartbeat;"
  414.  
  415. sv_cheats 0 // Turning sv_cheats off now, since we don't need it on anymore.
  416. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  417. //List aliases here for an organized config! (EX)
  418. //showsbgraph
  419. //goodconnection
  420. //disablesprays
  421. //enablefeatures_low
  422. //enableragdolls
  423. //disablegibs
  424. /////////////////////////////////////////////////////////////////////////////////////////////////////////////
  425. // Print to Console
  426.  
  427. clear
  428. clear //Repeated due to dumb 'c_minyaw can't be used on multiplayer servers with sv_cheats disable'
  429. echo
  430. echo "// 12/27/14
  431. echo "// TheGreenSpy's Performance Config
  432. echo "// Type 'help' for help
  433. echo "// Type 'setup' to setup for first time
  434. echo
  435.  
  436. alias "help" "echo This performance config is a configuration using elements from Chris`s performance config, Stabby`s config, and various other configurations that I`ve found around the internet. Alongside that, I`m also including my own knowledge in this, hopefully making this one of the best performance configs you will find.;help2"
  437. alias "help2" "echo I hope you enjoy using my config, and if you have any problems, you can contact me on Gamebanana(TheGreenSpy), and I`ll get back to you. Enjoy your high FPS!"
  438.  
  439. alias "setup" "echo Welcome to the setup wizard. Follow these instructions in order to set up basic changes to the config without modifying it. Please note that any commands referenced in this wizard can be used outside of it, at any time.;echo "";echo 1. FPS;echo 2. Network;echo 3. Sprays;echo 4. Shadows;echo 5. Facialfeatures;echo 6. Ragdolls;echo 7. Gibs;echo 8. Audio;echo 8. Multiplayer;setup2"
  440. alias "setup2" "echo "";echo Once you are done, you should type 'help' to learn more about this configuration and some helpful hints.;echo """
  441.  
  442. alias "FPS" "echo Your FPS (frames-per-second) determines how smoothly your games run. That being said, it is important to keep your FPS high. When using a config like this, it is in your best interest to monitor your FPS, so you have a few options included in this config.;echo "";echo fps_max # - Set your FPS cap. 60 or above is generally a good value. Does not save between sessions.;echo showsbgraph - Show a graph showing your FPS and other useful info when pressing TAB.;fps2"
  443. alias "FPS2" "echo hidesbgraph - Disable the graph that appears when pressing TAB.;fps3"
  444. alias "FPS3" "echo cl_showfps 1 - Shows an unsmoothed FPS meter in the top right;echo "";echo Additionally, you can use the following commands to move the graphs position or size.;echo "";echo net_graphproportionalfont - Makes your netgraph size dependant on your resolution.;echo net_graphpos - 0 = left, 1 = right, 2 = centered, 3/higher specifies the X coordinate of the graphs left edge;fps4"
  445. alias "FPS4" "echo net_graphheight - Modify the height of your graph for fine modification and placement. Default is 64.;echo "";FPS5"
  446. alias "FPS5" "echo Finally, there are three convars that can increase FPS exponentially, but might be unstable on systems without four cores.;echo "";echo studio_queue_mode 0 - Gives a boost when set to 0. Might cause crashes on some systems.;FPS6"
  447. alias "FPS6" "echo cl_threaded_bone_setup 1 - Enables threaded bones. Causes crashes on systems that don't have four cores.;echo r_queued_decals 1 - Enables queued decals. Causes crashes on systems that don't have four cores.;echo "";echo Once you are done configuring these, go ahead and type Network in console to continue.;echo """
  448.  
  449. alias "Network" "echo Network settings are what allows your game to play smoothly under certain circumstances. Misconfigured network settings can make the game feel choppy and laggy, while optimized settings can make it feel better. Below, you can choose between two commands that allow you to change your settings depending on playing conditions. If your ping is ;echo over 80 on nearby servers, you should use the Bad connection settings.;Network2"
  450. alias "Network2" "echo "";echo goodconnection - Enable good connection settings. Use if you get a low ping to nearby servers.;echo badconnection - Enable bad connection settings. Use if you get a ping of 80+ to nearby servers normally.;echo "";echo Once you are done configuring these, go ahead and type Sprays in console to continue.;echo """
  451.  
  452. alias "Sprays" "echo Sprays are images that people can put on locations around the map. Some are helpful, some are funny, and some are plain disturbing. If you dislike them, you can disable or enable them quickly with the commands below.;Sprays2"
  453. alias "Sprays2" "echo "";echo enablesprays - Enable sprays.;echo disablesprays - Disable sprays.;echo "";echo Once you are done configuring these, go ahead and type Shadows in console to continue.;echo """
  454.  
  455. alias "Shadows" "echo Shadows are generally eye-candy, but if you are an attentive player, you can use it to your advantage, since it can easily reveal someone around a corner. Below, you can choose between three shadow options.;Shadows2"
  456. alias "Shadows2" "echo enableshadows - Non-intensive shadows that allow you to not lag as much, but still get some eyecandy.;echo enableshadows_noblob - Enables non-blobby shadows (high-intensity).;echo disableshadows - Disables shadows completely.;echo "";echo Once you are done configuring these, go ahead and type Facialfeatures in console to continue."
  457.  
  458. alias "Facialfeatures" "echo Facial features are what occurs to the characters faces when they talk. These are things such as eyes moving and blinking passively, and the mouth opening when they speak. This is only eyecandy, but it is pretty fun to have.;echo "";echo enablefeatures - Enables facial features.;echo enablefeatures_low - Enables low-quality facial features so you still get an FPS benefit.;Facialfeatures2"
  459. alias "Facialfeatures2" "echo disablefeatures - Disables facial features entirely.;echo "";echo Once you are done configuring these, go ahead and type Ragdolls in console to continue.;echo """
  460.  
  461. alias "Ragdolls" "echo Ragdolls are what you get when you kill someone. They can be used as indicators that an enemy is nearby if a class that headed in that direction recently is found dead. Since they can be interacted with, they can lower FPS.;echo "";echo enableragdolls - Enable ragdolls.;echo disableragdolls - Disable ragdolls.;Ragdolls2"
  462. alias "Ragdolls2" "echo "";echo Once you are done configuring these, go ahead and type Gibs to continue.;echo """
  463.  
  464. alias "Gibs" "echo Gibs are what results when someone is killed by an explosion, instead of a ragdoll. They stay for a while after the death, just like ragdolls, and can be interacted with. The sudden splash of gibs and the fact they can be interacted with are both factors that can cause FPS loss.;echo "";echo enablegibs - Enable gibs.; echo disablegibs - Disable gibs.;Gibs2"
  465. alias "Gibs2" "echo "";echo Once you are done configuring these, go ahead and type Audio.;echo """
  466.  
  467. alias "Audio" "echo Audio settings are only used to enhance your experience, and generally provide no FPS benefit. Regardless, there are some settings you can modify that were not quite included in the default Settings.;echo "";echo dsp_enhance_stereo - When set to 1, provides a neat surround sound effect.;Audio2"
  468. alias "Audio2" "echo snd_mixahead 0.05 - By default, TF2 makes sounds play 100ms later after they happened (0.1). You can lower this, but at a certain point there is static. 0.05 is generally a safe value, while 0.04 might work for others.;echo "";Audio3"
  469. alias "Audio3" "echo Once you are done configuring these, go ahead and type Multiplayer to continue;"
  470.  
  471. alias "Multiplayer" "echo Multiplayer settings are important. They can lower the amount of decals allowed, and can make fps higher.;Multiplayer2"
  472. alias "Multiplayer2" "echo host_thread_mode 1 - By default this setting is disabled due to buggy singleplayer. I would recommend that you turn this on when playing on a multiplayer server for +5 or more fps.;Multiplayer3"
  473. alias "Multiplayer3" "echo Congratulations, you have finished the wizard! All changes will be saved, even between restarts. Now go on and start playing with better FPS than ever before!;echo If you want some extra settings to modify that you may like, type Extras.;echo """
  474.  
  475. alias "Extras" "echo These extras are some nice convars that I found by browsing the internet and looking through lists. They are not performance related, but you might appreciate them anyhow.;echo "";echo cl_showbattery - Tells you whether you are on AC or unplugged if you have a laptop. Requires cl_showfps 1;echo cl_mvm_wave_status_visible_during_wave 1 - Shows bots remaining without having to show scoreboard;Extras2"
  476. alias "Extras2" "echo cl_use_tournament_specgui 1 - Shows alive player's health in tournament mode or MvM, when you are dead.;echo hud_combattext_batching 1 - Batches together damage text if done within a short period of time.;echo hud_combattext_batching_window # - Amount of time that numbers should stop being batched if no damage occurs.;Extras3"
  477. alias "Extras3" "echo hud_combattext_healing 1 - Enable text that shows a target being healed;echo hud_saytext_time # - Control how long chat messages stay on screen. Default is 12;echo hud_deathnotice_time # - Control how long death notices stay on screen. Default is 6;Extras4"
  478. alias "Extras4" "echo cl_timeout # - Set how long before timeout when you lose connection. Default is 30.;echo tf_hud_num_build_alert_beeps - How many beeps to play when your building is damaged. Default is 2.;echo tf_hud_show_servertime_limit - Whether to show server time limit on HUD;Extras5"
  479. alias "Extras5" "echo voice_loopback 1 - Play back your voice to yourself.;echo "";echo Again, thanks for using my config!"
  480.  
  481. //alias clear "echo Blocked clear!" // Block the 'clear' command here instead of above, since I want to use 'clear' myself... :P blink_duration "0"
  482. r_eyes "0"
  483. r_flex "0"
  484. r_teeth "0"
  485. flex_rules "0"
  486. flex_smooth "0"
  487. cl_phys_props_enable "0"
  488. cl_phys_props_max "0"
  489. cl_ragdoll_fade_time "0"
  490. cl_ragdoll_forcefade "1"
  491. cl_ragdoll_physics_enable "0"
  492. g_ragdoll_fadespeed "0"
  493. g_ragdoll_lvfadespeed "0"
  494. props_break_max_pieces "0"
  495. ragdoll_sleepaftertime "0"
  496. r_propsmaxdist "1"
  497. violence_ablood "0"
  498. violence_agibs "0"
  499. violence_hblood "0"
  500. violence_hgibs "0"
  501. Cleaning up and stopping debug flooding
  502. adsp_debug "0"
  503. cl_clearhinthistory "1"
  504. cl_debugrumble "0"
  505. cl_rumblescale "0"
  506. mat_debugdepthval "0"
  507. mat_debugdepthvalmax "0"
  508. mat_debug_postprocessing_effects "0"
  509.  
  510. // Graphical
  511. cl_burninggibs "0"
  512. cl_detaildist "0"
  513. cl_detailfade "0"
  514. cl_drawmonitors "0"
  515. cl_ejectbrass "0"
  516. cl_muzzleflash_dlight_1st "0"
  517. cl_show_splashes "0"
  518. func_break_max_pieces "1"
  519. glow_outline_effect_enable "0" // Set to 1 to enable cart glow effect at a performance cost
  520. lod_transitiondist "0"
  521. mat_alphacoverage "0"
  522. mat_antialias "0"
  523. mat_autoexposure_max "0"
  524. mat_autoexposure_min "0"
  525. mat_bloomscale "0"
  526. mat_bumpmap "1"
  527. mat_colcorrection_disableentities "1"
  528. mat_colorcorrection "0"
  529. mat_compressedtextures "1"
  530. mat_disable_bloom "1"
  531. mat_disable_fancy_blending "1"
  532. mat_disable_lightwarp "1"
  533. mat_disable_ps_patch "1"
  534. mat_envmapsize "16"
  535. mat_envmaptgasize "16"
  536. mat_excludetextures "1"
  537. mat_fastnobump "1"
  538. mat_fastspecular "1"
  539. mat_filterlightmaps "1"
  540. mat_filtertextures "0"
  541. mat_forceaniso "0"
  542. mat_forcehardwaresync "0"
  543. mat_forcemanagedtextureintohardware "0"
  544. mat_framebuffercopyoverlaysize "0"
  545. mat_hdr_level "0"
  546. mat_levelflush "0"
  547. mat_maxframelatency "0"
  548. mat_max_worldmesh_vertices "64"
  549. mat_mipmaptextures "0"
  550. mat_monitorgamma "2.0"
  551. mat_motion_blur_enabled "0"
  552. mat_parallaxmap "0"
  553. mat_picmip "2" // 0 should be fine and should not reduce FPS on any recent card, as long as it has an okay mem size. If you think this is hurting your FPS, set it to 1 or 2 (higher = worse quality textures)
  554. mat_postprocess_x "0"
  555. mat_postprocess_y "0"
  556. mat_reducefillrate "1"
  557. mat_reduceparticles "1" // I see no difference but apparently it works for some
  558. mat_specular "0"
  559. mat_trilinear "0"
  560. mat_use_compressed_hdr_textures "1"
  561. mat_vsync "0"
  562. mat_wateroverlaysize "4"
  563. mp_usehwmmodels "0"
  564. mp_usehwmvcds "0"
  565. muzzleflash_light "0"
  566. rope_averagelight "0"
  567. rope_collide "0"
  568. rope_rendersolid "0"
  569. rope_shake "0"
  570. rope_smooth "0"
  571. rope_smooth_enlarge "0"
  572. rope_smooth_maxalpha "0"
  573. rope_smooth_maxalphawidth "0"
  574. rope_smooth_minalpha "0"
  575. rope_smooth_minalphawidth "0"
  576. rope_solid_maxalpha "0"
  577. rope_solid_maxwidth "0"
  578. rope_solid_minalpha "0"
  579. rope_solid_minwidth "0"
  580. rope_subdiv "0"
  581. rope_wind_dist "0"
  582. r_3dsky "0"
  583. r_ambientboost "0"
  584. r_ambientfactor "0"
  585. r_ambientmin "0"
  586. r_avglight "0"
  587. r_bloomtintb "0"
  588. r_bloomtintexponent "0"
  589. r_bloomtintg "0"
  590. r_bloomtintr "0"
  591. r_cheapwaterend "1"
  592. r_cheapwaterstart "1"
  593. r_decalstaticprops "0"
  594. r_dopixelvisibility "0"
  595. r_drawbatchdecals "0"
  596. r_drawdetailprops "0"
  597. r_drawflecks "0"
  598. r_drawmodeldecals "0"
  599. r_drawspecificstaticprop "0"
  600. r_dynamic "0"
  601. r_eyemove "0"
  602.  
  603. r_flashlightdepthtexture "0"
  604. r_flashlightrendermodels "0"
  605. r_flashlightrenderworld "0"
  606. r_forcewaterleaf "1"
  607. r_hunkalloclightmaps "1"
  608. r_lightaverage "0"
  609. r_lightcache_zbuffercache "0"
  610. r_lod "2"
  611. r_maxdlights "0"
  612. r_maxmodeldecal "0"
  613. r_maxnewsamples "0"
  614. r_occlusion "1"
  615. r_physpropstaticlighting "0"
  616. r_pixelfog "1"
  617. r_radiosity "0"
  618. r_renderoverlayfragment "1"
  619. r_rootlod "2"
  620. r_ropetranslucent "0"
  621. r_staticprop_lod "4"
  622. r_updaterefracttexture "0"
  623. r_visualizeproplightcaching "1"
  624. r_waterdrawreflection "0"
  625. r_waterdrawrefraction "1"
  626. r_waterforceexpensive "0"
  627. r_waterforcereflectentities "0"
  628. r_worldlights "2"
  629. tf_particles_disable_weather "0"
  630. fps_max "241"
  631. cl_soundemitter_flush "1"
  632. mat_bufferprimitives "1"
  633. mat_clipz "1" // FX owners should set this to 0
  634. mat_disablehwmorph "1"
  635. mat_forcehardwaresync "0"
  636. mat_postprocessing_combine "1"
  637. soundscape_flush "1"
  638. cl_forcepreload "1"
  639. cl_threaded_bone_setup "0"
  640. cl_threaded_client_leaf_system "0"
  641. mat_queue_mode "-1"
  642. r_queued_post_processing "1"
  643. r_threaded_client_shadow_manager "1"
  644. r_threaded_particles "1"
  645. r_threaded_renderables "1"
  646. r_queued_decals "0"
  647. r_queued_post_processing "0"
  648. r_queued_ropes "0"
  649. r_eyes 0
  650. r_flex 0
  651. r_lod 2
  652. r_rootlod 2
  653. r_teeth 0
  654. cl_ragdoll_fade_time 0
  655. cl_ragdoll_forcefade 1
  656. cl_ragdoll_physics_enable 0
  657. g_ragdoll_fadespeed 0
  658. g_ragdoll_lvfadespeed 0
  659. ragdoll_sleepaftertime 0
  660. mp_decals 9
  661. tf_particles_disable_weather 1
  662. cl_forcepreload 1
  663. cl_detaildist 0
  664. cl_detailfade 0
  665. cl_drawmonitors 0
  666. cl_ejectbrass 0
  667. cl_new_impact_effects 0
  668. cl_show_splashes 0
  669. func_break_max_pieces 0
  670. glow_outline_effect_enable 0 // Cart glow effect.
  671. lod_transitiondist 0
  672. mat_trilinear 1
  673.  
  674. mat_bumpmap 0 // Controls bumpmapping. Setting this to 0 on dx9 will cause
  675. // a strange `shine' effect to appear on all players.
  676. mat_colcorrection_disableentities 1
  677. mat_colorcorrection 0
  678. mat_disable_bloom 1
  679. mat_disable_fancy_blending 1
  680. mat_disable_lightwarp 1
  681. mat_envmapsize 8
  682. mat_envmaptgasize 8
  683. mat_filterlightmaps 0
  684. mat_filtertextures 1
  685. mat_forceaniso 1
  686. mat_hdr_level 0
  687. mat_max_worldmesh_vertices 512
  688. mat_motion_blur_enabled 0
  689. mat_parallaxmap 0
  690. mat_picmip 2
  691. mat_reducefillrate 1
  692. mat_reduceparticles 1
  693. mat_trilinear 0
  694. mat_wateroverlaysize 1
  695. r_3dsky 0
  696. r_ambientboost 0
  697. r_ambientfactor 0
  698. r_ambientmin 0
  699. r_avglight 0
  700. r_cheapwaterend 1
  701. r_cheapwaterstart 1
  702. r_decals 1
  703. r_decalstaticprops 0
  704. r_decal_cullsize 15
  705. r_drawdetailprops 0
  706. r_drawmodeldecals 0
  707. r_drawflecks 0
  708. r_dynamic 0
  709. r_flashlightdepthtexture 0
  710. r_forcewaterleaf 1
  711. r_lightaverage 0
  712. r_maxnewsamples 2
  713. r_maxsampledist 1
  714. r_propsmaxdist 0
  715. r_renderoverlayfragment 0
  716. r_staticprop_lod 4
  717. r_waterdrawreflection 0
  718. r_waterdrawrefraction 1
  719. r_waterforceexpensive 0
  720. r_waterforcereflectentities 0
  721. rope_averagelight 0
  722. rope_collide 0
  723. rope_rendersolid 0
  724. rope_shake 0
  725. rope_smooth 0
  726. rope_subdiv 0
  727. rope_wind_dist 0
  728. tracer_extra 0
  729. violence_ablood 0
  730. violence_hblood 0
  731. "floating_metal_barrel"
  732. {
  733. "base" "metal_barrel"
  734. "density" "500"
  735. }
  736.  
  737. "plastic_barrel_buoyant"
  738. {
  739. "base" "plastic_barrel"
  740. "density" "150"
  741. }
  742.  
  743. // ROLLER NPC
  744.  
  745. "roller"
  746. {
  747. "base" "metalpanel"
  748. "friction" "0.7"
  749. "elasticity" "0.3"
  750. "impacthard" "Roller.Impact"
  751. }
  752.  
  753. // small aluminum can, full
  754.  
  755. "popcan"
  756. {
  757. "base" "metal_box"
  758. "friction" "0.3"
  759. "elasticity" "0.99"
  760. "impacthard" "Popcan.ImpactHard"
  761. "impactsoft" "Popcan.ImpactSoft"
  762. "scraperough" "Popcan.ScrapeRough"
  763. "scrapesmooth" "Popcan.ScrapeSmooth"
  764. "bulletimpact" "Popcan.BulletImpact"
  765. // strain // none
  766. // break // none
  767. }
  768.  
  769. // paint can, smaller metal can
  770.  
  771. "paintcan"
  772. {
  773. "base" "popcan"
  774. "friction" "0.3"
  775. "elasticity" "0.99"
  776. "impacthard" "Paintcan.ImpactHard"
  777. "impactsoft" "Paintcan.ImpactSoft"
  778.  
  779. //"roll" "Paintcan.Roll"
  780. // strain // none
  781. // break // none
  782. }
  783.  
  784. "paper"
  785. {
  786. "base" "cardboard"
  787. }
  788.  
  789.  
  790. "papercup"
  791. {
  792. "base" "paper"
  793. "friction" "0.8"
  794. "elasticity" "0.1"
  795. "impacthard" "Papercup.Impact"
  796. "scraperough" "Popcan.ScrapeRough"
  797. }
  798.  
  799. // accoustic ceiling tiles, sound baffles, crumbly plaster
  800. "ceiling_tile"
  801. {
  802. "base" "cardboard"
  803.  
  804. "stepleft" "ceiling_tile.StepLeft"
  805. "stepright" "ceiling_tile.StepRight"
  806. "bulletimpact" "ceiling_tile.BulletImpact"
  807. "scraperough" "ceiling_tile.ScrapeRough"
  808. "scrapesmooth" "ceiling_tile.ScrapeSmooth"
  809. "impacthard" "ceiling_tile.ImpactHard"
  810. "impactsoft" "ceiling_tile.ImpactSoft"
  811.  
  812. "break" "ceiling_tile.Break"
  813. }
  814.  
  815.  
  816. // weapon models - sounds for when weapons drop
  817. // Maybe we'll want specific materials for each weapon?
  818. "weapon"
  819. {
  820. "base" "metal"
  821. "stepleft" "weapon.StepLeft"
  822. "stepright" "weapon.StepRight"
  823. "bulletimpact" "weapon.BulletImpact"
  824. "scraperough" "weapon.ScrapeRough"
  825. "scrapesmooth" "weapon.ScrapeSmooth"
  826. "impacthard" "weapon.ImpactHard"
  827. "impactsoft" "weapon.ImpactSoft"
  828. }
  829.  
  830. // for invisible collision materials (like sky)
  831. "default_silent"
  832. {
  833. "gamematerial" "I"
  834. }
  835.  
  836. // special materials for player controller
  837. "player"
  838. {
  839. "density" "1000"
  840. "friction" "0.5"
  841. "elasticity" "0.001"
  842.  
  843. // player is soft & smooth for sound selection
  844. "audiohardnessfactor" "0.0"
  845. "audioroughnessfactor" "0.0"
  846. }
  847.  
  848. "player_control_clip"
  849. {
  850. "gamematerial" "I"
  851. }
  852.  
  853. "no_decal"
  854. {
  855. "density" "900"
  856. "gamematerial" "I"
  857. }
  858.  
  859. "foliage"
  860. {
  861. "base" "Wood_Solid"
  862.  
  863. "density" "700"
  864. "elasticity" "0.1"
  865. "friction" "0.8"
  866.  
  867. "gamematerial" "I"
  868. }// solid rubber floor mat, solid rubber tire
  869.  
  870. "rubber"
  871. {
  872. "base" "dirt"
  873. "elasticity" "0.2"
  874. "friction" "0.8"
  875.  
  876. "stepleft" "Rubber.StepLeft"
  877. "stepright" "Rubber.StepRight"
  878. "impacthard" "Rubber.ImpactHard"
  879. "impactsoft" "Rubber.ImpactSoft"
  880. "bulletimpact" "Rubber.BulletImpact"
  881.  
  882. "audioroughnessfactor" "0.1"
  883. "audiohardnessfactor" "0.2"
  884.  
  885. }
  886.  
  887. // hollow rubber tire
  888.  
  889. "rubbertire"
  890. {
  891. "base" "rubber"
  892.  
  893. "bulletimpact" "Rubber_Tire.BulletImpact"
  894. "impacthard" "Rubber_Tire.ImpactHard"
  895. "impactsoft" "Rubber_Tire.ImpactSoft"
  896.  
  897. // "strain" "Rubber_Tire.Strain"
  898.  
  899. "friction" "1.0"
  900. }
  901.  
  902. "jeeptire"
  903. {
  904. "base" "rubber"
  905.  
  906. "bulletimpact" "Rubber_Tire.BulletImpact"
  907. "impacthard" "Rubber_Tire.ImpactHard"
  908. "impactsoft" "Rubber_Tire.ImpactSoft"
  909.  
  910. // "strain" "Rubber_Tire.Strain"
  911.  
  912. "friction" "1.337"
  913. }
  914.  
  915. "slidingrubbertire"
  916. {
  917. "base" "rubber"
  918. "friction" "0.2"
  919. }
  920.  
  921. "brakingrubbertire"
  922. {
  923. "base" "rubber"
  924. "friction" "0.6"
  925. }
  926.  
  927. "slidingrubbertire_front"
  928. {
  929. "base" "rubber"
  930. "friction" "0.2"
  931. }
  932.  
  933. "slidingrubbertire_rear"
  934. {
  935. "base" "rubber"
  936. "friction" "0.2""gravel"
  937. {
  938. "base" "rock"
  939. "friction" "0.4"
  940. "stepleft" "Gravel.StepLeft"
  941. "stepright""Gravel.StepRight"
  942. }
  943.  
  944. "brick"
  945. {
  946. "base" "rock"
  947. }
  948.  
  949. // 9x12 prefabricated concrete cinder blocks
  950.  
  951. "concrete_block"
  952. {
  953.  
  954. "base" "concrete"
  955. "impacthard" "Concrete_Block.ImpactHard"
  956. }
  957.  
  958. // chainlink fencing material
  959.  
  960. "chainlink"
  961. {
  962. "thickness" "0.5"
  963. "density" "1600"
  964. "elasticity" "0.25"
  965. "friction" "0.8"
  966. "stepleft" "ChainLink.StepLeft"
  967. "stepright" "ChainLink.StepRight"
  968. "impacthard" "ChainLink.ImpactHard"
  969. "impactsoft" "ChainLink.ImpactSoft"
  970. "scraperough" "ChainLink.ScrapeRough"
  971. "scrapesmooth" "ChainLink.ScrapeSmooth"
  972. "bulletimpact" "ChainLink.BulletImpact"
  973. "gamematerial" "I"
  974. }
  975.  
  976. // metal chain
  977.  
  978. "chain"
  979. {
  980. "base" "chainlink"
  981. "impacthard" "ChainLink.ImpactHard"
  982. "impactsoft" "ChainLink.ImpactSoft"
  983. "scraperough" "ChainLink.ScrapeRough"
  984. "scrapesmooth" "ChainLink.ScrapeSmooth"
  985. "bulletimpact" "ChainLink.BulletImpact"
  986. "gamematerial" "I"
  987. }
  988.  
  989. // medium sized body
  990.  
  991. "flesh"
  992. {
  993. "density" "900"
  994.  
  995. "stepleft" "Flesh.StepLeft"
  996. "stepright" "Flesh.StepRight"
  997. "bulletimpact" "Flesh.BulletImpact"
  998. "impacthard" "Flesh.ImpactHard"
  999. "impactsoft" "Flesh.ImpactSoft"
  1000. "scraperough" "Flesh.ScrapeRough"
  1001. "scrapesmooth" "Flesh.ScrapeSmooth"
  1002.  
  1003. // "strain" "Flesh.Strain"
  1004. "break" "Flesh.Break"
  1005.  
  1006. "audiohardnessfactor" "0.25"
  1007. "audioHardMinVelocity" "500"
  1008. "audioroughnessfactor" "0.1"
  1009.  
  1010. "gamematerial" "I"
  1011. }
  1012.  
  1013. // gibs
  1014.  
  1015. "bloodyflesh"
  1016. {
  1017. "base" "flesh"
  1018.  
  1019. "impacthard" "Flesh_Bloody.ImpactHard"
  1020.  
  1021. "gamematerial" "I"
  1022. }
  1023.  
  1024. "alienflesh"
  1025. {
  1026. "base" "flesh"
  1027.  
  1028. "gamematerial" "I"
  1029. }
  1030.  
  1031.  
  1032. // Flesh for physics, metal for bullet fx
  1033. "armorflesh"
  1034. {
  1035. "base" "flesh"
  1036. "bulletimpact" "ArmorFlesh.BulletImpact"
  1037.  
  1038. "audiohardnessfactor" "1.0"
  1039. "audioroughnessfactor" "0.1"
  1040.  
  1041. "gamematerial" "I"
  1042. }
  1043.  
  1044. "watermelon"
  1045. {
  1046. "density" "900"
  1047. "bulletimpact" "Watermelon.BulletImpact"
  1048. "impacthard" "Watermelon.Impact"
  1049. "scraperough" "Watermelon.Scrape"
  1050.  
  1051. "audiohardnessfactor" "0.25"
  1052. "audioroughnessfactor" "0.1"
  1053.  
  1054. "gamematerial" "I"
  1055. }
  1056.  
  1057. "snow"
  1058. {
  1059. "base" "dirt"
  1060. "density" "800"
  1061. "friction" "0.35"
  1062.  
  1063. "audiohardnessfactor" "0.25"
  1064. }
  1065.  
  1066. "ice"
  1067. {
  1068. "density" "917"
  1069. "friction" "0.1"
  1070. "elasticity" "0.1"
  1071.  
  1072. "audioroughnessfactor" "0.1"
  1073. }"water"
  1074. {
  1075. "density" "1000"
  1076. "elasticity" "0.1"
  1077. "friction" "0.8"
  1078.  
  1079. "stepleft" "Water.StepLeft"
  1080. "stepright" "Water.StepRight"
  1081. "bulletimpact" "Water.BulletImpact"
  1082.  
  1083. "audioreflectivity" "0.33"
  1084. "audioroughnessfactor" "0.1"
  1085. "audiohardnessfactor" "0.0"
  1086.  
  1087. "gamematerial" "I"
  1088. }
  1089.  
  1090. "slime"
  1091. {
  1092. "density" "2000"
  1093. "elasticity" "0.1"
  1094. "friction" "0.9"
  1095. "dampening" "200.0"
  1096.  
  1097. "stepleft" "Mud.StepLeft"
  1098. "stepright" "Mud.StepRight"
  1099. "bulletimpact" "Water.BulletImpact"
  1100.  
  1101. "gamematerial" "I"
  1102.  
  1103. "audioreflectivity" "0.33"
  1104. "audiohardnessfactor" "0.0"
  1105. "audioroughnessfactor" "0.1"
  1106. }
  1107.  
  1108. "quicksand"
  1109. {
  1110. "density" "600"
  1111. "elasticity" "2.0"
  1112.  
  1113. "audioreflectivity" "0.33"
  1114. "audiohardnessfactor" "0.0"
  1115. "audioroughnessfactor" "1.0"
  1116. // ----------------------------------------------------------------------------
  1117. // Graphical
  1118. // ----------------------------------------------------------------------------
  1119. // Now we come to the main brunt of the config. You probably don't want to mess
  1120. // with this.
  1121. // ----------------------------------------------------------------------------
  1122. cl_hud_playerclass_use_playermodel 0 // adds another hud element -3% frames
  1123. cl_detaildist 0
  1124. cl_detailfade 0
  1125. cl_drawmonitors 0
  1126. cl_ejectbrass 0
  1127. cl_jiggle_bone_framerate_cutoff 0 // Turns off jigglebones
  1128. cl_new_impact_effects 0
  1129. cl_show_splashes 0
  1130. func_break_max_pieces 0
  1131. lod_transitiondist 0
  1132. mat_antialias 0
  1133. mat_colcorrection_disableentities 0
  1134. mat_colorcorrection 0
  1135. mat_disable_bloom 1
  1136. mat_disable_fancy_blending 1
  1137. mat_disable_lightwarp 1
  1138. mat_envmapsize 8
  1139. mat_envmaptgasize 8
  1140. mat_filterlightmaps 1
  1141. mat_filtertextures 1
  1142. mat_forceaniso 0
  1143. mat_hdr_level 0
  1144. mat_max_worldmesh_vertices 512
  1145. mat_motion_blur_enabled 0
  1146. mat_parallaxmap 0
  1147. mat_picmip 2 // Higher = more mipmapping. Without `sv_cheats 1', you're looking
  1148. // at a range from -1 to 2, -1 being the best quality, 2 being the
  1149. // worst. - Doesn't really matter much what you set this too if you're cpu bound
  1150. mat_reducefillrate 1
  1151. mat_reduceparticles 1
  1152. mat_trilinear 0
  1153. mat_viewportscale 1 // Almost no performance gain from viewport upscaling.
  1154. mat_viewportupscale 1
  1155. mat_wateroverlaysize 1
  1156. mp_decals 9 // - Just keep this below 60ish and you shouldn't notice much different at all maybe .5 average fps for every 30-40 decals
  1157. r_3dsky 0
  1158. r_ambientboost 0
  1159. r_ambientfactor 0
  1160. r_ambientmin 0
  1161. r_avglight 0
  1162. r_cheapwaterend 1
  1163. r_cheapwaterstart 1
  1164. r_decals 9
  1165. r_maxmodeldecal 9
  1166. r_decalstaticprops 0
  1167. r_decal_cullsize 15
  1168. r_drawdetailprops 0
  1169. r_drawmodeldecals 0
  1170. r_drawflecks 0
  1171. r_dynamic 0
  1172. r_flashlightdepthtexture 0
  1173. r_forcewaterleaf 1
  1174. r_lightaverage 0
  1175. r_maxnewsamples 0
  1176. r_maxsampledist 1
  1177. r_occlusion 0 // disables ambient occlusion. 2% FPS boost
  1178. r_propsmaxdist 0
  1179. r_renderoverlayfragment 0
  1180. r_staticprop_lod 4
  1181. r_waterdrawreflection 0
  1182. r_waterdrawrefraction 1
  1183. r_waterforceexpensive 0
  1184. r_waterforcereflectentities 0
  1185. rope_averagelight 0
  1186. rope_collide 0
  1187. rope_rendersolid 0
  1188. rope_shake 0
  1189. rope_smooth 0
  1190. rope_subdiv 0
  1191. rope_wind_dist 0
  1192. tf_particles_disable_weather 1 // Disable weather effects on maps supporting
  1193. // it, for example, setting this to `1'
  1194. // disables rain effects on *_sawmill.
  1195. tracer_extra 0
  1196. violence_ablood 1 // framerates on -most- pcs are higher with these on
  1197. violence_hblood 1
  1198. mat_phong 0F
  1199. tracer_extra 0
  1200. violence_ablood 0
  1201. violence_hblood 0
  1202. r_3dsky 0
  1203. r_ambientboost 0
  1204. r_ambientfactor 0
  1205. r_ambientmin 0
  1206. r_avglight 0
  1207. r_cheapwaterend 1
  1208. r_cheapwaterstart 1
  1209. r_decals 9
  1210. r_decalstaticprops 0
  1211. r_decal_cullsize 15
  1212. r_drawdetailprops 0
  1213. r_drawmodeldecals 0
  1214. r_drawflecks 0
  1215. r_dynamic 0
  1216. r_flashlightdepthtexture 0
  1217. r_forcewaterleaf 1
  1218. r_lightaverage 0
  1219. r_maxnewsamples 2
  1220. r_maxsampledist 1
  1221. r_propsmaxdist 0
  1222. r_renderoverlayfragment 0
  1223. r_staticprop_lod 4
  1224. r_waterdrawreflection 0
  1225. r_waterdrawrefraction 1
  1226. r_waterforceexpensive 0
  1227. r_waterforcereflectentities 0
  1228. rope_averagelight 0
  1229. rope_collide 0
  1230. rope_rendersolid 0
  1231. rope_shake 0
  1232. rope_smooth 0
  1233. rope_subdiv 0
  1234. rope_wind_dist 0
  1235. // ----------------------------------------------------------------------------
  1236. // Print to console
  1237. // ----------------------------------------------------------------------------
  1238. echo "---------------------------------------------------------"
  1239. echo "Comanglia' frames config loaded. Inspired by Chris config"
  1240. echo "---------------------------------------------------------"
  1241. // Prism Settings (for refract)
  1242.  
  1243. mat_motion_blur_enabled 1 //afaik the only sure-fire way to keep refract masking on
  1244. mat_motion_blur_strength 0 //effectively disables motion blur, personal choice + motion blur gets masked and looks bad with refract masking
  1245. mat_disable_bloom 1 //disables bloom so refract masking doesn't create a dark rectangle over light materials
  1246. mat_hdr_level 0
  1247. mat_antialias 0
  1248. mat_colcorrection_disableentities 1
  1249. mat_colorcorrection 0
  1250. cl_updaterate 66
  1251. cl_pred_optimize 2
  1252. cl_smooth 0
  1253. cl_smoothtime 0.01
  1254. mat_software_aa_quality 0 // was 9
  1255. mat_software_aa_strength 0
  1256. mat_software_aa_strength_vgui -1
  1257. mat_software_aa_blur_one_pixel_lines 0
  1258. mat_software_aa_edge_threshold 9
  1259. mat_software_aa_tap_offset "1"
  1260. mat_phong 0 // Disables phonging on all models. Also achieved by enabling DX8. Disables lightwarps. Can make some models appear black.
  1261. cl_detaildist 0 // Distance at which the detailed parts of props are no longer visible (lower LODs)
  1262. cl_detailfade 0 // Distance across which detail props fade in
  1263. cl_drawmonitors 0 // Disables the rendering of in-game "monitors" which contain 3D rendered images. Mostly unused except maybe in some DR maps
  1264. cl_muzzleflash_dlight_1st 0 //
  1265. cl_jiggle_bone_framerate_cutoff 0 // Turns off jigglebones, although I recommend keeping them on at all times by setting them to 1, since their performance impact is generally none/negligible.
  1266. cl_new_impact_effects 0 // Disables new impact effects
  1267. cl_show_splashes 0 // Disables water splashes
  1268. func_break_max_pieces 0 // Undocumented, but probably the same as props_break_max_pieces
  1269. glow_outline_effect_enable 0 // Cart glow effect. Performance loss with this is generally negligible, however, so I recommend enabling it simply because of how useful it is.
  1270. lod_transitiondist 0 // Sets how far you have to be from someone to make them go to their next LOD. Setting this to 0 forces the lowest LOD.
  1271. mat_antialias 0 // Sets lowest antialiasing value.
  1272. mat_bumpmap 0 // Controls bumpmapping. Apparently it has a weird shine effect if used on dx9, but I'm not seeing it. Set to 1 if you experience it.
  1273. mat_colcorrection_disableentities 0 // Disables color-correcting entities.
  1274. mat_colorcorrection 0 // Disables color-correction.
  1275. mat_disable_bloom 1 // Disables the bloom effect that allows light to reflect off of a surface, and the HDR effect.
  1276. mat_disable_fancy_blending 1 // Disables fancy texture blending.
  1277. mat_disable_lightwarp 1 // Disables lightwarps, which partially determine shading for players, entities, and the map. mat_phong also does this.
  1278. mat_envmapsize 8 // Changes envmap size.
  1279. mat_envmaptgasize 8 // Messes around with size of sprayed textures
  1280. mat_disable_ps_patch 1 //
  1281. mat_filterlightmaps 1 // Filters lightmaps.
  1282. mat_filtertextures 1 // Filters textures.
  1283. mat_forceaniso 0 // Forces anisotropic filtering level
  1284. mat_hdr_level 0 // Sets HDR level.
  1285. mat_max_worldmesh_vertices 64 // Not even going to try to guess, sorry. :(
  1286. mat_monitorgamma 2.0 // Controls brightness, try 1.8 to make it brighter or 2.2 to get it darker. Only works in fullscreen.
  1287. mat_motion_blur_enabled 0 // Disables motion blur.
  1288. mat_parallaxmap 0 // Disables parallax mapping.
  1289. mat_mipmaptextures 1 // Control mipmapping
  1290. mat_reducefillrate 1 // Reduces the fillrate when the game is run in DX8.
  1291. mat_reduceparticles 1 // Reduces particle count.
  1292. mat_softwarelighting 0 // Disables rendering of lights by the software.
  1293. mat_autoexposure_max 0 //
  1294. mat_autoexposure_min 0 //
  1295. mat_alphacoverage 0 //
  1296. mat_diffuse 1 //
  1297. mat_non_hdr_bloom_scalefactor 0 //
  1298. mat_bloomscale 0 // More assurance that bloom stays off
  1299. mat_bloom_scalefactor_scalar 0 //
  1300. 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.
  1301. mat_fastspecular 1 // Fast specularity.
  1302. mat_fastnobump 0 //
  1303. mat_forcemanagedtextureintohardware 0
  1304. mat_framebuffercopyoverlaysize 0 //
  1305. mat_trilinear 0 // Sets trlinear mode.
  1306. mat_viewportscale 1 // Almost no performance gain from viewport upscaling.
  1307. mat_viewportupscale 1 //
  1308. mat_wateroverlaysize 1 // Water overlay size.
  1309. mp_decals 9 // `9' is a good value to still see the spread pattern from a scattergun without any real performance loss. Needs to be changed with r_decals.
  1310. r_3dsky 0 // Disables 3D skies. This makes maps like koth_wubwubwub much, much less spectacular, so you need to compromise.
  1311. //r_3dnow 0 // Disables 3DNow, but it doesn't take arguments in TF2
  1312. r_ambientboost 0 // Controls ambient lights
  1313. r_ambientfactor 0 // Controls ambient lights
  1314. r_ambientmin 0 // Controls ambient lights
  1315. r_avglight 0 // Controls average lighting on objects
  1316. r_cheapwaterend 1 // Activates cheap water
  1317. r_cheapwaterstart 1 // Activates cheap water
  1318. r_decals 9 // Controls decal amount. Needs to be changed with mp_decals.
  1319. r_maxmodeldecal 9 // Controls how many decals can be on a model at once
  1320. r_decalstaticprops 0 // Enables whether decals can be seen on props.
  1321. r_decal_cullsize 15 // Controls the cull size of decals.
  1322. r_drawdetailprops 0 // Controls whether details on props should be drawn at all.
  1323. r_drawmodeldecals 0 // Controls whether decals should be seeable on a model.
  1324. r_drawflecks 0 // Controls whether particles upon hitting a surface with a bullet should be rendered.
  1325. r_dynamic 0 // Disables dynamic lighting.
  1326. r_maxdlights 0 // Determines the maximum number of dynamic lights visible on the screen.
  1327. r_physpropstaticlighting 0 // Dtermines if there should be static lighting on props
  1328. r_occlusion 0 // Disables ambient occlusion
  1329. r_worldlights 1 // Number of world lights to use per vertex. Set to 0 for a theoretical performance gain but very bad lighting effects on characters.
  1330. r_flashlightdepthtexture 0 // Specifies how detailed the flashlight light should be. Useless in TF2.
  1331. r_forcewaterleaf 1 // Optimization to water - considers view in leaf under water for purposes of culling.
  1332. r_lightaverage 0 // Disables average lighting.
  1333. r_dopixelvisibility 0 //
  1334. r_maxnewsamples 0 // Undocumented.
  1335. r_maxsampledist 1 // Undocumented.
  1336. r_sse2 1 //
  1337. r_propsmaxdist 0 // Max visible distance for props.
  1338. r_renderoverlayfragment 0 // Leaves a marking underneath health kits and ammo kits.
  1339. r_staticprop_lod 10 // Sets the default LOD for static props. Undocumented, so I don't know the limit, but 10 is a good number.
  1340. r_waterdrawreflection 0 // Controls as to whether reflections should be drawn on the surface of water.
  1341. r_waterdrawrefraction 1 // Setting to 0 makes it so that water looks weird and you can't look into it, but it might have an FPS gain.
  1342. r_waterforceexpensive 0 // Forces expensive water.
  1343. r_waterforcereflectentities 0 // Forces as to whether entities should be reflected into water even if r_waterdrawreflection is 0.
  1344. rope_averagelight 0 // Makes ropes use average of cubemap lighting instead of max intensity.
  1345. rope_collide 0 // Collide rope with the world.
  1346. rope_rendersolid 1 // Changes rope visibility. Set to 1 since ropes will be used a lot more with Mannpower. Disable for a boost.
  1347. rope_shake 0 // Controls whether ropes should shake as if there's wind.
  1348. rope_smooth 0 // Controls as to whether there should be an antialiasing effect on ropes.
  1349. rope_subdiv 0 // Rope subdivision amount.
  1350. rope_wind_dist 0 // If a rope is this far away, don't simulate wind on them.
  1351. tf_particles_disable_weather 1 // Disable weather effects on maps supporting it. For example, setting this to `1' disables rain effects on *_sawmill.
  1352. tracer_extra 0 // Undocumented.
  1353. violence_ablood 1 // Setting ablood/hblood to 1 actually improves perf usually
  1354. violence_hblood 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement