a semi-comprehensive guide to properly tweaking graphics options in TF2 for the best performance, as it’s nowhere near as simple as going into settings and turning everything down.
preface
- mastercomfig docs[docs.comfig.app]
- valve’s official docs on directx
my current PC configuration and OS, for reference
Ryzen 5 2600
8×2 (16GB) 3000MHz DDR4
Windows 11 Pro 23H2
as someone who’s extensively dealt with trying literally everything under the sun to squeeze every little bit of fps out of TF2 over the course of the last 5 years, i consider myself knowledgeable about what actually effects performance and what’s completely placebo.
I’ve even spent far more time than I’d like to admit on getting TF2 to be playable on an M1 macbook air under both wine and parallels eventually concluding that it was impossible.
*or, well, it was. this was back when TF2 was still 32bit.
ever since the x64 update that boosted performance across every configuration, you can finally run TF2 under an entire CPU architecture translation layer while getting an acceptable framerate. hooray?
before everything, i wanna get a few misconceptions you might have out of the way first.
misconceptions
screen resolution in TF2 has very little to no effect on how much fps you get. using a lower res, you’re guaranteed to get a significant fps boost in a lot of other games, so this might’ve led you to assume that it applies TF2 (or any source game, really) but no, it really doesn’t.
the most probable reason for this is; TF2 is extremely light on the GPU and quite heavy on the CPU.
a 10-year-old high-end card or a 5-year-old cheaper card can easily go over the threshold to comfortably render TF2 at native 1080p with a lot of room left to spare.
this can, of course, depend on the resolutions at hand (like 4k vs 1080p) and whether if your system is super-duper old. it also, obviously, does not mean that any PC can run TF2 at 4k with no compromises.
generally, just please don’t go torturing your eyes running tf2 at 800×600 as it’ll be barely of any help.
if your hardware is even slightly better than a dusted potato, you will NOT benefit from using a resolution below 1080p.
the mat_viewportupscale command that can seemingly adjust the internal resolution is also completely useless.
a lot of people seem to also think that lower texture fidelity = free frames, or that you’ll be getting 1000+ fps all the time if you make the game look like it’s from the mid-1990s.
THIS IS SIMPLY NOT TRUE IN THE SLIGHTEST.
like in every other game, the texture resolution almost only concerns the memory limits (VRAM) of your graphics card. in the case of TF2, even, say, an extremely dated crappy ATI card from 2014 likely has enough memory to handle the highest texture quality (can confirm this from personal experience.)
you can safely max out texture filtering too, as it also practically has no effect on performance.
if your PC has enough horsepower to render the steam page you’re reading this guide on, you DO NOT need to lower texture quality for better results.
though, feel free to play with N64-tier textures if that’s your preference. it won’t hurt.
✅correct: rendering of cosmetics hinders TF2 performance massively, due to larger CPU load.
❌incorrect: you can use cosmetic disabling mods for more fps.
while yes, cosmetics DO tank your fps, you cannot simply just disable them. mods that “disable” cosmetics will simply hide them, they will not prevent your game from rendering them. due to how TF2 works, servers will always force your PC to render the cosmetics, regardless of whether if you see them or not.
you can use cosmetics-hiding mods if you prefer a vanilla-esque look, but it won’t have any practical benefits.
“just use dx8” used to be the go-to response to anyone asking how they could improve fps in TF2. i’m not sure if this is recommended as commonly as before, but still, you (probably) really don’t need to use this.
while this did sort of work for people with extremely crappy hardware, you definitely wouldn’t benefit from it with a PC that’s even remotely modern. it might even make performance worse.
directX 8 (-dxlevel 80 or 81) also changes the aesthetics of the game and breaks several post-2015 additions (mainly warpaints and the colours for UI badges).
the only meaningful reason to use it is if you just prefer the dx8 aesthetic. that’s it. there are no benefits to it.
while we’re on topic:
graphics APIs
A: basically a bridge between the game and your graphics card. as windows is the most popular OS for gaming, most games just use microsoft’s proprietary API called directX. TF2 primarily uses the 22-year-old directX 9, with support for 23-year-old directX 8 for legacy compatibility. as both dx8 and dx9 are extremely old, TF2 has very poor utilisation of modern hardware.
i’ve made this overview of all the graphics API weirdness TF2 has, as there seems to be enough confusion about it. a lot of what you might’ve heard is likely outdated info or just plain wrong.
TF2 does not natively support openGL or vulkan, it uses wrappers to translate dx9 calls with toGL and DXVK respectively.
when valve ported TF2 (same goes for other source 1 games) to linux and macOS, they simply slapped on a basic toGL implementation instead of rewriting the even-by-then very dated code to natively support something other than microsoft’s API. this in turn resulted in objectively inferior performance on linux/macOS compared to windows.
luckily, we have vulkan now; meaning TF2 on linux can perform just as well as it does on windows!
regardless of windows or linux, i recommend giving the -vulkan option a shot.
*dx9 is still the safer option for windows, as vulkan might perform slightly worse on some hardware or certain situations in TF2. if you’re on linux, go with it!
one more tiny thing (DO THIS!!)
this is something i accidentally discovered myself a long time ago, and it isn’t exclusive to TF2 but: disable this! especially if you have a lot of friends with animated borders/avatars. steam overlay, by default, renders the friends list panel even when the overlay isn’t shown.
i’ve noticed that the animated profile stuff, for some reason, are really CPU-intensive and having even just 7-8 of them playing in the background can impact performance.
how to configure TF2 / stay away from in-game settings (!!)
i mean it!
the old school source 1 graphics configuration panel is horribly outdated and is hardly so much as serviceable. due to how old TF2 is, it’s generally much more preferable to configure stuff externally before you launch the game. the game also tends to have problems applying some of the settings while it’s already running. so, please just forget that it even exists.
mastercomfig[comfig.app] is currently the best and the most up-to-date configurator for TF2.
the “custom” and “cfg” folders located inside Team Fortress 2\tf are your best friend when it comes to every type of configuration/modding you’re doing.
(you might not have a “custom” folder if you haven’t installed any huds/mods/whatever before, in that case: just create one inside the “tf” folder!)
mastercomfig, which i absolutely recommend you should use and will be the basis of this guide for the most part, provides configs and addons in the of .vpk files that you have to put inside the “custom” folder. .vpk files are basically a special type of archive that valve games use.
mastercomfig has several presets ranging from ultra to very low, but you can customise every aspect of any given preset individually, which gives you an extra “modules.cfg” file that you’ll have to put inside a folder named “overrides” inside “cfg”.
most pre-made FPS configurations (like Chris’ TF2 configs) usually just came in the form of extremely long set of commands that you simply pasted in your cfg\autoexec.cfg. autoexec.cfg is pretty self-explanatory and it’s just a basic text file for inputting console commands for the game to execute every time it launches. mastercomfig is a bit different; it’s an all-in-one package that works in the same way as mods.
it scans for the modules.cfg file inside cfg\overrides and overwrites settings over the presets’ default based on what you’ve changed.
pro tip: you don’t need to re-download mastercomfig every time you want to change a setting. go to https://docs.comfig.app/latest/customization/modules/, find the appropriate variable and just add/change it on your modules.cfg file with a text editor.
so, what DOES effect performance?
i chose a spot in suijin and teleported myself to that particular coordinate and angle every time to produce as accurate of a “benchmark” as i could. it’s nowhere close to a comprehensive analysis of all graphics variables in TF2 and how each of them could affect performance in various scenarios (i really don’t have the time or energy for that!!) but i think it gave me a clearer idea about some of the variables i tested out.
this is one of those things you have to try out for yourself to see which one’s better.
on some hardware, you might get better performance with vulkan; on others, dx9 might be the better option. on my personal suijin testing, vulkan performed better albeit only very slightly.
like i’ve said earlier, if you’re on linux, there’s no reason not to go with vulkan over openGL as DXVK is objectively better than toGL.
all of aforementioned variables do have an effect on performance but they’re far smaller than you’d expect. this seems to be the recurring theme with literally every source game;
you go to the ends of the earth to dig up and change every single graphics setting you could find -> and it’s only for a inconceivably tiny performance gain in contrast to how bad the game looks -> you might even start doubting yourself and wonder if it’s just your brain doing tricks on you and that all fps differences that you *did* notice are purely placebo/situational
this, unfortunately, perfectly applies to TF2.
one thing i did notice from trying out different settings is seemingly insignificant things like props in a map can actually have a far bigger impact on performance than you’d expect. in fact, far more so than the “real” graphics settings such as effects and lighting.
i absolutely recommend disabling/minimizing the rather insignificant but CPU-heavy stuff (ESPECIALLY PROPS !!) rather than cutting down on graphical fidelity that won’t end up doing anything other than simply making the game look worse.
mastercomfig high w/ some modifications
water=low
particles=low
shadows=medium
pyrovision=low
texture_filter=aniso16x
decals=low
decals_models=off
decals_art=off
gibs=low
sillygibs=off
props=low
ragdolls=medium
fpscap=unlimited
theses are the changes i’ve made to mastercomfig’s “high” preset. you can simply copy-paste this into a modules.cfg file and put it in tf\cfg\overrides.
this should, in theory, give you a boost in performance without very visibly cutting down on fidelity.
it’s not a one-size-fits-all solution to TF2 optimization, but i think it’s good enough that you could at least try and see.
bottom lining / TLDR
is this guide clickbait? sort of.
but i’m still going with this title for visibility sakes. i hope i’ve been able to provide you with some useful information and clear up any misconceptions, instead of writing a step-by-step walkthrough for using mastercomfig, installing winRAR and/or how to open TF2’s file directory. there’s plenty of those out there already.
mastercomfig docs are really extensive and far, FAR more in-depth than anything i’ve wrote here. if you have more things you’re curious about, you’re likely to find it there.
this is the first guide i’ve written, and i can’t say i’m 100% perfectly satisfied with it so i’d appreciate feedback as well. peace 🌸
And that wraps up our share on Team Fortress 2: a modern guide to high fps in TF2 + common misconceptions!. If you have any additional insights or tips to contribute, don’t hesitate to drop a comment below. For a more in-depth read, you can refer to the original article here by ( = ⩊ = ), who deserves all the credit. Happy gaming!