Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.


Warning for game developers: PCGamingWiki staff members will only ever reach out to you using the official press@pcgamingwiki.com mail address.
Be aware of scammers claiming to be representatives or affiliates of PCGamingWiki who promise a PCGW page for a game key.

Difference between revisions of "Team Fortress 2"

From PCGamingWiki, the wiki about fixing PC games
(64-bit update has been released.)
(490 intermediate revisions by more than 100 users not shown)
Line 1: Line 1:
{{cleanup}}
+
{{State|state=postdev}}
{{infobox
+
{{Infobox game
|cover         = Team Fortress 2 box-art.png
+
|cover       = Team Fortress 2 cover.jpg
|developer     = [[Wikipedia:Valve Corporation|Valve Software]]
+
|developers  =
|publisher     = [[Wikipedia:Valve Corporation|Valve Software]]
+
{{Infobox game/row/developer|Valve Corporation}}
|engine        = Source
+
{{Infobox game/row/developer|Escalation Studios|PASS Time|ref=<ref>{{Refurl|url=https://www.teamfortress.com/post.php?id=17833|title=Introducing PASS Time, a New Beta Game Mode! - TF2 Team|date=2016-5-22}}</ref>}}
|release dates = <sup>Windows</sup> October 10, 2007<br/><sup>OS X</sup> June 10, 2010<br/><sup>Linux</sup> November 6, 2012
+
|publishers  =
 +
{{Infobox game/row/publisher|Valve Corporation}}
 +
{{Infobox game/row/publisher|Buka Entertainment|Russia (The Orange Box)}}
 +
|engines     =  
 +
{{Infobox game/row/engine|Source|Original|name=Source 2007}}
 +
{{Infobox game/row/engine|Source|Current|name=Source 2013 Multiplayer}}
 +
|release dates=  
 +
{{Infobox game/row/date|Windows|October 9, 2007}}
 +
{{Infobox game/row/date|OS X|June 10, 2010}}
 +
{{Infobox game/row/date|Linux|November 6, 2012}}
 +
|reception    =
 +
{{Infobox game/row/reception|Metacritic|team-fortress-2|92}}
 +
{{Infobox game/row/reception|IGDB|team-fortress-2|rating}}
 +
|taxonomy    =
 +
{{Infobox game/row/taxonomy/monetization      | free-to-play, Cross-game bonus }}
 +
{{Infobox game/row/taxonomy/microtransactions | cosmetic, loot box, player trading, unlock }}
 +
{{Infobox game/row/taxonomy/modes            | Multiplayer }}
 +
{{Infobox game/row/taxonomy/pacing            | Real-time }}
 +
{{Infobox game/row/taxonomy/perspectives      | First-person }}
 +
{{Infobox game/row/taxonomy/controls          | Direct control }}
 +
{{Infobox game/row/taxonomy/genres            | Action, FPS }}
 +
{{Infobox game/row/taxonomy/sports            | }}
 +
{{Infobox game/row/taxonomy/vehicles          | }}
 +
{{Infobox game/row/taxonomy/art styles        | Stylized }}
 +
{{Infobox game/row/taxonomy/themes            | North America, Sci-fi}}
 +
{{Infobox game/row/taxonomy/series            | Team Fortress }}
 +
|steam appid  = 440
 +
|gogcom id    =
 +
|gogcom id side =
 +
|official site= https://www.teamfortress.com/
 +
|hltb        = 9632
 +
|lutris      = team-fortress-2
 +
|strategywiki = Team Fortress 2
 +
|mobygames    = 30655
 +
|wikipedia    = Team Fortress 2
 +
|winehq      = 5823
 +
|license      = free-to-play
 
}}
 
}}
{{:Team Fortress (series)}}
 
  
'''Key points'''
+
{{Introduction
{{++}} Runs on low-end hardware.<ref>Tested by [[User:Nicereddy|Nicereddy]].</ref>
+
|introduction      =
{{++}} Receives frequent updates.<ref>[http://www.teamfortress.com/history.php History - Team Fortress Website]</ref>
+
 
 +
|release history  = The game was purchasable individually and as part of ''The Orange Box'' compilation as of October 9, 2007. It became free-to-play on June 23, 2011.<ref>{{Refurl|url=https://store.steampowered.com/oldnews/5721|title=News - Team Fortress 2 is now Free to Play|date=2023-08-12}}</ref>
 +
 
 +
|current state    =
 +
}}
  
 
'''General information'''
 
'''General information'''
{{mm}} [http://www.teamfortress.com/ Official Team Fortress 2 Blog] - Written by Valve
+
{{mm}} [http://wiki.tf2.com Official wiki] - Run by the TF2 community and hosted by Valve
{{mm}} [http://wiki.teamfortress.com Official Team Fortress Wiki] - Run by the Team Fortress 2 community and hosted by Valve
+
{{mm}} [https://github.com/ValveSoftware/Source-1-Games GitHub Issue Tracker] includes other Source-based games
{{mm}} [https://github.com/ValveSoftware/Source-1-Games GitHub Issue Tracker for Team Fortress 2] and other Source-based games
+
{{mm}} [https://steamcommunity.com/app/440/discussions/ Steam Community Discussions]
{{mm}} [http://forums.steampowered.com/forums/forumdisplay.php?f=80 Steam Users' Forums]
+
{{mm}} [https://steamcommunity.com/sharedfiles/browse?appid=440 Steam Workshop]
{{mm}} [http://steamcommunity.com/app/440/discussions/ Steam Community Discussions]
 
{{mm}} [http://steamcommunity.com/workshop/browse/?appid=440 Steam Workshop for Team Fortress 2]
 
{{mm}} [http://reddit.com/r/tf2 Team Fortress 2 Subreddit]
 
  
 
==Availability==
 
==Availability==
{{Availability Table|
+
{{Availability|
{{Availability Table/row| [http://store.steampowered.com/app/440/ Steam] | {{ID|Steam}} | Free to play.}}
+
{{Availability/row| Retail |  | Steam | Gives access to Premium account features<ref>{{Refsnip|url=https://www.teamfortress.com/freetoplay/faq.php|title=Team Fortress 2: Free-to-Play FAQ|date=2016-5-22|snippet=If you've ever spent money on TF2, you have a premium account. This includes purchasing the game before it was Free-to-Play, activating a retail version of the game, or making a purchase in the Mann Co. in-game store.}}</ref> |  | Windows }}
{{Availability Table/row| Retail | {{ID|Steam}} | Included in [[The Orange Box]] compilation.}}
+
{{Availability/row| Steam | 440 | Steam | Free to play, Install with <code>steam://install/440</code><br/>Also available to purchase in The Orange Box bundle, which gives access to Premium account features. |  | Windows, OS X, Linux }}
 
}}
 
}}
{{ii}} All versions require [[Steam]], including retail.
+
{{ii}} All versions require {{DRM|Steam}}.
  
== Improvements ==
 
=== Skip Introductions, Cutscenes and Videos ===
 
The intro logo can be skipped by adding <code>-novid</code> to the launch options.
 
  
==Game data==
+
==Monetization==
{{Game Location Table|
+
{{Monetization
{{Game Location Table/row|Windows (Configuration Files)|C:\Program Files (x86)\Steam\steamapps\SteamID\Team Fortress 2\tf\cfg\}}
+
|ad-supported                =
{{Game Location Table/row|Windows (Steam Cloud Data)|C:\Program Files (x86)\Steam\userdata\SteamID\440\remote}}
+
|cross-game bonus            = There are hundreds of cosmetic items and weapons (most are reskins, some are unique) that can be obtained by purchasing other games or meeting certain conditions in other games. A more complete list is available at the Team Fortress 2 wiki [https://wiki.teamfortress.com/wiki/Promotional_items here].
{{Game Location Table/row|Windows (Demo Files)|C:\Program Files (x86)\Steam\steamapps\SteamID\Team Fortress 2\tf\}}
+
|dlc                        = The soundtrack is sold as DLC.
{{Game Location Table/row|Mac|~/Library/Application Support/Steam/steamapps/username/Team Fortress 2}}
+
|expansion pack              =
{{Game Location Table/row|Linux|~/.local/share/Steam/SteamApps/username/Team Fortress 2}}
+
|freeware                    =
 +
|free-to-play                = The base game is free-to-play as of June 23, 2011, but [https://wiki.teamfortress.com/wiki/Account_types Premium] accounts have access to additional features.
 +
|one-time game purchase      =
 +
|sponsored                  =
 +
|subscription                =
 +
|subscription gaming service =
 
}}
 
}}
{{ii}} Achievements are stored within the Steam Community, and are thus tied to specific [[Steam]] accounts.
 
{{ii}} The .local file in Linux is likely hidden. In Ubuntu go to your Home folder and press Ctrl+H to toggle hidden files.
 
  
===[[Save game cloud syncing]]===
+
==Microtransactions==
{{Save Game Cloud Syncing
+
{{Microtransactions
|steam_cloud= true
+
|boost              =
|steam_cloud_notes = Syncs save games and settings.
+
|cosmetic            = There are hundreds of cosmetics items that players can use to customize their appearance in the game. Some are Halloween-restricted.
 +
|currency            =
 +
|finite spend        =
 +
|infinite spend      =  
 +
|free-to-grind      = Timed drops allow players to "find" weapons and other unlockables; rarely, they may find cosmetic items. Premium accounts get an advantage.
 +
|loot box            = Mann Co. Supply Crates, and other types of crates, drop automatically, but must be unlocked with a purchased key.
 +
|none                =
 +
|player trading      = Most items in the game can be traded for on Steam with other players, or listed for sale on the community marketplace.
 +
|time-limited        = Some cosmetic items were available for purchase, or as part of a promotion, in the past, but are no longer available.
 +
|unlock              = All non-reskin weapons in the game can either be outright purchased, traded for, or found in random drops with enough gameplay time.
 
}}
 
}}
{{ii}} Team Fortress 2 uses the Steam Cloud to store settings, users' in-game sprays and Steam Workshop submissions.
+
{{ii}} Limited-use items: Some purchasable items have a limited number of uses, such as Noise Makers and the Dueling Mini-Game.
  
==Video settings==
+
{{DLC|
{{Video Settings
+
{{DLC/row| Fight Songs: The Music Of Team Fortress 2 | Soundtrack | Windows, OS X, Linux}}
|wsgf_link                  =http://www.wsgf.org/dr/team-fortress-2
 
|widescreen_wsgf_award      =gold
 
|multimonitor_wsgf_award    =silver
 
|widescreen_resolution      =true
 
|widescreen_resolution_notes=
 
|multimonitor              =true
 
|multimonitor_notes        =See [[#Multi-monitor|Multi-monitor]].
 
|fov                        =true
 
|fov_notes                  =See [[#Field of view (FOV)|Field of view (FOV)]].
 
|windowed                  =true
 
|windowed_notes            =
 
|fullscreen                =hackable
 
|fullscreen_notes          =See [[#Borderless fullscreen windowed|Borderless fullscreen windowed]].
 
|anisotropic                =unknown
 
|anisotropic_notes          =
 
|antialiasing              =unknown
 
|antialiasing_notes        =
 
|vsync                      =true
 
|vsync_notes                =
 
|oculus_rift                =hackable
 
|oculus_rift_notes          =See [[#Oculus Rift|Oculus Rift]].
 
 
}}
 
}}
  
===[[Multi-monitor]]===
+
==Essential improvements==
See this [http://widescreengamingforum.com/dr/team-fortress-2 Widescreen Gaming Forum article] for a limited case script when using multiple monitors.
+
===Skip intro videos===
 +
{{Fixbox|description=Use the <code>-novid</code> [[Glossary:Command line arguments|command line argument]]|ref=<ref>{{Refurl|url=https://steamcommunity.com/sharedfiles/filedetails/?id=159366732|title=Skipping the Valve-intro :: Team Fortress 2 Steam Community Guide |date=14-03-2018}}</ref>|fix=
 +
# Alternatively, go to {{folder|{{p|game}}\hl2\media}}.
 +
# Delete or rename {{file|Valve.bik}}.
 +
}}
  
===[[Field of view (FOV)]]===
+
===Increase performance===
A FOV slider is available within the options which is limited to a value between 75 and 90. This sets the FOV for a 4:3 monitor. The actual FOV will be adjusted for other aspect ratios, meaning widescreens gain a higher than configured FOV.
+
{{ii}} TF2's default settings are generally not well optimized. Therefore, it is recommended to install a custom config, such as '''mastercomfig'''.
 +
{{Fixbox|description=Install mastercomfig|ref={{cn|date=August 2019}}|fix=
 +
#Go to the [https://mastercomfig.com/app mastercomfig website] and choose a preset, alongside any relevant addons and download the necessary VPK files.
 +
#Place the downloaded VPK files into {{folder|{{p|game}}\tf\custom}} and follow [https://docs.mastercomfig.com/en/latest/customization/launch_options/ these directions] to add the necessary launch options. (Don't forget to remove the <code>-dxlevel</code> launch option after launching the game)
 +
#Boot up the game and test the performance/visual fidelity. If errors occur, check [https://docs.mastercomfig.com/en/latest/next_steps/troubleshoot/ the troubleshooting section].
 +
#To change any settings without changing presets, use [https://docs.mastercomfig.com/en/latest/customization/modules/ modules] to alter individual settings.
 +
{{ii}} Any already existing custom configs will need to be moved from {{folder|{{p|game}}\tf\cfg}} to {{folder|{{p|game}}\tf\cfg\user}} (create the {{folder|user}} subfolder if not present already). It is also recommended to check if any commands in these custom configs overwrite mastercomfig's.  
 +
}}
  
Adjustments can also be made in the console with the command: <code>fov_desired X</code>. It is possible to increase the FOV limit up to 130 using plugins such as [http://etf2l.org/forum/customise/topic-22753/page-1/ this one]. However it is important to note that, while allowed by the ETF2l, these plugins are not officially supported by Valve so '''use at your own risk'''.
+
===Higher texture quality===
 +
{{ii}} Using the console command <code>mat_picmip #</code>, one can change TF2's texture quality preset independently from the in-game settings, where <code>#</code> can range from <code>2</code> to <code>-10</code>. The lower the value, the better.
 +
{{ii}} The in-game "Very High" Texture detail setting uses <code>-1</code>, therefore it is not the highest possible texture quality the engine can offer.
 +
{{Fixbox|description=Set mat_picmip value in autoexec.cfg|ref=<ref>{{Refurl|url=https://wiki.teamfortress.com/wiki/Ultra_high_settings|title=Ultra High Settings :: Team Fortress 2 Official Wiki |date=22-07-2022}}</ref>|fix=
 +
#Go to {{folder|{{p|game}}\tf\cfg}} and create a text file named {{file|autoexec.cfg}} if it does not already exist.
 +
#Open {{file|autoexec.cfg}} and add the line <code>mat_picmip -10</code>.
 +
#Save and close the file. This will ensure that the command is read on start-up.
 +
{{ii}} '''IMPORTANT''': if mastercomfig is used, {{file|autoexec.cfg}} will need to be moved to a folder named {{folder|overrides}} inside {{folder|{{p|game}}\tf\cfg}}.
 +
{{ii}} Alternatively, use the launch parameter {{code|+mat_picmip -10}}.
 +
}}
  
The [http://www.youtube.com/watch?v=hLHsfQS9p_Y TF2 Tactics video on FOV] has more information about FOV in TF2 and in general.
+
==Game data==
 +
===Configuration file(s) location===
 +
{{Game data|
 +
{{Game data/config|Steam|{{p|game}}\tf\cfg\}}
 +
}}
 +
{{ii}} Steam Cloud settings are stored in {{folder|{{p|Steam}}\userdata\{{p|uid}}\440\remote}}.
 +
{{ii}} Demo files are stored in {{folder|{{p|game}}\tf}}.
 +
{{XDG|unknown}}
  
===[[Borderless fullscreen windowed]]===
+
===[[Glossary:Save game cloud syncing|Save game cloud syncing]]===
{{Fixbox|1=
+
{{Save game cloud syncing
{{Fixbox/fix|Enable Borderless fullscreen windowed}}
+
|discord                  =
# Right-click Team Fortress 2 within Steam and select Properties.
+
|discord notes            =
# Choose Set Launch Options
+
|epic games launcher      =
# Add <code> -noborder -window</code> and press OK. If there are other launch parameters present, ensure there is a space before <code> -noborder -window</code>.
+
|epic games launcher notes =
# Close the window and relaunch the game.
+
|gog galaxy                =
{{ii}} If you experience stuttering, [[#Disabling Aero|disable Windows Aero]].
+
|gog galaxy notes          =  
 +
|origin                    =
 +
|origin notes              =
 +
|steam cloud              = true
 +
|steam cloud notes        = Approx. 1 GB available.<br/>Settings, in-game sprays and Steam Workshop submissions.
 +
|ubisoft connect          =
 +
|ubisoft connect notes    =
 +
|xbox cloud                =
 +
|xbox cloud notes          =
 
}}
 
}}
  
===[[Oculus Rift]]===
+
==Video==
{{Fixbox|1=
+
{{Image|Team Fortress 2 General Video.png|In-game general video settings.}}
{{Fixbox/fix|Enable Oculus Rift support}}
+
{{Image|Team Fortress 2 Advanced Video.png|In-game advanced video settings.}}
# Right-click Team Fortress 2 within Steam and select Properties.
+
{{Video
# Choose Set Launch Options
+
|wsgf link                  = https://www.wsgf.org/dr/team-fortress-2
# Add <code> -vr</code> and press OK. If there are other launch parameters present, ensure there is a space before <code> -vr</code>.
+
|widescreen wsgf award      = gold
# Close the window and relaunch the game.
+
|multimonitor wsgf award    = silver
 +
|ultrawidescreen wsgf award = gold
 +
|4k ultra hd wsgf award    = incomplete
 +
|widescreen resolution      = true
 +
|widescreen resolution notes=
 +
|multimonitor              = true
 +
|multimonitor notes        =
 +
|ultrawidescreen            = true
 +
|ultrawidescreen notes      = Some UI assets don't fill the entire screen.
 +
|4k ultra hd                = true
 +
|4k ultra hd notes          = Interface scales with resolution and can become unusable.
 +
|fov                        = true
 +
|fov notes                  = Slider from 75 to 90°. See [[#Field of view (FOV)|Field of view (FOV)]] for further options.
 +
|windowed                  = true
 +
|windowed notes            =
 +
|borderless windowed        = hackable
 +
|borderless windowed notes  = Use the <code>-window -noborder</code> [[Glossary:Command line arguments|command line arguments]].
 +
|anisotropic                = true
 +
|anisotropic notes          = Up to 16 samples.
 +
|antialiasing              = true
 +
|antialiasing notes        = [[MSAA]], up to 8x.
 +
|vsync                      = true
 +
|vsync notes                = Triple Buffering
 +
|60 fps                    = true
 +
|60 fps notes              =
 +
|120 fps                    = true
 +
|120 fps notes              = 300 FPS cap by default. With console, can change <code>"fps_max"</code> to any value; use <code>0</code> for uncapped framerate. The game will break when above 1000 fps, so it may be worthwhile to keep the framerate capped.{{cn|date=July 2022}}
 +
|hdr                        = false
 +
|hdr notes                  = In-game {{term|HDR}} option refers only to {{term|HDR Rendering}} for rendering Bloom and sun shine type effects.
 +
|color blind                = true
 +
|color blind notes          = Under "Advanced HUD Options". Only changes some minor effects like Jarate and Mad Milk.<ref>[https://web.archive.org/web/20141205154347/http://forums.steampowered.com/forums/showthread.php?t=2691308 'colorblind mode' - Steam Users' Forums] (retrieved)</ref>
 
}}
 
}}
  
==Input settings==
+
===[[Glossary:Field of view (FOV)|Field of view (FOV)]]===
{{Input Settings
+
{{ii}} For 16:9, a setting of 90° results in a FOV slightly above 106°.
|key_remap                  =true
+
{{ii}} Console commands can change the FOV to arbitrary values, but are not allowed in Competitive Mode. Viewmodel FOV can also be adjusted.
|key_remap_notes            =
+
{{Fixbox|description=fov_desired|ref={{cn|date=July 2016}}|fix=
|acceleration_option        =unknown
+
# Open the console ({{Key|~}}).
|acceleration_option_notes  =
+
# Enter <code>fov_desired #</code>, where <code>#</code> is your desired FOV.
|controller_support         =hackable
+
}}
|controller_support_notes   =See [[#Controller support|Controller support]].
+
{{Fixbox|description=viewmodel_fov|ref={{cn|date=July 2016}}|fix=
 +
# Open the console ({{Key|~}}).
 +
# Enter <code>viewmodel_fov #</code>, where <code>#</code> is your desired viewmodel FOV.
 +
{{ii}} It is also possible to turn on <code>Use minimized viewmodels</code> in the Advanced Options menu.<br />Alternatively, input <code>tf_use_min_viewmodels 1</code> into the console.
 +
}}
 +
{{Fixbox|description=Plugins|ref={{cn|date=October 2016}}|fix=
 +
{{ii}} It is possible to increase the FOV limit up to 130 or even unplayable 179, using server-side plugins such as [http://tftrue.esport-tools.net/ this one]. However it is important to note that, while allowed by the ETF2L, and while client-side plugins are not classified as a cheats they are not officially supported by Valve. Some cheats include FOV increase hacks, so '''use at your own risk'''.
 +
}}
 +
 
 +
==Input==
 +
{{Image|Team Fortress 2 Remapping.png|In-game key map settings.}}
 +
{{Image|Team Fortress 2 Mouse Gamepad.png|In-game mouse/gamepad settings.}}
 +
{{Input
 +
|key remap                = true
 +
|key remap notes          =  
 +
|acceleration option      = true
 +
|acceleration option notes =  
 +
|mouse sensitivity         = true
 +
|mouse sensitivity notes   =
 +
|mouse menu                = true
 +
|mouse menu notes          =
 +
|invert mouse y-axis      = true
 +
|invert mouse y-axis notes =
 +
|touchscreen              = unknown
 +
|touchscreen notes        =
 +
|controller support        = true
 +
|controller support notes  = See [[#Controller support|Controller support]] for information on enabling the Xbox 360 HUD, which causes the game to show Xbox 360 button icons.
 +
|full controller          = limited
 +
|full controller notes    = Some menus are unusable with a controller.
 +
|controller remap          = true
 +
|controller remap notes    =
 +
|controller sensitivity    = true
 +
|controller sensitivity notes=
 +
|invert controller y-axis  = true
 +
|invert controller y-axis notes=
 +
|xinput controllers        = true
 +
|xinput controllers notes  =
 +
|xbox prompts              = true
 +
|xbox prompts notes        =
 +
|impulse triggers          = false
 +
|impulse triggers notes    =
 +
|dualshock 4              = true
 +
|dualshock 4 notes        = Officially supported via [[Steam Input]]
 +
|dualshock prompts        = false
 +
|dualshock prompts notes  =
 +
|light bar support        = unknown
 +
|light bar support notes  =
 +
|dualshock 4 modes        = unknown
 +
|dualshock 4 modes notes  =
 +
|tracked motion controllers= hackable
 +
|tracked motion controllers notes = Supports [[Controller:Razer Hydra|Razer Hydra]] Sixense API. Exit the Hydra tray application and use the [[Glossary:Command line arguments|launch options]] <code>+sixense_enabled 1</code><ref>{{Refurl|url=http://sixense.com/tf2|title=sixense.com|date=May 2023}}</ref>
 +
|tracked motion prompts    = unknown
 +
|tracked motion prompts notes =
 +
|other controllers        = unknown
 +
|other controllers notes  =
 +
|other button prompts      = unknown
 +
|other button prompts notes=
 +
|button prompts            = Xbox, Steam
 +
|button prompts notes      =
 +
|controller hotplug        = unknown
 +
|controller hotplug notes  =
 +
|haptic feedback          = unknown
 +
|haptic feedback notes    =
 +
|simultaneous input        = true
 +
|simultaneous input notes  =
 +
|steam input api          = true
 +
|steam input api notes    =
 +
|steam hook input          = unknown
 +
|steam hook input notes    =
 +
|steam input presets      = true
 +
|steam input presets notes =
 +
|steam controller prompts  = true
 +
|steam controller prompts notes =
 +
|steam cursor detection    = unknown
 +
|steam cursor detection notes =
 
}}
 
}}
  
 
===[[Controller|Controller support]]===
 
===[[Controller|Controller support]]===
 
: See also: [http://wiki.teamfortress.com/wiki/Xbox_360_controls Xbox 360 controls] on the ''Official Team Fortress Wiki''.
 
: See also: [http://wiki.teamfortress.com/wiki/Xbox_360_controls Xbox 360 controls] on the ''Official Team Fortress Wiki''.
Team Fortress 2 can be played using an [[Xbox 360 controller]], however (due to the large amount of PC-exclusive patches) the games menus are not able to be navigated with a controller.  To enable full Xbox 360 controller support for gameplay and activate an Xbox-specific HUD, execute the Xbox 360 Controller configuration via the console command: <code>exec 360controller</code>; To disable the changes, input <code>exec undo360controller</code> using the same method.
 
  
== Issues and Fixes ==
+
{{Fixbox|description=Enabling Xbox 360 HUD|ref={{cn|date=July 2016}}|fix=
=== Generic fix for issues ===
+
# Open the console ({{key|~}}).
<!-- If you know of any additional steps that could be taken, please feel free to add them. -->
+
# Input <code>exec 360controller</code>.
A generic way of solving the majority of Team Fortress 2 related problems is as below, proceed down the list if the previous list item fails; or search for your exact problem and find an exact solution.
 
#If you're currently experiencing the problem in-game, try these console commands
 
#* Reload the hud: In console, <code>hud_reloadscheme</code>
 
#*Resync the game state with the server (start/stop an in-game demo): In console, <code>record something;stop</code>
 
#*Reload sound resources: In console, <code>snd_restart</code>
 
#*Re-connect to a server: In console, <code>retry</code>
 
#Restart the game
 
#Validate the game files
 
#*Right click ''Team Fortress 2'' in Steam and select ''Properties''.  Navigate into the ''Local Files'' tab and select ''Verify integrity of game cache''.  Steam will then (re)download any missing or corrupt files.
 
#Delete your Team Fortress 2 user folder
 
#*TF2's main game files are stored in <pre>C:\Program Files (x86)\Steam\steamapps\</pre>
 
#:* multiplayer ob binaries.gcf
 
#:* orangebox media.gcf
 
#:* source 2007 binaries 2.gcf
 
#:* source 2007 binaries.gcf
 
#:* source 2007 shared materials.gcf
 
#:* source 2007 shared models.gcf
 
#:* source 2007 shared sounds.gcf
 
#:* source engine.gcf
 
#:* source materials.gcf
 
#:* source models.gcf
 
#:* source sounds.gcf
 
#:* team fortress 2 client content.gcf
 
#:* team fortress 2 content.gcf
 
#:* team fortress 2 materials.gcf
 
::The items under your steamid are just game cache and are automatically created when you start Team Fortress 2.
 
::So you won't need to re-download ~10GB. Delete or rename (to keep a backup) your ''Team Fortress 2'' folder. The folder will be automatically re-created the next time you launch Team Fortress 2.
 
# Delete your Team Fortress 2 registry settings
 
# *Delete the entire content of <pre>HKEY_CURRENT_USER\Software\Valve\Source\tf\Settings</pre> in the Windows registry using ''RegEdit''.
 
# Re-install Steam
 
# *Delete (or move/back up) all of your steam directories content '''excluding''' the ''steamapps'' folder and ''steam.exe''.  Launch ''steam.exe'' and all the relevant Steam files will be re-downloaded.
 
# Contact Steam Support
 
# *Open a new support ticket [https://support.steampowered.com/newticket.php here], and document your problem and your attempted solutions in as much detail as possible.  Steam Support can be slow to respond to tickets, and by providing as much information as you can you negate the need for Support to contact you for more information (and thereby take longer to help solve the problem).
 
# Fully re-install Team Fortress 2
 
# *This is pretty extreme, and it is therefore recommended you try and find a case of your problem happening to somebody else and see how they solved it.  You will usually never need to do this, unless Steam Support themselves are unable to help with your case.
 
  
=== Game Crashes at Valve Logo on Startup ===
+
'''Notes'''
# More than likely, you have DirectX issues. Try the following:
+
{{ii}} To reverse the change, input <code>exec undo360controller</code>.
# *Reinstall the latest DirectX
+
}}
# *In Steam, right click TF2 > Properties > Set Launch Options > <code> -dxlevel 80</code>. 80,81,90,95,98 are all valid options, corresponding to [https://developer.valvesoftware.com/wiki/DirectX_Versions Shader Models]. Lower is more compatible.
 
# *Try setting -nod3d9ex. This will disable some DirectX 9 extensions used in Windows Vista/7.
 
  
=== Cosmetic items do not appear on a player ===
+
==Audio==
This is a bug caused by the dynamic-model-loading system implemented in Team Fortress 2. Once a player touches a [[tf2wiki:resupply cabinet|resupply cabinet]] the cosmetic items should appear.
+
{{Image|Team Fortress 2 Audio.png|In-game audio settings.}}
 +
{{Audio
 +
|separate volume          = true
 +
|separate volume notes    = Over-all game volume and separate music slider.
 +
|surround sound          = true
 +
|surround sound notes    = 7.1, 5.1 surround sound, 4 speaker surround. Linux version lacks the surround support as SDL itself was chosen to handle the audio without the additional API such as SDL_mixer or OpenAL.
 +
|subtitles                = limited
 +
|subtitles notes          = The Developer Commentary is the only part of the game with subtitles.
 +
|closed captions          = true
 +
|closed captions notes    =  
 +
|mute on focus lost      = true
 +
|mute on focus lost notes = "Silence the audio while the game window is in the background" check box
 +
|eax support              = true
 +
|eax support notes        = Linux only. Open <code>alsoft-config</code> (included with OpenAL package) and in HRTF tab set HRTF Mode to Forced On. It'll work only if you have a 32-bit package of OpenAL.
 +
}}
  
=== Getting disconnected while playing on a LAN with multiple players ===
+
{{L10n|content=
This is caused by multiple players trying to connect to a server using the same client port. To fix, each player needs a different client port, by adding this to the launch options: "+clientport N", where N is a number between 27005 and 27032, but not 27015 or 27020.
+
{{L10n/switch
 +
|language  = English
 +
|interface = true
 +
|audio    = true
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Bulgarian
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Simplified Chinese
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Traditional Chinese
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Czech
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Danish
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Dutch
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Finnish
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = French
 +
|interface = true
 +
|audio    = true
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = German
 +
|interface = true
 +
|audio    = true
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Greek
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Hungarian
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Italian
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Japanese
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Korean
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Norwegian
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Polish
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Brazilian Portuguese
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Portuguese
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Romanian
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Russian
 +
|interface = true
 +
|audio    = true
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Spanish
 +
|interface = true
 +
|audio    = true
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Swedish
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Thai
 +
|interface = true
 +
|audio    = false
 +
|subtitles = false
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Turkish
 +
|interface = true
 +
|audio    = false
 +
|subtitles = true
 +
|notes    =
 +
|fan      =
 +
}}
 +
{{L10n/switch
 +
|language  = Ukrainian
 +
|interface = true
 +
|audio    = false
 +
|subtitles = false
 +
|notes    = The game contains files for complete subtitles, but they are not compiled. The user can compile it themselves using the {{file|captioncompiler.exe}} program which is provided with the game.
 +
|fan      =
 +
}}
 +
}}
  
=== Game cache files are stuck validating ===
+
==Network==
Close Steam and delete ClientRegistry.blob in the Steam directory
+
{{Image|Team Fortress 2 General Multiplayer.png|In-game general multiplayer settings.}}
 +
{{Image|Team Fortress 2 Advanced Options.png|In-game advanced options/multiplayer settings.}}
 +
{{ii}} For more information, see the [[Engine:Source#Source Dedicated Server|"Source Dedicated Server" section of our Source engine article]].
 +
{{Network/Multiplayer
 +
|local play          = hackable
 +
|local play players  = 32
 +
|local play modes    = Co-op, Versus
 +
|local play notes    = Use [https://github.com/SplitScreen-Me/splitscreenme-nucleus/releases Nucleus Co-op].
 +
|lan play            = true
 +
|lan play players    = 32
 +
|lan play modes      = Co-op, Versus
 +
|lan play notes      =
 +
|online play          = true
 +
|online play players  = 32
 +
|online play modes    = Co-op, Versus
 +
|online play notes    =
 +
|asynchronous        =
 +
|asynchronous notes  =
 +
}}
 +
{{Network/Connections
 +
|matchmaking        = true
 +
|matchmaking notes  =
 +
|p2p                = true
 +
|p2p notes          =
 +
|dedicated          = true
 +
|dedicated notes    =
 +
|self-hosting      = true
 +
|self-hosting notes =
 +
|direct ip          = true
 +
|direct ip notes    =
 +
}}
 +
{{Network/Ports
 +
|tcp  = 27014-27050
 +
|udp  = 3478-4380, 27000-27030
 +
|upnp = unknown
 +
}}
  
Windows:
+
==VR support==
 +
{{VR support
 +
|gg3d name                  = Team Fortress 2
 +
|native 3d gg3d award        =
 +
|nvidia 3d vision gg3d award =
 +
|tridef 3d gg3d award        = gold
 +
|iz3d gg3d award            =
 +
|native 3d                  = unknown
 +
|native 3d notes            =
 +
|nvidia 3d vision            = true
 +
|nvidia 3d vision notes      =
 +
|tridef 3d                  = true
 +
|tridef 3d notes            =
 +
|iz3d                        = unknown
 +
|iz3d notes                  =
 +
|vr only                    = false
 +
|htc vive                    = false
 +
|htc vive notes              =
 +
|oculus rift                = true
 +
|oculus rift notes          = Available under Video Settings. See [[#Oculus Rift|Oculus Rift]] for more information.
 +
|osvr                        = unknown
 +
|osvr notes                  =
 +
|windows mixed reality      = false
 +
|windows mixed reality notes =
 +
|keyboard-mouse              = true
 +
|keyboard-mouse notes        =
 +
|3rd space gaming vest      =
 +
|3rd space gaming vest notes =
 +
|novint falcon              =
 +
|novint falcon notes        =
 +
|trackir                    =
 +
|trackir notes              =
 +
|tobii eye tracking          =
 +
|tobii eye tracking notes    =
 +
|play area seated            = true
 +
|play area seated notes      =
 +
|play area standing          = false
 +
|play area standing notes    =
 +
|play area room-scale        = false
 +
|play area room-scale notes  =
 +
}}
  
32 Bit: <pre>C:\Program Files\Steam\</pre>
+
===[[Glossary:Oculus Rift|Oculus Rift]]===
 +
{{ii}} By default VR mode will run full screen, to switch back to a borderless windowed set the <code>vr_force_windowed</code> convar.
  
64 Bit: <pre>C:\Program Files (x86)\Steam\</pre>
+
{{Fixbox|description=Toggle world view models|ref={{cn|date=July 2016}}|fix=
 +
# Open the console ({{key|~}}).
 +
# Enter <code>cl_first_person_uses_world_model 1</code> to enable or <code>cl_first_person_uses_world_model 0</code> to disable.
 +
}}
  
OS X:  
+
==Issues fixed==
<pre>/Users/Username/Library/Application Support/Steam/</pre>
+
===Generic fixes for issues===
 +
{{Fixbox|description=Console commands|ref={{cn|date=July 2016}}|fix=
 +
# Reload the HUD: in the console, type  <code>hud_reloadscheme</code>
 +
# Resync the game state with the server (start/stop an in-game demo): in the console, type  <code>record s; stop</code>
 +
## The "s" can be anything; it's just the name of the demo file. Using the same name every time will overwrite the unusable demo file every time you need to re-synchronize.
 +
# Reload sound resources: in the console, type  <code>snd_restart</code>
 +
# Reconnect to a server: in the console, type  <code>retry</code>
 +
# Reshow missing/hidden viewmodel: in the console, type <code>r_drawviewmodel 1</code>
 +
}}
  
<ref>https://support.steampowered.com/kb_article.php?ref=7241-EYON-2343</ref>
+
===Sprays are not visible===
 +
{{ii}} As of the September 16, 2021 update, sprays are no longer available on official Valve servers and can be disabled per server by the server admins.
 +
{{Fixbox|description=Multiplayer Decal Limit|ref={{cn|date=February 2017}}|fix=
 +
* Try raising Multiplayer Decal Limit. Check settings <code>cl_allowdownload</code>, <code>cl_allowupload</code>, <code>cl_playerspraydisable</code>, <code>mp_decals</code>, <code>r_decals</code> and <code>r_spray_lifetime</code>.
 +
}}
  
== Other Technical Information ==
+
===Purple and black broken textures===
=== Launch parameters ===
+
{{ii}} A generic fix for this issue can be found [[Engine:Source#Broken textures|on our Source engine page]].
:See also: [https://developer.valvesoftware.com/wiki/Command_Line_Options#Command-line_parameters ''Command-line parameters'' on the Valve Developer Community]
 
  
You can launch Team Fortress 2 with launch parameters - these parameters dictating how certain aspects of the game behaves (outside of gameplay).
+
===Game Crashes at Valve logo on startup===
 +
{{ii}} Most likely caused by [[DirectX]] problems.
 +
{{Fixbox|description=Run the game with [[Glossary:Command line arguments|command line arguments]]|ref={{cn|date=October 2016}}|fix=
 +
# Reinstall the latest DirectX
 +
# Set the game to run with different [[Glossary:Command line arguments|command line arguments]] until it functions: <code>-dxlevel ##</code>. Replace <code>##</code> with <code>80</code>, <code>81</code>, <code>90</code>, and <code>95</code>, corresponding to [https://developer.valvesoftware.com/wiki/DirectX_Versions Shader Models]. Lower is more compatible but 80 may cause more frequent crashes.
 +
# Try setting <code>-nod3d9ex</code>. This will disable some DirectX 9 extensions used in Windows Vista/7.
 +
}}
  
To add launch parameters:
+
===Game crashes after closing MotD===
* Right click ''Team Fortress 2'' within [[Steam]] and select ''Properties''
+
{{ii}} Some servers use Pinion advertisement, a buggy plugin that sometimes crashes TF2.
* Select ''Set Launch Options''
+
{{Fixbox|description=Game crashes after closing MotD|ref={{cn|date=October 2016}}|fix=
* Add your launch parameters and click ''OK''
+
# Disable HTML motd (in advanced options, under performance options)
* Close the properties window and launch the game with the specified launch parameters.
+
# Install a Pinion blocker by editing the hosts file.
 +
# Try adding the following lines to your autoexec.cfg or in the launch options
 +
* <code>sv_motd_unload_on_dismissal "1" <small>// The MOTD contents will be unloaded when the player closes the MOTD.</small></code>
 +
* <code>alias closed_htmlpage ""<small>; echo BLOCKED an attempted html wait timer</small>"</code>
 +
* <code>cl_disablehtmlmotd 1</code>
 +
Note that some servers require you to watch the MotD for a minimum amount of time (e.g. 30 seconds)
 +
}}
  
Launch parameters are typically prefixed with <code>-</code> (dash), however you can also set console commands by providing the console command with a <code>+</code> (plus) prefix.
+
===Cosmetic items do not appear on a player===
 +
{{ii}} Bug is caused by the dynamic-model-loading system implemented in Team Fortress 2.
  
==== Useful launch parameters ====
+
{{Fixbox|description=Touch a resupply cabinet|ref={{cn|date=July 2016}}|fix=
{| class="wikitable grid"
+
* Once a player touches a [http://wiki.teamfortress.com/wiki/Resupply_Cabinet#Resupply resupply cabinet] the cosmetic items should appear.
! Parameter || Description
+
}}
|-
 
| <code>-autoconfig</code> || Restores video and performance settings to default for the current hardware detected. Ignores settings inside any .cfg files until this parameter is removed.
 
|-
 
| <code>-console</code> || Starts the game with the developer console enabled.
 
|-
 
| <code>-dxlevel ''xx''</code> || Forces the game to launch in a specific DirectX version, where <code>''xx''</code> is: 80 (DirectX 8 (buggy, use 81 instead for high performance)), 81 (DirectX 8.1), 90 (DX9 with Shader Model 2), 95 (DX9 with Shader Model 3) and 98 (DX9 on DX10 hardware (SM 4)). Remove this argument after starting TF2 once or it will keep reseting your other settings. The overridden DirectX version will still be saved (mat_dxlevel).
 
|-
 
| <code>-noborder -window</code> || Launches the game in a borderless fullscreen window (i.e. very alt-tab friendly). This may result in a minor performance loss. If you experience stuttering, disable Windows Aero.
 
|-
 
| <code>-h ''height''</code> or <code>-height ''height''</code> || Forces the engine to start with resolution set to <code>height</code>.
 
|-
 
| <code>-w ''width''</code> or <code>-width ''width''</code> || Forces the engine to start with resolution set to <code>width</code>.
 
|-
 
| <code>-novid</code> || Disables the intro video from playing.
 
|}
 
  
=== Console Commands ===
+
===Getting disconnected while playing on a LAN with multiple players===
:See also: [http://wiki.teamfortress.com/wiki/List_of_useful_console_commands ''List of useful console commands'' on the Offical TF2 Wiki]
+
{{ii}} This is caused by multiple players trying to connect to a server using the same client port.
  
Games running on the source engine can utilize [https://developer.valvesoftware.com/wiki/Console_Command_List Source Engine Console Commands] for various tasks.  These commands can be saved into <pre>C:\Program Files (x86)\Steam\steamapps\SteamID\Team Fortress 2\tf\cfg\autoexec.cfg</pre> to be executed when the game launches.
+
{{Fixbox|description=Use unique client ports|ref={{cn|date=July 2016}}|fix=
 +
* Each player needs a different client port, by adding this to the launch options: <code>+clientport N</code>, where N is a number between 27005 and 27032, but not 27015 or 27020.
 +
}}
  
{| class="wikitable" style="text-align: left;"
+
===Low FPS fix===
! scope="col" | Command || Notes
+
=====Ubuntu (12.10 to 17.04) or any distro with Unity desktop=====
|-
+
{{Fixbox|description=Fix low FPS on Ubuntu (12.10 to 17.04) or any distro with Unity desktop|ref={{cn|date=October 2016}}|fix=
| <code>mat_dxlevel ''xx''</code> || Same as -dxlevel (above) but doesn't adjust other settings such as resolution.
+
Once the game has loaded and the FPS have dropped below playable:
|-
+
# Press Esc. to return to the game menu.
| <code>net_graph 1</code> || View in-game FPS, ping and more. A higher number (up to 4) shows more advanced information. This can result in a performance loss.
+
# Go to Options → Video
|-
+
# Switch Display Mode from Fullscreen → Windowed
| <code>cl_showfps 1</code> || Shows FPS only. 1 is real-time, 2 is averaged over the past second.
 
|-
 
| <code>rate ''x''</code> || Max bytes/sec the host can receive data. A too low value may result in the server starving the client for data it could otherwise have received. A too high value may result in the server overwhelming the client with too much data and packets being lost. For example, if you can download data at 1 megabit/s, ''x'' should be 125000. However do not set higher than the maximum value of 1048576 (just over 8 megabit/s).
 
|-
 
| <code>snd_async_fullyasync 1</code> || May help if you are experiencing freezes when some sounds that aren't cached are playing. Allows sounds to play when ready if loading it is too slow, instead of freezing the entire game until it is.
 
|-
 
| <code>bind "END" "hud_reloadscheme; snd_restart; record fix; stop"</code> || Works around most common bugs that can be encountered TF2 by pressing the ''END''-key (or any other key of your choice) in-game. This will usually fix invisible players, displaced or invisible props, erroneously looping sounds at full volume, the HUD having the wrong team color or being otherwise broken, and more.
 
|}
 
  
=== Options ===
+
From here on, the game should increase dramatically in performance.  
These are found in each tab listed, in the "Options" section.
 
  
{| class="wikitable" style="text-align: left;"
+
# Optional: Switch back from Windowed -> Fullscreen
! scope="col" | Tab || Option || Notes
+
}}
|-
 
| Video - Advanced || Multicore rendering || Will grant a massive performance boost on multicore machines. Always enable unless it's incompatible with your system. If you're working with in-game demos it may cause crashes even though it works when playing.
 
|-
 
| Video - Advanced || Windows Aero extensions || Direct3D 9Ex (introduced in Windows Vista) is known to cause problems with the Mumble and possibly other overlays. Disable this option if you are experiencing problems. Doing may degrade alt-tab functionality, see the borderless window launch option for a remedy.
 
|}
 
  
These are found in each tab listed, in the "Advanced..." section.
+
=====Linux with Cinnamon Desktop=====
 +
{{Fixbox|description=Fix low FPS on Linux with Cinnamon Desktop|ref={{cn|date=October 2016}}|fix=
 +
To increase performance:
 +
# Press the Windows (Super) Key to open the mint menu
 +
# Go to System Settings → Display (May be under General settings instead)
 +
# Enable "Skip Compositing Manager", then close the window.
 +
# Launch the game
 +
# Switch Display Mode from Windowed → Fullscreen
 +
Cinnamon, by default, skips the compositing rendering manager if an application runs fullscreen, which in turn, disables Vsync. Enabling the compositing manager turns '''ON''' Vsync and (depending on the system) slows the game down.
  
{| class="wikitable" style="text-align: left;"
+
# Optional: Switch back from Windowed -> Fullscreen
! scope="col" | Tab || Option || Notes
+
}}
|-
 
| Keyboard || 'Fast weapon switch' || This option makes weapon switching not require a left click.
 
|-
 
| Video || 'Field of view' slider || Changes the camera FOV to a desired value between 75 and 90 degrees, as it would be for a 4:3 monitor. This value will be adjusted transparently depending on your aspect ratio. For example, if FOV is set to 90 but you use a widescreen monitor instead of a letterbox monitor the FOV will effectively be approximately 110 degrees.
 
|-
 
| Multiplayer || 'Automatically reload weapons when you're not firing' || Reloads even if gun not empty. All reloads can be aborted by firing while reloading. Potentially problematic for the spy, whose reload animation blocks the screen. Change viewmodel field of view to adjust this.
 
|-
 
| Multiplayer || 'Viewmodel field of view' slider || Changes the perspective of weapons in your hands. A higher value makes the weapon look like it's extended further from the body. Modifying this value may result in graphical bugs depending on how high it's set, since the models are designed only for use with the default 54. This setting is completely separate and has nothing to do with standard camera FOV.
 
|-
 
| Multiplayer || 'Display damage done as text over your target' ||
 
|-
 
| Multiplayer || 'Play a hitsound everytime you injure an enemy' || Volume can be adjusted by entering the console command "tf_dingaling_volume #", where # is a number between 0 and 1, such as 0.4 for 40% volume. To change the pitch depending on how much damage was dealt, adjust tf_dingaling_pitchmindmg and tf_dingaling_pitchmaxdmg. The hitsound itself can be replaced by a custom sound by installing it as <pre>C:\Program Files (x86)\Steam\steamapps\SteamID\Team Fortress 2\tf\sound\ui\hitsound.wav</pre> in your TF2 directory.
 
|-
 
| Multiplayer || 'MEDIC: Medigun continues healing without holding down fire button' ||
 
|-
 
| Multiplayer || 'MEDIC: Auto-call Health percentage' || Adjust to HP percentage level of when you would like teammates to automatically display a red cross on screen for healing.
 
|}
 
  
=== Low FPS fix ===
+
=====Anti-virus exception=====
===== Linux (Ubuntu 12.10) =====
+
{{ii}} Anti-virus software can interfere with a file in TF2's folder, which gets updated constantly during gameplay.
Once the game has loaded and the FPS have dropped below playable:
+
{{Fixbox|description=Add an anti-virus exception for the game's entire installation folder|ref=<ref>[https://web.archive.org/web/20161108120736/http://forums.steampowered.com:80/forums/showthread.php?t=1093560 Source thread on the Steam forums from 2009] (retrieved)</ref><ref>{{Refurl|url=http://etf2l.org/forum/general/topic-25307/|title=Thread on the ETF2L forums|date=May 2023}}</ref>|fix=
 +
}}
  
# Press Esc. to return to the game menu.
+
===No sound in Linux===
# Go to Options -> Video
+
{{Fixbox|description=Ensure that the PulseAudio is installed and its daemon is enabled.|ref={{cn|date=June 2017}}|fix=
# Switch Display Mode from Fullscreen -> Windowed
+
}}
  
From here on, the game should increase dramatically in performance.
 
  
# Optional: Switch back from Windowed -> Fullscreen
+
{{Fixbox|description=Command the game to use ALSA instead by adding <code>SDL_AUDIODRIVER=alsa</code> [[Glossary:Command line arguments|command line argument]] as the first launch option.|ref={{cn|date=June 2017}}|fix=
 +
}}
  
===== Anti-Virus Exception =====
+
{{Fixbox|description=Specify AUDIODEV instead, use <code>aplay -1</code> command to list available sound cards.|ref={{cn|date=June 2017}}|fix=
Anti-virus software can interfere with a file in TF2's folder, which gets updated constantly during gameplay.
+
}}
  
# Open anti-virus program.
+
===Loading screen freezes in Linux===
# Select settings > exceptions/exclusions.
+
{{ii}} This happens mostly if you are on a non-english user in ArchLinux, but that may happen on other distros as well.
# Add the following folder to the scan exceptions:
+
{{Fixbox|description=Edit configuration file|ref={{cn|date=June 2017}}|fix=
 +
# Find and edit {{file|locale.gen}} file and remove the commentary (# symbol) from <code>en_US.UTF-8</code>
 +
# Generate the locale with <code>locale-gen</code> command as root.
 +
}}
  
<pre>C:\Program Files (x86)\Steam\appcache\stats\</pre>
+
===Textures load slowly on Linux===
 +
{{ii}} Happens only when you are using any configuration file responsible for improving the framerate such as Chris' FPS Config.
 +
{{Fixbox|description=Set <code>mat_picmip 2</code> to <code>mat_picmip -1</code> in the configuration file.|ref={{cn|date=June 2017}}|fix=
 +
}}
  
* [http://forums.steampowered.com/forums/showthread.php?s=e9e88bf329dd7f72f9c6785bacf46d62&t=1093560 Source thread on the Steam forums from 2009].
+
===Game does not start on ArchLinux===
* [http://www.youtube.com/watch?v=D_8ZN3JQ4_M YouTube guide by MafiaGuy76].
+
{{Fixbox|description=Ensure that the <code>lib32-libpng12</code> has been installed.|ref={{cn|date=June 2017}}|fix=
 +
}}
  
===== Disabling Aero =====
+
===FL_LoadGlyph error in Linux===
Alternatively if you are using <pre>-noborder -window</pre> or just windowed mode:
+
{{ii}} Caused by any user who inputs a Unicode symbol in chat
  
'''Windows 7/Vista:'''
+
{{Fixbox|description=Make the game use Unicode supported font by default|ref={{cn|date=June 2017}}|fix=
# Go to C:\Program Files (x86)\Steam\steamapps\*Your Steam Username*\team fortress 2
+
# Open {{file|sourceschemes.res}} with a text editor and change <code>ConsoleText</code> into Unifont
# Right click on hl2.exe.
+
# Open {{file|chatschemes.res}} with a text editor and change the fonts into a Unicode supported one such as Arial, Ubuntu etc.
# Go to the compatibility tab.
+
# Remove/purge the <code>fonts-wqy-zenhei</code> package
# Select '''Disable Visual Themes''' and '''Disable Desktop Composition'''
+
{{ii}} Unicode-compatible fonts must be installed.
 +
{{--}} This method needs to be performed after every game update.
 +
}}
  
This will disable Windows Aero when playing TF2 in noborder mode, the same way it would disable it if you were playing in proper fullscreen, this can gain you some FPS.
+
===Audio delay/distortion when using PipeWire===
 +
{{Fixbox|description=Change the value of <code>snd_mixahead</code> to 0.03 or higher|ref=<ref>{{Refurl|url=https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/401|title=gitlab.freedesktop.org|date=May 2023}}</ref>|fix=
 +
}}
  
== Linux ==
+
===Mouse sensitivity is doubled than what was set in Linux===
{{ii}} Excellent port{{CN}}
+
{{ii}} Caused by a very outdated SDL2 library included with the game.
 +
{{Fixbox|description=Go to {{folder|{{p|game}}/bin}} and remove {{file|libSDL2-2.0.so.0}} to force the usage of the system-native library.|ref=<ref>{{Refurl|url=https://github.com/ValveSoftware/Source-1-Games/issues/1834|title=GitHub|date=May 2023}}</ref>|fix=
 +
}}
  
=== Issues and Fixes ===
+
===Flickering Black Graphics on Linux===
==== Performance  ====
+
{{ii}} Caused by a Mesa driver bug
Disable desktop composition while playing a full screen game [[Linux]]
+
{{Fixbox|description=Fixing via console commands|ref={{cn|date=February 2021}}|fix=
Install the latest graphics drivers [[Linux]]
+
Add these console commands to {{file|autoexec.cfg}}:
 +
* <code>mat_phong 1</code>. This enables phong lighting, which is usually only disabled for graphical preference or for framerate improvement.
 +
* <code>mat_bumpmap 1</code>. This enables bumpmapping, which some may prefer disabled.
 +
{{--}} This fix affects visual quality
 +
}}
  
==== No audio ====
+
{{Fixbox|description=Fixing by rolling back Mesa driver|ref=<ref>{{Refurl|url=https://gitlab.freedesktop.org/mesa/mesa/-/issues/3514|title=gitlab.freedesktop.org|date=May 2023}}</ref>|fix=
It might happen if there is no PulseAudio in your system.
+
Users can rollback to Mesa version 20.1.7 or earlier to avoid the issue as long as <code>mat_bumpmap 1</code> is set.
If you want to use Alsa, you need to launch the Steam or game directly with "SDL_AUDIODRIVER=alsa".
+
}}
(From [http://steamcommunity.com/app/221410/discussions/0/882966056462819091/#c882966056470753683 SteamCommunity]).
 
  
==== Black screen on launch ====
+
===Game refuses to run on Linux===
There are various possible reasons Team Fortress 2 is booting into a black screen on Linux.<ref>http://steamcommunity.com/app/221410/discussions/0/846938351032713908/</ref>. Most of the following steps require you to exit out of Steam beforehand.
+
{{ii}} Caused with the outdated libtcmalloc_minimal.so.4 library included with the game which causes problems with LLVM 16 or higher
 +
{{Fixbox|description=Replace libtcmalloc_minimal.so.4 with the newer one|ref=<ref>{{Refurl|url=https://github.com/ValveSoftware/Source-1-Games/issues/5043|title=Failure to start with tcmalloc "Attempt to free invalid pointer" against llvm 16 - Github|date= January 2024}}</ref>|fix=
 +
{{ii}} 32 bit package of gperftools must be installed
 +
Create a symlink using the following command (Location of the library may vary on distro, Archlinux was used for reference):
 +
<pre>ln -s /usr/lib32/libtcmalloc.so.4 ~/.steam/steam/steamapps/common/Team Fortress 2/bin/</pre>
 +
Alternatively running the game with <code>LD_PRELOAD=/usr/lib32/libtcmalloc.so.4 %command%</code> may also work
 +
}}
 +
{{Fixbox|description=Run the game through the flatpak version of Steam|fix=}}
  
{{Fixbox|1=
+
==Other information==
{{Fixbox/fix| S3TC Texture Compression Fix}}
+
===API===
Either do <code>export force_s3tc_enable=true</code> before running Steam or add <code>force_s3tc_enable=true</code> right under the <code>#!/bin/bash</code> in <code>/usr/bin/steam</code>.
+
{{API
 +
|direct3d versions      = 9
 +
|direct3d notes        =
 +
|directdraw versions    =  
 +
|directdraw notes      =
 +
|opengl versions        = 2.1
 +
|opengl notes          = OS X and Linux, uses Valve's DirectX 9 to OpenGL conversion called '[https://github.com/ValveSoftware/ToGL ToGL]'. Can be launched on Windows with <code>-gl</code> launch [[Glossary:Command_line_arguments|parameter]].
 +
|glide versions        =
 +
|glide notes            =
 +
|software mode          =
 +
|software mode notes    =
 +
|mantle support        =
 +
|mantle support notes  =
 +
|metal support          =
 +
|metal support notes    =
 +
|vulkan versions        = true
 +
|vulkan notes          = Uses DXVK-Native to translate the DirectX 9 calls to Vulkan.
 +
|dos modes              =
 +
|dos modes notes        =
 +
|shader model versions  = 2, 3
 +
|shader model notes    =
 +
|windows 32-bit exe    = true
 +
|windows 64-bit exe    = true
 +
|windows arm app        = false
 +
|windows exe notes      =
 +
|mac os x powerpc app  = unknown
 +
|macos intel 32-bit app = true
 +
|macos intel 64-bit app = false
 +
|macos arm app          = unknown
 +
|macos app notes        =
 +
|linux 32-bit executable= true
 +
|linux 64-bit executable= true
 +
|linux arm app          = false
 +
|linux executable notes =
 +
}}
  
{{Fixbox/fix| Permission error (Game is on a non-Linux file system)}}
+
===Middleware===
This can be caused by either system linking to a NTFS partition (no matter how it is mounted) or outdated libraries/drivers.
+
{{Middleware
Move the game files onto your main partition/home partition (or onto another Ext4 drive)
+
|physics          = Havok
 +
|physics notes    = Heavily modified variant.
 +
|audio            = Miles Sound System, OpenAL, SDL
 +
|audio notes      = SDL and OpenAL are used in Linux.
 +
|interface        = SDL
 +
|interface notes  =
 +
|input            =
 +
|input notes      =
 +
|cutscenes        = Bink Video, WebM
 +
|cutscenes notes  = WebM is currently only used in <code>x64_test</code> beta branch.<ref>{{Refcheck|user=Kr0tchet|date=2024-02-10|comment=All files in {{folder|tf\media}} folder has been all converted to WebM, including the Valve intro in {{folder|hl2\media}} folder. {{file|startupvids.txt}} file appears to be redirect to {{file|valve.webm}} and the game plays that file instead of {{code|valve.bik}} even if it's already specified.}}</ref>
 +
|multiplayer      = Steamworks
 +
|multiplayer notes=
 +
}}
  
{{Fixbox/fix|No symlinks}}
+
===Total Conversions===
There must be no symlinks involved in getting to the steamapps directory, or tf2 will fail on startup. If you don't want/don't have the space for tf2 in your home directory, just add /opt/Steam as another steam library or the sole steam library.
+
{| class="wikitable"
 
+
|-
{{Fixbox/fix|Tell TF2 not to use a joystick}}
+
! Name !! System !! Description
Add -nojoy to the launch options for TF2.
+
|-
 +
| [https://github.com/NicknineTheEagle/TF2-Base TF2 1.0.1.8 Source 2013] || Windows, Mac OS X, Linux || Based on the February 2008 build of the game which does not contain any additional weapons, cosmetic items or even recent game modes, it is ported into Source 2013 engine which fixes a lot of security exploits. This is currently the most original form of the game. '''Requires Source SDK 2013 Multiplayer'''.
 +
|-
 +
| [http://tf2classic.com/ TF2 Classic] || Windows, Mac OS X, Linux || Based on the February 2008 build, it is a community-maintained mod which brings in some features from TFC such as 4-team modes, VIP/escort etc. Right now it provides community-made balances and unique weapons, graphical improvements (such as dynamic lighting for some particle effects) and new features that are completely absent in the original game. The update cycle is slow, but brings in many new changes that keeps it very fresh. '''Requires Source SDK 2013 Multiplayer'''. Discord server link: https://discord.com/invite/3zMk4vn
 +
|-
 +
| [https://www.moddb.com/mods/team-fortress-2-vintage TF2 Vintage] || Windows, Mac OS X, Linux || A fork of TF2 Classic. It aims to bring back the game to the pre-Mannconomy Update which happened in October 2010. Primarily focused on gameplay and quality updates. '''Requires Source SDK 2013 Multiplayer and Team Fortress 2'''.
 +
|-
 +
| [https://drive.google.com/file/d/1_pk_8gvy1Y8jKfm9YISJ2CvICLo6O07f/view Lambda Fortress: Extended] || Windows, Mac OS X, Linux || Based on Team Fortress 2 Classic Beta 4. It is a community mod, which adds Half-Life: Source and Half-Life 2 campaign with co-op features. '''Requires Source SDK 2013 Multiplayer and Team Fortress 2'''. Discord server link: https://discord.gg/mHCFgn8yrv
 +
|-
 +
| [http://openfortress.fun/ Open Fortress] || Windows, Linux || Based on the February 2008 build, it is a open-source mod, which adds lots of custom content such as new gamemodes and maps, Mercenary and Civilian classes. It is in development now, but can be downloaded using SVN (TortoiseSVN for Windows or various SVN clients for Linux). '''Requires Source SDK 2013 Multiplayer and Team Fortress 2'''. Discord server link: https://discord.gg/mKjW2ACCrm
 +
|-
 +
| [https://prefortress.com/ Pre-Fortress 2] || Windows, Mac OS X, Linux || Based on the February 2008 build, it is a community-maintained mod that caters to the gameplay of earlier Team Fortress installments while maintaining the aesthetics from TF2's alternative designs from 2006. '''Requires Source SDK 2013 Multiplayer'''.
 +
|-
 +
|}
  
{{Fixbox/fix|SELinux prevents TF2 from starting}}
+
===Console commands===
Run <code>sudo setsebool -P allow_execheap 1</code> in the terminal to fix this.
+
{{ii}} [http://wiki.teamfortress.com/wiki/List_of_useful_console_commands "List of useful console commands"] - Official TF2 Wiki
 +
{{ii}} Games running on the source engine can utilize [https://developer.valvesoftware.com/wiki/Console_Command_List Source Engine Console Commands] for various tasks.
 +
{{ii}} These commands can be saved into {{file|{{p|game}}\tf\cfg\autoexec.cfg}} to be executed when the game launches.
  
{{Fixbox/fix|Windowed mode}}
+
{{Fixbox|description=Enabling the console in Source games|ref={{cn|date=July 2016}}|fix=
Add <code>-window</code>, <code>-sw</code>, <code>-startwindowed</code>, or <code>-windowed</code> to the launch options.
+
# Launch the game
 +
# From the main menu select <code>Options</code>
 +
# Select the <code>Keyboard</code> tab
 +
# Click the <code>Advanced</code> button
 +
# Check the box next to <code>Enable developer console ({{key|~}})</code>
 +
# Click Apply
  
{{Fixbox/fix|Proprietary drivers}}
+
'''Notes'''
Some people have had luck installing the drivers from ATI's website. Be warned though that this often causes a plethora of other issues.
+
{{ii}} Press {{key|~}} to open the console.
 +
{{ii}} Some commands may first require you enabling sv_cheats. You can do so with <code>sv_cheats 1</code>.
 +
{{ii}} Many servers will not allow you to play with cheats enabled, or will disable them upon entering the server.
 +
{{--}} Users without a US keyboard could experience some [[Engine:Source#Console doesn't open|problems]].
 
}}
 
}}
  
{{ii}} If none of these work, it may be that your graphics card is unsupported. Various AMD and Intel chips will not working with Team Fortress 2 on Linux despite working on Windows.
+
===[[Glossary:Command line arguments|Command line arguments]]===
 +
{{ii}} View [https://support.steampowered.com/kb_article.php?ref=1040-JWMT-2947 this Steam Support Article regarding launch options] as well as [https://developer.valvesoftware.com/wiki/Launch_options#Source_Games the relevant Valve Developer wiki page] for further information and a list of useful Source engine launch options.
  
 
==System requirements==
 
==System requirements==
{{System Requirements
+
{{ii}} Windows version requires a CPU supporting [[Wikipedia:Streaming SIMD Extensions|SSE]] instructions.
 +
{{System requirements
 
|OSfamily = Windows
 
|OSfamily = Windows
|minOS    = Windows XP, Windows Vista or Windows 7
 
|minproc  = 1.7GHz Processor
 
|minmem  = 512 MB
 
|minGPU  = DirectX® 8.1 level Graphics Card (Requires support for SSE)
 
|minHD  = 15 GB
 
  
|recproc = Pentium 4 processor (3.0GHz or better)
+
|minOS    = 7
|recmem   = 1 GB
+
|minCPU  = Intel Dual Core 2.8 GHz
|recGPU  = DirectX® 9 level Graphics Card
+
|minCPU2 = AMD Dual Core 2.8 GHz
 +
|minRAM   = 512 MB
 +
|minHD    = 15 GB
 +
|minDX    = 8.1
 +
|minGPU  = Nvidia GeForce 8xxx series
 +
|minGPU2  = ATI Radeon X1600
 +
|minGPU3  = Intel HD Graphics 3000
 +
 
 +
|recOS    = 10
 +
|recCPU  = Intel Core i7
 +
|recRAM  = 4 GB
 +
|recGPU  =  
 +
|recDX    = 9.0c
 +
|notes    = {{ii}} DirectX 9 is required for Competitive Mode.<ref>{{Refurl|url=https://www.teamfortress.com/meetyourmatch/faq/|title=Team Fortress 2 - Competitive FAQ|date=July 8, 2016}}</ref><br>{{ii}} Windows XP and Vista were previously supported, but as future updates for this game and Steam occurred; the support was dropped, even with retail copies.
 
}}
 
}}
  
{{System Requirements
+
{{System requirements
|OSfamily = Mac
+
|OSfamily = OS X
|minOS    = OS X version Leopard 10.5.8, Snow Leopard 10.6.3
+
 
|minmem   = 1 GB
+
|minOS    = 10.5.8
|minGPU  = NVIDIA GeForce 8 or higher, ATI X1600 or higher, or Intel HD 3000 or higher
+
|minCPU  = 1.7 GHz
|minHD  = 15 GB
+
|minRAM   = 1 GB
 +
|minHD    = 15 GB
 +
|minGPU  = Nvidia GeForce 8xxx series
 +
|minGPU2  = ATI Radeon X1600
 +
|minGPU3  = Intel HD Graphics 3000
 
}}
 
}}
  
{{System Requirements
+
{{System requirements
 
|OSfamily = Linux
 
|OSfamily = Linux
 +
 
|minOS    = Ubuntu 12.04
 
|minOS    = Ubuntu 12.04
|minmem   = 1 GB
+
|minCPU  = Intel Dual Core 2.8 GHz
|minGPU  =  
+
|minCPU2  = AMD Dual Core 2.8 GHz
|minHD   = 15 GB
+
|minRAM   = 1 GB
 +
|minHD    = 15 GB
 +
|minGPU  = Nvidia GeForce 8600/9600 GT
 +
|minGPU2  = ATI/AMD Radeon HD 2600/3600
 +
|minOGL   = 2.1
 +
|minaudio = OpenAL Compatible Sound Card
 +
|minother = (Graphic Drivers: Nvidia 310, AMD 12.11)
 
}}
 
}}
 
+
{{ii}} OpenGL versions require the GL_EXT_draw_buffers2 extension.<ref>{{Refurl|url=https://github.com/ValveSoftware/steam-for-linux/issues/248#issuecomment-12125062|title=Could not find required OpenGL entry point 'glColorMaskIndexedEXT'! · ValveSoftware/steam-for-linux|date=9 June 2023}}</ref> A hacky workaround [https://steamcommunity.com/app/221410/discussions/0/882966056532198187/?ctp=7 exists].  
== Useful Links ==
 
* [http://whisper.ausgamers.com/wiki/index.php/Fps_problems FPS problems article on Whisper's Wiki] - a very detailed guide on how to tweak the Source engine and Steam platform, on which TF2 runs.
 
* [http://fakkelbrigade.eu/chris/configs/ Chris' FPS Configs for TF2] - Different configuration files to automatically set all settings to their absolute lowest or highest. It is recommended to troubleshoot before resorting to these as they can cause problems.
 
* [http://clugu.com/tf2mate/ TF2Mate] - a TF2 configuration generator with support for various FPS configs, configurable key bindings, and other miscellaneous settings.
 
  
 
{{References}}
 
{{References}}
 
[[Category:Game]]
 
[[Category:Windows]]
 
[[Category:Mac]]
 
[[Category:Linux]]
 

Revision as of 00:55, 19 April 2024

Dev general icon.svg
Although this product has been released, it remains under active development - information may change frequently and could be outdated or irrelevant.
Team Fortress 2
Team Fortress 2 cover
Developers
Valve Corporation
PASS Time Escalation Studios[1]
Publishers
Valve Corporation
Russia (The Orange Box) Buka Entertainment
Engines
Original Source 2007
Current Source 2013 Multiplayer
Release dates
Windows October 9, 2007
macOS (OS X) June 10, 2010
Linux November 6, 2012
Reception
Metacritic 92
Taxonomy
Monetization Free-to-play, Cross-game bonus
Microtransactions Cosmetic, Loot box, Player trading, Unlock
Modes Multiplayer
Pacing Real-time
Perspectives First-person
Controls Direct control
Genres Action, FPS
Art styles Stylized
Themes North America, Sci-fi
Series Team Fortress
Team Fortress 2 on HowLongToBeat
Team Fortress 2 on IGDB
Team Fortress 2 guide on StrategyWiki
Team Fortress 2 on MobyGames
Team Fortress 2 on Wikipedia
Team Fortress
Team Fortress (mod) 1996
Team Fortress Classic 1999
Fortress Forever (unofficial mod) 2007
Team Fortress 2 2007

Warnings

The macOS (OS X) version of this game does not work on macOS Catalina (version 10.15) or later due to the removal of support for 32-bit-only apps.

Team Fortress 2 is a multiplayer first-person action and FPS game in the Team Fortress series.

The game was purchasable individually and as part of The Orange Box compilation as of October 9, 2007. It became free-to-play on June 23, 2011.[2]

General information

Official wiki - Run by the TF2 community and hosted by Valve
GitHub Issue Tracker includes other Source-based games
Steam Community Discussions
Steam Workshop

Availability

Source DRM Notes Keys OS
Retail
Icon overlay.png
Gives access to Premium account features[3]
Windows
Steam
Icon overlay.png
Free to play, Install with steam://install/440
Also available to purchase in The Orange Box bundle, which gives access to Premium account features.
Windows
macOS (OS X)
Linux
All versions require Steam DRM.


Monetization

Type Notes
Cross-game bonus There are hundreds of cosmetic items and weapons (most are reskins, some are unique) that can be obtained by purchasing other games or meeting certain conditions in other games. A more complete list is available at the Team Fortress 2 wiki here.
DLC The soundtrack is sold as DLC.
Free-to-play The base game is free-to-play as of June 23, 2011, but Premium accounts have access to additional features.

Microtransactions

Type Notes
Cosmetic There are hundreds of cosmetics items that players can use to customize their appearance in the game. Some are Halloween-restricted.
Free-to-grind Timed drops allow players to "find" weapons and other unlockables; rarely, they may find cosmetic items. Premium accounts get an advantage.
Loot box Mann Co. Supply Crates, and other types of crates, drop automatically, but must be unlocked with a purchased key.
Player trading Most items in the game can be traded for on Steam with other players, or listed for sale on the community marketplace.
Time-limited Some cosmetic items were available for purchase, or as part of a promotion, in the past, but are no longer available.
Unlock All non-reskin weapons in the game can either be outright purchased, traded for, or found in random drops with enough gameplay time.
Limited-use items: Some purchasable items have a limited number of uses, such as Noise Makers and the Dueling Mini-Game.

DLC and expansion packs

Name Notes
Fight Songs: The Music Of Team Fortress 2 Soundtrack
Windows
macOS (OS X)
Linux

Essential improvements

Skip intro videos

Use the -novid command line argument[4]
  1. Alternatively, go to <path-to-game>\hl2\media.
  2. Delete or rename Valve.bik.

Increase performance

TF2's default settings are generally not well optimized. Therefore, it is recommended to install a custom config, such as mastercomfig.
Install mastercomfig[citation needed]
  1. Go to the mastercomfig website and choose a preset, alongside any relevant addons and download the necessary VPK files.
  2. Place the downloaded VPK files into <path-to-game>\tf\custom and follow these directions to add the necessary launch options. (Don't forget to remove the -dxlevel launch option after launching the game)
  3. Boot up the game and test the performance/visual fidelity. If errors occur, check the troubleshooting section.
  4. To change any settings without changing presets, use modules to alter individual settings.
Any already existing custom configs will need to be moved from <path-to-game>\tf\cfg to <path-to-game>\tf\cfg\user (create the user subfolder if not present already). It is also recommended to check if any commands in these custom configs overwrite mastercomfig's.

Higher texture quality

Using the console command mat_picmip #, one can change TF2's texture quality preset independently from the in-game settings, where # can range from 2 to -10. The lower the value, the better.
The in-game "Very High" Texture detail setting uses -1, therefore it is not the highest possible texture quality the engine can offer.
Set mat_picmip value in autoexec.cfg[5]
  1. Go to <path-to-game>\tf\cfg and create a text file named autoexec.cfg if it does not already exist.
  2. Open autoexec.cfg and add the line mat_picmip -10.
  3. Save and close the file. This will ensure that the command is read on start-up.
IMPORTANT: if mastercomfig is used, autoexec.cfg will need to be moved to a folder named overrides inside <path-to-game>\tf\cfg.
Alternatively, use the launch parameter +mat_picmip -10.

Game data

Configuration file(s) location

System Location
Steam <path-to-game>\tf\cfg\
Steam Cloud settings are stored in <Steam-folder>\userdata\<user-id>\440\remote.
Demo files are stored in <path-to-game>\tf.
It's unknown whether this game follows the XDG Base Directory Specification on Linux. Please fill in this information.

Save game cloud syncing

System Native Notes
Steam Cloud
Approx. 1 GB available.
Settings, in-game sprays and Steam Workshop submissions.

Video

In-game general video settings.
In-game general video settings.
In-game advanced video settings.
In-game advanced video settings.

Graphics feature State WSGF Notes
Widescreen resolution
Multi-monitor
Ultra-widescreen
Some UI assets don't fill the entire screen.
4K Ultra HD
Interface scales with resolution and can become unusable.
Field of view (FOV)
Slider from 75 to 90°. See Field of view (FOV) for further options.
Windowed
Borderless fullscreen windowed
Use the -window -noborder command line arguments.
Anisotropic filtering (AF)
Up to 16 samples.
Anti-aliasing (AA)
MSAA, up to 8x.
Vertical sync (Vsync)
Triple Buffering
60 FPS and 120+ FPS
300 FPS cap by default. With console, can change "fps_max" to any value; use 0 for uncapped framerate. The game will break when above 1000 fps, so it may be worthwhile to keep the framerate capped.[citation needed]
High dynamic range display (HDR)
In-game HDR option refers only to HDR Rendering for rendering Bloom and sun shine type effects.
Color blind mode
Under "Advanced HUD Options". Only changes some minor effects like Jarate and Mad Milk.[6]

Field of view (FOV)

For 16:9, a setting of 90° results in a FOV slightly above 106°.
Console commands can change the FOV to arbitrary values, but are not allowed in Competitive Mode. Viewmodel FOV can also be adjusted.
fov_desired[citation needed]
  1. Open the console (~).
  2. Enter fov_desired #, where # is your desired FOV.
viewmodel_fov[citation needed]
  1. Open the console (~).
  2. Enter viewmodel_fov #, where # is your desired viewmodel FOV.
It is also possible to turn on Use minimized viewmodels in the Advanced Options menu.
Alternatively, input tf_use_min_viewmodels 1 into the console.
Plugins[citation needed]
It is possible to increase the FOV limit up to 130 or even unplayable 179, using server-side plugins such as this one. However it is important to note that, while allowed by the ETF2L, and while client-side plugins are not classified as a cheats they are not officially supported by Valve. Some cheats include FOV increase hacks, so use at your own risk.

Input

In-game key map settings.
In-game key map settings.
In-game mouse/gamepad settings.
In-game mouse/gamepad settings.

Controller support

See also: Xbox 360 controls on the Official Team Fortress Wiki.
Enabling Xbox 360 HUD[citation needed]
  1. Open the console (~).
  2. Input exec 360controller.

Notes

To reverse the change, input exec undo360controller.

Audio

In-game audio settings.
In-game audio settings.

Audio feature State Notes
Separate volume controls
Over-all game volume and separate music slider.
Surround sound
7.1, 5.1 surround sound, 4 speaker surround. Linux version lacks the surround support as SDL itself was chosen to handle the audio without the additional API such as SDL_mixer or OpenAL.
Subtitles
The Developer Commentary is the only part of the game with subtitles.
Closed captions
Mute on focus lost
"Silence the audio while the game window is in the background" check box
EAX support
Linux only. Open alsoft-config (included with OpenAL package) and in HRTF tab set HRTF Mode to Forced On. It'll work only if you have a 32-bit package of OpenAL.

Localizations

Language UI Audio Sub Notes
English
Bulgarian
Simplified Chinese
Traditional Chinese
Czech
Danish
Dutch
Finnish
French
German
Greek
Hungarian
Italian
Japanese
Korean
Norwegian
Polish
Brazilian Portuguese
Portuguese
Romanian
Russian
Spanish
Swedish
Thai
Turkish
Ukrainian
The game contains files for complete subtitles, but they are not compiled. The user can compile it themselves using the captioncompiler.exe program which is provided with the game.

Network

In-game general multiplayer settings.
In-game general multiplayer settings.
In-game advanced options/multiplayer settings.
In-game advanced options/multiplayer settings.
For more information, see the "Source Dedicated Server" section of our Source engine article.

Multiplayer types

Type Native Players Notes
Local play
32 Co-op, Versus
Use Nucleus Co-op.
LAN play
32 Co-op, Versus
Online play
32 Co-op, Versus

Connection types

Ports

Protocol Port(s) and/or port range(s)
TCP 27014-27050
UDP 3478-4380, 27000-27030
Universal Plug and Play (UPnP) support status is unknown.

VR support

3D modes State GG3D Notes
Nvidia 3D Vision
TriDef 3D
Headsets
SteamVR
This game might be playable with the Revive Compatibility Layer (compatibility list).
Oculus VR (LibOVR)
Available under Video Settings. See Oculus Rift for more information.
Windows Mixed Reality
This game might be playable with the Revive Compatibility Layer.
Devices
Tracked motion controllers
Supports Razer Hydra Sixense API. Exit the Hydra tray application and use the launch options +sixense_enabled 1[7]
See Input for details.
Traditional controller
See Input for details.
Keyboard/Mouse
Play area
Seated
Standing
Room-scale

Oculus Rift

By default VR mode will run full screen, to switch back to a borderless windowed set the vr_force_windowed convar.
Toggle world view models[citation needed]
  1. Open the console (~).
  2. Enter cl_first_person_uses_world_model 1 to enable or cl_first_person_uses_world_model 0 to disable.

Issues fixed

Generic fixes for issues

Console commands[citation needed]
  1. Reload the HUD: in the console, type hud_reloadscheme
  2. Resync the game state with the server (start/stop an in-game demo): in the console, type record s; stop
    1. The "s" can be anything; it's just the name of the demo file. Using the same name every time will overwrite the unusable demo file every time you need to re-synchronize.
  3. Reload sound resources: in the console, type snd_restart
  4. Reconnect to a server: in the console, type retry
  5. Reshow missing/hidden viewmodel: in the console, type r_drawviewmodel 1

Sprays are not visible

As of the September 16, 2021 update, sprays are no longer available on official Valve servers and can be disabled per server by the server admins.
Multiplayer Decal Limit[citation needed]
  • Try raising Multiplayer Decal Limit. Check settings cl_allowdownload, cl_allowupload, cl_playerspraydisable, mp_decals, r_decals and r_spray_lifetime.

Purple and black broken textures

A generic fix for this issue can be found on our Source engine page.

Game Crashes at Valve logo on startup

Most likely caused by DirectX problems.
Run the game with command line arguments[citation needed]
  1. Reinstall the latest DirectX
  2. Set the game to run with different command line arguments until it functions: -dxlevel ##. Replace ## with 80, 81, 90, and 95, corresponding to Shader Models. Lower is more compatible but 80 may cause more frequent crashes.
  3. Try setting -nod3d9ex. This will disable some DirectX 9 extensions used in Windows Vista/7.

Game crashes after closing MotD

Some servers use Pinion advertisement, a buggy plugin that sometimes crashes TF2.
Game crashes after closing MotD[citation needed]
  1. Disable HTML motd (in advanced options, under performance options)
  2. Install a Pinion blocker by editing the hosts file.
  3. Try adding the following lines to your autoexec.cfg or in the launch options
  • sv_motd_unload_on_dismissal "1" // The MOTD contents will be unloaded when the player closes the MOTD.
  • alias closed_htmlpage ""; echo BLOCKED an attempted html wait timer"
  • cl_disablehtmlmotd 1

Note that some servers require you to watch the MotD for a minimum amount of time (e.g. 30 seconds)

Cosmetic items do not appear on a player

Bug is caused by the dynamic-model-loading system implemented in Team Fortress 2.
Touch a resupply cabinet[citation needed]

Getting disconnected while playing on a LAN with multiple players

This is caused by multiple players trying to connect to a server using the same client port.
Use unique client ports[citation needed]
  • Each player needs a different client port, by adding this to the launch options: +clientport N, where N is a number between 27005 and 27032, but not 27015 or 27020.

Low FPS fix

Ubuntu (12.10 to 17.04) or any distro with Unity desktop
Fix low FPS on Ubuntu (12.10 to 17.04) or any distro with Unity desktop[citation needed]

Once the game has loaded and the FPS have dropped below playable:

  1. Press Esc. to return to the game menu.
  2. Go to Options → Video
  3. Switch Display Mode from Fullscreen → Windowed

From here on, the game should increase dramatically in performance.

  1. Optional: Switch back from Windowed -> Fullscreen
Linux with Cinnamon Desktop
Fix low FPS on Linux with Cinnamon Desktop[citation needed]

To increase performance:

  1. Press the Windows (Super) Key to open the mint menu
  2. Go to System Settings → Display (May be under General settings instead)
  3. Enable "Skip Compositing Manager", then close the window.
  4. Launch the game
  5. Switch Display Mode from Windowed → Fullscreen

Cinnamon, by default, skips the compositing rendering manager if an application runs fullscreen, which in turn, disables Vsync. Enabling the compositing manager turns ON Vsync and (depending on the system) slows the game down.

  1. Optional: Switch back from Windowed -> Fullscreen
Anti-virus exception
Anti-virus software can interfere with a file in TF2's folder, which gets updated constantly during gameplay.
Add an anti-virus exception for the game's entire installation folder[8][9]

No sound in Linux

Ensure that the PulseAudio is installed and its daemon is enabled.[citation needed]


Command the game to use ALSA instead by adding SDL_AUDIODRIVER=alsa command line argument as the first launch option.[citation needed]
Specify AUDIODEV instead, use aplay -1 command to list available sound cards.[citation needed]

Loading screen freezes in Linux

This happens mostly if you are on a non-english user in ArchLinux, but that may happen on other distros as well.
Edit configuration file[citation needed]
  1. Find and edit locale.gen file and remove the commentary (# symbol) from en_US.UTF-8
  2. Generate the locale with locale-gen command as root.

Textures load slowly on Linux

Happens only when you are using any configuration file responsible for improving the framerate such as Chris' FPS Config.
Set mat_picmip 2 to mat_picmip -1 in the configuration file.[citation needed]

Game does not start on ArchLinux

Ensure that the lib32-libpng12 has been installed.[citation needed]

FL_LoadGlyph error in Linux

Caused by any user who inputs a Unicode symbol in chat
Make the game use Unicode supported font by default[citation needed]
  1. Open sourceschemes.res with a text editor and change ConsoleText into Unifont
  2. Open chatschemes.res with a text editor and change the fonts into a Unicode supported one such as Arial, Ubuntu etc.
  3. Remove/purge the fonts-wqy-zenhei package
Unicode-compatible fonts must be installed.
This method needs to be performed after every game update.

Audio delay/distortion when using PipeWire

Change the value of snd_mixahead to 0.03 or higher[10]

Mouse sensitivity is doubled than what was set in Linux

Caused by a very outdated SDL2 library included with the game.
Go to <path-to-game>/bin and remove libSDL2-2.0.so.0 to force the usage of the system-native library.[11]

Flickering Black Graphics on Linux

Caused by a Mesa driver bug
Fixing via console commands[citation needed]

Add these console commands to autoexec.cfg:

  • mat_phong 1. This enables phong lighting, which is usually only disabled for graphical preference or for framerate improvement.
  • mat_bumpmap 1. This enables bumpmapping, which some may prefer disabled.
This fix affects visual quality
Fixing by rolling back Mesa driver[12]

Users can rollback to Mesa version 20.1.7 or earlier to avoid the issue as long as mat_bumpmap 1 is set.

Game refuses to run on Linux

Caused with the outdated libtcmalloc_minimal.so.4 library included with the game which causes problems with LLVM 16 or higher
Replace libtcmalloc_minimal.so.4 with the newer one[13]
32 bit package of gperftools must be installed

Create a symlink using the following command (Location of the library may vary on distro, Archlinux was used for reference):

ln -s /usr/lib32/libtcmalloc.so.4 ~/.steam/steam/steamapps/common/Team Fortress 2/bin/

Alternatively running the game with LD_PRELOAD=/usr/lib32/libtcmalloc.so.4 %command% may also work

Run the game through the flatpak version of Steam

Other information

API

Technical specs Supported Notes
Direct3D 9
OpenGL 2.1 OS X and Linux, uses Valve's DirectX 9 to OpenGL conversion called 'ToGL'. Can be launched on Windows with -gl launch parameter.
Vulkan
Uses DXVK-Native to translate the DirectX 9 calls to Vulkan.
Shader Model support 2, 3
Executable 32-bit 64-bit Notes
Windows
macOS (OS X)
This 32-bit-only macOS game does not work on macOS Catalina (10.15) or later.
Linux

Middleware

Middleware Notes
Physics Havok Heavily modified variant.
Audio Miles Sound System, OpenAL, SDL SDL and OpenAL are used in Linux.
Interface SDL
Cutscenes Bink Video, WebM WebM is currently only used in x64_test beta branch.[14]
Multiplayer Steamworks

Total Conversions

Name System Description
TF2 1.0.1.8 Source 2013 Windows, Mac OS X, Linux Based on the February 2008 build of the game which does not contain any additional weapons, cosmetic items or even recent game modes, it is ported into Source 2013 engine which fixes a lot of security exploits. This is currently the most original form of the game. Requires Source SDK 2013 Multiplayer.
TF2 Classic Windows, Mac OS X, Linux Based on the February 2008 build, it is a community-maintained mod which brings in some features from TFC such as 4-team modes, VIP/escort etc. Right now it provides community-made balances and unique weapons, graphical improvements (such as dynamic lighting for some particle effects) and new features that are completely absent in the original game. The update cycle is slow, but brings in many new changes that keeps it very fresh. Requires Source SDK 2013 Multiplayer. Discord server link: https://discord.com/invite/3zMk4vn
TF2 Vintage Windows, Mac OS X, Linux A fork of TF2 Classic. It aims to bring back the game to the pre-Mannconomy Update which happened in October 2010. Primarily focused on gameplay and quality updates. Requires Source SDK 2013 Multiplayer and Team Fortress 2.
Lambda Fortress: Extended Windows, Mac OS X, Linux Based on Team Fortress 2 Classic Beta 4. It is a community mod, which adds Half-Life: Source and Half-Life 2 campaign with co-op features. Requires Source SDK 2013 Multiplayer and Team Fortress 2. Discord server link: https://discord.gg/mHCFgn8yrv
Open Fortress Windows, Linux Based on the February 2008 build, it is a open-source mod, which adds lots of custom content such as new gamemodes and maps, Mercenary and Civilian classes. It is in development now, but can be downloaded using SVN (TortoiseSVN for Windows or various SVN clients for Linux). Requires Source SDK 2013 Multiplayer and Team Fortress 2. Discord server link: https://discord.gg/mKjW2ACCrm
Pre-Fortress 2 Windows, Mac OS X, Linux Based on the February 2008 build, it is a community-maintained mod that caters to the gameplay of earlier Team Fortress installments while maintaining the aesthetics from TF2's alternative designs from 2006. Requires Source SDK 2013 Multiplayer.

Console commands

"List of useful console commands" - Official TF2 Wiki
Games running on the source engine can utilize Source Engine Console Commands for various tasks.
These commands can be saved into <path-to-game>\tf\cfg\autoexec.cfg to be executed when the game launches.
Enabling the console in Source games[citation needed]
  1. Launch the game
  2. From the main menu select Options
  3. Select the Keyboard tab
  4. Click the Advanced button
  5. Check the box next to Enable developer console (~)
  6. Click Apply

Notes

Press ~ to open the console.
Some commands may first require you enabling sv_cheats. You can do so with sv_cheats 1.
Many servers will not allow you to play with cheats enabled, or will disable them upon entering the server.
Users without a US keyboard could experience some problems.

Command line arguments

View this Steam Support Article regarding launch options as well as the relevant Valve Developer wiki page for further information and a list of useful Source engine launch options.

System requirements

Windows version requires a CPU supporting SSE instructions.
Windows
Minimum Recommended
Operating system (OS) 7
Processor (CPU) Intel Dual Core 2.8 GHz
AMD Dual Core 2.8 GHz
System memory (RAM) 512 MB
Hard disk drive (HDD) 15 GB
Video card (GPU) Nvidia GeForce 8xxx series
ATI Radeon X1600
Intel HD Graphics 3000
DirectX 8.1 compatible
DirectX 9 is required for Competitive Mode.[15]
Windows XP and Vista were previously supported, but as future updates for this game and Steam occurred; the support was dropped, even with retail copies.
macOS (OS X)
Minimum
Operating system (OS) 10.5.8
Processor (CPU) 1.7 GHz
System memory (RAM) 1 GB
Hard disk drive (HDD) 15 GB
Video card (GPU) Nvidia GeForce 8xxx series
ATI Radeon X1600
Intel HD Graphics 3000
Linux
Minimum
Operating system (OS) Ubuntu 12.04
Processor (CPU) Intel Dual Core 2.8 GHz
AMD Dual Core 2.8 GHz
System memory (RAM) 1 GB
Hard disk drive (HDD) 15 GB
Video card (GPU) Nvidia GeForce 8600/9600 GT
ATI/AMD Radeon HD 2600/3600
OpenGL 2.1 compatible
Sound (audio device) OpenAL Compatible Sound Card
Other (Graphic Drivers: Nvidia 310, AMD 12.11)
OpenGL versions require the GL_EXT_draw_buffers2 extension.[16] A hacky workaround exists.


References

  1. Introducing PASS Time, a New Beta Game Mode! - TF2 Team - last accessed on 2016-5-22
  2. News - Team Fortress 2 is now Free to Play - last accessed on 2023-08-12
  3. Team Fortress 2: Free-to-Play FAQ - last accessed on 2016-5-22
    "If you've ever spent money on TF2, you have a premium account. This includes purchasing the game before it was Free-to-Play, activating a retail version of the game, or making a purchase in the Mann Co. in-game store."
  4. Skipping the Valve-intro :: Team Fortress 2 Steam Community Guide - last accessed on 14-03-2018
  5. Ultra High Settings :: Team Fortress 2 Official Wiki - last accessed on 22-07-2022
  6. 'colorblind mode' - Steam Users' Forums (retrieved)
  7. sixense.com - last accessed on May 2023
  8. Source thread on the Steam forums from 2009 (retrieved)
  9. Thread on the ETF2L forums - last accessed on May 2023
  10. gitlab.freedesktop.org - last accessed on May 2023
  11. GitHub - last accessed on May 2023
  12. gitlab.freedesktop.org - last accessed on May 2023
  13. Failure to start with tcmalloc "Attempt to free invalid pointer" against llvm 16 - Github - last accessed on January 2024
  14. Verified by User:Kr0tchet on 2024-02-10
    All files in tf\media folder has been all converted to WebM, including the Valve intro in hl2\media folder. startupvids.txt file appears to be redirect to valve.webm and the game plays that file instead of valve.bik even if it's already specified.
  15. Team Fortress 2 - Competitive FAQ - last accessed on July 8, 2016
  16. Could not find required OpenGL entry point 'glColorMaskIndexedEXT'! · ValveSoftware/steam-for-linux - last accessed on 9 June 2023