Team Fortress 2

Team Fortress 2

Not enough ratings
TF2: Linux Guide
By AspenJag
You probably have seen that you get OpenGL Artifacts when you run into heavily populated areas and the game becomes unplayable. So this guide will help you get this game playable again on Linux because they haven't updated opengl for tf2.
Also some mods to stay away from in Linux.
   
Award
Favorite
Favorited
Unfavorite
Prologue
Team Fortress 2 for Linux is graphically broken. Some maps crash too making the game borderline un-playable.
Artifacting like polygons stretching across the map, GUI elements such as text disappearing, etc.
This guide will help minimise it and completely eliminate those glitches. However you will be left with Team Fortress 2 looking a bit sour than default.
Get a TF2 FPS config.
One I will recommend and use in this guide since its awesome, mastercomfig.
Really simple way of fixing TF2 glitches is using this, Here[mastercomfig.com]
I would recommend at max the "Medium High" preset since that makes TF2 look like real TF2 instead of potato mode knock-off. A main issue I have with Medium High and Medium, is constant shader load stutters, since you are using higher quality shaders it will stutter.
You can manually disable high shaders inside the configurator for mastercomfig and it should be called Lighting, change that to medium and it should be good.
Mods to not use. (No idea if these crash for everyone.)
TF2UltimateVisualFix - causes crashes on some maps.
Mat_phong Fix - Causes crashes on some maps.
Conclusion (Launch options)
Sorry if you wanted this guide to be longer but it's pretty simple until or if valve decides to update OpenGL for TF2 which they probably never will.

If you want more stability, here are my launch options for Team Fortress 2. (I'm using Nvidia)
__GL_THREADED_OPTIMIZATIONS=1 gamemoderun strangle 999 %command% -noforcemspd -noforcemaccel -softparticlesdefaultoff -high -USEALLAVAILABLECORES -novid -nosteamcontroller -nojoy -particles 0 +mat_phong 1 -NOTEXTURESTREAMING -heapsize 12582912 +cl_interp 0 +cl_interp_ratio 1 +cl_updaterate 68 +cl_cmdrate 68 +gl_disable_forced_vsync 1 -threads 10 -reuse

MAKE SURE TO SET -threads <your cpu thread count> SINCE YOURS MIGHT NOT BE WHAT I'VE SET!!

Some of those launch params might not even work but I have them for safe measures. The -USEALLAVAILABLECORES and -NOTEXTURESTREAMING don't seem to work.
No idea if Heapsize still works but here you go:
1GB System Memory/RAM = 524288

You can probs work out yours with a calculator (using the baseline above), I don't know how much system memory you have. (and considering you are using linux you should be able to figure yours out) Htop/top/gtop can tell you how much system memory you have.

Would highly recommend downloading gamemode and libstrangle. (those are used above)
gamemode optimises linux for temporary gaming, and reverts back to normal when the game closes.
libstrangle is a robust fps limiter, like really good fps limiter. On frame-time graphs you can see it flat-line, smooth.
Here is me on the game on Linux :)
3 Comments
DukeyNukey 11 Sep, 2024 @ 1:30pm 
gamemode is a microcompositor and libstrangle is used to restrict max frame rate to prevent you from going over 999 cause 1000 fps breaks them game. no one seems to know why it does.
DukeyNukey 11 Sep, 2024 @ 1:27pm 
gl threaded optimizations breaks gamescope and wayland on nvidia. do not use if you have nvidia and no point in using it since tf2 uses vulkan now.
Scover 19 Mar, 2024 @ 5:14am 
can you explain your gamemode options, such as the [code]__GL_THREADED_OPTIMIZATIONS=1 gamemoderun strangle 999[/code] part?