Advertisement
Vanilla_Mi

TF2 Essentials, netcode & optimization

Dec 25th, 2013
1,829
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.38 KB | None | 0 0
  1. //------------------------------------------------
  2. // What this pastebin is
  3. //------------------------------------------------
  4.  
  5. //This is a QUAD CORE optimization config that touches TF2's internal values rather than graphical values. It will fix bad/delayed hitreg and sluggish feedback with essential and useful commands in TF2 (as, in my opinion, the game should have been released for PC). VALVe has clogged the performance of the game with "artificial" delay and other terrible default values for unknown reasons - I guess they couldnt ship the console version with 66 update/commandrate since they cant handle 66fps, for example.
  6.  
  7. //It will optimize TF2 with net setting + hardware settings without touching anything graphical. At the bottom youll find a list of useful game commands that doesnt change performance but changes the way you see the game.
  8.  
  9. //This config will touch three graphical options - all the others are purely for optimizing the default values. Those three options are weather effects, anti-aliasing & motion blur.
  10.  
  11. //AA and blur is resource heavy and is prone to causing input lag even on high end systems. Weather effects (rain) add nothing to the game while chewing up a nice bunch of frames. If you want to enable them, theres info down there on how to do that.
  12.  
  13. //Read the comments for more information. Google if you need more documentation.
  14.  
  15. //---------------
  16. // Important info
  17. //---------------
  18.  
  19. //m_rawinput is set to 1 which will cause the sensitivity to feel a bit different if youre using 0 (default) because its reading mouse data more accurately (from the sensor rather than Windows), adjust the sens if you need.
  20.  
  21. //snd_mixahead is set to 0.05 which will lower the audio buffer (standard value 0.1). The smaller the buffer, the lesser the delay. Puts a little bit of stress on your CPU but is worth it as you will hear sounds / audio with half the delay. Might cause crackling noises while you're alt-tabbed. If your CPU can't handle it or if you have constant audio issues revert back to the standard value or try a middle-ground like 0.07.
  22.  
  23. //YOU NEED AT LEAST 66 FRAMES PER SECOND OR 66UPDATERATE/CMDRATE WILL MAKE YOU RUBBERBAND LIKE CRAZY. This is not a config for low-end computers that struggle with maintaining a playable framerate.
  24.  
  25. //(Some of the commands in here have been patched out).
  26.  
  27. //------------
  28. // How to use
  29. //------------
  30.  
  31. //If you've used autoexec before / already have one put this inside it, if else;
  32.  
  33. //1. Locate the TF2 config dir @ Steam\steamapps\common\Team Fortress 2\tf\cfg
  34. //2. Make a copy of any .cfg file
  35. //3. Open the copy with a text editor of your choice and delete all text in there. You now have a fresh .cfg file
  36. //4. Insert this whole pastebin in there. Rename the .cfg file to "autoexec" without quotes.
  37.  
  38. //Settings saved within the autoexec will automatically be executed upon launch.
  39. //Note that the game can modify the "config.cfg"-file, but it can never change anything in the autoexec
  40.  
  41. //If youre using HLDJ, autoexec will probably(?) already exist.
  42. //Dont overwrite/delete what hldj put in there, increment at the bottom instead.
  43.  
  44.  
  45. //--------------------------------------------------------------------------------------------------------------
  46. // Net settings.
  47. // The great debate here is what interp and rate and what not to use.
  48. // Interp is the time it takes for a packet to be translated in your game client.
  49. // It is 15.2ms on updaterate 66 between each packet.
  50. // If you lower the updaterate the time between each packet will increase,
  51. // and you then need to change cl_interp if you use interpolation via cl_interp (any value not set to 0).
  52. // cl_interp_ratio always checks your updaterate and sets the interp after that.
  53. // With cl_interp_ratio 0 you have 0ms of interp (bad).
  54. // With cl_interp_ratio 1 you have 15.2 (good).
  55. // With cl_interp_ratio 2 you have 30.3 (good).
  56. // It is not possible to have 0ms, the lag compensation think you have 0ms interp,
  57. // while the server calculates your interp as the lowest possible (15.2ms on 66tick).
  58. // This will not turn lag compensation off(which is really bad), but it will be desynched(also bad).
  59. // TLDR; there is no "magic" value.
  60. // (I got sick killing spree with cl_interp 0.043 once therefore it makes me hit more shots).
  61. // Youre better off adjusting interp with cl_interp_ratio 1/2 than changing cl_interp and updaterate.
  62. //
  63. // If you get packet losses due to a bad connection:
  64. // Set cl_interp_ratio to 2
  65. // Lower the rate to 40000
  66. // Lower cl_updaterate to 40
  67. // Lower cl_cmdrate to 40
  68. //--------------------------------------------------------------------------------------------------------------
  69.  
  70. cl_cmdrate 66
  71. //200 / 3 = 66.7777 ~66 some people insist on using 67 for some reason
  72. cl_interp 0
  73. cl_interp_ratio 1.1
  74. cl_lagcompensation 1
  75. cl_predict 1
  76. cl_predictweapons 1
  77. cl_pred_optimize 2
  78. cl_smooth 0
  79. cl_smoothtime 0.01
  80. cl_updaterate 66
  81. rate 90000
  82. net_maxcleartime 0.01
  83.  
  84. mat_antialias 1
  85. //Anti-aliasing has a tendency of causing input lag.
  86. //1 = off
  87. //2 = 2
  88. //4 = 4 etc etc
  89. //Recommended setting would be to turn it off. If you cant stand jaggies, use a low sample rate until you feel comfortable.
  90.  
  91. mat_motion_blur_enabled 0
  92. mat_motion_blur_strength 0
  93. mat_motion_blur_forward_enabled 0
  94. //Motion blur has a tendency of causing input lag. Not as system heavy as AA. Default values are "1".
  95.  
  96. tf_particles_disable_weather 1
  97. //Disables weather effects. Default value is "0". Rain eats up a good amount of frame rate and adds nothing.
  98.  
  99. cl_forcepreload 1
  100. //Longer map loading time with the benefit of no micro-stuttering due to loading the whole map instead of on-the-go.
  101.  
  102. mat_forcehardwaresync 0
  103. //Prevents drivers from overwriting certain settings.
  104.  
  105. mat_forcemanagedtextureintohardware 0
  106. //Lets the GPU take stress from the CPU in certain areas.
  107.  
  108. mat_maxframelatency 0
  109. //Still doing in-depth research about max frame latency. Pretty sure its an "fps_max" but for frame latency (which is more accurate than frames per second, btw).
  110.  
  111. mat_vsync 0
  112. //Vsync should never be enabled.
  113.  
  114. mat_queue_mode 2
  115. //Forced multithreading which should be auto-detected, but just in case. If you experience crashes, change mat_queue_mode to -1 (legacy default) instead of 2 (forced multithreading). Crashes related to this should be fixed however (including playing demos with mat_queue_mode 2).
  116.  
  117. cl_threaded_bone_setup 1
  118. //WARNING if you don't have a Quad-Core CPU or better you SHOULD NOT LEAVE THIS ON.
  119.  
  120. snd_mixahead 0.05
  121. //Controls the audio buffer. The smaller the buffer, the lesser the delay. Impacts performance very little.
  122.  
  123. fps_max 900
  124. //Source has this bug where everything stutters if you go above 1k FPS and it feels as if youre rubberbanding. It is completley possible to achieve 1k FPS in empty rooms so the cap is there to prevent it just in case.
  125.  
  126. cl_showfps 0
  127. //Having this enabled actually makes the performance worse.
  128.  
  129. m_rawinput 1
  130. //Reads data directly from the mouse rather than windows. Prevents the little windows>game latency, plus its more accurate.
  131.  
  132. fov_desired 90
  133. //fov_desired controls the field of view. It's all personal preference but 90 keeps it classy. The default fov (70) is simply too narrow. For a more in-depth explanation, the guys at FZDSCHOOL breaks it down and covers how it works.
  134. //www.youtube.com/watch?v=blZUao2jTGA
  135.  
  136. viewmodel_fov 70
  137. //Controls the viewmodels fov (the gun the hands "hold" in the bottom right of the screen). The larger fov the smaller the gun is. Default value is 56, if you think 70 is too small / weird.
  138.  
  139. cl_autoreload 1
  140. //Was enabled by default in a 2015 patch, but just in case. The spy doesn't break his arm while reloading anymore.
  141.  
  142. tf_medigun_autoheal 1
  143. //Keeps the medi-beam in the healing target without the need of holding down mouse1.
  144.  
  145. hud_medicautocallers 1
  146. //Enables auto-medic callouts where team mates under a set % of their base health value displays medic-icons on them.
  147.  
  148. hud_medicautocallersthreshold 50
  149. //When team mates are under 50% of their base health they automatically call for medic on your screen. Value can be set between 0-150.
  150.  
  151. tf_colorblindassist 1
  152. //Displays status effects above peoples heads, such as jarate and milk, for example. Does not change any in-game colours.
  153.  
  154. cl_localnetworkbackdoor 1
  155. //Network optimizations for Singleplayer, disabling has about a 1-2% fps boost.
  156.  
  157. cl_cloud_settings 0
  158. //I believe this disables cloud syncing of CFGs but not 100% sure.
  159.  
  160. sys_minidumpspewlines 500
  161. //Basically the number of lines saved to a log file from console. No FPS boost but 15% lower FPS variance.
  162.  
  163. cl_loadondemand_default 0
  164. //Optimized model loading.
  165.  
  166. ai_expression_optimization 1
  167. //Doesn't render facial expression if not in view distance or sight.
  168.  
  169. mod_load_anims_async 1
  170. //Loads model animations async.
  171.  
  172. mod_load_mesh_async 1
  173. //Load model mesh async.
  174.  
  175. mod_load_vcollide_async 1
  176. //Load model vcollide async.
  177.  
  178. r_drawtracers_firstperson 0
  179. //Should give a small fps boost in 1st person
  180.  
  181. r_fastzreject -1
  182. //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.
  183.  
  184. tf_hud_target_id_disable_floating_health 1
  185. //No. Just no.
  186. in_usekeyboardsampletime 0
  187. mat_levelflush 1
  188.  
  189. tf_scoreboard_ping_as_text 1
  190. net_queue_trace 0
  191.  
  192. cl_hud_playerclass_use_playermodel 0
  193. //Removes the player portrait on the hud
  194.  
  195. //http://pastebin.com/Y0L5iV6h
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement