diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fdd5c4a --- /dev/null +++ b/.gitignore @@ -0,0 +1,15 @@ + +*.txt +server_* +360controller-linux.cfg +360controller.cfg +chapter1.cfg +chapter2.cfg +chapter3.cfg +sourcevr_tf.cfg +user.scr +undo360controller.cfg +sixense_bindings.cfg +replay_example.cfg +mtp.cfg +config_default.cfg diff --git a/autoexec.cfg b/autoexec.cfg new file mode 100644 index 0000000..ed15bb0 --- /dev/null +++ b/autoexec.cfg @@ -0,0 +1,10 @@ +//autoexec +//Made with cfg.tf - custom Team Fortress 2 config generator + +exec gfx +exec binds +exec settings +exec network +exec custom +exec boo3 +exec tweaks/scripts \ No newline at end of file diff --git a/binds.cfg b/binds.cfg new file mode 100644 index 0000000..56d02b2 --- /dev/null +++ b/binds.cfg @@ -0,0 +1,71 @@ +//stock non class-specific binds +//Made with cfg.tf - custom Team Fortress 2 config generator +unbindall +// Reset viewmodel +r_drawviewmodel 1 +//Add binds +bind w +forward +bind a +moveleft +bind s +back +bind d +moveright +bind mouse1 +attack +bind mouse2 +attack2 +bind mouse4 +attack3 +bind mwheelup invprev +bind mwheeldown invnext +bind 0 slot10 +bind 1 slot1 +bind 2 slot2 +bind 3 slot3 +bind 4 slot4 +bind 5 slot5 +bind 6 slot6 +bind 7 slot7 +bind 8 slot8 +bind 9 slot9 +bind q lastinv +bind e "voicemenu 0 0" +bind u say_team +bind enter say +bind o taunt +bind z voice_menu_1 +bind x voice_menu_2 +bind c voice_menu_3 +bind / +voicerecord +bind , changeclass +bind . changeteam +bind m open_charinfo_direct +bind n +quickswitchmenu +bind space +jump +bind ctrl +duck +bind shift +duck +bind tab +showscores +bind escape cancelselect +bind j cl_trigger_first_notification +bind k cl_decline_first_notification +bind l dropitem +bind b lastdisguise +bind r +reload +bind f +inspect +bind k kill +bind 9 player_ready_toggle +bind g +taunt +bind h +use_action_slot_item +bind mouse4 +use_action_slot_item +//Switch Loadout +bind uparrow "load_itempreset 0" +bind leftarrow "load_itempreset 1" +bind rightarrow "load_itempreset 2" +bind downarrow "load_itempreset 3" +// Exec other settings +exec tweaks/tabgraph +exec tweaks/null +// tweaks/scripts binds +bind t toggleviewmoddel +// Voteing +// bind + "vote option1; v_yes" +// bind - "vote option2; v_no" +//bind kp_home next_map_vote 1 +//bind kp_uparrow next_map_vote 2 +//bind kp_pgup next_map_vote 3 + diff --git a/boo3.cfg b/boo3.cfg new file mode 100644 index 0000000..b586d22 --- /dev/null +++ b/boo3.cfg @@ -0,0 +1,2 @@ +//CustomConfig +mat_monitorgamma 0.01 diff --git a/config.cfg b/config.cfg new file mode 100644 index 0000000..7441836 --- /dev/null +++ b/config.cfg @@ -0,0 +1,178 @@ +cfgver "1" +unbindall +bind "0" "slot10" +bind "1" "slot1;viewmoddelstate" +bind "2" "slot2;viewmoddelstate" +bind "3" "slot3;viewmoddelstate_flipped" +bind "4" "slot4" +bind "5" "slot5" +bind "6" "slot6" +bind "7" "slot7" +bind "8" "slot8" +bind "9" "player_ready_toggle" +bind "a" "+nmov_moveleft" +bind "b" "lastdisguise" +bind "c" "voice_menu_3" +bind "d" "+nmov_moveright" +bind "e" "voicemenu 0 0" +bind "f" "+inspect" +bind "g" "+taunt" +bind "h" "+use_action_slot_item" +bind "j" "cl_trigger_first_notification" +bind "k" "kill" +bind "l" "dropitem" +bind "m" "open_charinfo_direct" +bind "n" "+quickswitchmenu" +bind "o" "taunt" +bind "q" "lastinv" +bind "r" "+reload" +bind "s" "+nmov_back" +bind "t" "toggleviewmoddel" +bind "u" "say_team" +bind "w" "+nmov_forward" +bind "x" "voice_menu_2" +bind "z" "voice_menu_1" +bind "`" "toggleconsole" +bind "," "changeclass" +bind "." "changeteam" +bind "/" "+voicerecord" +bind "-" "graphtoggle" +bind "ENTER" "say" +bind "SPACE" "+jump" +bind "TAB" "+tabgraph" +bind "ESCAPE" "cancelselect" +bind "SHIFT" "+duck" +bind "CTRL" "+duck" +bind "UPARROW" "load_itempreset 0" +bind "LEFTARROW" "load_itempreset 1" +bind "DOWNARROW" "load_itempreset 3" +bind "RIGHTARROW" "load_itempreset 2" +bind "MOUSE1" "+attack" +bind "MOUSE2" "+attack2" +bind "MOUSE4" "+use_action_slot_item" +bind "MWHEELUP" "invprev" +bind "MWHEELDOWN" "invnext" +tf_mm_custom_ping "93.269997" +tf_party_join_request_mode "1" +tf_use_min_viewmodels "1" +tf_medigun_autoheal "1" +hud_medicautocallers "1" +hud_medicautocallersthreshold "59" +hud_medichealtargetmarker "1" +tf_sniper_fullcharge_bell "1" +cl_interp_ratio "1" +cl_interp "0" +cl_showbackpackrarities "2" +tf_explanations_backpackpanel "1" +tf_backpack_page_button_delay "0.25" +cl_notifications_max_num_visible "1" +cl_notifications_move_time "0.1" +tf_time_loading_item_panels "0.0003" +tf_store_stamp_donation_add_timestamp "1727544583" +cl_spec_mode "5" +hud_achievement_count "4" +cl_chatfilters "59" +cl_chatfilter_version "1" +m_pitch "0.022000" +sensitivity "2.000000" +m_rawinput_onetime_reset "1" +cl_idealpitchscale "1.3" +sixense_sensitivity_level "2" +sixense_aim_freeaim_heading_multiplier "1.750000" +sixense_aim_freeaim_pitch_multiplier "1.750000" +sixense_aim_freeaim_dead_zone_radius "0.000000" +sixense_aim_freeaim_accel_band_size "15" +sixense_aim_freeaim_max_speed "12.000000" +sixense_aim_1to1_pitch_multiplier "3.000000" +sixense_feet_angles_offset_stick_spin_horiz_multiplier "7.500000" +sixense_feet_angles_offset_stick_spin_vert_multiplier "4.500000" +fov_desired "90" +viewmodel_fov_demo "75" +tf_hud_no_crosshair_on_scope_zoom "1" +cl_ask_favorite_opt_out "1" +cl_ask_blacklist_opt_out "1" +tf_halloween_bonus_ducks_cooldown "10" +tf_remember_activeweapon "1" +tf_remember_lastswitched "1" +sb_dontshow_maxplayer_warning "1" +tf_inspect_hint_count "11" +tf_mvm_tabs_discovered "3" +tf_coach_request_nevershowagain "1" +ds_kill_delay "15.000000" +ds_sound "on" +ds_notify "1" +hud_combattext_batching "1" +hud_combattext_batching_window "0.7" +hud_combattext_red "255.000000" +hud_combattext_green "1.000000" +hud_combattext_blue "1.000000" +tf_dingalingaling "1" +tf_dingaling_volume "1" +tf_dingaling_pitchmindmg "75" +tf_dingaling_pitchmaxdmg "195" +tf_dingalingaling_lasthit "1" +tf_dingaling_lasthit_volume "1" +tf_dingalingaling_effect "1" +cl_hud_killstreak_display_time "2.25" +cl_hud_killstreak_display_alpha "100" +tf_find_a_match_hint_viewed "1" +tf_training_has_prompted_for_training "1" +tf_training_has_prompted_for_offline_practice "1" +tf_training_has_prompted_for_forums "1" +tf_training_has_prompted_for_options "1" +tf_training_has_prompted_for_loadout "1" +cl_mainmenu_operation_motd_start "2018-09-28 19:40:25" +tf_last_store_pricesheet_version "29067" +cl_mvm_wave_status_visible_during_wave "1" +tf_simple_disguise_menu "0" +tf_hud_notification_show_count_kart_controls "3" +tf_hud_notification_show_count_ghost_controls "3" +tf_hud_notification_show_count_ghost_controls_no_respawn "3" +tf_hud_show_servertimelimit "1" +cl_hud_playerclass_playermodel_showed_confirm_dialog "1" +tf_explanations_charinfo_armory_panel "1" +tf_explanations_charinfopanel "1" +tf_show_preset_explanation_in_class_loadout "0" +tf_show_taunt_explanation_in_class_loadout "0" +tf_explanations_craftingpanel "1" +tf_quest_notification_line_delay "0.2" +tf_explanations_store "1" +tf_show_maps_details_explanation_count "0" +tf_mvm_classupgradehelpcount "2" +tf_scoreboard_ping_as_text "1" +tf_explanations_discardpanel "1" +tf_mm_dashboard_slide_panel_step "10" +tf_casual_welcome_hide "1" +tf_comp_welcome_hide "1" +tf_chat_popup_hold_time "2" +tf_quest_map_intro_viewed "1" +cl_training_completed_with_classes "511" +net_graphsolid "0" +viewmodel_fov "100" +mat_viewportscale "1" +mat_software_aa_strength "0.000000" +mat_software_aa_strength_vgui "1.000000" +hud_fastswitch "1" +sv_skyname "sky_trainyard_01" +snd_surround_speakers "2" +snd_musicvolume "0.380000" +snd_mixahead "0.066" +name "[NB] XTT-R1 UM" +password "D54hTt49KAfGiw" +bugreporter_uploadasync "1" +cl_logofile "materials/vgui/logos/spray.vtf" +rate "196608" +cl_cmdrate "66" +cl_updaterate "66" +sv_unlockedchapters "99" +mat_colorcorrection "1" +con_enable "1" +mp_decals "200.000000" +engine_no_focus_sleep "0" +r_rootlod "2" +mat_picmip "2" +mat_monitorgamma "1.600000" +mat_antialias "1" +r_waterforceexpensive "1" +mat_queue_mode "2" +mat_hdr_level "0" diff --git a/custom.cfg b/custom.cfg new file mode 100644 index 0000000..fd547b8 --- /dev/null +++ b/custom.cfg @@ -0,0 +1,11 @@ +//tweaks and custom settings +//Made with cfg.tf - custom Team Fortress 2 config generator + +exec tweaks/null +exec tweaks/confilter +exec tweaks/tabgraph +///--- + +//shameless promotion +echo "----- Thanks for using CFG.TF -----" +echo "----- Create your own custom config at https://cfg.tf -----" \ No newline at end of file diff --git a/demoman.cfg b/demoman.cfg new file mode 100644 index 0000000..d33cab7 --- /dev/null +++ b/demoman.cfg @@ -0,0 +1,6 @@ +//demoman settings +//Made with cfg.tf - custom Team Fortress 2 config generator +exec binds +bind "1" "slot1;viewmoddelstate" +bind "2" "slot2;viewmoddelstate" +bind "3" "slot3;viewmoddelstate_flipped" diff --git a/engineer.cfg b/engineer.cfg new file mode 100644 index 0000000..0adb6f2 --- /dev/null +++ b/engineer.cfg @@ -0,0 +1,34 @@ +//engineer settings +//Made with cfg.tf - custom Team Fortress 2 config generator + +exec binds +viewmoddelstate +// Scripts +alias sentry "destroy 2 0; build 2 0;" +alias dispenser "destroy 0 0; build 0 0;" +alias teleport_entrance "destroy 1 0; build 1 0;" +alias teleport_exit "destroy 1 1; build 1 1;" +// Eureka Teleport TBD + +//Keybinds +bind mouse3 sentry +bind mouse4 dispenser +bind = teleport_entrance +//bind mouse5 teleport_exit +bind "0" "eureka_teleport 0" +bind "-" "eureka_teleport 1" + +bind "1" "slot1;viewmoddelstate" +bind "2" "slot2;viewmoddelstate" +bind "3" "slot3;viewmoddelstate_flipped" +bind "4" "slot4;viewmoddelstate_flipped" +bind "5" "slot5;viewmoddelstate_flipped" + +bind uparrow "load_itempreset 0" +bind leftarrow "load_itempreset 1" +bind rightarrow "load_itempreset 2" +bind downarrow "load_itempreset 3" + +// Helloween +unbind mouse5 +bind mouse5 +use_action_slot_item diff --git a/gfx.cfg b/gfx.cfg new file mode 100644 index 0000000..c85fe30 --- /dev/null +++ b/gfx.cfg @@ -0,0 +1,1784 @@ +// ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ +// '~~~ mastercomfig TF2 config ~~~' +// --------------------------------- +// Version: 6.7.0 | April 27 2018 +// --------------------------------- +// ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ + +sv_cheats 1 // Prevent fog cvar spew in console on startup + +// ================= +// '--- Network ---' +// ================= +// --------------- +// '-- General --' +// --------------- +// Optimizes for better networking + +net_queued_packet_thread 1 // Queue split packets +net_maxpacketdrop 1000 // Use faster packet drop threshold +//net_maxpacketdrop 5000 // Use default packet drop threshold +net_splitrate 2 // Split 2 packets per frame, reduces choke with a bit of CPU + // usage +//net_splitrate 4 // Split 4 packets per frame, reduces choke but is more CPU + // intensive +//net_splitrate 1 // Do not split multiple packets for bad CPUs that cannot + // handle the extra load +cl_pred_optimize 2 // Reuse prediction data in case 1, as well as if the + // the server said our prediction data was within + // reasonable limits of its own data (case 2) +cl_lagcompensation 1 // Ensure lag compensation is turned on +cl_predictweapons 1 // Ensure weapon firing prediction is turned on +cl_smooth 1 // Smooth out prediction errors +//cl_smooth 0 // Skip view smoothing operation +cl_smoothtime 0.1 // Smooth out view for 100ms +hud_escort_interp 0.1 // Smooth out networked HUD updates over slightly less time + +// ----------------- +// '-- Snapshots --' +// ----------------- +// Tuning client-server communication and interpolation + +alias interp_congestion_unreliable "cl_interp 0.1" +alias interp_congestion_safe "cl_interp 0.0666666" +alias interp_congestion_balanced "cl_interp 0.0478260" +alias interp_congestion_lan "cl_interp 0.0333333" + +alias interp_standard_unreliable "cl_interp 0.0454545" +alias interp_standard_safe "cl_interp 0.0303030" +alias interp_standard_balanced "cl_interp 0.0217391" +alias interp_standard_lan "cl_interp 0.015151" + +//cl_cmdrate 66 // Send to server at this many times per second +//cl_updaterate 66 // Get from server at this many times per second + +alias packet_rate_congestion_aliases "alias interp_unreliable interp_congestion_unreliable; alias interp_safe interp_congestion_safe; alias interp_balanced interp_congestion_balanced; alias interp_lan interp_congestion_lan" +alias packet_rate_standard_aliases "alias interp_unreliable interp_standard_unreliable; alias interp_safe interp_standard_safe; alias interp_balanced interp_standard_balanced; alias interp_lan interp_standard_lan" + +alias packet_rate_congestion "cl_cmdrate 33; cl_updaterate 32;packet_rate_congestion_aliases;setinfo packet_rate congestion" +alias packet_rate_standard "cl_cmdrate 66; cl_updaterate 66;packet_rate_standard_aliases;setinfo packet_rate standard" + +setinfo packet_rate_congestion "" +setinfo packet_rate_standard "" + +alias packet_rate packet_rate_standard + +//cl_interp 0.0217391;cl_interp_ratio 1.4347827 // Use an interp timing that + // accounts for occasional + // snapshot interval drops +//cl_interp 0.030303;cl_interp_ratio 2 // Interpolate over 2 snapshots to avoid + // issues where one snapshot is dropped + // once in a while. Safest option for + // most users. +//cl_interp 0;cl_interp_ratio 1 // Reduce entity interpolation times to a + // minimum. Recommended only on LAN +//cl_interp 0.0454545;cl_interp_ratio 3 // Protect more against packet loss, + // increase further for more protection. + // For users with an unstable connection + +alias snapshots_unreliable "interp_unreliable;cl_interp_ratio 3;setinfo snapshots unreliable" +alias snapshots_safe "interp_safe;cl_interp_ratio 2;setinfo snapshots safe" +alias snapshots_balanced "interp_balanced;cl_interp_ratio 1.4347827;setinfo snapshots balanced" +alias snapshots_lan "interp_lan;cl_interp_ratio 1;setinfo snapshots lan" + +setinfo snapshots_unreliable "" +setinfo snapshots_safe "" +setinfo snapshots_balanced "" +setinfo snapshots_lan "" + +alias snapshots snapshots_balanced + +// ------------------- +// '-- Packet Size --' +// ------------------- +// How big packets are and how they are split up/compressed + +//net_compresspackets 1 // Compress packets to reduce network latency on fast + // CPUs +//net_compresspackets 0 // Disable packet compression on slow CPUs or very fast + // networks (~100Mbps up or higher) +//net_compresspackets_minsize 957 // Compress packets above max reliable packet + // size +//net_compresspackets_minsize 576 // Always compress packets to reduce network + // usage. Compression further than this may + // increase packet size +//net_maxroutable 1200;net_maxfragments 1200 // Balance between reliability and + // avoiding split packets +//net_maxroutable 956;net_maxfragments 956 // Use a reliable packet size for + // routers that have trouble with + // larger sizes +//net_maxroutable 1260;net_maxfragments 1260 // Use max allowable packet size to + // avoid split packets more in + // order to save CPU time and + // packet overhead + +alias packet_size_conservative "net_compresspackets 1;net_compresspackets_minsize 957;net_maxroutable 956;net_maxfragments 956;setinfo packet_size conservative" +alias packet_size_lowend "net_compresspackets 1;net_compresspackets_minsize 1261;net_maxroutable 1260;net_maxfragments 1260;setinfo packet_size lowend" +alias packet_size_minimal "net_compresspackets 1;net_compresspackets_minsize 577;net_maxroutable 1260;net_maxfragments 1260;setinfo packet_size minimal" +alias packet_size_balanced "net_compresspackets 1;net_compresspackets_minsize 957;net_maxroutable 1200;net_maxfragments 1200;setinfo packet_size balanced" +alias packet_size_large "net_compresspackets 0;net_maxroutable 1260;net_maxfragments 1260;setinfo packet_size large" + +setinfo packet_size_conservative "" +setinfo packet_size_lowend "" +setinfo packet_size_minimal "" +setinfo packet_size_balanced "" +setinfo packet_size_large "" + +alias packet_size packet_size_balanced + +// ------------------- +// '-- Upload Rate --' +// ------------------- +// Speed of packet sending, rate limited to prevent packet overflow +// Rate should be 60% of your stable upload speed in bytes per second + +rate 196608 // 1.57 Mbps default rate from CS:GO +net_splitpacket_maxrate 78643 +net_maxcleartime 0.0081889 + +// ------------- +// '-- Files --' +// ------------- +// Controls networked file handling + +net_maxfilesize 64 // Max out file upload size for extra content +//cl_downloadfilter all // Allow all server custom files +//cl_downloadfilter nosounds // Do not download sound files a server +//cl_downloadfilter mapsonly // Only downloads maps from server custom files +//cl_downloadfilter none // Do not download any files from a server +tf_steam_workshop_query_timeout 5 // Shorter timeout for workshop + +alias download_all "cl_downloadfilter all;setinfo download all" +alias download_nosounds "cl_downloadfilter nosounds;setinfo download nosounds" +alias download_mapsonly "cl_downloadfilter mapsonly;setinfo download mapsonly" +alias download_none "cl_downloadfilter none;setinfo download none" + +setinfo download_all "" +setinfo download_nosounds "" +setinfo download_mapsonly "" +setinfo download_none "" + +alias download download_all + +// ------------------- +// '-- Matchmaking --' +// ------------------- +// Adjusts casual/competitive matchmaking settings + +//tf_mm_custom_ping 100 // The ping tolerance for matchmaking +//tf_mm_custom_ping_enabled 1 // Enable custom ping tolerance +tf_mm_debug_level 0 // Remove matchmaking debug output +//tf_mm_partyclient_debug 1 // Enable party debug output +//tf_party_ignore_invites 1 // Ignore party invites +tf_party_join_request_mode 1 // Mode for party join requests: + // 0 - open join + // 1 - request join + // 2 - invite join +//tf_party_force_update // Force an update to the party system +//tf_party_keep_on_same_team 0 // Do not enforce parties being on the same team +//tf_datacenter_ping_debug 1 // Turn on debugging for server routing +//tf_datacenter_ping_dump // Dump server routing debug info +//tf_mm_dump_match_invites // Show current match invites + +// --------------------- +// '-- Local Servers --' +// --------------------- +// Optimizes local server networking + +cl_localnetworkbackdoor 1 // Network optimizations for local servers +net_usesocketsforloopback 0 // Skip using network sockets for local servers +sv_parallel_sendsnapshot 1 // Send snapshots to clients in parallel + +// =================== +// '--- Rendering ---' +// =================== +// ----------------- +// '-- Threading --' +// ----------------- +// These settings will take advantage of CPU multi-threading + +r_threaded_particles 1 // Process particle systems in parallel +mat_queue_mode 2 // Force multithreaded mode for the material system queue +//mat_queue_mode 1 // Force queued single threaded mode for CPUs with less than + // 4 threads +studio_queue_mode 1 // Use queue calls for studio renders +host_thread_mode 1 // Use the threaded frame behavior if applicable (use 2 to force) + +// ----------------------------- +// '-- Material System Queue --' +// ----------------------------- +// These settings will take advantage of the material system, depending on how mat_queue_mode is set + +r_queued_decals 0 // Disabled by default due to crashes +//r_queued_decals 1 // Offload decal draws to the material system +r_queued_post_processing 0 // Disabled by default because it usually fails to + // render the post processing effects in time for the + // frame render, resulting in a missing texture +//r_queued_post_processing 1 // Offloads post processing to the material system + // Performance improvement if your driver/GPU works + // with it +r_queued_ropes 1 // Queue some rope rendering using the material system + +// ----------- +// '-- LOD --' +// ----------- +// Controls the quality of objects based on distance + +//r_rootlod 1 // Limits how high the model LOD can be, does not offload rendering to CPU like many people + // believe. Set to 1 for the best balance between model quality and performance. +//r_rootlod 2 // Maximum performance for models +//r_rootlod 0 // Maximum quality for models +//r_lod -1 // Use r_rootlod to properly fade through LODs +//r_lod 0 // Always use the highest LOD possible +//lod_TransitionDist -5000 // Fade map objects over a long distance to reduce + // pop in and clutter while still increasing + // performance +//lod_TransitionDist -1 // Do not fade in map objects for maximum performance +//lod_TransitionDist -5001 // Fade map objects across a shorter distance to + // slightly reduce pop in while still increasing + // performance +//lod_TransitionDist 800 // Start fading map objects only when they are very far away, decreases + // performance but has the least pop in +mat_max_worldmesh_vertices 65536 // Use maximum mesh vertices to reduce mesh + // count +//mat_max_worldmesh_vertices 1024 // Reduce invididual mesh complexity for weak + // GPUs + +alias lod_very_low "r_rootlod 2; r_lod -1; lod_TransitionDist -1;setinfo lod very_low" +alias lod_low "r_rootlod 2; r_lod -1; lod_TransitionDist -5001;setinfo lod low" +alias lod_medium "r_rootlod 2; r_lod -1; lod_TransitionDist -5000;setinfo lod medium" +alias lod_medium_high "r_rootlod 1; r_lod -1; lod_TransitionDist -5000;setinfo lod medium_high" +alias lod_high "r_rootlod 0; r_lod -1; lod_TransitionDist 800; setinfo lod high" +alias lod_ultra "r_rootlod 0; r_lod 0; lod_TransitionDist 800;setinfo lod ultra" + +setinfo lod_very_low "" +setinfo lod_low "" +setinfo lod_medium "" +setinfo lod_medium_high "" +setinfo lod_high "" +setinfo lod_ultra "" + +// ---------------- +// '-- Lighting --' +// ---------------- +// Lights projected onto characters and other dynamic models + +//r_ambientboost 1 // Boosts reflected light, gives you vision advantage, + // especially in darker environments +//r_ambientboost 0 // Disable to save the small amount of CPU this uses +//r_ambientmin 0.5 // Allow for ambient boosting even in brighter light levels, makes characters stand out +//r_ambientmin 0.3 // Use TF2 default ambient boost threshold +//r_ambientmin 0.1 // Ambient boost less often, realistic darkness +//r_ambientmin 1.1 // Ambient boost every time +//r_rimlight 1 // Rimlighting is a distinct design choice in TF2 for better visibility of classes +//r_rimlight 0 // Disable light around character edges, very small FPS increase, rimlight uses GPU only +//mat_phong 1 // Use a phong shader for shading/reflection +//mat_phong 0 // Disable phong for flatter shading +//r_lightaverage 0 // Disable this lighting job that uses a lot of CPU even if it is not needed/noticeable +//r_lightaverage 1 // Enable time averaging of lighting to reduce popping +//r_dynamic 0 // Disable dynamic lighting (muzzle flash lighting, explosions and other lighted effects) +//r_dynamic 1 // Enable dynamic lighting +//r_maxdlights 0 // Do not allow any dynamic lights +//r_maxdlights 9 // Reduce maximum dynamic lights +//r_maxdlights 32 // Use the maximum number of dynamic lights +//r_worldlightmin 0.004 // Do not render insignificant world lighting +//r_worldlightmin 10 // Reject all world lighting +//r_worldlightmin 0.1 // Reject a lot of minor world lighting +//r_worldlightmin 0.0002 // Render practically all world lighting +//r_worldlightmin 0 // Render all world lighting, no matter how insignificant it may be +//r_worldlights 0 // Disable world lights +//r_worldlights 2 // Reduce maximum lights applied to a vertex +//r_worldlights 4 // Use the maximum amount of world lights +//mat_disable_lightwarp 1 // Disable light warps +//mat_disable_lightwarp 0 // Enable light warps +//mat_filterlightmaps 1 // Filter lightmaps +//mat_filterlightmaps 0 // Blocky lightmaps + +alias lighting_very_low "mat_filterlightmaps 0; r_ambientboost 0; r_ambientmin 0; r_rimlight 0; r_lightaverage 0; r_dynamic 0; r_maxdlights 0; r_worldlightmin 0.9; r_worldlights 0; mat_disable_lightwarp 1; mat_phong 0;setinfo lighting very_low" +alias lighting_low "mat_filterlightmaps 0;r_ambientboost 0; r_ambientmin 0; r_rimlight 0; r_lightaverage 0; r_dynamic 0; r_maxdlights 0; r_worldlightmin 0.1; r_worldlights 0; mat_disable_lightwarp 1; mat_phong 0; setinfo lighting low" +alias lighting_medium "r_ambientboost 0; r_ambientmin 0; r_rimlight 0; r_lightaverage 0; r_dynamic 0; r_maxdlights 0; r_worldlightmin 0.004; r_worldlights 0; mat_disable_lightwarp 1;mat_filterlightmaps 1; mat_phong 0; setinfo lighting medium" +alias lighting_medium_high "r_ambientboost 1; r_ambientmin 0.3; r_rimlight 1; r_lightaverage 1; r_dynamic 0; r_maxdlights 0; r_worldlightmin 0.0002; r_worldlights 0; mat_disable_lightwarp 1; mat_filterlightmaps 1;mat_phong 1;setinfo lighting medium_high" +alias lighting_high "r_ambientboost 1; r_ambientmin 0.3; r_rimlight 1; r_lightaverage 1; r_dynamic 1; r_maxdlights 9; r_worldlightmin 0.0002; r_worldlights 2; mat_disable_lightwarp 1; mat_filterlightmaps 1;mat_phong 1;setinfo lighting high" +alias lighting_very_high "r_ambientboost 1; r_ambientmin 0.3; r_rimlight 1; r_lightaverage 1; r_dynamic 1; r_maxdlights 9; r_worldlightmin 0.0002; r_worldlights 2; mat_disable_lightwarp 0; mat_filterlightmaps 1;mat_phong 1;setinfo lighting very_high" +alias lighting_ultra "r_ambientboost 1; r_ambientmin 0.6; r_rimlight 1; r_lightaverage 1; r_dynamic 1; r_maxdlights 32; r_worldlightmin 0; r_worldlights 4; mat_disable_lightwarp 0; mat_filterlightmaps 1; mat_phong 1;setinfo lighting ultra" + +setinfo lighting_very_low "" +setinfo lighting_low "" +setinfo lighting_medium "" +setinfo lighting_medium_high "" +setinfo lighting_high "" +setinfo lighting_very_high "" +setinfo lighting_ultra "" + +// --------------- +// '-- Shadows --' +// --------------- +// Shadows cast from characters + +//r_shadows 0 // Disable shadows for a big FPS increase +//r_shadows 1 // Enable shadows +//r_shadowrendertotexture 0 // Do not use two materials for shadows (uses memory and rendering time) +//r_shadowrendertotexture 1 // Prettier shadows +//cl_blobbyshadows 1 // Render a blob for shadows +//cl_blobbyshadows 0 // Get sharper model shape based shadows +//r_flashlightdepthtexture 0 // Disable the CPU intensive depth texturing for shadows +//r_flashlightdepthtexture 1 // Even prettier shadows +//r_flashlightdepthres 32 // Reduce the shadow depth texture resolution. Only works when depth textures are + // on +//r_flashlightdepthres 4096 // Sharper shadows (alternatively try: 8192, 2048, 1024, 512), higher is + // higher quality +//r_flashlightrender 0 // Disable flashlight shadow +//r_flashlightrender 1 // Enable flashlight shadow +//r_flashlightmodels 0 // Disable lighting models +//r_flashlightmodels 1 // Enable lighting models +//r_flashlightscissor 1 // Disable shadow rendering where it is unneeded +//r_flashlightscissor 0 // Fix some shadows being improperly cut off at the cost of performance +//r_shadowmaxrendered 18 // Do not render more shadows than needed +//r_shadowmaxrendered 12 // for 6s +//r_shadowmaxrendered 32 // Render more shadows + +alias shadows_off "r_shadows 0; r_shadowrendertotexture 0; cl_blobbyshadows 1; r_flashlightdepthtexture 0; r_flashlightdepthres 32; r_flashlightrender 0; r_flashlightmodels 0; r_flashlightscissor 1; r_shadowmaxrendered 0;setinfo shadows off" +alias shadows_very_low "r_shadows 1; r_shadowrendertotexture 0; cl_blobbyshadows 1; r_flashlightdepthtexture 0; r_flashlightdepthres 32; r_flashlightrender 0; r_flashlightmodels 0; r_flashlightscissor 1; r_shadowmaxrendered 8;setinfo shadows very_low" +alias shadows_low "r_shadows 1; r_shadowrendertotexture 0; cl_blobbyshadows 0; r_flashlightdepthtexture 0; r_flashlightdepthres 32; r_flashlightrender 0; r_flashlightmodels 0; r_flashlightscissor 1; r_shadowmaxrendered 12;setinfo shadows low" +alias shadows_medium "r_shadows 1; r_shadowrendertotexture 1; cl_blobbyshadows 0; r_flashlightdepthtexture 0; r_flashlightdepthres 32; r_flashlightrender 0; r_flashlightmodels 0; r_flashlightscissor 1; r_shadowmaxrendered 12;setinfo shadows medium" +alias shadows_high "r_shadows 1; r_shadowrendertotexture 1; cl_blobbyshadows 0; r_flashlightdepthtexture 1; r_flashlightdepthres 512; r_flashlightrender 1; r_flashlightmodels 1; r_flashlightscissor 1; r_shadowmaxrendered 18;setinfo shadows high" +alias shadows_ultra "r_shadows 1; r_shadowrendertotexture 1; cl_blobbyshadows 0; r_flashlightdepthtexture 1; r_flashlightdepthres 1024; r_flashlightrender 1; r_flashlightmodels 1; r_flashlightscissor 0; r_shadowmaxrendered 32;setinfo shadows ultra" + +setinfo shadows_off "" +setinfo shadows_very_low "" +setinfo shadows_low "" +setinfo shadows_medium "" +setinfo shadows_high "" +setinfo shadows_ultra "" + +// --------------- +// '-- Effects --' +// --------------- +// Controls weapon and other miscellaneous effects + +//cl_ejectbrass 0 // Disable shell ejection from pistols, shotgun, minigun, etc +//cl_ejectbrass 1 // Enable shell ejection +//muzzleflash_light 0 // Disable muzzle flash lights +//muzzleflash_light 1 // Enable muzzle flash lights +//cl_muzzleflash_dlight_1st 0 // Disable muzzle flash lights in first person +//cl_muzzleflash_dlight_1st 1 // Enable muzzle flash lights in first person +//tracer_extra 0 // Remove extra fluff to bullet lines that make them thicker +//tracer_extra 1 // Make bullet lines more visible, low performance impact +//r_drawtracers_firstperson 1 // Enable first person tracers, low performance impact +//r_drawtracers_firstperson 0 // Do not draw tracers when you are in first person +//cl_show_splashes 1 // Enable water splashes +//cl_show_splashes 0 // Disable water splashes +//cl_fasttempentcollision 20 // Check every 20 frames for collisions on syringes, shell ejection, blood, + // and some other effects +//cl_fasttempentcollision 5 // Check collisions every 5 frames +//cl_fasttempentcollision 10000 // Skip collision checking +//cl_fasttempentcollision 1 // Check collisions every frame + +alias effects_very_low "cl_ejectbrass 0; muzzleflash_light 0; cl_muzzleflash_dlight_1st 0; tracer_extra 0; r_drawtracers_firstperson 0; cl_show_splashes 0; cl_fasttempentcollision 10000;setinfo effects very_low" +alias effects_low "cl_ejectbrass 0; muzzleflash_light 0; cl_muzzleflash_dlight_1st 0; tracer_extra 0; r_drawtracers_firstperson 1; cl_show_splashes 0; cl_fasttempentcollision 20;setinfo effects low" +alias effects_medium "cl_ejectbrass 0; muzzleflash_light 0; cl_muzzleflash_dlight_1st 0; tracer_extra 0; r_drawtracers_firstperson 1; cl_show_splashes 1; cl_fasttempentcollision 20;setinfo effects medium" +alias effects_medium_high "cl_ejectbrass 0; muzzleflash_light 1; cl_muzzleflash_dlight_1st 1; tracer_extra 1; r_drawtracers_firstperson 1; cl_show_splashes 1; cl_fasttempentcollision 20;setinfo effects medium_high" +alias effects_high "cl_ejectbrass 1; muzzleflash_light 1; cl_muzzleflash_dlight_1st 1; tracer_extra 1; r_drawtracers_firstperson 1; cl_show_splashes 1; cl_fasttempentcollision 5;setinfo effects high" +alias effects_ultra "cl_ejectbrass 1; muzzleflash_light 1; cl_muzzleflash_dlight_1st 1; tracer_extra 1; r_drawtracers_firstperson 1; cl_show_splashes 1; cl_fasttempentcollision 1;setinfo effects ultra" + +setinfo effects_very_low "" +setinfo effects_low "" +setinfo effects_medium "" +setinfo effects_medium_high "" +setinfo effects_high "" +setinfo effects_ultra "" + +// ------------- +// '-- Water --' +// ------------- +// Water reflections + +//r_cheapwaterstart 600 // The distance at which transitionary cheap water starts. Has less reflectivity. +//r_cheapwaterstart 0 // Use cheap water as much as possible +//r_cheapwaterstart 3000 // Do not use cheap water +//r_cheapwaterend 1000 // The distance at which fully cheap water starts. Does not reflect or refract and + // it is solid +//r_cheapwaterend 0.1 // Use cheap water as much as possible +//r_cheapwaterend 5000 // Do not use cheap water +//r_WaterDrawReflection 0 // Water reflections disabled for more performance +//r_WaterDrawReflection 1 // Enable water reflections +//r_waterforceexpensive 0 // Do not force expensive water +//r_waterforceexpensive 1 /// Force higher quality water +//r_waterforcereflectentities 0 // Do not force entity water reflections +//r_waterforcereflectentities 1 // Enable entity water reflections +//r_WaterDrawRefraction 1 // Enable water refraction as water is hard to look at otherwise +//r_WaterDrawRefraction 0 // Disable water refraction for maximum FPS +r_ForceWaterLeaf 1 // Optimize vis + +alias cheap_water_full "r_cheapwaterstart 0; r_cheapwaterend 0.1" +alias cheap_water_medium "r_cheapwaterstart 500; r_cheapwaterend 900" +alias cheap_water_none "r_cheapwaterstart 3000; r_cheapwaterend 5000" + +alias water_very_low "cheap_water_full; alias cheap_water_override cheap_water_full; r_WaterDrawReflection 0; r_waterforceexpensive 0; r_waterforcereflectentities 0; r_WaterDrawRefraction 0;setinfo water very_low" +alias water_low "cheap_water_medium; alias cheap_water_override cheap_water_medium; r_WaterDrawReflection 0; r_waterforceexpensive 0; r_waterforcereflectentities 0; r_WaterDrawRefraction 0;setinfo water low" +alias water_medium "cheap_water_medium; alias cheap_water_override cheap_water_medium; r_WaterDrawReflection 0; r_waterforceexpensive 0; r_waterforcereflectentities 0; r_WaterDrawRefraction 1;setinfo water medium" +alias water_medium_high "cheap_water_medium; alias cheap_water_override cheap_water_medium; r_WaterDrawReflection 1; r_waterforceexpensive 0; r_waterforcereflectentities 0; r_WaterDrawRefraction 1;setinfo water medium_high" +alias water_high "cheap_water_medium; alias cheap_water_override cheap_water_medium; r_WaterDrawReflection 1; r_waterforceexpensive 0; r_waterforcereflectentities 1; r_WaterDrawRefraction 1;setinfo water high" +alias water_very_high "cheap_water_medium; alias cheap_water_override cheap_water_medium; r_WaterDrawReflection 1; r_waterforceexpensive 1; r_waterforcereflectentities 1; r_WaterDrawRefraction 1;setinfo water very_high" +alias water_ultra "cheap_water_none; alias cheap_water_override cheap_water_none; r_WaterDrawReflection 1; r_waterforceexpensive 1; r_waterforcereflectentities 1; r_WaterDrawRefraction 1;setinfo water ultra" + +setinfo water_very_low "" +setinfo water_low "" +setinfo water_medium "" +setinfo water_medium_high "" +setinfo water_high "" +setinfo water_very_high "" +setinfo water_ultra "" + +// ----------------- +// '-- Particles --' +// ----------------- +// Particle effects + +//cl_particle_batch_mode 1 // Use default particle batch mode +//cl_particle_batch_mode 2 // Use particle batch mode 2, causes missing particles +//tf_particles_disable_weather 1 // Disable rain, snow and ash particles +//tf_particles_disable_weather 0 // Increases number of particle systems on some maps, less FPS +//mat_reduceparticles 1 // Reduce number of particles, but it only helps a little bit because the real + // performance impact comes from creating particle systems +//mat_reduceparticles 0 // Use the full number of particles +//cl_new_impact_effects 0 // Use the old particle system for bullet impact particles +//cl_new_impact_effects 1 // Use the new particle system for bullet impact particles +//r_drawflecks 0 // Do not create particle systems when things hit surfaces, increases FPS and reduces + // distractions +//r_drawflecks 1 // Draw flecks from impacts +r_particle_sim_spike_threshold_ms 0 // Early finish to unused particle performance stats + +alias particles_very_low "cl_particle_batch_mode 2; tf_particles_disable_weather 1; mat_reduceparticles 1; cl_new_impact_effects 0; r_drawflecks 0;setinfo particles very_low" +alias particles_low "cl_particle_batch_mode 1; tf_particles_disable_weather 1; mat_reduceparticles 1; cl_new_impact_effects 0; r_drawflecks 0;setinfo particles low" +alias particles_medium "cl_particle_batch_mode 1; tf_particles_disable_weather 1; mat_reduceparticles 1; cl_new_impact_effects 0; r_drawflecks 1;setinfo particles medium" +alias particles_high "cl_particle_batch_mode 1; tf_particles_disable_weather 0; mat_reduceparticles 0; cl_new_impact_effects 0; r_drawflecks 1;setinfo particles high" +alias particles_ultra "cl_particle_batch_mode 1; tf_particles_disable_weather 0; mat_reduceparticles 0; cl_new_impact_effects 1; r_drawflecks 1;setinfo particles ultra" + +setinfo particles_very_low "" +setinfo particles_low "" +setinfo particles_medium "" +setinfo particles_high "" +setinfo particles_ultra "" + +// ----------------------- +// '-- Post Processing --' +// ----------------------- +// Extra visual effects + +// ------------- +// '- General -' +// ------------- +// Standard post processing effects + +//mat_postprocessing_combine 1 // Combine post processing effects +//mat_postprocessing_combine 0 // Individually checked passes for post processing +//mat_hdr_level 0 // LDR +//mat_hdr_level 1 // LDR and bloom +//mat_hdr_level 2 // HDR and bloom +//mat_non_hdr_bloom_scalefactor 0 // Completely disable bloom on LDR +//mat_non_hdr_bloom_scalefactor 0.3 // Default bloom scale on LDR +//r_bloomtintexponent 2.2 // Intensity of bloom effect +//mat_bloom_scalefactor_scalar 1 // Intensity of bloom emitters +building_cubemaps 0 // Allow for post processing and pixel visibility testing +//mat_colorcorrection 0 // Disable color correction to quickly skip post + // processing rendering pathway +//mat_colorcorrection 1 // Enable color correction, pretty much free effect +//mat_colcorrection_disableentities 1 // Disable entity color correction +//mat_colcorrection_disableentities 0 // Enable entity color correction +mat_postprocess_x 4 // Tessellate post processing slightly more +mat_postprocess_y 4 // ^ + +alias post_processing_off "mat_hdr_level 0; mat_non_hdr_bloom_scalefactor 0; mat_colorcorrection 0; mat_colcorrection_disableentities 1; mat_postprocessing_combine 0;setinfo post_processing off" +alias post_processing_low "mat_hdr_level 0; mat_non_hdr_bloom_scalefactor 0; mat_colorcorrection 1; mat_colcorrection_disableentities 1; mat_postprocessing_combine 1;setinfo post_processing low" +alias post_processing_medium "mat_hdr_level 0; mat_non_hdr_bloom_scalefactor 0; mat_colorcorrection 1; mat_colcorrection_disableentities 0; mat_postprocessing_combine 1;setinfo post_processing medium" +alias post_processing_medium_high "mat_hdr_level 1; mat_non_hdr_bloom_scalefactor 0.3; mat_colorcorrection 1; mat_colcorrection_disableentities 0; mat_postprocessing_combine 1;setinfo post_processing medium_high" +alias post_processing_high "mat_hdr_level 2; mat_non_hdr_bloom_scalefactor 0.3; mat_colorcorrection 1; mat_colcorrection_disableentities 0; mat_postprocessing_combine 1;setinfo post_processing high" + +setinfo post_processing_off "" +setinfo post_processing_low "" +setinfo post_processing_medium "" +setinfo post_processing_medium_high "" +setinfo post_processing_high "" + +// ---------------- +// '- Pyrovision -' +// ---------------- +// Pyrovision visual effects + +//pyro_dof 0 // Skip a SSAO depth pass for pyrovision +//pyro_dof 1 // Enable pyrovision dof +//pyro_vignette 0 // Disable vignette for pyrovision +//pyro_vignette 1 // Static pyrovision vignette +//pyro_vignette 2 // Dynamic pyrovision vignette +//pyro_vignette_distortion 0 // Disable vignette distortion for pyrovision +//pyro_vignette_distortion 1 // Enable pyrovision vignette distortion +//pyro_max_intensity 0 // Disable more pyrovision visual effects +//pyro_max_rate 0 // ^ +//pyro_max_side_length 0 // ^ +//pyro_max_side_width 0 // ^ +//pyro_min_intensity 0 // ^ +//pyro_min_rate 0 // ^ +//pyro_min_side_length 0 // ^ +//pyro_min_side_width 0 // ^ +//pyro_max_intensity 0.5 // Enhance more pyrovision visual effects +//pyro_max_rate 0.5 // ^ +//pyro_max_side_length 1 // ^ +//pyro_max_side_width 1 // ^ +//pyro_min_intensity 0.2 // ^ +//pyro_min_rate 0.05 // ^ +//pyro_min_side_length 0.65 // ^ +//pyro_min_side_width 0.65 // ^ + +alias pyrovision_low "pyro_dof 0; pyro_vignette 0; setinfo pyrovision low" +alias pyrovision_medium "pyro_dof 0; pyro_vignette 1; pyro_vignette_distortion 0; setinfo pyrovision medium" +alias pyrovision_high "pyro_dof 1; pyro_vignette 2; pyro_vignette_distortion 1; pyro_max_intensity 0.5; pyro_max_rate 0.5; pyro_max_side_length 1; pyro_max_side_width 1; pyro_min_intensity 0.2; pyro_min_rate 0.05; pyro_min_side_length 0.65; pyro_min_side_width 0.65;setinfo pyrovision high" + +setinfo pyrovision_low "" +setinfo pyrovision_medium "" +setinfo pyrovision_high "" + +// ------------------- +// '-- Motion Blur --' +// ------------------- +// These settings will adjust the blurring effect from rotation and movement + +//mat_motion_blur_enabled 0 // Disable motion blur +//mat_motion_blur_enabled 1 // Enable motion blur +//mat_motion_blur_falling_intensity 1 // Blur intensity while falling +//mat_motion_blur_falling_max 15 // Maximum blur from falling +//mat_motion_blur_falling_min 5 // Minimum blur from falling +//mat_motion_blur_forward_enabled 1 // Enable motion blur from forward motion +//mat_motion_blur_percent_of_screen_max 4 // Maximum percentage of screen that can blur +//mat_motion_blur_rotation_intensity 0.05 // Adjust blur caused by rotational motion +//mat_motion_blur_strength 1 // Adjust overall blur strength + +alias motion_blur_off "mat_motion_blur_enabled 0;setinfo motion_blur off" +alias motion_blur_low "mat_motion_blur_enabled 1; mat_motion_blur_falling_intensity 0; mat_motion_blur_forward_enabled 0; mat_motion_blur_percent_of_screen_max 1; mat_motion_blur_rotation_intensity 0.05; mat_motion_blur_strength 1;setinfo motion_blur low" +alias motion_blur_high "mat_motion_blur_enabled 1; mat_motion_blur_falling_intensity 1; mat_motion_blur_falling_max 15; mat_motion_blur_falling_min 5; mat_motion_blur_forward_enabled 1; mat_motion_blur_percent_of_screen_max 4; mat_motion_blur_rotation_intensity 0.1; mat_motion_blur_strength 1;setinfo motion_blur high" + +setinfo motion_blur_off "" +setinfo motion_blur_low "" +setinfo motion_blur_high "" + +// -------------------- +// '-- Antialiasing --' +// -------------------- +// These settings will adjust the smoothing of jagged edges + +//mat_alphacoverage 0 // Disable alpha-to-coverage +//mat_alphacoverage 1 // Enable alpha-to-coverage,which improves AA on thin + // overlapping surfaces +//mat_software_aa_strength 0 // Do not do software AA +//mat_software_aa_strength 1 // Enable software AA +//mat_software_aa_strength_vgui 0 // Do not do software AA on the HUD +//mat_software_aa_strength_vgui 1 // Enable VGUI software AA +//mat_software_aa_quality 0 // Lower quality software AA +//mat_software_aa_quality 1 // High quality software AA +//mat_software_aa_edge_threshold 0.5 // Balance between soft and sharp edges +//mat_software_aa_blur_one_pixel_lines 0.5 // Balance between softness and + // sharpness on thin stuff, like + // cables + +alias aa_off "mat_alphacoverage 0; mat_software_aa_strength 0; mat_software_aa_strength_vgui 0;setinfo aa off" +alias aa_medium "mat_alphacoverage 1; mat_software_aa_strength 0; mat_software_aa_strength_vgui 1; mat_software_aa_quality 0; mat_software_aa_edge_threshold 0.5; mat_software_aa_blur_one_pixel_lines 0.5; mat_postprocessing_combine 1;setinfo aa medium" +alias aa_high "mat_alphacoverage 1; mat_software_aa_strength 1; mat_software_aa_strength_vgui 1; mat_software_aa_quality 1; mat_software_aa_edge_threshold 0.5; mat_software_aa_blur_one_pixel_lines 0.5; mat_postprocessing_combine 1;setinfo aa high" + +setinfo aa_off "" +setinfo aa_medium "" +setinfo aa_high "" + +//mat_antialias 1 // Do not do antialiasing +//mat_antialias 8 // Max MSAA (8x) +//mat_aaquality 0 // Disable CSAA +//mat_aaquality 4 // Max CSAA (4x) +//mat_disable_ps_patch 0 // Enable shader patching for MSAA + +alias aa_msaa_off "mat_antialias 1; mat_aaquality 0; setinfo aa_msaa off" +alias aa_msaa_2x "mat_antialias 2; mat_aaquality 0; setinfo aa_msaa 2x" +alias aa_msaa_4x "mat_antialias 4; mat_aaquality 0; setinfo aa_msaa 4x" +alias aa_msaa_6x "mat_antialias 6; mat_aaquality 0; setinfo aa_msaa 6x" +alias aa_msaa_8x_csaa "mat_antialias 4; mat_aaquality 2; setinfo aa_msaa 8x_csaa" +alias aa_msaa_16x_csaa "mat_antialias 4; mat_aaquality 4; setinfo aa_msaa 16x_csaa" +alias aa_msaa_8x "mat_antialias 8; mat_aaquality 0; setinfo aa_msaa 8x" +alias aa_msaa_16xq_csaa "mat_antialias 8; mat_aaquality 2; setinfo aa_msaa 16xq_csaa" + +setinfo aa_msaa_off "" +setinfo aa_msaa_2x "" +setinfo aa_msaa_4x "" +setinfo aa_msaa_6x "" +setinfo aa_msaa_8x_csaa "" +setinfo aa_msaa_16x_csaa "" +setinfo aa_msaa_8x "" +setinfo aa_msaa_16xq_csaa "" + +// ------------------------- +// '-- Texture Filtering --' +// ------------------------- +// These settings will adjust the texture smoothing/filtering + +//mat_trilinear 1 // Use trilinear as it improves texture filtering for little +//mat_trilinear 0 // Use bilinear to squeeze out every last bit of performance +//mat_forceaniso 1 // Disable anisotropic filtering +//mat_forceaniso 2 // Levels of anisotropic filtering (2, 4, 8, 16) + +alias texture_filter_bilinear "mat_trilinear 0; mat_forceaniso 1;setinfo texture_filter bilinear" +alias texture_filter_trilinear "mat_trilinear 1; mat_forceaniso 1;setinfo texture_filter trilinear" +alias texture_filter_aniso2x "mat_trilinear 1; mat_forceaniso 2;setinfo texture_filter aniso2x" +alias texture_filter_aniso4x "mat_trilinear 1; mat_forceaniso 4;setinfo texture_filter aniso4x" +alias texture_filter_aniso8x "mat_trilinear 1; mat_forceaniso 8;setinfo texture_filter aniso8x" +alias texture_filter_aniso16x "mat_trilinear 1; mat_forceaniso 16;setinfo texture_filter aniso16x" + +setinfo texture_filter_bilinear "" +setinfo texture_filter_trilinear "" +setinfo texture_filter_aniso2x "" +setinfo texture_filter_aniso4x "" +setinfo texture_filter_aniso8x "" +setinfo texture_filter_aniso16x "" + +// ------------------ +// '-- Characters --' +// ------------------ +// These settings will adjust the characters in the game + +//r_flex 1 // Enable facial animations. Requires more bones to be setup on CPU +//r_flex 0 // Disable facial animations +//flex_rules 1 // Enable facial animations +//flex_rules 0 // Disable facial animations +//anim_3wayblend 0 // Disable 3-way animation blending +//anim_3wayblend 1 // Enable 3-way animation blending +//ai_expression_optimization 1 // Do an extra visibility check for flex + // animations if we are above the target FPS, + // otherwise disable flex anims +//ai_expression_optimization 0 // Disable expression optimization +//ai_expression_frametime 0.0151 // Disable expressions if we are below ideal + // FPS +//ai_expression_frametime 0 // Disable expressions entirely +//r_teeth 1 // Render teeth +//r_teeth 0 // Do not render teeth, small FPS boost +cl_SetupAllBones 0 // Do not force every animation component of a model to be + // set up +//flex_smooth 0 // Do not smooth facial animations +//flex_smooth 1 // Smooth facial animations +//mp_usehwmmodels -1 // Do not use or load high quality characters +//mp_usehwmmodels 0 // Use high quality characters if supported +//mp_usehwmvcds -1 // Do not use or load high quality character facial + // expressions +//mp_usehwmvcds 0 // Use high quality characters facial expressions if supported +r_glint_procedural 0 // Use the default eye glinting method +//r_glint_procedural 1 // Use CPU eye glinting for weak GPUs +//r_eyes 1 // Draw character eyes. Actually a noticeable FPS decrease +//r_eyes 0 // Disable eyes +//r_eyemove 1 // Control if character eyes should move, does not really affect + // performance +//r_eyemove 0 // Disable eye movement +//tf_clientsideeye_lookats 1 // Control if character eyes should look at you, + // does not really affect performance +//tf_clientsideeye_lookats 0 // Disable eye lookats +//blink_duration 0.2 // Duration of an eye blink +//blink_duration 0 // Disable blinking +//phonemefilter 0.01 // Do not box filter lip sync +//phonemefilter 0.1 // Box filter lip sync for slightly longer +//phonemesnap 0 // Do not crossfade a second lip sync on any LOD +//phonemesnap 7 // Crossfade a second lip sync on every LOD + +alias characters_very_low "r_flex 0; flex_rules 0; anim_3wayblend 0; ai_expression_optimization 1; ai_expression_frametime 0; r_teeth 0; flex_smooth 0; mp_usehwmmodels -1; mp_usehwmvcds -1; r_eyes 0; r_eyemove 0; tf_clientsideeye_lookats 0; blink_duration 0; phonemefilter 0.01; phonemesnap 0;setinfo characters very_low" +alias characters_low "r_flex 0; flex_rules 0; anim_3wayblend 0; ai_expression_optimization 1; ai_expression_frametime 0.0151; r_teeth 0; flex_smooth 0; mp_usehwmmodels -1; mp_usehwmvcds -1; r_eyes 1; r_eyemove 0; tf_clientsideeye_lookats 0; blink_duration 0; phonemefilter 0.01; phonemesnap 0;setinfo characters low" +alias characters_medium "r_flex 1; flex_rules 1; anim_3wayblend 0; ai_expression_optimization 1; ai_expression_frametime 0.0151; r_teeth 1; flex_smooth 0; mp_usehwmmodels -1; mp_usehwmvcds -1; r_eyes 1; r_eyemove 0; tf_clientsideeye_lookats 0; blink_duration 0; phonemefilter 0.01; phonemesnap 0;setinfo characters medium" +alias characters_medium_high "r_flex 1; flex_rules 1; anim_3wayblend 0; ai_expression_optimization 1; ai_expression_frametime 0.0151; r_teeth 1; flex_smooth 0; mp_usehwmmodels -1; mp_usehwmvcds -1; r_eyes 1; r_eyemove 1; tf_clientsideeye_lookats 1; blink_duration 0.2; phonemefilter 0.08; phonemesnap 1;setinfo characters medium_high" +alias characters_high "r_flex 1; flex_rules 1; anim_3wayblend 1; ai_expression_optimization 1; ai_expression_frametime 0.0151; r_teeth 1; flex_smooth 1; mp_usehwmmodels -1; mp_usehwmvcds -1; r_eyes 1; r_eyemove 1; tf_clientsideeye_lookats 1; blink_duration 0.2; phonemefilter 0.08; phonemesnap 2;setinfo characters high" +alias characters_ultra "r_flex 1; flex_rules 1; anim_3wayblend 1; ai_expression_optimization 1; ai_expression_frametime 0.0151; r_teeth 1; flex_smooth 1; mp_usehwmmodels 0; mp_usehwmvcds 0; r_eyes 1; r_eyemove 1; tf_clientsideeye_lookats 1; blink_duration 0.2; phonemefilter 0.08; phonemesnap 7;setinfo characters ultra" + +setinfo characters_very_low "" +setinfo characters_low "" +setinfo characters_medium "" +setinfo characters_medium_high "" +setinfo characters_high "" +setinfo characters_ultra "" + +// -------------- +// '-- Decals --' +// -------------- +// Overlay textures on models + +// ------------- +// '- General -' +// ------------- +// Bullet holes and overall decal support + +//r_decals 9 // Allow to check bullet spread (must be the same as mp_decals) +//r_decals 0 // Disable decals +//r_decals 96 // Optimized high decal count +//r_decals 2048 // Maximum decal count +//mp_decals 9 // Allow to check bullet spread (must be the same as r_decals) +//mp_decals 0 // Disable decals +//mp_decals 96 // Optimized high decal count +//mp_decals 2048 // Maximum decal count +//r_drawbatchdecals 1 // Always batch decals to reduce calls +//r_decal_cullsize 256 // Hide decals unless they are relatively big +//r_decal_cullsize 20 // Optimized decal cullsize if you want to still see + // decals from far away +//r_decal_cover_count 1 // Remove decal when there is 1 decal in its place/close + // to completely covering it +//r_decal_cover_count 4 // Allow for more decals covering each other +//r_decal_overlap_area 0.4 // Remove decal when there is another decal barely + // covering it +//r_decal_overlap_area 0.8 // Allow for decals to overlap each other more +//r_decal_overlap_count 0 // Do not allow decals to overlap each other +//r_decal_overlap_count 3 // Allow for 3 decals to overlap each other + +alias decals_off "r_decals 0; mp_decals 0;r_drawbatchdecals 0;setinfo decals off" +alias decals_low "r_decals 9; mp_decals 9; r_decal_cullsize 256; r_decal_cover_count 1; r_decal_overlap_area 0.4; r_decal_overlap_count 0;r_drawbatchdecals 0;setinfo decals low" +alias decals_medium "r_decals 96; mp_decals 96; r_decal_cullsize 256; r_decal_cover_count 1; r_decal_overlap_area 0.4; r_decal_overlap_count 0;r_drawbatchdecals 1;setinfo decals medium" +alias decals_high "r_decals 96; mp_decals 96; r_decal_cullsize 15; r_decal_cover_count 4; r_decal_overlap_area 0.8; r_decal_overlap_count 3;r_drawbatchdecals 1;setinfo decals high" +alias decals_ultra "r_decals 2048; mp_decals 2048; r_decal_cullsize 5; r_decal_cover_count 8; r_decal_overlap_area 1.0; r_decal_overlap_count 8;r_drawbatchdecals 1;setinfo decals ultra" + +setinfo decals_off "" +setinfo decals_low "" +setinfo decals_medium "" +setinfo decals_high "" +setinfo decals_ultra "" + +// ------------------ +// '- Model Decals -' +// ------------------ +// Blood on hurt players and some bullet decals on props + +//r_drawmodeldecals 0 // Disable blood decals on bodies. Will prevent new + // objects to be created that decals apply onto. This also + // causes a bug with red bullet decals on some wood models +//r_drawmodeldecals 1 // Enable blood decals for better determining how hurt + // someone is. +//r_maxmodeldecal 9 // Optimize maximum model decal count + +alias decals_models_off "r_drawmodeldecals 0;setinfo decals_models off" +alias decals_models_low "r_drawmodeldecals 1; r_maxmodeldecal 9;setinfo decals_models low" +alias decals_models_high "r_drawmodeldecals 1; r_maxmodeldecal 32;setinfo decals_models high" + +setinfo decals_models_off "" +setinfo decals_models_low "" +setinfo decals_models_high "" + +// ---------------- +// '- Map Decals -' +// ---------------- +// Decals placed by the map author + +//r_renderoverlayfragment 1 // Enable overlays to see some decal based logos and + // posters on walls +//r_renderoverlayfragment 0 // Disable overlays, small performance increase +r_overlayfadeenable 1 +r_overlayfademax 2000 +r_overlayfademin 1750 + +alias decals_art_off "r_renderoverlayfragment 0;setinfo decals_art off" +alias decals_art_on "r_renderoverlayfragment 1;setinfo decals_art on" + +setinfo decals_art_off "" +setinfo decals_art_on "" + +// ------------ +// '- Sprays -' +// ------------ +// Decals sprayed by players + +//cl_allowdownload 1 // Download other player custom files +//cl_allowdownload 0 // Block downloads of other player custom files (sprays) +//cl_allowupload 1 // Upload your player custom files +//cl_allowupload 0 // Disable uploading your player custom files (sprays) +//r_spray_lifetime 2 // Keep sprays for 2 rounds +//r_spray_lifetime 0 // Clear sprays immediately +//cl_playerspraydisable 0 // Enable player sprays +//cl_playerspraydisable 1 // Disable player sprays + +alias sprays_off "cl_allowdownload 0; cl_allowupload 0; r_spray_lifetime 0; cl_playerspraydisable 1;setinfo sprays off" +alias sprays_on "cl_allowdownload 1; cl_allowupload 1; r_spray_lifetime 2; cl_playerspraydisable 0;setinfo sprays on" + +setinfo sprays_off "" +setinfo sprays_on "" + +// ------------ +// '-- Gibs --' +// ------------ +// Body parts created on violent deaths + +//cl_burninggibs 0 // Disable burning gibs as they have a performance impact +//cl_burninggibs 1 // Enable burning gibs for realism +//props_break_max_pieces -1 // Break gibs and some props into the pieces they + // were designed to break into +//props_break_max_pieces 2 // Break into a max of 2 pieces +//props_break_max_pieces 0 // Disables gibs and prop breaking +//violence_hgibs 1 // Enable normal gibs +//violence_hgibs 0 // Enable silly gibs/blood (less performance) +//violence_hblood 1 // Enable normal blood +//violence_hblood 0 // Enable silly gibs/blood (less performance) + +alias gibs_off "cl_burninggibs 0; props_break_max_pieces 0;setinfo gibs off" +alias gibs_low "cl_burninggibs 0; props_break_max_pieces 2;setinfo gibs low" +alias gibs_medium "cl_burninggibs 0; props_break_max_pieces -1;setinfo gibs medium" +alias gibs_high "cl_burninggibs 1; props_break_max_pieces -1;setinfo gibs high" + +setinfo gibs_off "" +setinfo gibs_low "" +setinfo gibs_medium "" +setinfo gibs_high "" + +alias sillygibs_off "violence_hgibs 1; violence_hblood 1;setinfo sillygibs off" +alias sillygibs_on "violence_hgibs 0; violence_hblood 0;setinfo sillygibs on" + +setinfo sillygibs_off "" +setinfo sillygibs_on "" + +alias sillygibs sillygibs_off + +// ------------- +// '-- Props --' +// ------------- +// Various small objects + +r_decalstaticprops 0 // Do not use some lighting data for static props, disable decals on static props +//r_decalstaticprops 1 // Use proper ambient lighting data for static props, enable decals on static props +cl_phys_props_enable 0 // Disable client side physics props +//cl_phys_props_enable 1 // Enable client side physics props +//cl_phys_props_max 20 // Reduce the physics props limit to a sane one for TF2 +//cl_phys_props_max 300 // Allow all physics props +//cl_phys_props_respawndist 1500 // Do not spawn props if we can see them +//cl_phys_props_respawndist 3000 // Skip respawning physics props for a high distance +//cl_phys_props_respawnrate 120 // Respawn physics props at a slower rate +//cl_phys_props_respawnrate 60 // Respawn physics props faster +//r_propsmaxdist 900 // Maximum distance from where client side physics props are visible +//r_propsmaxdist 3000 // Always render client side physics props +//r_drawdetailprops 0 // Disable detail props for saving a good bit of FPS +//r_drawdetailprops 1 // Enable sprites, grass etc +//r_drawdetailprops 2 // Draw detail props with wireframe +//cl_detaildist 900 // Draw detail props up to this distance +//cl_detaildist 3000 // Always draw detail props +//cl_detailfade 0 // Do not fade in detail props +//cl_detailfade 900 // Set to cl_detaildist to always be fading +//cl_detailfade 100 // Fade a small distance +//r_staticprop_lod -1 // Automatic LOD for props (fade between the most optimal LODs at a certain distance) +//r_staticprop_lod 0 // Force highest LOD (high quality with no fading) +//r_staticprop_lod 7 // Force lowest LOD (lowest quality) +r_PhysPropStaticLighting 1 // Use premade lighting for props, increases FPS + +alias detail_props_none "" +alias detail_props_medium "cl_detaildist 900; cl_detailfade 0" +alias detail_props_full "cl_detaildist 3000; cl_detailfade 100" + +alias props_low "r_decalstaticprops 0; cl_phys_props_enable 0; r_drawdetailprops 0; r_staticprop_lod 7; alias detail_props_override detail_props_none;setinfo props low" +alias props_medium "r_decalstaticprops 0; cl_phys_props_enable 0; r_drawdetailprops 0; r_staticprop_lod -1; alias detail_props_override detail_props_none;setinfo props medium" +alias props_high "r_decalstaticprops 1; cl_phys_props_enable 1; cl_phys_props_max 20; cl_phys_props_respawndist 3000; cl_phys_props_respawnrate 120; r_propsmaxdist 900; r_drawdetailprops 1; detail_props_medium; alias detail_props_override detail_props_medium; r_staticprop_lod -1;setinfo props high" +alias props_ultra "r_decalstaticprops 1; cl_phys_props_enable 1; cl_phys_props_max 300; cl_phys_props_respawndist 1500; cl_phys_props_respawnrate 60; r_propsmaxdist 3000; r_drawdetailprops 1; detail_props_full; alias detail_props_override detail_props_full; r_staticprop_lod 0;setinfo props ultra" + +setinfo props_low "" +setinfo props_medium "" +setinfo props_high "" +setinfo props_ultra "" + +// ---------------- +// '-- Ragdolls --' +// ---------------- +// Bodies that spawn on death with adjustable physics simulation and fading + +//cl_ragdoll_collide 0 // Disable ragdoll collisions +//cl_ragdoll_fade_time -3 // Remove ragdoll fade out delay +//cl_ragdoll_fade_time 15 // Fade out ragdolls in 5 seconds +//cl_ragdoll_forcefade 1 // Effectively disables ragdolls by instantly fading them +//cl_ragdoll_forcefade 0 // Enable ragdolls +//cl_ragdoll_physics_enable 0 // Disable ragdoll physics, where most of the performance from ragdolls comes + // from +//cl_ragdoll_physics_enable 1 // Enable ragdolls physics for meaningful ragdolls +//g_ragdoll_fadespeed 10000 // The rate of ragdoll fading (higher is faster fading rate, so 0 will not fade and cause memleaks) +//g_ragdoll_lvfadespeed 10000 // ^ but in low violence +//ragdoll_sleepaftertime 0 // Instantly sleep ragdolls +//ragdoll_sleepaftertime 1 // Wait a reasonable time before sleeping ragdoll physics + +alias ragdolls_off "cl_ragdoll_collide 0; cl_ragdoll_fade_time 0; cl_ragdoll_forcefade 1; cl_ragdoll_physics_enable 0; ragdoll_sleepaftertime 0; g_ragdoll_fadespeed 10000; g_ragdoll_lvfadespeed 10000;setinfo ragdolls off" +alias ragdolls_medium "cl_ragdoll_collide 0; cl_ragdoll_fade_time 3; cl_ragdoll_forcefade 0; cl_ragdoll_physics_enable 1; ragdoll_sleepaftertime 1; g_ragdoll_fadespeed 10000; g_ragdoll_lvfadespeed 10000;setinfo ragdolls medium" +alias ragdolls_high "cl_ragdoll_collide 1; cl_ragdoll_fade_time 15; cl_ragdoll_forcefade 0; cl_ragdoll_physics_enable 1; ragdoll_sleepaftertime 15; g_ragdoll_fadespeed 600; g_ragdoll_lvfadespeed 600;setinfo ragdolls high" + +setinfo ragdolls_off "" +setinfo ragdolls_medium "" +setinfo ragdolls_high "" + +// --------------- +// '-- General --' +// --------------- +// General/overall graphics settings + +mat_reducefillrate 0 // Increase shading quality +//mat_reducefillrate 1 // Simplify material shading and use some DX8 features +mat_viewportscale 1 // Adjust render resolution (adjust as a % from 1.0 to 0.1 in increments of 0.1 or 0.05). This is + // useful for if your GPU struggles to render a lot of pixels +mat_viewportupscale 1 // Upscale when using mat_viewportscale +//r_3dsky 1 // Enable 3D sky +//r_3dsky 0 // Disable 3D sky +r_dopixelvisibility 1 // Enable visibility testing for glows, halos and pretty lights +r_drawpixelvisibility 0 // Do not draw debug for partial visibility checking +r_pixelvisibility_partial 0 // Do not use a costly precise partial visibility algorithm +//r_pixelvisibility_partial 1 // Use partial visibility algorithm +//cl_jiggle_bone_framerate_cutoff 67 // Disable jigglebones if we are under the optimal framerate +//cl_jiggle_bone_framerate_cutoff 1 // Never disable jigglebones +//cl_jiggle_bone_framerate_cutoff 0 // Always disable jigglebones + +alias 3dsky_off "r_3dsky 0;setinfo 3dsky off" +alias 3dsky_on "r_3dsky 1;setinfo 3dsky on" + +setinfo 3dsky_off "" +setinfo 3dsky_on "" + +alias jigglebones_off "cl_jiggle_bone_framerate_cutoff 0;setinfo jigglebones off" +alias jigglebones_on "cl_jiggle_bone_framerate_cutoff 67;setinfo jigglebones on" +alias jigglebones_force_on "cl_jiggle_bone_framerate_cutoff 1;setinfo jigglebones force_on" + +setinfo jigglebones_off "" +setinfo jigglebones_on "" +setinfo jigglebones_force_on "" + +// -------------- +// '- Textures -' +// -------------- + +//mat_picmip 1 // Use less memory in a 32-bit process +//mat_picmip 2 // Use lowest quality textures +//mat_picmip -1 // Use highest quality textures +//mat_texture_limit 64000 // Limit texture size in KB per frame +//mat_filtertextures 1 // Filter textures +//mat_filtertextures 0 // Blocky textures + +alias textures_very_low "mat_picmip 2; mat_filtertextures 1; mat_filtertextures 0;setinfo textures very_low" +alias textures_low "mat_picmip 2; mat_filtertextures 0; mat_filtertextures 1;setinfo textures low" +alias textures_medium "mat_picmip 1; mat_filtertextures 0; mat_filtertextures 1;setinfo textures medium" +alias textures_high "mat_picmip 0; mat_filtertextures 0; mat_filtertextures 1;setinfo textures high" +alias textures_very_high "mat_picmip -1; mat_filtertextures 0; mat_filtertextures 1;setinfo textures very_high" + +setinfo textures_very_low "" +setinfo textures_low "" +setinfo textures_medium "" +setinfo textures_high "" +setinfo textures_very_high "" + +//mat_disable_fancy_blending 1 // Disable fancy blending of textures +//mat_disable_fancy_blending 0 // Enable fancy blending of textures + +alias texture_blending_off "mat_disable_fancy_blending 1;setinfo texture_blending off" +alias texture_blending_on "mat_disable_fancy_blending 0;setinfo texture_blending on" + +setinfo texture_blending_off "" +setinfo texture_blending_on "" + +//mat_bumpmap 1 // Enable bumpmaps +//mat_bumpmap 0 // Disable bumpmap materials + +alias bumpmap_off "mat_bumpmap 0;setinfo bumpmap off" +alias bumpmap_on "mat_bumpmap 1;setinfo bumpmap on" + +setinfo bumpmap_off "" +setinfo bumpmap_on "" + +//mat_specular 1 // Enable specular +//mat_specular 0 // Disable specular materials + +alias specular_off "mat_specular 0; setinfo specular off" +alias specular_on "mat_specular 1; setinfo specular on" + +setinfo specular_off "" +setinfo specular_on "" + +// ------------- +// '-- Ropes --' +// ------------- +// Ropes for Mannpower grappling hook and as decoration in maps + +//rope_rendersolid 1 // Render solid part of ropes +//rope_rendersolid 0 // Skip rendering solid part of ropes +//r_ropetranslucent 0 // Skip simulating ropes +//r_ropetranslucent 1 // Simulate ropes +//rope_solid_minalpha 0 // Skip drawing non-solid part of ropes +//rope_solid_minwidth 0.1 // Skip drawing ropes if they are not large enough on screen +//rope_solid_minalpha 0.2 // Enable solid alpha +//rope_solid_minwidth 0 // Always render non-solid ropes +//rope_smooth 0 // Skip a long smoothing operation for ropes +//rope_smooth 1 // Smooth ropes with a fake transparent rope +//rope_subdiv 0 // Skip heavy loops for rope subdivisions +//rope_subdiv 2 // Subdivide ropes +//rope_subdiv 7 // Max rope subdivides +//rope_collide 0 // Skip CPU heavy world collisions for ropes +//rope_collide 1 // Enable rope collisions +//rope_wind_dist 0 // Do not apply CPU intensive wind to ropes +//rope_wind_dist 1000 // Apply wind to ropes until this distance +rope_averagelight 1 // Only use average light, instead of an extra max intensity average with 0 +//rope_averagelight 0 // Simplify rope lighting for weak GPUs, at the cost of a bit of CPU time + +alias ropes_off "rope_rendersolid 0; r_ropetranslucent 0; rope_solid_minalpha 0; rope_smooth 0; rope_subdiv 0; rope_collide 0; rope_wind_dist 0;setinfo ropes off" +alias ropes_low "rope_rendersolid 1; r_ropetranslucent 0; rope_solid_minalpha 0; rope_solid_minwidth 0.1; rope_smooth 0; rope_subdiv 1; rope_collide 0; rope_wind_dist 0;setinfo ropes low" +alias ropes_high "rope_rendersolid 1; r_ropetranslucent 1; rope_solid_minalpha 0.2; rope_solid_minwidth 0.1; rope_smooth 1; rope_subdiv 2; rope_collide 0; rope_wind_dist 0;setinfo ropes high" +alias ropes_ultra "rope_rendersolid 1; r_ropetranslucent 1; rope_solid_minalpha 0.2; rope_solid_minwidth 0; rope_smooth 1; rope_subdiv 7; rope_collide 1; rope_wind_dist 1000;setinfo ropes ultra" + +setinfo ropes_off "" +setinfo ropes_low "" +setinfo ropes_high "" +setinfo ropes_ultra "" + +// -------------------- +// '-- Optimization --' +// -------------------- +// These settings will optimize TF2 without having any very noticeable effects to +// the user + +fps_max 240 // Prevent a possible memory leak with unlimited FPS using fps_max 0 + // Also, some Source systems assume the FPS will not go above 300 + // Finally, using 240 is a common multiple for monitor framerates, + // which is recommended for smoothness +mat_vsync 0 // Ensure VSync is disabled by default +engine_no_focus_sleep 0 // Do not limit FPS when the engine is not focused because + // the focus detection can be buggy on some systems or while + // streaming and may limit your FPS, without you knowing +//engine_no_focus_sleep 50 // Power savings while alt-tabbed out of TF2 +r_fastzreject 1 // Renders first pass of a scene with a z-buffer on the CPU and + // then has the GPU quickly render the scene in a second pass, + // with the visible parts of the scene already calculated +r_entityclips 1 // Clip entities preferably using clip planes +disp_dynamic 0 // Do not use dynamic meshes for world geometry (displacements) +r_hunkalloclightmaps 1 // Allocate lightmaps in the hunk +r_frustumcullworld 1 // Cull on world draw +r_worldlistcache 1 // Cache some world rendering +mat_clipz 1 // Clips what is drawn for a performance improvement +mat_use_compressed_hdr_textures 1 // Use compressed HDR textures +r_occlusion 1 // Use CPU to have the GPU skip rendering models/props you cannot see +r_occludeemaxarea 1 // Skip occlusion of objects that are too large to test for +r_occluderminarea 10 // Skip occluders that are too small to block anything worth our time +mat_tonemapping_occlusion_use_stencil 0 // Do not use stencil buffer for occlusion queries +//mat_tonemapping_occlusion_use_stencil 1 // Use stencil buffer for weak GPUs +host_flush_threshold 0 // Early finish to a Xbox 360 only flush task +r_norefresh 1 // Do not store a useless and unused frame time variable +fast_fogvolume 1 // Use a fast path method to find the visible fog volume +r_pixelfog 1 // Use a pixel shader for fog if possible +//r_pixelfog 0 // Do not use a higher level pixel shader for fog on weak GPUs +mat_compressedtextures 1 // Allow for compressed textures +mat_managedtextures 1 // Use Direct3D to manage textures, uses a bit more system memory +mat_mipmaptextures 1 // Mipmap textures to optimize textures +//nb_shadow_dist 200 // Do not use shadows from far away (NextBot system) +//nb_shadow_dist 0 // Disable shadow distance +//nb_shadow_dist 400 // Default distance for NextBot shadows +cl_ShowBoneSetupEnts 0 // Ensure this debug command is disabled +sv_alternateticks 0 // Run every tick +//sv_alternateticks 1 // Skip every other tick to reduce CPU usage +mod_offline_hdr_switch 1 + +// -------------- +// '-- OpenGL --' +// -------------- +// Optimizations for OpenGL platforms (Linux and macOS) + +gl_pow2_tempmem 1 // Makes memory allocation behavior more stable +//mat_texture_reload_frame_swap_workaround 1 // Work around texture data being unnecessarily stored on some drivers by doing frame swaps + // Commented by default due to possible issues on Windows systems +//mat_texture_reload_frame_swap_workaround 0 // Skip extra frame swaps +gl_radar7954721_workaround_mixed 0 // Disable outdated cross gamma blit workaround +gl_batch_tex_creates 0 // Do not batch texture creates/destroys for more immediate OpenGL handling +gl_batch_tex_destroys 0 // ^ +gl_minimize_all_tex 1 // Minimize textures by removing mipmaps if they were not requested to keep memory usage lower +gl_minimize_rt_tex 0 // Do not try to minimize textures for RTs +gl_nullqueries 0 // Queries +gl_mtglflush_at_tof 1 // Makes frames output smoother, at slightly less FPS +gl_debug_output 0 // Disable debug messages +gl_magnify_resolve_mode 1 // Use fastest resolve mode when up scaling too +gl_paircache_rows_lg2 11 // Increase shader pair cache size +gl_paircache_ways_lg2 5 // Keep some loops small by using minimum ways size +//gl_can_resolve_flipped 1 // Enable page flipping without checking hardware support +//gl_amd_occlusion_workaround 0 // Disable AMD occlusion workaround + +// ================== +// '--- Gameplay ---' +// ================== +// Adjusts how the game behaves + +//cl_autoreload 1 // Auto reload clip +//cl_autorezoom 1 // Automatically rezoom sniper rifle +//tf_sniper_fullcharge_bell 1 // Bell sound when sniper rifle is 100% charged +//tf_medigun_autoheal 1 // Keep healing allies +//tf_remember_activeweapon 1 // Remember last held weapon +//tf_remember_lastswitched 1 // Remember quick switch weapon +//tf_respawn_on_loadoutchanges 1 // Automatically respawn on loadout changes + +// ============= +// '--- HUD ---' +// ============= +// --------------- +// '-- General --' +// --------------- +// General/misc HUD settings + +//cl_hud_playerclass_use_playermodel 0 // Disable live player model in HUD, also partially fixes animation bug +//cl_hud_playerclass_use_playermodel 1 // Enable live player model in HUD +//cl_hud_minmode 1 // HUD min mode +//hud_fastswitch 1 // Weapon switch behavior + // 0 - PC Buckets + // select weapons from the side of your screen, fire to confirm + // 1 - PC Fast Switch + // fast switch for PC buckets (no fire to confirm) + // 2 - Buckets Plus: + // fast switch + // weapon selection window comes up at the middle of your screen + // can select weapons without ammo (but not switch to them) + // 3 - Carousel scroll: + // fast switch + // slot 1 = last weapon, slot 2 = next weapon, + // slot 3 = swap weapon, slot 4 = previous weapon +//cl_software_cursor 1 // Uses a stylized cursor handled by the game instead of the OS +//tf_scoreboard_mouse_mode 2 // Use mouse mode only when clicking on the scoreboard, look around otherwise + // Currently has a bug where mouse mode does not activate when spectating +//tf_scoreboard_mouse_mode 1 // Always use mouse mode when scoreboard is open +//tf_scoreboard_mouse_mode 0 // Always look around, even when the scoreboard is open +//tf_scoreboard_alt_class_icons 1 // Alternate class icons on the scoreboard +//tf_use_match_hud 1 // Show the top player bar on all servers +tf_mm_dashboard_slide_panel_step 10 // Change the horizontal offset of the primary matchmaking panel +tf_dashboard_slide_time 0.25 // Time in seconds for dashboard transitions +tf_item_inspect_model_auto_spin 1 // Auto spin items in the inspect view +//tf_item_inspect_model_auto_spin 0 // Do not auto spin items in the inspect view +tf_item_inspect_model_spin_rate 30 // Rate at which items spin in the inspect view +tf_quest_map_tuner_wobble_magnitude 0.01 // Enable red tuner at the bottom +//tf_quest_map_tuner_wobble_magnitude 0 // Disable the red tuner on the contracker +//tf_build_menu_controller_mode 1 // Use controller style engineer build menu +//tf_disguise_menu_controller_mode 1 // Controller disguise menu +//tf_simple_disguise_menu 0 // Concise disguise menu +//tf_colorblindassist 1 // Colorblind mode +//cl_disablehtmlmotd 1 // Disable HTML MOTDs (ads, music player, rules, fancy server intros) +sv_motd_unload_on_dismissal 1 // Server will tell the player to unload the MOTD +//hud_classautokill 0 // No suicide on class change +tf_halloween_bonus_ducks_cooldown 10 // Delay in seconds before BONUS DUCKS sound again +tf_healthicon_height_offset 10 // Offset of heath icon +//tf_hud_no_crosshair_on_scope_zoom 1 // Hide crosshair on scope +tf_hud_num_building_alert_beeps 2 // Numbers of beeps when an alert pops up on an engie building +tf_rd_finale_beep_time 10 // Beep time during robot destruction victory +tf_hud_show_servertimelimit 1 // Show server map time +tf_hud_target_id_alpha 100 // Transparency of target ID +//tf_hud_target_id_disable_floating_health 0 // Show floating health bar +//tf_hud_target_id_disable_floating_health 1 // Hide floating health bar +hud_medichealtargetmarker 1 // Shows medic heal target with a small marker +tf_hud_target_id_offset 0 // Vertical offset of target ID +tf_hud_target_id_show_avatars 2 // Show avatars: 0 - never, 1 - for everyone, 2 - for friends +//tf_spectator_target_location 0 // 0 - center (default) + // 1 - bottom left + // 2 - bottom center + // 3 - bottom right +hud_freezecamhide 0 // Show the HUD during freeze-cam +//hud_freezecamhide 1 // Hide the HUD during freeze-cam +tf_scoreboard_ping_as_text 1 // Use text for ping in the scoreboard +//tf_scoreboard_ping_as_text 0 // Use inaccurate ping bars for ping in the scoreboard +//cl_hudhint_sound 0 // Disable HUD sounds +//cl_mainmenu_safemode 1 // Dev safe mode for main menu +//tf_queue_spinner_color 0 // Orange queue TF logo spinner +//tf_queue_spinner_color 1 // Blue queue TF logo spinner + +alias hud_player_model_off "cl_hud_playerclass_use_playermodel 0;setinfo hud_player_model off" +alias hud_player_model_on "cl_hud_playerclass_use_playermodel 1;setinfo hud_player_model on" + +setinfo hud_player_model_off "" +setinfo hud_player_model_on "" + +// ------------------- +// '-- Combat Text --' +// ------------------- +// Damage and healing text above players + +//hud_combattext 1 // Enable damage text +//hud_combattext_batching 1 // Collect damage into 1 number over a time interval +//hud_combattext_batching_window 0.3 // Time in seconds to collect damage +//hud_combattext_doesnt_block_overhead_text 1 // Allow CRIT! to appear +//hud_combattext_healing 1 // Show healing text +//hud_combattext_red 255 // Red value for damage text color (0 to 255) +//hud_combattext_green 0 // Green value for damage text color (0 to 255) +//hud_combattext_blue 0 // Blue value for damage text color (0 to 255) + +// ---------------- +// '-- Messages --' +// ---------------- +// Text chat and other messages + +//hud_saytext_time 10 // How long in seconds chat messages stay on screen +//hud_saytext_time 0 // Disable chat +//cl_showtextmsg 1 // Enable text messages in chat (voice lines) +//cl_showtextmsg 0 // Disable text messages +//cl_showpluginmessages 1 // Show messages from server plugins +//cl_showpluginmessages 0 // Deny messages from server plugins +//cl_chatfilters 63 // Chat Filter - enable parts of chat (not working due to a bug): + // join/leave (1), name change (2), chat (4), server messages (8), team change (16), + // achievements (32) + // Add a combination of these numbers together to enable that combination + // for example, name change (2) + team change (16) = 18 + // 0 for everything disabled +//cl_chatfilters 0 // Disable all chat messages +//cl_chatfilters 59 // Disable just user chat +cl_mute_all_comms 1 // Disable text and voice for muted players +//cl_mute_all_comms 0 // Disable voice for muted players +//hud_deathnotice_time 5.5 // How long in seconds a killfeed item stays on screen +tf_chat_popup_hold_time 2 // How long party messages appear on the main menu + +alias messages_enable "hud_saytext_time 10; cl_showtextmsg 1; cl_showpluginmessages 1; cl_chatfilters 63;setinfo messages enable" +alias messages_disable "hud_saytext_time 0; cl_showtextmsg 0; cl_showpluginmessages 0; cl_chatfilters 0;setinfo messages disable" +alias messages_userchat "hud_saytext_time 10; cl_showtextmsg 1; cl_showpluginmessages 0; cl_chatfilters 4;setinfo messages userchat" + +setinfo messages_enable "" +setinfo messages_disable "" +setinfo messages_userchat "" + +alias messages messages_enable + +alias killfeed_off "hud_deathnotice_time 0;setinfo killfeed off" +alias killfeed_on "hud_deathnotice_time 5.5;setinfo killfeed on" + +setinfo killfeed_off "" +setinfo killfeed_on "" + +alias killfeed killfeed_on + +// ---------------- +// '-- Backpack --' +// ---------------- +// Inventory, economy and backpack + +tf_time_loading_item_panels 0.0003 // Decrease time spent per frame loading item panels +cl_spec_carrieditems 1 // Show spectated player items +//cl_spec_carrieditems 0 // Do not show spectated player items +tf_backpack_page_button_delay 0.25 // Decrease button delay for moving items +//tf_item_selection_panel_sort_type 1 // Alphabetically sort loadout options +//cl_showbackpackrarities 1 // Show item rarity color borders in backpack + +// ----------------- +// '-- Crosshair --' +// ----------------- +// Aiming recticle or crosshair + +//cl_crosshairalpha 100 // Crosshair translucency (0 to 255) +//cl_crosshairalpha 255 // Disable transparency for lowend computers +//cl_crosshair_red 156 // Crosshair red (0 to 255) +//cl_crosshair_green 39 // Crosshair green (0 to 255) +//cl_crosshair_blue 176 // Crosshair blue (0 to 255) +//cl_crosshair_scale 64 // Size of crosshair +//cl_crosshair_file 0 // Style of crosshair +//cl_dynamiccrosshair 1 // Change crosshair according to weapon state (ambassador) +//cl_observercrosshair 0 // Disable crosshair in spectator +//crosshair 0 // Disable crosshair + +// ------------------- +// '-- Killstreaks --' +// ------------------- +// Killstreak messages from weapons + +cl_hud_killstreak_display_alpha 100 // Adjust the translucency of the killstreak banner (0 to 255) +//cl_hud_killstreak_display_alpha 255 // Disable transparency for lowend computers +cl_hud_killstreak_display_fontsize 0 // Killstreak font size (0 to 2) +cl_hud_killstreak_display_time 2.25 // Killstreak display time in seconds +//cl_hud_killstreak_display_time 0 // Disable killstreak banner + +alias killstreaks_off "cl_hud_killstreak_display_time 0;setinfo killstreaks off" +alias killstreaks_low "cl_hud_killstreak_display_alpha 255; cl_hud_killstreak_display_time 2.25;setinfo killstreaks low" +alias killstreaks_high "cl_hud_killstreak_display_alpha 100; cl_hud_killstreak_display_time 2.25;setinfo killstreaks high" + +setinfo killstreaks_off "" +setinfo killstreaks_low "" +setinfo killstreaks_high "" + +alias killstreaks killstreaks_high + +// --------------------- +// '-- Notifications --' +// --------------------- +// In-game notifications for trade offers, requests, events, etc + +cl_notifications_max_num_visible 1 // Reduce number of visible notifications +//cl_notifications_max_num_visible 3 // Default number of visible notifications +cl_notifications_move_time 0.1 // Make notification transition shorter +//cl_notifications_show_ingame 0 // Do not show notifications in game +tf_notifications_push_bottom 0 // Keep notifications at the top of the stack +//tf_notifications_push_bottom 1 // Push notifications to the bottom of the stack +cl_vote_ui_active_after_voting 0 // Hide the vote UI after voting +//cl_vote_ui_active_after_voting 1 // Delay hiding the vote UI after voting +cl_vote_ui_show_notification 0 // Hide voting notifications +//cl_vote_ui_show_notification 1 // Show voting notifications +tf_hud_notification_duration 2 // How long notifications should display + +// ----------------- +// '-- Contracts --' +// ----------------- +// Contracts as part of campaigns + +//tf_contract_competitive_show 2 // During competitive matches, contract visibility: + // 0 - never + // 1 - all + // 2 - active only +//tf_contract_progress_show 1 // During all matches, contract visibility: + // 0 - never + // 1 - all + // 2 - active only +tf_quest_notification_line_delay 0.2 // Shorter voice line delay after contract +//tf_quest_notification_line_delay 1 // Default voice line delay + +// -------------------- +// '-- Achievements --' +// -------------------- +// Achievement effects and HUD tracker + +hud_achievement_glowtime 1 // Glow achievements for a little while shorter +hud_achievement_tracker 2 // Achievements tracked at once +hud_achievement_count 4 // Max achievements shown on HUD + +// ------------ +// '-- Info --' +// ------------ +// Additional HUD elements for extra info +// Adding additional HUD elements decreases FPS by a small amount + +//cl_showfps 2 // FPS meter, 1 = show, 2 = smooth +//cl_showpos 1 // Current position, angle and velocity +//cl_showbattery 1 // Battery meter +//cl_show_num_particle_systems 1 // Show number of particle systems +cl_mvm_wave_status_visible_during_wave 1 // MvM wave information during the wave + +alias debug_on "cl_showfps 2; cl_showpos 1; cl_showbattery 1; cl_show_num_particle_systems 1; developer 1;setinfo debug on" +alias debug_off "cl_showfps 0; cl_showpos 0; cl_showbattery 0; cl_show_num_particle_systems 0; developer 0;setinfo debug off" +alias debug_on_partial "cl_showfps 1; cl_showpos 1; cl_showbattery 1; cl_show_num_particle_systems 0;setinfo debug on_partial" + +alias debug debug_off + +// ----------------------- +// '-- Closed Captions --' +// ----------------------- +// Customization of notifications of sounds and voices in closed captions + +//cc_linger_time 1 // Seconds for captions to stay on screen +//cc_minvisibleitems 1 // Minimum captions to shown +//cc_predisplay_time 0 // Delay between the sound and showing the caption +//cc_sentencecaptionnorepeat 4 // How many times a caption can repeat +//snd_vox_captiontrace 1 // show sentence IDs when there is no caption + +// ---------------- +// '-- Netgraph --' +// ---------------- +// Advanced HUD display of network info and FPS + +//net_graph 0 // netgraph display + // 0 = no graph, 1 = text only, 2 = graph, 3 = legend + choke/loss, 4 = server perf stats +//net_graphpos 1 // the horizontal position of the netgraph + // 0 = left, 1 = right, 2 = middle + // anything else will set the x coordinate of the graph's left edge +//net_graphheight 64 // height of the text part of the graph +//net_graphproportionalfont 1 // scale fonts as the screen resolution goes up +//net_scale 5 // the height of the graph portion +net_graphsolid 0 // draw height ticks as single ticks (small optimization) +//net_graphsolid 1 // Revert back to the Half-Life 1 behavior of drawing a full rectangle +//net_graphtext 1 // draw text fields +//net_graphmsecs 400 // over how many milliseconds should the text area measure +//net_graphshowlatency 1 // show the latency part of the graph +//net_graphshowinterp 1 // show the interpolation part of the graph + +// --------------- +// '-- Console --' +// --------------- +// Developer console customization + +con_nprint_bgalpha 100 // Console translucency (0 to 255) for special debug messages +//con_nprint_bgalpha 255 // Disable transparency for lowend computers +con_nprint_bgborder 1 // Console border for special debug messages +//con_nprint_bgborder 0 // Disable border on lowend computers + +// ============== +// '--- View ---' +// ============== +// The character view and viewmodel + +fov_desired 90 // See more of the battlefield +//fov_desired 75 // Render less for very lowend computers +//r_drawviewmodel 1 // Draw weapon viewmodel model +//r_drawviewmodel 0 // Hide weapon viewmodel +//viewmodel_fov 70 // FOV for your viewmodel, recommend to adjust from 54 to 70 +//cl_flipviewmodels 0 // Right viewmodels, shoot right of a corner +//cl_flipviewmodels 1 // Left viewmodels (sometimes broken visuals), shoot left of a corner +//tf_use_min_viewmodels 0 // Use default viewmodel position +//tf_use_min_viewmodels 1 // Move viewmodel to cover less of the screen +//cl_first_person_uses_world_model 0 // Draw viewmodel +//cl_first_person_uses_world_model 1 // Draw character world model instead of viewmodel +//tf_medieval_thirdperson 1 // Third person view in medieval mode +//tf_taunt_first_person 1 // First person taunt +//glow_outline_effect_enable 1 // Enable ally and objective xrays +//glow_outline_effect_enable 0 // Disable all xrays +//tf_enable_glows_after_respawn 1 // Enable spawn xrays +//tf_enable_glows_after_respawn 0 // Disable spawn xrays +//tf_spec_xray_disable 0 // Enable xrays while spectating +//tf_spec_xray_disable 1 // Disable xrays while spectating +tf_spectate_pyrovision 0 // Do not force use pyrovision in spectator mode +//tf_spectate_pyrovision 1 // Spectate in pyrovision +//spec_autodirector 0 // Choose best view mode automatically +//tf_romevision_opt_in 1 // Opt into Romevision +//tf_sheen_alpha_firstperson 0 // Disable sheens + +alias xrays_off "glow_outline_effect_enable 0; tf_enable_glows_after_respawn 0; tf_spec_xray_disable 1;setinfo xrays off" +alias xrays_low "glow_outline_effect_enable 0; tf_enable_glows_after_respawn 1; tf_spec_xray_disable 0;setinfo xrays low" +alias xrays_high "glow_outline_effect_enable 1; tf_enable_glows_after_respawn 1; tf_spec_xray_disable 0;setinfo xrays high" + +setinfo xrays_off "" +setinfo xrays_low "" +setinfo xrays_high "" + +// =========================== +// '--- Demos and Replays ---' +// =========================== +// Adjusts the recording and playback of demos and replays + +// ------------- +// '-- Demos --' +// ------------- + +//demo_recordcommands 1 // Record console commands in your demos +//demo_fov_override 0 // FOV override for demo playback, if non-zero + +// -------------------- +// '-- Demo Support --' +// -------------------- + +//ds_enable 0 // 0 - Manual + // 1 - Record competitive matchmaking + // 2 - Record everything + // 3 - Record mp_tournament matches +//ds_autodelete 1 // Automatically delete demos with no bookmarks or killstreaks +//ds_dir demos // Put all recorded demos in this folder (under tf/) +//ds_kill_delay 15 // Max time between kills to count for a killstreak +//ds_log 1 // Log killstreaks and bookmarks to an associated text file +//ds_mark name // Create a bookmark with a single word name +//ds_min_streak 4 // Minimum killstreak count before logging it +//ds_notify 0 // Output when getting a killstreak or bookmarking + // 0 - to console + // 1 - to console and chat + // 2 - to console and HUD +//ds_prefix "" // Prefix file names with this text +//ds_record // Start recording a demo +//ds_stop // Stop recording a demo +//ds_screens 1 // Take a screenshot of the scoreboard when the round ends +//ds_sound 1 // Play the filming sound effect for when demo support starts and stops recording + +// --------------- +// '-- Replays --' +// --------------- + +tf_replay_pyrovision 0 // Do not force use pyrovision in replays +//tf_replay_pyrovision 1 // Watch replays in pyrovision +//replay_cache_client_ragdolls 1 // Record client side ragdolls +//replay_voice_during_playback 1 // Play voice chat during replay playback +//replay_rendersetting_renderglow 1 // Render xray effect + +// ============== +// '--- Misc ---' +// ============== +// Settings that do not fit into a category + +bugreporter_uploadasync 1 // Upload bug reporter attachments asynchronously +ai_frametime_limit 0.0152 // Use simpler NPC AI if the frametime is too low, useful for Source singleplayer and mods +//ai_frametime_limit 50 // Do not use simpler AI + +// ================ +// '--- Memory ---' +// ================ +// Adjustments to memory allocation + +mem_max_heapsize_dedicated 128 // Increase memory cap on 512MB systems +mem_max_heapsize 320 +lzma_persistent_buffer 1 // Keep the LZMA compression system in memory to prevent reloads of it +cl_always_flush_models 0 // Keep models loaded in between map loads and prevent crashes from model flushing +//cl_always_flush_models 1 // Remove models from memory every map load to keep memory usage low +mat_levelflush 1 // Clear temporary memory to prevent overloading memory stores +sv_forcepreload 0 // Disable harmful force preload enabled in other configs +mat_bufferprimitives 1 // Skip flushing of primitives when meshes draw + +// ==================== +// '--- Filesystem ---' +// ==================== +// ------------- +// '-- Sizes --' +// ------------- +// Set buffer and file read sizes + +filesystem_buffer_size 8192 // Use a 8KB buffer for the filesystem +//filesystem_max_stdio_read 64 // Use a higher max read cap (64MB) +filesystem_max_stdio_read 31 // Use standard read cap + +// --------------- +// '-- General --' +// --------------- +// Set up filesystem parameters + +filesystem_native 1 // Use native filesystem calls if available +filesystem_unbuffered_io 1 // Allow for unbuffered IO where appropriate since it can be async + +// ------------------- +// '-- Model Cache --' +// ------------------- +// Control loading and caching models + +mod_load_anims_async 1 // Enable async animation loading +mod_load_mesh_async 1 // Enable async mesh loading +mod_load_vcollide_async 0 // Enable async vcollide loading +mod_lock_mdls_on_load 0 // Do not lock models due to some issues with them being locked +mod_forcetouchdata 1 // Put all model data into cache on load +mod_touchalldata 1 // Load submodels +mod_forcedata 1 // Cache submodel data + +// =============== +// '--- Sound ---' +// =============== +// ----------------- +// '-- Hitsounds --' +// ----------------- +// Damage sound played on hit and on kill + +//tf_dingalingaling_lasthit 1 // Play killsounds +//tf_dingaling_lasthit_pitchmaxdmg 65 // Pitch for killsound on >=150 damage +//tf_dingaling_lasthit_pitchmindmg 127 // Pitch for killsound on <=10 damage +//tf_dingaling_lasthit_volume 0.7 // Killsound volume +//tf_dingalingaling_last_effect 0 // Which sound to use for the killsound +//tf_dingaling_lasthit_pitch_override -1 // Pitch for all killsounds, if set +//tf_dingalingaling 1 // Play hitsounds +//tf_dingaling_pitchmaxdmg 65 // Pitch for hitsound on >=150 damage +//tf_dingaling_pitchmindmg 127 // Pitch for hitsound on <=10 damage +//tf_dingalingaling_repeat_delay 0 // The delay in seconds before playing the hitsound again +//tf_dingaling_volume 0.7 // Hitsound volume +//tf_dingalingaling_effect 0 // Which sound to use for the hitsound +//tf_dingaling_pitch_override -1 // Pitch for all hitsounds, if set +tf_dingalingaling_repeat_delay 0.008 + +// ----------------- +// '-- Threading --' +// ----------------- +// Threading options to take advantage of modern CPUs for the sound system + +snd_async_fullyasync 1 // Play sounds independently of main engine work +snd_async_minsize 0 // Fast async check when snd_async_fullyasync is enabled +snd_mix_async 1 // Use another thread to mix sounds +//snd_mix_async 0 // Disable async mixing on CPUs with less than 4 threads +phonemedelay 0 // Do not delay lip sync a lot with an async sound system + +// --------------- +// '-- General --' +// --------------- +// General/misc sound settings + +//volume 1 // Set the master volume +//snd_musicvolume 1 // Set music volume +snd_delay_sound_shift 0.01 // Give some time to allow for better synced + // sounds by providing a little bit of extra room on + // the sound processing time calculations +//snd_delay_sound_shift 0.03 // Allow for more variance in sounds processing + // delays on slow CPUs +snd_mixahead 0.066 // Balance between sound delay and less demand on the CPU +//snd_mixahead 0.05 // Keep sounds for 0.05 seconds to mix them +//snd_mixahead 0.15 // Use a longer value to batch mixing loads +//cl_soundemitter_flush // Command to clear out the loaded sounds file +//cl_soundscape_flush // Command to clear out the loaded soundscapes file + +// --------------- +// '-- Quality --' +// --------------- +// Adjust the quality of sound + +//snd_pitchquality 0 // Use linear mixer for sound, performance benefit +//snd_pitchquality 1 // Use interpolated mixer for sound, sound quality increase +//snd_disable_mixer_duck 0 // Enable mixing sounds to adjust volume +//snd_disable_mixer_duck 1 // Disable some sounds being mixed to be louder than others +//snd_surround_speakers -1 // Autodetect speaker configuration from OS +//snd_surround_speakers 0 // Force headphones +//snd_surround_speakers 2 // Force mono/stereo +//snd_surround_speakers 4 // Force quad +//snd_surround_speakers 5 // Force 5.1 +//snd_surround_speakers 7 // Force 7.1 +//windows_speaker_config 4 // Windows speaker configuration + +// ---------------------- +// '-- Spatialization --' +// ---------------------- +// Adjust spatialization (sound travel and volume falloff) and DSP effects (sound filters) + +//dsp_enhance_stereo 0 // Disable extra spatial DSP effects and delays +//dsp_enhance_stereo 1 // Enable to apply spatial DSP effects to all channels (for use with stereo, not surround sound) +//dsp_slow_cpu 0 // Use enhanced positional effects +//dsp_slow_cpu 1 // Disable initialization of enhanced spatialization +//snd_spatialize_roundrobin 1 // Spatialize sounds every 2 frames, less performance benefit. +//snd_spatialize_roundrobin 3 // Spatialize sounds every 8 frames (2^3) using round-robin algorithm. + // Pretty reasonable performance benefit, but delay in spatialization. +//snd_spatialize_roundrobin 0 // Spatialize every frame +//dsp_room 0 // Disable automatic DSP +//dsp_room 1 // Enable automatic DSP, adjusts DSP according to the room type/size you are in +//dsp_facingaway 0 // Disable the facing away DSP effect +//dsp_facingaway 30 // Use a low pass filter for sounds you are facing away from +//dsp_facingaway 31 // Use a low pass filter + 80ms delay for sounds you are facing away from +//dsp_speaker 50 // Administrator effect (can be 50 to 59) +//dsp_speaker 0 // Disable administrator effect +//dsp_water 14 // Water muffling effect (small delay) +//dsp_water 15 // Water muffling effect (medium delay) +//dsp_water 16 // Water muffling effect (large delay) +//dsp_water 0 // Disable water muffling effect +//dsp_spatial 40 // Spatial delay effect for positional audio +//dsp_spatial 0 // Disable spatial effect + +// -------------------- +// '-- Optimization --' +// -------------------- +// Optimizations with no noticeable effect on the listener + +snd_lockpartial 1 // Use interleaved, partial locking sound algorithm +snd_cull_duplicates 0 // Do not skip playing duplicate sounds +//snd_cull_duplicates 1 // Only play one of each sound at a time +voice_steal 2 // Reuse unimportant sound channels, increases FPS and sound quality +voice_buffer_ms 200 // Buffer voice stream for better quality, at a slight delay +snd_noextraupdate 1 // Do not update sound twice +//snd_defer_trace 1 // Defer DSP spatialization with tracing to the next frame +//snd_defer_trace 0 // Immediately trace on the first frame +snd_async_spew_blocking 0 // Disable async spew +dsp_enhance_stereo 0 +snd_defer_trace 1 +snd_noextraupdate 1 + +alias sound_low "snd_disable_mixer_duck 1; snd_pitchquality 0; dsp_slow_cpu 1; snd_spatialize_roundrobin 3; dsp_room 0; dsp_facingaway 0; dsp_speaker 0; dsp_water 0; dsp_spatial 0; setinfo sound low" +alias sound_medium "snd_disable_mixer_duck 0; snd_pitchquality 0; dsp_slow_cpu 1; snd_spatialize_roundrobin 1; dsp_room 0; dsp_facingaway 0; dsp_speaker 50; dsp_water 0; dsp_spatial 40; setinfo sound medium" +alias sound_high "snd_disable_mixer_duck 0; snd_pitchquality 1; dsp_slow_cpu 0; snd_spatialize_roundrobin 1; dsp_room 0; dsp_facingaway 30; dsp_speaker 50; dsp_water 14; dsp_spatial 40; setinfo sound high" +alias sound_very_high "snd_disable_mixer_duck 0; snd_pitchquality 1; dsp_slow_cpu 0; snd_spatialize_roundrobin 0; dsp_room 0; dsp_facingaway 30; dsp_speaker 50; dsp_water 14; dsp_spatial 40; setinfo sound very_high" +alias sound_ultra "snd_disable_mixer_duck 0; snd_pitchquality 1; dsp_slow_cpu 0; snd_spatialize_roundrobin 0; dsp_room 1; dsp_facingaway 31; dsp_speaker 59; dsp_water 16; dsp_spatial 40; setinfo sound ultra" + +setinfo sound_low "" +setinfo sound_medium "" +setinfo sound_high "" +setinfo sound_very_high "" +setinfo sound_ultra "" + +// =============== +// '--- Input ---' +// =============== +// ---------------- +// '-- Keyboard --' +// ---------------- +// Keyboard adjustments + +//in_usekeyboardsampletime 1 // Determine key time from smoothed frametime for keyboard look only +//cl_yawspeed 210 // Yaw speed for keyboard look (+left, +right) +//cl_pitchspeed 225 // Pitch speed for keyboard look (+lookup, +lookdown) + +// ------------- +// '-- Mouse --' +// ------------- +// Mouse movement and aiming + +//m_pitch 0.022 // Pitch factor +//m_yaw 0.022 // Yaw factor +//sensitivity 3 // Mouse sensitivity +//m_limitedcapture_workaround 1 // Workaround for mouse capture issues +//m_filter 0 // Do not average mouse input over two frames, more responsive mouse input +//m_filter 1 // Average mouse input over two frames, more stable mouse input with high FPS variability +//m_mousespeed 0 // Disable Windows mouse acceleration (-noforcemspd) +//m_mouseaccel1 0 // ^ (-noforcemaccel) +//m_mouseaccel2 0 // ^ (-noforcemaccel) +//m_rawinput 1 // Use raw input from mouse +//m_customaccel 0 // custom mouse acceleration + // 0 - no custom acceleration + // 1 - mouse acceleration = min(m_customaccel_max, pow(raw_mouse_delta, m_customaccel_exponent) * m_customaccel_scale + sensitivity) + // 2 - Same as 1, with but x and y sensitivity are scaled by m_pitch and m_yaw respectively. + // 3 - mouse acceleration = pow(raw_mouse_delta, m_customaccel_exponent - 1) * sensitivity +//m_customaccel_scale 0.04 // ^ +//m_customaccel_max 0 // ^ +//m_customaccel_exponent 1 // ^ +//zoom_sensitivity_ratio 0.7934714 // Use same sensitivity as when unscoped +cl_idealpitchscale 1.3 // When changing pitch, use this rate + +// ------------------------ +// '-- Steam Controller --' +// ------------------------ +// Controls Steam Controller/Steam Input + +//sc_joystick_map 0 // Scaled Cross analog joystick deadzone and extents +//sc_joystick_map 1 // Concentric Mapping to Square analog joystick deadzone and extents +//sc_look_sensitivity_scale 1 // Steam controller sensitivity scale +//sc_pitch_sensitivity 1 // Additional pitch specific sensitivty +//sc_pitch_sensitivity_default 1 // Default additional pitch specific sensitivity +//sc_yaw_sensitivity 1 // Additional yaw specific sensitivity +//sc_yaw_sensitivity_default 1 // Default additional yaw specific sensitivity +//sc_show_binding_panel // Launch Steam Controller binding UI +//sc_status // Show Steam Controller status + +// ------------------- +// '-- Bumper Cars --' +// ------------------- +// Input during bumper cars + +//tf_halloween_kart_pitch 10 // Pitch value for the camera +//tf_halloween_kart_pitch_fast_follow_rate 10 // Follow speed for the camera when fast +//tf_halloween_kart_pitch_slow_follow_rate 0.5 // Follow speed for the camera when slow + +echo " " +echo " " +echo " " +echo " " +echo " ******************************* " +echo " ******************************* " +echo " ** mastercomfig 6.9.0 loaded ** " +echo " ** July 14 2018 ** " +echo " ******************************* " +echo " ******************************* " +echo " " +echo " " +echo " " +echo " " +alias version_comfig "echo mastercomfig version: 6.9.0 | July 14 2018" + +alias game_override "cheap_water_override; detail_props_override" // Set game override alias + +// --------------------------------- +// '-- User-Overrideable Aliases --' +// --------------------------------- + +alias class_config_scout "exec scout_c" +alias class_config_soldier "exec soldier_c" +alias class_config_pyro "exec pyro_c" +alias class_config_demoman "exec demoman_c" +alias class_config_heavyweapons "exec heavyweapons_c" +alias class_config_engineer "exec engineer_c" +alias class_config_medic "exec medic_c" +alias class_config_sniper "exec sniper_c" +alias class_config_spy "exec spy_c" + +alias game_overrides_c "exec game_overrides_c" +alias listenserver_c "exec listenserver_c" +// Medium high preset +// Disables unoptimized features and optimize the game without making it look bad + +alias lod lod_medium_high +alias lighting lighting_medium_high +alias shadows shadows_off +alias effects effects_medium +alias water water_medium_high +alias particles particles_low +alias aa aa_medium +alias aa_msaa "" +alias post_processing post_processing_off +alias pyrovision pyrovision_low +alias motion_blur motion_blur_off +alias texture_filter texture_filter_trilinear +alias characters characters_medium_high +alias decals decals_low +alias decals_models decals_models_off +alias decals_art decals_art_on +alias sprays sprays_on +alias gibs gibs_low +alias ragdolls ragdolls_off +alias textures textures_high +alias texture_blending texture_blending_on +alias bumpmap bumpmap_on +alias specular specular_on +alias props props_medium +alias ropes ropes_low +alias xrays xrays_high +alias sound sound_high +alias messages messages_enable +alias 3dsky 3dsky_on +alias jigglebones jigglebones_on +alias hud_player_model hud_player_model_off + +echo "Medium High preset selected" diff --git a/heavyweapons.cfg b/heavyweapons.cfg new file mode 100644 index 0000000..21f4a42 --- /dev/null +++ b/heavyweapons.cfg @@ -0,0 +1,8 @@ +//heavy settings +//Made with cfg.tf - custom Team Fortress 2 config generator + +exec binds + +bind "1" "slot1;viewmoddelstate" +bind "2" "slot2;viewmoddelstate_flipped" +bind "3" "slot3;viewmoddelstate_flipped" diff --git a/local-map.cfg b/local-map.cfg new file mode 100644 index 0000000..4fb385f --- /dev/null +++ b/local-map.cfg @@ -0,0 +1,8 @@ +//CustomConfig +map mvm_ghost_town +// map plr_hightower +host_thread_mode 0 +mp_disable_respawn_times 1 +tf_forced_holiday 2 +mp_teams_unbalance_limit 99 +tf_mvm_min_players_to_start 1 diff --git a/medic.cfg b/medic.cfg new file mode 100644 index 0000000..2d57022 --- /dev/null +++ b/medic.cfg @@ -0,0 +1,10 @@ +//medic settings +//Made with cfg.tf - custom Team Fortress 2 config generator + +exec binds +bind "1" "slot1;viewmoddelstate" +bind "2" "slot2;viewmoddelstate_flipped" +bind "3" "slot3;viewmoddelstate_flipped" + +bind mouse5 +attack3 +bind mouse4 +use_action_slot_item \ No newline at end of file diff --git a/network.cfg b/network.cfg new file mode 100644 index 0000000..55c4ca8 --- /dev/null +++ b/network.cfg @@ -0,0 +1,11 @@ +//network settings +//Made with cfg.tf - custom Team Fortress 2 config generator + +cl_updaterate 66 +cl_cmdrate 66 +rate 196608 + +cl_interp 0 +cl_interp_ratio 1 + +cl_smooth 1 diff --git a/pyro.cfg b/pyro.cfg new file mode 100644 index 0000000..09e8677 --- /dev/null +++ b/pyro.cfg @@ -0,0 +1,9 @@ +//pyro settings +//Made with cfg.tf - custom Team Fortress 2 config generator +exec binds +bind "1" "slot1;viewmoddelstate" +bind "2" "slot2;viewmoddelstate_flipped" +bind "3" "slot3;viewmoddelstate_flipped" + + + diff --git a/saxtonhale.cfg b/saxtonhale.cfg new file mode 100644 index 0000000..b61f23f --- /dev/null +++ b/saxtonhale.cfg @@ -0,0 +1,24 @@ +//CustomConfig +//sv_cheats 1 +// addcond 74 +//addcond 56 +//addcond 13 +//addcond 16 +//addcond 20 +//addcond 21 +//addcond 32 +//addcond 60 +//addcond 59 +//addcond 58 +//addcond 72 +//addcond 6 +//addcond 91 +//addcond 97 +//addcond 109 +//addcond 130 + +// host_timescale 10 +bind mouse3 "ent_create tank_boss speed 400 modelscale 0.3" +bind mouse4 "ent_fire !picker setbuilder !player; ent_create obj_dispenser teamnum 2 defaultupgrade 2 spawnflags 4" +bind mouse5 "ent_create headless_hatman teamnum 2 modelscale 4" +currency_give 999999 diff --git a/scout.cfg b/scout.cfg new file mode 100644 index 0000000..5c2d31d --- /dev/null +++ b/scout.cfg @@ -0,0 +1,9 @@ +//scout settings +//Made with cfg.tf - custom Team Fortress 2 config generator +exec binds +bind "1" "slot1;viewmoddelstate" +bind "2" "slot2;viewmoddelstate" +bind "3" "slot3;viewmoddelstate_flipped" + + + diff --git a/settings.cfg b/settings.cfg new file mode 100644 index 0000000..1048a58 --- /dev/null +++ b/settings.cfg @@ -0,0 +1,101 @@ +//tf2 settings +//Made with cfg.tf - custom Team Fortress 2 config generator + +//Autoheal, min viewmodels, fastswitch etc. + +con_enable 1 +developer 0 +///--- + +fov_desired 90 +viewmodel_fov 100 +viewmodel_fov_demo 75 + +tf_use_min_viewmodels 1 + +///--- + +hud_medicautocallers 1 +// 100 - 20.5*2 (2 small first aid kits) +hud_medicautocallersthreshold 59 +///--- + +hud_combattext_batching 1 +hud_combattext_batching_window 0.7 +///--- + +tf_dingalingaling 1 +tf_dingalingaling_repeat_delay 0.0 +tf_dingaling_volume 1 +tf_dingaling_pitchmindmg 75 +tf_dingaling_pitchmaxdmg 195 + +tf_dingalingaling_lasthit 1 +tf_dingaling_lasthit_volume 1 +tf_dingaling_lasthit_pitchmindmg 100 +tf_dingaling_lasthit_pitchmaxdmg 100 +///--- + +tf_remember_activeweapon 1 +tf_remember_lastswitched 1 +m_rawinput 1 +///--- + +ds_enable 0 +ds_dir demos +ds_notify 1 +ds_sound on +ds_min_streak 4 +///--- + + +cl_training_class_unlock_all +// > Bitfield representing what classes have been used to complete training. +// 111 111 111 +cl_training_completed_with_classes 511 + +tf_training_has_prompted_for_forums 1 +tf_training_has_prompted_for_loadout 1 +tf_training_has_prompted_for_offline_practice 1 +tf_training_has_prompted_for_options 1 +tf_training_has_prompted_for_training 1 + +tf_explanations_backpackpanel 1 +tf_explanations_charinfo_armory_panel 1 +tf_explanations_charinfopanel 1 +tf_explanations_craftingpanel 1 +tf_explanations_discardpanel 1 +tf_explanations_store 1 + +tf_show_preset_explanation_in_class_loadout 0 +tf_show_taunt_explanation_in_class_loadout 0 + +tf_casual_welcome_hide_forever 1 +tf_comp_welcome_hide_forever 1 +tf_matchmaking_ticket_help 0 +tf_show_maps_details_explanation_count 0 + +cl_ask_blacklist_opt_out 1 +cl_ask_favorite_opt_out 1 + +sb_dontshow_maxplayer_warning 1 +cl_hud_playerclass_playermodel_showed_confirm_dialog 1 +tf_mvm_tabs_discovered 3 +tf_coach_request_nevershowagain 1 +///--- + +//Advanced options +hud_fastswitch 1 +cl_autoreload 1 +tf_colorblindassist 0 +cl_use_tournament_specgui 0 +cl_hud_playerclass_use_playermodel 1 +cl_disablehtmlmotd 0 +hud_classautokill 1 +tf_medigun_autoheal 1 +hud_medichealtargetmarker 1 +tf_simple_disguise_menu 0 +cl_autorezoom 1 +tf_sniper_fullcharge_bell 1 +tf_hud_no_crosshair_on_scope_zoom 1 +tf_scoreboard_ping_as_text 1 diff --git a/sniper.cfg b/sniper.cfg new file mode 100644 index 0000000..b3d3681 --- /dev/null +++ b/sniper.cfg @@ -0,0 +1,7 @@ +//sniper settings +//Made with cfg.tf - custom Team Fortress 2 config generator +exec binds +bind "1" "slot1;viewmoddelstate" +bind "2" "slot2;viewmoddelstate" +bind "3" "slot3;viewmoddelstate_flipped" + diff --git a/soldier.cfg b/soldier.cfg new file mode 100644 index 0000000..ce84dc4 --- /dev/null +++ b/soldier.cfg @@ -0,0 +1,10 @@ +//soldier settings +//Made with cfg.tf - custom Team Fortress 2 config generator +exec binds +bind "1" "slot1;viewmoddelstate" +bind "2" "slot2;viewmoddelstate" +bind "3" "slot3;viewmoddelstate_flipped" + + + + diff --git a/spy.cfg b/spy.cfg new file mode 100644 index 0000000..ef6a13a --- /dev/null +++ b/spy.cfg @@ -0,0 +1,8 @@ +//spy settings +//Made with cfg.tf - custom Team Fortress 2 config generator +exec binds + +bind "1" "slot1;viewmoddelstate" +bind "2" "slot2;viewmoddelstate" +bind "3" "slot3;viewmoddelstate_flipped" +bind "4" "slot4;viewmoddelstate_flipped" diff --git a/tweaks/confilter.cfg b/tweaks/confilter.cfg new file mode 100644 index 0000000..639f4df --- /dev/null +++ b/tweaks/confilter.cfg @@ -0,0 +1,5 @@ +//filter out "Error" from console +//Made with cfg.tf - custom Team Fortress 2 config generator + +con_filter_enable 1 +con_filter_text_out "Error" diff --git a/tweaks/null.cfg b/tweaks/null.cfg new file mode 100644 index 0000000..dd04d89 --- /dev/null +++ b/tweaks/null.cfg @@ -0,0 +1,30 @@ +//null-cancelling movement script +//Made with cfg.tf - custom Team Fortress 2 config generator + +alias null "" + +alias +nmov_forward "-back ; +forward; alias nmov_reforward +forward" +alias +nmov_back "-forward; +back ; alias nmov_reback +back" + +alias -nmov_forward "-forward; nmov_reback ; alias nmov_reforward null" +alias -nmov_back "-back ; nmov_reforward; alias nmov_reback null" +///--- + +alias +nmov_moveleft "-moveright; +moveleft ; alias nmov_removeleft +moveleft" +alias +nmov_moveright "-moveleft ; +moveright; alias nmov_removeright +moveright" + +alias -nmov_moveleft "-moveleft ; nmov_removeright; alias nmov_removeleft null" +alias -nmov_moveright "-moveright; nmov_removeleft ; alias nmov_removeright null" +///--- + +alias nmov_reforward null +alias nmov_reback null + +alias nmov_removeleft null +alias nmov_removeright null +///--- + +bind w +nmov_forward +bind s +nmov_back +bind a +nmov_moveleft +bind d +nmov_moveright diff --git a/tweaks/scripts.cfg b/tweaks/scripts.cfg new file mode 100644 index 0000000..1a6b7a7 --- /dev/null +++ b/tweaks/scripts.cfg @@ -0,0 +1,8 @@ +//CustomConfig +echo ............................................................................................................ +echo Loaded Custom viewmoddelstatmap +alias toggleviewmoddel toggleviewmoddel_on +alias toggleviewmoddel_on "alias viewmoddelstate "r_drawviewmodel 1";alias viewmoddelstate_flipped "r_drawviewmodel 1"; alias toggleviewmoddel toggleviewmoddel_off;echo Changed viewmoddelstate To On" +alias toggleviewmoddel_off "alias viewmoddelstate "r_drawviewmodel 0";alias viewmoddelstate_flipped "r_drawviewmodel 1"; alias toggleviewmoddel toggleviewmoddel_on;echo Changed viewmoddelstate To Off" + +toggleviewmoddel_off diff --git a/tweaks/tabgraph.cfg b/tweaks/tabgraph.cfg new file mode 100644 index 0000000..c9a6ef0 --- /dev/null +++ b/tweaks/tabgraph.cfg @@ -0,0 +1,10 @@ +//net_graph 4 on tab; toggle on - +//Made with cfg.tf - custom Team Fortress 2 config generator + +alias +tabgraph "+showscores; net_graph 4" +alias -tabgraph "-showscores; net_graph 0; timeleft" + +alias graphtoggle incrementvar net_graph 0 4 4 + +bind tab +tabgraph +bind - graphtoggle